Innholdsfortegnelse:
- Trinn 1: Koble til (berøringsskjermen)
- Trinn 2: Bli kjent med bibliotekene
- Trinn 3: Utform et grafisk brukergrensesnitt / hovedmeny
- Trinn 4: Koble til de to kontrollerne
- Trinn 5: Begynn å koble til den trådløse tilkoblingen
- Trinn 6: Bli vill! Prøv forskjellige ting
- Trinn 7: Design
- Trinn 8: 3D -utskrift av vedlegg
- Trinn 9: Lodding og sluttbehandling
- Trinn 10: Forhåndsvisning
Video: Håndholdt konsoll med trådløse kontrollere og sensorer (Arduino MEGA & UNO): 10 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Det jeg brukte
- Arduino MEGA
- 2x Arduino UNO
- Adafruit 3,5 TFT 320x480 berøringsskjerm HXD8357D
- summer
- 4 Ohm 3W høyttaler
- 5 mm LED -lys
- Ultimaker 2+ skriver m/ svart PLA -filament
- Laserskærer m/ MDF -tre
- Svart spraymaling (for treverket)
- 3x nRF24L01+ Trådløse mottakere
- 2x 16 mm knapp
- 2x trykksensorer
- 3x 9V batteriholdere
- Brødbrett
- 2x 0,96 '' OLED I2C -skjermer
- Mannlige - kvinnelige ledninger
- Loddemaskin
- Superlim
- 2x en-kanals berøringsmodul (RØD/BLÅ)
Trinn 1: Koble til (berøringsskjermen)
Så vi skal lage dette til en håndholdt konsoll, med to trådløse kontrollere.
Derfor vil vi ha en hovedenhet (Den største delen, med LCD -skjermen)
Hovedenheten kjøres med Arduino MEGA.
De to separate kontrollerne vil kjøre en Arduino UNO.
Senere vil vi få Arduinos til å kommunisere med hverandre for å sende data fra kontrolleren.
Start med å koble 320x480 -skjermen riktig til hovedskjermenheten (Arduino MEGA) som i denne opplæringen. (Adafruit har en flott detaljert opplæring for ledninger og kode).
For lyd, koblet jeg en summer og en 3W 4Ohm høyttaler for å skille digitale pins og GND.
med tonen (pin, frekvens, varighet); Du kan lage noen grunnleggende monofoniske lyder.
Trinn 2: Bli kjent med bibliotekene
Adafruit 320x480 -skjermen støtter de tilsvarende Adafruit_GFX- og Adafruit_TFTLCD -bibliotekene.
Les dokumentasjonen. Jeg tror det er forklart ganske bra der.
Sørg for å sette inn de riktige innstillingene i Arduino IDE:
Verktøy -> Brett -> Arduino/Genuino MEGA eller MEGA 2560
Verktøy -> Port -> [Porten med '' Arduino MEGA '' i den]
Dette bestemte skjermbiblioteket støtter tilpassede fonter, grunnleggende former og en rekke farger.
Noe bemerkelsesverdig kan være at oppdateringsfrekvensen er for lav for jevn animasjon. Hvis du vil oppdatere skjermen hver hake, vil det være for sakte å håndtere tegningen av hver piksel, og den vil flimre
Så jeg vil foreslå å jobbe kreativt rundt dette, som hvordan noen av de eldre grafregnerne håndterte animasjon: med nøkkelbilder. Mindre er mer! Og i stedet for å tegne alt på nytt hvert sekund, hvis du vil flytte et rektangel til venstre eller høyre, kan du ganske enkelt slette stien det etterlater seg, i stedet for å slette hele objektet og tegne det på nytt.
For eksempel brukte jeg skjermflimmer som en blinkende effekt for karakteren i introsekvensen.
Fra Adafruit_GFX biblioteket brukte jeg hovedsakelig tft.fillRect (x, y, bredde, høyde, farge); og tft.print (tekst); funksjoner.
Å eksperimentere er nøkkelen.
Trinn 3: Utform et grafisk brukergrensesnitt / hovedmeny
Etter å ha fått kunnskap i biblioteket og vite dets begrensninger/krefter, kan du begynne å designe en hovedmenyskjerm.
Igjen, tenk på rektangler. Det var i hvert fall det jeg gjorde.
Her er koden min for brukergrensesnittet
pastebin.com/ubggvcqK
Du kan lage glidebrytere for skjermens lysstyrke, for å kontrollere '' Lite '' -nålen på Adafruit -berøringsskjermen, gjennom en analog pin.
Trinn 4: Koble til de to kontrollerne
For kontrolleren er det faktisk opp til deg hva slags sensorer du vil bruke, avhengig av hvilket spill du planlegger å lage
Ok, så for kontrollerne bestemte jeg meg for å bruke:
- En trykksensor
- En OLED -skjerm
- En-kanals berøringsmodul som slås på eller av
Bevegelsessensor (RobotDyn APDS9960)
- nRFL01+ Transceiver (for trådløs kommunikasjon)
- En trykknapp
Merk: Gestusensoren og OLED bruker begge SCL / SDA -tilkoblinger. Det tok meg en stund å innse at Arduino bare har to: A4 og A5. Men du kan bare koble disse parallelt til brødbrettet, og det vil fungere fint
Trinn 5: Begynn å koble til den trådløse tilkoblingen
Det tok litt tid før jeg begynte å koble til nRF24L01+ -modulene.
Jeg måtte ty til TMRh20 RF24 -biblioteket, etter at jeg ikke klarte å få de riktige sensordataene overført til skjermen.
For at flere Arduinos skal kommunisere med hverandre, må vi sørge for at minst en av UNO -ene er drevet, så vel som MEGA.
Bruk seriekonsollen til MEGA til å skrive ut resultatene du får fra UNO, og se om det fungerer.
Her er koden
Her er biblioteket
Trinn 6: Bli vill! Prøv forskjellige ting
En avgjørende del av utviklingsprosessen min var å bare prøve mange ting!
Hva slags knapper vil du bruke?
Hva legger du i kontrollerne dine?
Se deg rundt på nettsteder, du vil finne mange komponenter i tillegg til de vanlige '' A/B '' -knappene eller analoge joysticks. Bli inspirert og motivert til å prøve!
Når du har fått en klar og fungerende idé om hva du vil putte i kontrollerne, koble komponentene.
Avhengig av hvordan de fungerer, må du bruke digitale innganger eller analoge innganger.
MERK: Noen komponenter kan trenge SCL / SDA -pinner for å fungere korrekt. Og hvis du har to eller flere sensorer som begge trenger det samme, vil du sannsynligvis få et panikkanfall som meg. Men du trenger ikke bekymre deg
Du kan sette både sensorens SDA- og SCL -pinner i serie med hverandre, gå inn i A4 og A5, og det vil fungere
Trinn 7: Design
Når du har fått en kul idé for sensorene du vil bruke, skisserer du noen ideer til et design du liker.
Etter det kan du gå inn i noen modelleringsprogrammer som Blender, Maya, Cinema 4D.
Jeg brukte Blender til å lage en (grov) modell.
For å få klare målinger i Blender, kan du endre enheten til rutenettstørrelsen til millimeter.
Etter at du har laget en modell, må du passe på at du ikke har doble hjørner og at du har beregnet dine normaler på nytt.
Eksporter filen som en.stl, hvis du vil bruke en 3D -skriver som meg.
MERK: I Blender må du sette eksportskalaen til 0,1 hvis du vil ha den nøyaktige størrelsen i Cura i neste trinn
Trinn 8: 3D -utskrift av vedlegg
Denne modellen ble skrevet ut med 2,85 mm svart PLA -filament på en Ultimaker 2+ -skriver.
Last ned CURA
Last inn. STL -en din i Cura, så viser den hvor lang tid det tar.
For en håndholdt eske kan det ta opptil 10 timer å skrive ut, avhengig av størrelse.
For modeller med lite detalj kan du imidlertid fremskynde prosessen, noe jeg gjorde.
Her er mine innstillinger:
Laghøyde: 0,2
Veggtykkelse: 0,8
Øvre/nedre tykkelse: 0,8
Dyse: 0,4
Temperatur: 60 grader Celsius
Flyt: 100%
Brem: Overalt som berører byggeplaten
Fylltetthet: 20%
Gradvis: 0
Dysetemperatur: 220 C
Utskriftshastighet: 120%
Trinn 9: Lodding og sluttbehandling
Du har kommet langt.
Det siste trinnet er å anskaffe et perfboard / veroboard, og oversette dine breadboard -tilkoblinger til en del av et prototypebrett.
Sørg for at elektronikken passer inn i de trykte skapene, og skjær eventuelt litt tre -MDF for å lage deler der knapper / kontrollerinnganger stikker gjennom.
Jeg brukte en laserskærer til dette.
Det viktigste er å skru deg rundt, prøve ut ting du aldri har gjort ellers, og ha det gøy!
Håper denne opplæringen var tydelig nok … Det var et ganske vanskelig prosjekt, som ga et flott resultat!:)
Trinn 10: Forhåndsvisning
Anbefalt:
Hvordan lage en Attiny85 -konsoll - ArduPlay: 5 trinn (med bilder)
Hvordan lage en Attiny85 -konsoll - ArduPlay: Det var slik: Jeg bla gjennom YouTube -videoer uten mål for å slappe av over en kopp te. Kanskje en fotballkamp høydepunkter eller en samling av morsomme videoer? Plutselig fikk jeg et varsel på telefonen min - en ny video på Electronoobs -kanalen. Uheldig
Pi -konsoll: den billige versjonen: 8 trinn (med bilder)
Pi -konsoll: den billige versjonen: Med all dilla med " retro " konsoller kommer tilbake og er så populære at jeg ønsket å se om jeg kunne bygge en selv ved hjelp av en Raspberry Pi. Etter å ha gjort en liten undersøkelse landet jeg på RetroPies nettsted (https://retropie.org.uk/) og kne
Hjemmelaget håndholdt konsoll: 12 trinn (med bilder)
Hjemmelaget håndholdt konsoll: Velkommen til min trinnvise guide for hvordan du lager din egen DIY GameBoy med en Raspberry Pi 3 og Retropie -emuleringsprogramvaren. Før jeg startet dette prosjektet, hadde jeg ingen erfaring med bringebærpi, retropie, lodding, 3d -utskrift eller elektr
Håndholdt Arduino Pong -konsoll: 6 trinn (med bilder)
Håndholdt Arduino Pong -konsoll: DFRobot kontaktet meg nylig, og ville at jeg skulle bruke deres spesielle Arduino Nano -bord og OLED. Først ønsket jeg å lage en smart sykkel, og jeg bygde den i sin helhet. Men dessverre var Nano for svak til å kjøre og lagre den massive skissen
Lag musikk med en Atari Punk -konsoll: 5 trinn (med bilder)
Lage musikk med en Atari Punk -konsoll: Noen gamle analoge kretser er like populære i dag som da de ble introdusert for flere tiår siden. Ofte slår de lett mikroer og andre digitale kretsløsninger når det gjelder grunnleggende enkelhet. Forrest har gjort det igjen .. hans favoritteksempel er Atari