Innehållsförteckning:

Arduino Riddlebox: 4 steg (med bilder)
Arduino Riddlebox: 4 steg (med bilder)

Video: Arduino Riddlebox: 4 steg (med bilder)

Video: Arduino Riddlebox: 4 steg (med bilder)
Video: Timelapse Final Fantasy Gunblade Printed on a CR-30 2024, Oktober
Anonim
Arduino Riddlebox
Arduino Riddlebox

I denna instruktionsbok ska jag visa dig hur du gör en Arduino -driven Riddlebox. Jag gjorde det här för att lägga till lite roligt för mina flickvänners faktiska julklapp, som jag gömde inuti lådans fack.

När 5V applicerats på USB -kabeln startar Arduino och LCD -skärmen visar en kort handledning och sedan en sekvens med tio gåtor, som måste lösas för att öppna det servodrivna facket, som kan rymma en gåva eller present.

Det finns också en smyg, lösenordsskyddad, inställningsmeny för att återställa framsteg och öppna facket.

Jag använde det jag kunde hitta i min lokala järnaffär och 3D -utskrifter resten. Uppenbarligen kan du anpassa Riddlebox genom att lägga till fler sensorer eller utelämna vissa delar. Låt din kreativitet gå fri.

Du kommer behöva:

  • Arduino Mega (en Uno kan också räcka)
  • Flexibla bygeltrådar
  • Nyckelbrytare
  • Knappsats 4x4
  • I2C LCD 20x04
  • 2x SG90 servomotorer
  • Aluminiumfodral
  • Gångjärn i metall
  • Aluminiumplåt
  • Klippsåg eller roterande verktyg med ett avskuret hjul
  • Lim pistol
  • Lim med hög bindning
  • USB-minne
  • Metallfil

Steg 1: Konfigurera maskinvaran

Konfigurera hårdvaran
Konfigurera hårdvaran

Jag prototypade först gåtorna, med Arduino en brödbräda och de komponenter jag ville använda, nämligen nyckelomkopplaren och knappsatsen. För att använda Arduino -koden från denna instruerbara som den är, anslut delarna enligt beskrivningen nedan. Naturligtvis kan du lägga till och ta bort komponenter, eller använda olika stift, så länge du gör lämpliga ändringar i koden.

De flesta knappsatser har en stift för varje rad och varje kolumn. Ta reda på vilka stift som är radstift, genom att testa kontinuitet mellan olika stift samtidigt som du trycker på knapparna för att stänga kretsen (se exempeldiagram). De återstående 4 stiften måste vara kolumnstiften. (Obs! Ibland är de två yttersta stiften anslutna till kopparfyllningen på kretskortet och kan ignoreras)

Anslut knapparna COL0 - COL3 till Arduino -stiften 12 - 9 och ROW0 - ROW3 till Arduino -stiften 8 - 5.

LCD -skärmen är ansluten via I2C, så det behövs bara fyra stift: SDA, SCL, 5V och GND.

Nyckelomkopplaren har tre lägen och sex stift: Båda C (vanliga) stiften går till marken, medan de två stiften märkta NO (normalt öppna) går till Arduino stift 22 respektive 23. (Obs! Arduinoingångarna dras höga, så vi behöver bara ansluta marken till switchens gemensamma stift)

De två servon används för att fysiskt öppna luckan och för att låsa den via en spärr.

Anslut 5V och GND för servon till Arduino och anslut signalledningarna enligt följande: låsservo = stift 44, dörrservo = stift 45.

Steg 2: Arduino -kod och gåtor

Arduino kod och gåtor
Arduino kod och gåtor
Arduino kod och gåtor
Arduino kod och gåtor

Koden för Arduino består av flera filer. Huvudskissen initierar all hårdvara, bibliotek och globala variabler. Alla gåtor och menublockar lagras i funktioner i separata filer för enkel hantering. Framstegstillståndet, som sparas i EEPROM (dvs. är säkert även efter powercylce), avgör vilka gåtefunktioner som anropas i huvudfils switchfunktion.

Jag tog bort all personlig information från koden och ersatte några lösningar med generiska lösningar (1234 …). Ändra gärna koden efter eget tycke och lägg till några personliga lösningar.

Gåtor och menublock:

  1. Avancerat: Avancerade inställningsmeny med återställning av framsteg och fackkontroller.
  2. Intro: Intro -meny med hälsningstext och självstudie.
  3. Elementär: Riddle aksing for the atomic number of jod.
  4. Outsourcing: Spelaren måste kontakta en e -postadress som automatiskt skriver ett nummer gåta. (Stjärnformad gåta i bilder)
  5. Sexton: Spelaren måste konvertera ett hexaltal till decimal.
  6. Val: Spelaren måste slutföra ett textäventyr på en flash -enhet, lösenordet för nästa nivå är dolt i berättelsen. (se Amnesia.rtf)
  7. Offline: Spelaren måste få nyckeln för att aktivera nyckelbrytaren (t.ex. via e -post, gread sätt att sakta ner dem om de är för snabba).
  8. Osynlig: Lösenordet för nästa nivå skrivs på ett papper med osynligt bläck.
  9. Beräkning: Enkel kalkyluppgift. (Mer av en platshållare som aldrig blev fylld, eftersom tiden gick slut)
  10. Ändring: Kort gåta om eurosedlar, kan anpassas till valfri valuta med olika färgade sedlar.
  11. Tålamod: Spelaren får inte vrida nyckeln under en period på 5 minuter, annars återställs timern och fördubblas. (Obs: Om du vrider nyckeln tillräckligt ofta får variabeln att flyta över och återställas till noll på grund av dess begränsade storlek.)
  12. Svaret: "Vad är svaret?". Lösningen är uppenbarligen 42.
  13. Slutskärm: Grattis och instruktioner för att öppna facket. (via nyckelbrytaren)

Jag har inkluderat ytterligare dokumentation i form av kommentarer i kodfilerna.

FYI: att hålla 'A' under stänkskärmen öppnar inställningsmenyn. Lösenord: 2582

Steg 3: Bygg frontpanelen

Bygga frontplattan
Bygga frontplattan
Bygga frontplattan
Bygga frontplattan
Bygga frontplattan
Bygga frontplattan

Jag köpte fodralet i min lokala järnaffär tillsammans med aluminiumplåten. Det följde med avdelare som jag senare återanvände för att skapa fackväggarna.

Aluminiumplåten var för bred, så jag skrev och förkortade den med en kapsåg. Men en rullsåg, ett roterande verktyg eller till och med en slipmaskin med ett avskuret hjul kan passa bättre, eftersom det tog mig evigheter och jag knäppte två blad i processen. Klyftan på framsidan av ärendet är avsiktlig. Det ger plats för att placera en powerbank och minneskortet.

Efter att ha markerat var jag ville att allt skulle gå så borrade jag hål i hörnen på de markerade sektionerna och skar ut dem med hjälp av sågen igen. För kammarsektionen försökte jag ett avskuret hjul på en kvarn, och det fungerade fantastiskt. Jag använde en metallfil för att trimma öppningarna för att passa komponenterna och avgräva dem. Ett snabbt pass med orbitalsliparen gav det hela en matt finish. Detta är naturligtvis helt valfritt, jag skavade upp aluminiumplattan mycket, så slipning verkade vara ett bra sätt att dölja dem och ta bort mina skarpmarkeringar.

Dörren till facket är helt enkelt en trimmad bit av den kvarvarande aluminiumplåten.

Jag fäst gångjärnet på dörren och metallplattan med hjälp av limet med hög bindning. Den appliceras på båda ytorna, får härda i 10-20 minuter. och sedan pressas båda sidorna ihop. Bindningen är omedelbar och det finns inget sätt att justera de två bitarna senare.

Knappsatsen och LCD -displayen håller på plats med lite hett lim runt sidorna. (Obs! Var noga med att isolera tapparna på komponenterna från aluminiumplåten. En klick varmt lim gör susen)

Nyckelbrytaren har en gänga och mutter, så jag borrade ett hål i rätt storlek och passade omkopplaren igenom.

För att göra facket öppet automatiskt fäst jag dörren och låste servon på aluminiumplåtens undersida med lim. Låskroken och öppningsspaken och låsspärren böjde jag för att forma ur några fästen (liknande plummersband). I efterhand kunde jag och förmodligen borde ha 3D -skrivit ut dessa komponenter eftersom de är lite tunna på det här sättet och förmodligen kommer att vara det första som misslyckas. Jag fästade dessa delar med lim eller lim med hög bindning (se bilder).

Eftersom fronten inte såg särskilt vacker ut på det här sättet bestämde jag mig för att skriva ut några ramar för att gå runt de olika komponenterna och fäste dem med varmt lim också.

Steg 4: Avsluta ärendet

Avslutar ärendet
Avslutar ärendet
Avslutar ärendet
Avslutar ärendet

Som jag nämnde tidigare kom fallet med några avvikare. Jag bestämde mig för ett arrangemang för att skapa ett grovt fack och lite utrymme för Arduino och använde sedan limet med hög bindning för att fixa allt på plats.

Efter att ha anslutit alla komponenter till Arduino Mega och varmlimmat den på fodral, matade jag ut USB -kabeln genom den lilla öppningen mellan delarna, så att den var åtkomlig från sidan.

Efter att försiktigt tappat aluminiumplattan till dess slutliga läge fixade jag den på plats genom att trycka munstycket på den heta limpistolen mot sömmen mellan plattan och höljet och tvinga limet in i springan. Först var jag skeptisk till itegrety av denna fixeringsmetod men den har hållits upp så långt.

Det sista som var kvar att göra var att applicera några finesser. Jag designade några enkla klistermärken i MS Publisher som jag tryckte ut, klippte ut och fäst på frontplattan med en enkel limpinne.

Naturligtvis är det helt upp till dig om och hur många klistermärken du vill göra och fästa. Det här kan också vara ett bra tillfälle att träna några vittringstekniker för att få det hela att se lite mer illa ut. Tyvärr kom detta bara till mig när jag skrev denna instruerbara.

Hur som helst, jag hoppas att du gillade denna Riddlebox -byggnad. Om du har några frågor eller förbättringsidéer, lämna mig en kommentar nedan och jag ska försöka återkomma till dig så snart som möjligt.

Rekommenderad: