INHOUDSOPGAWE:

Crack the Code Game, Arduino Based Puzzle Box: 4 stappe (met foto's)
Crack the Code Game, Arduino Based Puzzle Box: 4 stappe (met foto's)

Video: Crack the Code Game, Arduino Based Puzzle Box: 4 stappe (met foto's)

Video: Crack the Code Game, Arduino Based Puzzle Box: 4 stappe (met foto's)
Video: Crack The Code Game, Built Into A DIY Safe Box 2024, Julie
Anonim
Image
Image
Kraak die kodespel, 'n legkaartboks wat op Arduino gebaseer is
Kraak die kodespel, 'n legkaartboks wat op Arduino gebaseer is
Kraak die kodespel, 'n legkaartboks wat op Arduino gebaseer is
Kraak die kodespel, 'n legkaartboks wat op Arduino gebaseer is

Tinkercad -projekte »

In hierdie instruksies gaan ek jou wys hoe om jou eie crack -kode te bou waarin jy 'n draaiknop gebruik om die willekeurig gegenereerde kode na die kluis te raai. Daar is 8 LED's aan die voorkant van die kluis om u te vertel hoeveel van die syfers wat u raai, korrek is en hoeveel ook op die regte plek is.

Die kluis is aanvanklik oop, sodat u iets in die binnekamer kan plaas. Die Arduino en die battery is in 'n aparte kompartement agter. U druk dan die draaiknop om die kluis te sluit, wat met 'n servo aan die binnekant van die deur gedoen word. U moet dan die kode invoer deur aan die draaiknop te draai om die syfers te kies en op die draaiknop te druk om elke syfer te bevestig. Nadat u vierde syfer gekies is, wys die kluis hoeveel van u syfers korrek is en hoeveel op die regte plek met behulp van die rooi en groen LED's op die deur.

'N Rooi LED dui die korrekte syfer aan en 'n groen LED dui aan dat dit ook op die regte plek is. U moet dus al vier rooi en groen LED's aansteek om die kode te kraak en die kluis oop te maak.

Die kluis hou by hoeveel raaiskote u gemaak het om die kode te kraak, en dit word vertoon sodra u dit reggekry het. Dit klink aanvanklik ingewikkeld, maar dit is eintlik nie so moeilik nie; u moet net onthou en voortbou op u vorige raaiskote. Gewoonlik moet u die kode in 5 tot 10 raaiskote kan kraak, afhangende van hoe gelukkig u aanvanklike raaiskote is.

As u hierdie instruksies geniet, oorweeg dit om daarvoor te stem in die Arduino -wedstryd.

Voorrade

Om hierdie Crack The Code -kluis te bou, benodig u:

  • Arduino Uno - Koop hier
  • I2C OLED -skerm - Koop hier
  • Knoppie -enkodeerder - Koop hier
  • 4 x 5 mm rooi LED's - Koop hier
  • 4 x 5 mm groen LED's - Koop hier
  • Weerstande van 8 x 220Ω - Koop hier
  • Micro Servo - Koop hier
  • Lintkabel - Koop hier
  • Kopstukke - Koop hier
  • Skakelaar - Koop hier
  • 3 mm MDF -vel - koop hier

U benodig ook basiese gereedskap, houtgom, 'n lijmpistool en 'n soldeerbout.

Die onderdele vir die kluis moet met laser gesny word. As u nie toegang tot 'n lasersnyer het nie, oorweeg dit om 'n aanlyn lasersnydiens te gebruik; dit is redelik bekostigbaar en sal die komponente by u deur sny en aflewer.

Dit is die lasersnyer wat ek in die Instructable gebruik het - K40 Laser Cutter

Stap 1: Monteer die boks

Monteer die boks
Monteer die boks
Monteer die boks
Monteer die boks
Monteer die boks
Monteer die boks
Monteer die boks
Monteer die boks

Ek het die kluis in Inkscape ontwerp om van 3 mm MDF gesny te word. U kan ook die dele van 3 mm akriel of laaghout sny as u wil. As u 'n ander dikte materiaal gebruik, moet u die gleuwe in die bokskomponente aanpas sodat dit korrek bymekaar pas.

U kan die lasersnitlêers hier aflaai.

Daar is 6 panele wat die buitekant van die boks uitmaak, die agterkant en die voorkant het uitsparings vir die voor- en agterdeure. Die panele is in die druklêer gemerk, sodat u dit kan byhou.

Die draaiknop bestaan ook uit lasersnitte wat dan aan mekaar vasgeplak word.

Daar is drie dekoratiewe panele wat aan die bokant en twee kante van die boks vasgemaak word om dit meer soos 'n kluis te laat lyk. Daar is ook twee panele waaruit die deur bestaan en 'n verdeelpaneel wat in die middel van die boks gaan om die veilige kompartement van die elektroniese kompartement te skei.

Die stukke pas op 'n enkele stuk MDF 400 x 500mm en kan in kleiner stukke verdeel word as u lasersnyer nie groot genoeg is om al die stukke tegelyk te sny nie.

Ek het eers die dekoratiewe panele aan die bokant en sye begin plak. Maak seker dat u die stukke in die regte volgorde het, sodat u weet watter een is. Daar is drie verskillende stukke, die bo- en onderkant is dieselfde, die sye is dieselfde en die voor- en agterkant is dieselfde.

Sodra die panele droog is, kan u die boks aanmekaar sit.

Maak seker dat die uitsparings vir die middelverdeler aan die kante is. Dit is nodig om enige drade van die voorkant van die boks na die agterkant van die boks waar die Arduino en die battery sit, te voer.

Die skarniere is ook met laser gesny en word net vasgeplak sodra u die deur opgestel het. Maak seker dat hulle parallel met die deur is, anders kan u dit moeilik oopmaak. Miskien moet u ook 'n bietjie van die binnekant van die deur af skuur sodat dit nie aan die rand van die boks vryf terwyl dit verby beweeg nie.

Plak die vier blokkies in die hoeke agter die agterpaneel vas om die skroewe vir die agterblad vas te maak.

U kan dan die gate vir die skroewe boor en die skerm, die Arduino, die agterblad en laastens die encoder begin monteer.

Stap 2: Koppel die elektronika aan

Koppel die elektronika aan
Koppel die elektronika aan
Koppel die elektronika aan
Koppel die elektronika aan
Koppel die elektronika aan
Koppel die elektronika aan

Ek het die kring op 'n broodbord in Tinkercad Circuits ontwerp en daarna in die OLED -skerm bygevoeg.

Ons het 8 LED's gekoppel aan die digitale IO -penne 6 tot 13. Die sluitservo is gekoppel aan pen 5. Die encoder is verbind met penne 2, 3 en 4 en die OLED -skerm is gekoppel aan die Arduino se I2C -koppelvlak.

Ek het 'n weerstand van 220 ohm vir elke LED gebruik, direk op die negatiewe LED gesoldeer en ek het die komponente met 'n gekleurde lintkabel verbind om die bedrading netjies te hou en om te sien watter draad na elke Arduino -pen moes gaan.

Ek het die lintkabels deurgestoot na die agterste kompartement en 'n paar penkopstroke op die lintkabel gesoldeer om by die Arduino aan te sluit.

Ek het ook 'n aan / uit -skakelaar op die agterblad aangebring en dit aan 'n batteryprop gekoppel om aan 'n herlaaibare battery te koppel om die spel aan te dryf. U kan ook 'n 9V -battery gebruik as u wil.

Uiteindelik moet u die sluitservo teen die rand van die deur plaas sodat dit oor die lip in die boks kan beweeg en die arm teen die binnekant van die lip kan stoot om die boks te sluit. Dit is nie die sterkste sluitmeganisme nie, maar dit is regtig eenvoudig en werk goed vir die doel van die spel.

Stap 3: Programmering van die Arduino

Die programmering van die Arduino
Die programmering van die Arduino
Die programmering van die Arduino
Die programmering van die Arduino

Ek gaan nie die kode so gedetailleerd as gewoonlik deurmaak nie, aangesien daar baie is. Ek het 'n gedetailleerde opstel gedoen waarin ek elke deel daarvan verduidelik, wat u kan vind saam met die aflaai van die kode via hierdie skakel - Crack The Code Game Code.

Samevattend; Ons begin met die invoer van biblioteke om die OLED -skerm en die servo te beheer.

Ons stel dan die parameters vir die vertoning in en skep al ons veranderlikes. Daar is 'n hele paar veranderlikes wat toegewy is aan die dop van die encoder -draaie, aangesien dit gedoen word deur stygende randonderbrekings op penne 2 en 3.

Daar is twee kode skikkings geskep, op om die willekeurig gegenereerde kode op te slaan en een om die huidige raaiskoot van die gebruikers op te slaan.

In die opstelfunksie begin ons die skerm, heg die servo aan, stel die IO -penmodusse in en vertoon dan die teks -animasie Crack The Code op die skerm.

Die lusfunksies flits die LED's en vertoon die boodskap druk om die kluis te sluit, wat dan wag totdat die gebruiker op die draaiknop druk om die spel te begin. Dieselfde kode word aan die einde van 'n speletjie uitgevoer, wat dan die aantal pogings wys en wag totdat 'n skakelaar gedruk word om 'n nuwe speletjie te begin.

Daar is 'n paar debouncing -kode op die drukknop van die encoder en sodra dit gedruk word, sluit die servo die kluis en word 'n ewekansige kode gegenereer. Die kode skakel dan 'n funksie om die gebruiker te vra om sy raaiskoot in te voer en dan 'n ander een om die raaiskoot na te gaan; dit word herhaal totdat die gebruiker die kode korrek raai.

Daar is 'n funksie om die vertoonde kode by te werk, wat elke keer as die encoder omgedraai word en die kode wat gewysig moet word, gebel word.

Die funksie om 'n nuwe kode te genereer, ken eenvoudig 'n ewekansige syfer toe aan elk van die vier elemente in die kode -skikking.

Met die funksie om 'n kode -raai in te voer, kan die gebruiker 'n syfer met behulp van die encoder kies en dan elke invoer van die syfer bevestig deur die encoder af te druk.

Die raaiselfunksie van die tjekkode kyk dan deur die raaiskode en besluit hoeveel syfers korrek is en hoeveel op die regte plek is.

Die opdaterings -LED's -funksie skakel die korrekte aantal rooi en groen LED's in op grond van die raaiskoot van gebruikers.

Die opstart ani -funksie vertoon die Crack The Code -animasie tydens die opstart.

Laastens bestuur twee onderbrekingsfunksies die insette van die encoder, een verhoog die syfer na bo as dit met die kloksgewys gedraai word en een afwaarts as dit linksom gedraai word.

Stap 4: Speel die Crack the Code Game

Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game
Speel Crack the Code Game

Die beste manier om te leer hoe om die spel te speel, is deur aan die begin van die video te kyk; daar is twee voorbeelde van die spel wat naby die einde gespeel word.

Die kluis is aanvanklik ontsluit, sodat u iets daarin kan sit.

U druk dan die draaiknop om die kluis te sluit en 'n nuwe kode te genereer.

Die raaiskode word ingevoer met die draaiknop om die syfer te verhoog en op die draaiknop te druk om na die volgende syfer te gaan of om die kode te bevestig sodra al vier syfers gekies is.

Die LED's aan die voorkant brand dan om ons te vertel wat reg was in ons raaiskoot.

U gebruik dan hierdie terugvoer om u volgende raaiskoot te maak totdat u die korrekte kode kan raai en die kluis weer oopmaak. Sodra u die korrekte kode ingevoer het, word die kluis ontsluit en die aantal pogings wat u nodig gehad het om die kode te kraak, word vertoon.

Geniet die bou van u eie crack the code safe. As u hierdie instruksies geniet het, oorweeg dit om daarvoor te stem in die Arduino -wedstryd.

Arduino -wedstryd 2020
Arduino -wedstryd 2020
Arduino -wedstryd 2020
Arduino -wedstryd 2020

Tweede prys in die Arduino -wedstryd 2020

Aanbeveel: