Turinys:
- Prekės
- 1 žingsnis: Surinkite dėžutę
- 2 veiksmas: prijunkite elektroniką
- 3 žingsnis: „Arduino“programavimas
- 4 žingsnis: Žaiskite „Crack the Code“žaidimą
Video: „Crack the Code Game“, „Arduino“pagrindu sukurta galvosūkių dėžutė: 4 žingsniai (su paveikslėliais)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Tinkercad projektai »
Šioje instrukcijoje aš jums parodysiu, kaip sukurti savo kreko kodo žaidimą, kuriame naudojate sukamąjį kodavimo ratuką, kad atspėtumėte atsitiktinai sugeneruotą kodą į seifą. Seifo priekyje yra 8 šviesos diodai, rodantys, kiek iš jūsų numanomų skaičių yra teisingi ir kiek yra tinkamoje vietoje.
Seifas iš pradžių yra atidarytas, todėl galite kažką įdėti į vidinį skyrių. „Arduino“ir baterija yra atskirame skyriuje gale. Tada paspausite ratuką, kad užrakintumėte seifą, o tai daroma naudojant servo durelių vidų. Tada turite įvesti kodą sukdami ratuką, kad pasirinktumėte skaitmenis, ir paspausdami ratuką patvirtinkite kiekvieną skaitmenį. Pasirinkus ketvirtąjį skaitmenį, seifas rodo raudonus ir žalius šviesos diodus ant durų, kiek iš jų yra teisingi ir kiek iš jų yra teisingoje vietoje.
Raudonas šviesos diodas nurodo teisingą skaitmenį, o žalias - tai, kad jis taip pat yra tinkamoje vietoje. Taigi, norėdami nulaužti kodą ir atidaryti seifą, turite uždegti visus keturis raudonus ir žalius šviesos diodus.
Seifas stebi, kiek spėliojimų padarėte, kad nulaužtumėte kodą, ir jis rodomas, kai jums pavyko jį nulaužti. Iš pradžių tai gali atrodyti sudėtinga, tačiau iš tikrųjų tai nėra taip sunku, tiesiog reikia prisiminti ir remtis ankstesniais spėjimais. Daugeliu atvejų turėtumėte sugebėti nulaužti kodą 5–10 spėjimų, atsižvelgiant į tai, kaip jums pasisekė.
Jei jums patinka ši instrukcija, apsvarstykite galimybę balsuoti už ją „Arduino“konkurse.
Prekės
Norėdami sukurti šią „Crack The Code“seifą, jums reikės:
- „Arduino Uno“- pirkite čia
- I2C OLED ekranas - pirkite čia
- Mygtuko kodavimo įrenginys - pirkite čia
- 4 x 5 mm raudoni šviesos diodai - pirkite čia
- 4 x 5 mm žali šviesos diodai - pirkite čia
- 8 x 220Ω rezistoriai - pirkite čia
- „Micro Servo“- pirkite čia
- Juostos kabelis - pirkite čia
- Antraštės - pirkite čia
- Maitinimo jungiklis - pirkite čia
- 3 mm MDF lakštas - pirkite čia
Jums taip pat reikės pagrindinių įrankių, medžio klijų, klijų pistoleto ir lituoklio.
Seifo dalys turi būti supjaustytos lazeriu. Jei neturite prieigos prie lazerinio pjaustytuvo, apsvarstykite galimybę naudotis internetine pjovimo lazeriu paslauga, jie tapo gana prieinami ir supjaus bei pristatys komponentus į jūsų duris.
Tai lazerinis pjoviklis, kurį naudojau „Instructable - K40“lazeriniame pjaustytuve
1 žingsnis: Surinkite dėžutę
„Inkscape“suprojektavau seifą, kuris bus supjaustytas iš 3 mm MDF. Jei norite, dalis taip pat galite iškirpti iš 3 mm akrilo arba faneros. Jei naudojate kitokio storio medžiagą, turėsite sureguliuoti dėžutės komponentų angas, kad jos tinkamai derėtų.
Čia galite atsisiųsti pjovimo lazeriu failus.
Yra 6 plokštės, sudarančios dėžutės išorę, gale ir priekyje yra išpjovos priekinėms ir galinėms durims. Plokštės yra pažymėtos spausdinimo faile, kad galėtumėte jas stebėti.
Ciferblatas taip pat sudarytas naudojant kai kurias lazeriu supjaustytas dalis, kurios vėliau suklijuojamos.
Yra trys dekoratyvinės plokštės, pritvirtintos prie dėžutės viršaus ir dviejų pusių, kad ji atrodytų labiau kaip seifas. Taip pat yra dvi plokštės, sudarančios duris, ir skirstomasis skydas, einantis į dėžutės vidurį, kad būtų atskirtas saugus skyrius nuo elektronikos skyriaus.
Gabalai telpa ant vieno 400 x 500 mm MDF gabalo ir gali būti padalyti į mažesnius gabalus, jei jūsų lazerinis pjaustytuvas nėra pakankamai didelis, kad būtų galima iškirpti visas dalis vienu metu.
Pirmiausia pradėjau klijuoti dekoratyvines plokštes ant viršaus ir šonų. Įsitikinkite, kad surinkote gabalus teisinga tvarka, kad žinotumėte, kurie yra kurie. Yra trys skirtingos dalys, viršutinė ir apatinė dalys yra vienodos, šonai yra vienodi, o priekis ir galas yra vienodi.
Kai plokštės išdžiūsta, galite surinkti dėžę.
Įsitikinkite, kad centrinio skirstytuvo išpjovos yra šonuose. Tai turi būti bet kokie laidai nuo dėžutės priekio iki dėžutės galo, kur yra „Arduino“ir baterija.
Vyriai taip pat pjaustomi lazeriu ir yra tiesiog klijuojami į vietą, kai išrikiuojate duris. Įsitikinkite, kad jie yra lygiagrečiai durims, kitaip jums bus sunku jas atidaryti. Taip pat gali tekti šiek tiek nušlifuoti nuo vidinio šarnyrinio durų krašto, kad jis nesitrintų ant dėžutės krašto judant pro šalį.
Klijuokite keturis kvadratus į kampus, esančius už galinio skydelio, kad atidarytumėte galinio dangtelio varžtus.
Tada galite išgręžti varžtų skyles ir pradėti montuoti ekraną, „Arduino“, galinį dangtelį ir galiausiai kodavimo įrenginį.
2 veiksmas: prijunkite elektroniką
Aš sukūriau grandinę „Tinkercad Circuits“duonos lentoje ir vėliau pridėjau OLED ekrane.
Mes turime 8 šviesos diodus, prijungtus prie skaitmeninių IO kaiščių nuo 6 iki 13. Fiksavimo servo sistema yra prijungta prie 5. kaiščio. Koduotuvas prijungtas prie 2, 3 ir 4 kaiščių, o OLED ekranas yra prijungtas prie „Arduino“I2C sąsajos.
Kiekvienam šviesos diodui naudoju 220 omų rezistorių, lituojamą tiesiai prie neigiamo šviesos diodo, ir sujungiau komponentus naudodami spalvotą juostinį kabelį, kad laidai būtų tvarkingi ir būtų lengviau sekti, kokia viela reikalinga kiekvienam „Arduino“kaiščiui.
Aš stumdžiau juostinius kabelius į galinį skyrių, o lituotas kai kurias kaiščių antraščių juostas pritvirtinau prie juostos kabelio ir prijungiau prie „Arduino“.
Aš taip pat pritvirtinau maitinimo jungiklį ant galinio dangtelio ir prijungiau jį prie akumuliatoriaus kištuko, kad galėčiau prijungti prie įkraunamos baterijos, kad būtų galima įjungti žaidimą. Jei norite, taip pat galite naudoti 9 V bateriją.
Galiausiai turėsite uždėti fiksavimo servo durelių kraštą taip, kad jis pereitų per dėžutės lūpą, o ranka galėtų atsistoti prieš lūpos vidų, kad užfiksuotų dėžę. Tai nėra stipriausias užrakinimo mechanizmas, tačiau jis yra tikrai paprastas ir puikiai tinka žaidimo tikslui.
3 žingsnis: „Arduino“programavimas
Aš nesiruošiu išsamiai peržiūrėti kodo, kaip įprasta, nes jame yra gana daug. Aš padariau išsamų aprašymą, paaiškinantį kiekvieną jo dalį, kurią galite rasti kartu su kodo atsisiuntimu per šią nuorodą - „Crack The Code Game Code“.
Apibendrinant; pirmiausia importuojame bibliotekas, skirtas OLED ekranui ir servo valdymui.
Tada nustatome ekrano parametrus ir sukuriame visus kintamuosius. Yra daug kintamųjų, skirtų koduotuvo posūkiams sekti, nes tai daroma per kylančių kraštų pertraukas 2 ir 3 kaiščiuose.
Sukurtos dvi kodų masyvai, skirti atsitiktinai sugeneruotam kodui išsaugoti, o kitas - dabartiniam vartotojų spėjimui.
Sąrankos funkcijoje mes paleidžiame ekraną, pritvirtiname servo, nustatome IO kaiščio režimus ir tada ekrane rodome „Crack The Code“animaciją.
Ciklo funkcijos mirksi šviesos diodais ir parodo pranešimą „push to lock“, kuris laukia, kol vartotojas paspaus ratuką ir pradės žaidimą. Tas pats kodas paleidžiamas žaidimo pabaigoje, kuris parodo bandymų skaičių ir laukia, kol bus paspaustas ratukas, kad pradėtų naują žaidimą.
Ant kodavimo mygtuko yra tam tikras išjungimo kodas, kurį paspaudus, servo užrakina seifą ir sugeneruojamas atsitiktinis kodas. Tada kodas iškviečia funkciją, kad paprašytų vartotojo įvesti savo spėjimą, o po to kitą, kad patikrintų spėjimą, tai kartojama tol, kol vartotojas teisingai atspėja kodą.
Yra funkcija rodomam kodui atnaujinti, kuri iškviečiama kiekvieną kartą pasukus kodavimo įrenginį ir rodomą kodą reikia pakeisti.
Naujo kodo generavimo funkcija tiesiog priskiria atsitiktinį skaitmenį kiekvienam iš keturių kodų masyvo elementų.
Funkcija įvesti kodo spėjimą leidžia vartotojui pasirinkti skaitmenį naudojant koduotuvą ir tada patvirtinti kiekvieną įvestą skaitmenį, paspaudus koduotuvą žemyn.
Tikrinimo kodo atspėjimo funkcija peržiūri atspėtą kodą ir nusprendžia, kiek skaitmenų yra teisingos ir kiek yra teisingoje vietoje.
Atnaujinimo šviesos diodų funkcija perjungia teisingą raudonų ir žalių šviesos diodų skaičių, atsižvelgiant į vartotojų spėjimą.
Paleidimo ani funkcija paleidžiant rodo „Crack The Code“animaciją.
Galiausiai, dvi pertraukimo funkcijos valdo įvestį iš kodavimo įrenginio: viena padidina skaičių aukštyn, kai pasukama pagal laikrodžio rodyklę, o kita - žemyn, kai pasukama prieš laikrodžio rodyklę.
4 žingsnis: Žaiskite „Crack the Code“žaidimą
Geriausias būdas išmokti žaisti žaidimą yra žiūrint vaizdo įrašą pradžioje, yra du žaidimo, žaidžiamo arti pabaigos, pavyzdžiai.
Seifas iš pradžių yra atrakintas, todėl galite į jį kažką įdėti.
Tada paspauskite ratuką, kad užrakintumėte seifą ir sugeneruotumėte naują kodą.
Spėjamas kodas įvedamas naudojant ratuką, kad padidintumėte skaitmenį, ir paspauskite ratuką, kad pereitumėte prie kito skaitmens arba patvirtintumėte kodą, kai bus pasirinkti visi keturi skaitmenys.
Tada užsidega priekiniai šviesos diodai, kurie mums nurodo, kas buvo teisinga.
Tada naudodamiesi šiais atsiliepimais galite atspėti kitą, kol galėsite atspėti teisingą kodą ir vėl atidaryti seifą. Įvedus teisingą kodą, rodomas seifas ir parodomas bandymų, kurių prireikė nulaužti kodą, skaičius.
Mėgaukitės kurdami savo „crack“kodo seifą. Jei jums patiko šis „Instructable“, apsvarstykite galimybę balsuoti už jį „Arduino“konkurse.
Antrasis prizas „Arduino“konkurse 2020 m
Rekomenduojamas:
Vaizdo apdorojimo pagrindu sukurta gaisro atpažinimo ir gesintuvo sistema: 3 žingsniai
Vaizdo apdorojimo pagrindu sukurta gaisro atpažinimo ir gesintuvo sistema: Sveiki draugai, tai vaizdo apdorojimu pagrįsta gaisro aptikimo ir gesintuvo sistema naudojant „Arduino“
„Raspberry Pi“pagrindu sukurta automatinė rankų plovimo sistema „Covid-19“: 4 žingsniai
„Raspberry Pi“pagrindu sukurta automatinė rankų plovimo sistema „Covid-19“: tai paprasta rankų plovimo sistema, kurioje naudojami pir jutikliai ir „Raspberry pi“lenta. Ši programa daugiausia sukurta higienos tikslais. Modelis gali būti patalpintas viešose vietose, ligoninėse, prekybos centruose ir kt
PIC mikrovaldiklio pagrindu sukurta robotinė ranka: 6 žingsniai (su nuotraukomis)
PIC mikrokontrolerio pagrindu sukurta robotinė ranka: nuo automobilių gamybos pramonės surinkimo linijos iki telechirurgijos robotų erdvėje robotų ginklų galima rasti visur. Šių robotų mechanizmai yra panašūs į žmogaus, kuriuos galima užprogramuoti panašioms funkcijoms ir padidėjimams
„Arduino“pagrindu sukurta daugiaspalvė šviesos tapybos lazdelė: 13 žingsnių (su nuotraukomis)
„Arduino“pagrindu sukurta daugiaspalvė šviesos tapybos lazdelė: Šviesos tapyba yra fotografų naudojama technika, kai šviesos šaltinis naudojamas įdomiems modeliams piešti, o fotoaparatas juos sujungia. Dėl to nuotraukoje bus šviesos pėdsakai, kurie galiausiai suteiks žvilgsnį į
Išplėstinė „Arduino“pagrindu sukurta nuolatinė elektroninė apkrova: 5 žingsniai
Išplėstinė „Arduino“pagrįsta nuolatinė elektroninė apkrova: šį projektą remia JLCPCB.com. Kurkite savo projektus naudodami „EasyEda“internetinę programinę įrangą, įkelkite esamus „Gerber“(RS274X) failus, tada užsisakykite savo dalis iš LCSC ir visą projektą pristatykite tiesiai į jūsų duris. Aš galėjau