Innehållsförteckning:
- Steg 1: Anslut (pekskärmen)
- Steg 2: Bekanta dig med biblioteken
- Steg 3: Designa ett grafiskt användargränssnitt / huvudmeny
- Steg 4: Anslut de två kontrollerna
- Steg 5: Börja ansluta den trådlösa anslutningen
- Steg 6: Gå vilt! Prova olika saker
- Steg 7: Design
- Steg 8: 3D -utskrift av höljet
- Steg 9: Lödning och slutbehandling
- Steg 10: Förhandsgranska
Video: Handhållen konsol med trådlösa kontroller och sensorer (Arduino MEGA & UNO): 10 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Vad jag använde
- Arduino MEGA
- 2x Arduino UNO
- Adafruit 3,5 TFT 320x480 pekskärm HXD8357D
- summer
- 4Ohm 3W högtalare
- 5 mm LED -lampor
- Ultimaker 2+ skrivare med svart PLA -filament
- Laserskärare med MDF -trä
- Svart sprayfärg (för träet)
- 3x nRF24L01+ trådlösa sändtagare
- 2x 16 mm knapp
- 2x trycksensorer
- 3x 9V batterihållare
- Brödbräda
- 2x 0,96 '' OLED I2C -skärmar
- Man - hona
- Lödstation
- Superlim
- 2x enkanals pekmodul (RÖD/BLÅ)
Steg 1: Anslut (pekskärmen)
Så vi kommer att göra detta till en handhållen konsol med två trådlösa kontroller.
Därför kommer vi att ha en huvudenhet (den största delen, med LCD -skärmen)
Huvudenheten körs med Arduino MEGA.
De två separata kontrollerna kommer var och en att köra en Arduino UNO.
Senare kommer vi att få Arduinos att kommunicera med varandra för att skicka kontrolldata.
Börja med att ansluta 320x480 -skärmen korrekt till din huvudskärmenhet (Arduino MEGA) som i den här självstudien. (Adafruit har en bra detaljerad handledning för kabeldragning och kod).
För ljud kopplade jag en summer och en 3W 4Ohm högtalare för att skilja digitala stift och GND.
med tonen (stift, frekvens, varaktighet); Du kan skapa några grundläggande monofoniska ljud.
Steg 2: Bekanta dig med biblioteken
Skärmen Adafruit 320x480 stöder motsvarande Adafruit_GFX- och Adafruit_TFTLCD -bibliotek.
Läs dokumentationen. Jag tror att det förklaras ganska bra där.
Se till att du har rätt inställningar i Arduino IDE:
Verktyg -> Bräda -> Arduino/Genuino MEGA eller MEGA 2560
Verktyg -> Port -> [Porten med '' Arduino MEGA '' i den]
Detta specifika skärmbibliotek stöder anpassade teckensnitt, grundläggande former och en mängd olika färger.
Något anmärkningsvärt kan vara att uppdateringsfrekvensen är för låg för smidig animering. Om du vill uppdatera skärmen varje bock blir det för långsamt att hantera omritning av varje pixel, och det kommer att flimra
Så jag föreslår att du arbetar kreativt kring detta, som hur några av de äldre handenheterna hanterade animering: med nyckelbilder. Mindre är mer! Och istället för att rita om allt varannan sekund, om du vill flytta en rektangel till vänster eller höger, kan du helt enkelt radera spåret det lämnar efter sig, istället för att radera hela objektet och rita om det.
Till exempel använde jag skärmflimmer som en blinkande effekt för karaktären vid introsekvensen.
Från Adafruit_GFX -biblioteket använde jag främst tft.fillRect (x, y, bredd, höjd, färg); och tft.print (text); funktioner.
Att experimentera är nyckeln.
Steg 3: Designa ett grafiskt användargränssnitt / huvudmeny
Efter att du fått kunskap inom biblioteket och känner till dess begränsningar/befogenheter kan du börja designa en huvudmenyskärm.
Återigen, tänk på rektanglar. Det var i alla fall vad jag gjorde.
Här är min kod för användargränssnittet
pastebin.com/ubggvcqK
Du kan skapa reglage för skärmens ljusstyrka, för att styra '' Lite '' -nålen på din Adafruit -pekskärm, genom en analog pin.
Steg 4: Anslut de två kontrollerna
För controller -delen är det faktiskt upp till dig vilken typ av sensorer du vill använda, beroende på vilket spel du planerar att göra
Okej, så för kontrollerna bestämde jag mig för att använda:
- En trycksensor
- En OLED -skärm
- En-kanals pekmodul som slås på eller av
- Gest -sensor (RobotDyn APDS9960)
- nRFL01+ sändtagare (för trådlös kommunikation)
- En tryckknapp
Obs: Gest -sensorn och OLED använder båda SCL / SDA -anslutningar. Det tog mig ett tag att inse att Arduino bara har två: A4 och A5. Men du kan helt enkelt ansluta dessa parallellt till brödbrädan och det kommer att fungera bra
Steg 5: Börja ansluta den trådlösa anslutningen
Det tog lite tid innan jag kopplade till nRF24L01+ -modulerna för att få det att fungera.
Jag var tvungen att ta till TMRh20 RF24 -biblioteket efter att jag inte kunde få rätt sensordata överförd till skärmen.
För att flera Arduinos ska kunna kommunicera med varandra måste vi se till att minst en av UNO: erna drivs, liksom MEGA.
Använd seriekonsolen för MEGA för att skriva ut resultaten du får från UNO och se om det fungerar.
Här är koden
Här är biblioteket
Steg 6: Gå vilt! Prova olika saker
En avgörande del av min utvecklingsprocess var att bara testa många saker!
Vilken typ av knappar vill du använda?
Vad lägger du i dina kontroller?
Titta runt på webbplatser, du hittar många komponenter förutom de vanliga '' A/B '' -knapparna eller analoga joysticks. Bli inspirerad och motiverad att prova!
När du väl fått en tydlig och fungerande idé om vad du vill lägga i styrenheterna kopplar du ihop komponenterna.
Beroende på hur de fungerar måste du använda digitala ingångar eller analoga ingångar.
OBS: Vissa komponenter kan behöva SCL / SDA -stift för att fungera korrekt. Och om du har två eller flera sensorer som båda behöver samma, kommer du förmodligen att få en panikattack som jag. Men du behöver inte oroa dig
Du kan sätta både sensorernas SDA- och SCL -stift i serie med varandra, gå in i A4 och A5 och det kommer att fungera
Steg 7: Design
När du fått en cool idé för de sensorer du vill använda, skissa några idéer för en design du gillar.
Efter det, gå in på några modelleringsprogram som Blender, Maya, Cinema 4D.
Jag använde Blender för att skapa en (grov) modell.
För att få tydliga mätningar i Blender kan du ändra enheten för rutstorleken till millimeter.
När du har gjort en modell, se till att du inte har några dubbla hörn och att du har räknat om dina normer.
Exportera filen som en.stl, om du vill använda en 3D -skrivare som jag.
OBS! I Blender måste du ställa in exportskalan till 0,1 om du vill ha den exakta storleken i Cura i nästa steg
Steg 8: 3D -utskrift av höljet
Denna modell trycktes med 2,85 mm svart PLA -filament på en Ultimaker 2+ -skrivare.
Ladda ner CURA
Ladda upp din. STL i Cura så visar det hur lång tid det tar.
För ett handhållet fodral kan det ta upp till 10 timmar att skriva ut, beroende på storlek.
Men för modeller med låg detalj kan du påskynda processen, vilket är vad jag gjorde.
Här är mina inställningar:
Lagerhöjd: 0,2
Väggtjocklek: 0,8
Övre/nedre tjocklek: 0,8
Munstycke: 0,4
Temperatur: 60 grader Celsius
Flöde: 100%
Brim: Var som helst som berör byggplattan
Påfyllningstäthet: 20%
Gradvis: 0
Munstycks temperatur: 220 C
Utskriftshastighet: 120%
Steg 9: Lödning och slutbehandling
Du har kommit långt.
Det sista steget är att skaffa en perfboard / veroboard och översätta dina breadboard -anslutningar till en del av en prototypplatta.
Se till att elektroniken passar inuti de tryckta höljena, och skär kanske lite trä -MDF för att få delar där knappar / styringångar sticker ut.
Jag använde en laserskärare för detta.
Det viktigaste är att skruva runt, prova på saker du aldrig gjort annars och ha kul!
Hoppas denna handledning var tillräckligt tydlig … Det var ett ganska svårt projekt, vilket gav ett bra resultat!:)
Steg 10: Förhandsgranska
Rekommenderad:
MutantC V3 - modulär och kraftfull handhållen dator: 9 steg (med bilder)
MutantC V3 - Modulär och kraftfull handhållen PC: En Raspberry -pi -handhållen plattform med ett fysiskt tangentbord, display- och expansionshuvud för anpassade kort (som Arduino Shield) .mutantC_V3 är efterföljare av mutantC_V1 och V2. Kolla in mutantC_V1 och mutantC_V2.https: //mutantc.gitlab.io/https: // gitla
Ansluter bearbetning och Arduino och gör 7 segment och servo GUI -kontroller: 4 steg
Ansluta bearbetning och Arduino och göra 7 segment och servo GUI -kontroller: För vissa projekt måste du använda Arduino eftersom det ger en enkel prototypplattform men visning av grafik i seriell bildskärm av Arduino kan ta ganska lång tid och är till och med svårt att göra. Du kan visa grafer på Arduino Serial Monitor
Hemlagad handhållen konsol: 12 steg (med bilder)
Hemlagad handhållen konsol: Välkommen till min steg -för -steg -guide om hur du skapar din egen DIY GameBoy med en Raspberry Pi 3 och mjukvaran Retropie. eller el
Handhållen Arduino Pong -konsol: 6 steg (med bilder)
Handhållen Arduino Pong -konsol: DFRobot nådde ut till mig nyligen och ville att jag skulle använda deras speciella Arduino Nano -kort och OLED. Först ville jag skapa en smart cykel, och jag byggde den i sin helhet. Men tyvärr var Nano för svag för att köra och lagra den massiva skissen
4 -vägs trafikljussystem med 5 Arduinos och 5 NRF24L01 trådlösa moduler: 7 steg (med bilder)
4 -vägs trafikljussystem med 5 Arduinos och 5 NRF24L01 trådlösa moduler: För ett tag sedan skapade jag en instruerbar detalj som beskriver ett par trafikljus på en brödbräda. Jag skapade också en annan instruerbar som visar det grundläggande ramverket för användning av en trådlös NRF24L01 -modul. fick mig att tänka! Det finns ganska många