INHOUDSOPGAWE:

Handkonsole met draadlose beheerders en sensors (Arduino MEGA & UNO): 10 stappe (met foto's)
Handkonsole met draadlose beheerders en sensors (Arduino MEGA & UNO): 10 stappe (met foto's)

Video: Handkonsole met draadlose beheerders en sensors (Arduino MEGA & UNO): 10 stappe (met foto's)

Video: Handkonsole met draadlose beheerders en sensors (Arduino MEGA & UNO): 10 stappe (met foto's)
Video: Sturingen/ICT/programmeren - mBot - De basis 2024, November
Anonim
Image
Image
Bedek die (aanraak) skerm
Bedek die (aanraak) skerm

Wat ek gebruik het

- Arduino MEGA

- 2x Arduino UNO

- Adafruit 3.5 TFT 320x480 raakskerm HXD8357D

- Gonser

- 4 Ohm 3W luidspreker

- 5 mm LED -ligte

- Ultimaker 2+ drukker met swart PLA -filament

- Lasersnyer met MDF -hout

- Swart spuitverf (vir die hout)

- 3x nRF24L01+ draadlose ontvangers

- 2x 16 mm knoppie

- 2x druksensors

- 3x 9V batteryhouers

- Broodbord

- 2x 0,96 '' OLED I2C -skerms

- Manlike - vroulike drade

- Soldeerstasie

- Wondergom

- 2x een-kanaal aanraakmodule (ROOI/BLOU)

Stap 1: Bedek die (aanraak) skerm

Bedek die (aanraak) skerm
Bedek die (aanraak) skerm
Bedek die (aanraak) skerm
Bedek die (aanraak) skerm

Ons maak dus 'n handkonsole met twee draadlose beheerders.

Daarom sal ons 'n hoofeenheid hê (die grootste deel met die LCD -skerm)

Die hoofeenheid word bestuur met die Arduino MEGA.

Die twee aparte beheerders sal elkeen 'n Arduino UNO bedryf.

Later sal ons die Arduinos met mekaar laat kommunikeer om kontroleerderdata te stuur.

Begin met die bedrading van die 320x480 -skerm korrek na u hoofskerm -eenheid (Arduino MEGA) soos in hierdie handleiding. (Adafruit het 'n wonderlike gedetailleerde handleiding vir bedrading en kode).

Vir klank het ek 'n gonser en 'n 3W 4Ohm -luidspreker bedraad om digitale penne en GND te skei.

met die toon (pen, frekwensie, duur); U kan basiese monofoniese klanke skep.

Stap 2: Maak kennis met die biblioteke

Maak kennis met die biblioteke
Maak kennis met die biblioteke
Maak kennis met die biblioteke
Maak kennis met die biblioteke

Die Adafruit 320x480 skerm ondersteun die ooreenstemmende Adafruit_GFX en Adafruit_TFTLCD biblioteke.

Lees die dokumentasie. Ek dink dit word nogal goed daar verduidelik.

Maak seker dat u die regte instellings in die Arduino IDE plaas:

Gereedskap -> Bord -> Arduino/Genuino MEGA of MEGA 2560

Gereedskap -> Poort -> [Die poort met '' Arduino MEGA '' daarin]

Hierdie spesifieke skermbiblioteek ondersteun pasgemaakte lettertipes, basiese vorms en 'n verskeidenheid kleure.

Iets opvallends kan wees dat die verversingsnelheid te laag is vir gladde animasie. As u elke skerm op die skerm wil opdateer, is dit te stadig om elke pixel te teken, en dit flikker

Ek stel dus voor dat u kreatief hieroor werk, soos hoe sommige van die ouer rekenaars animasie hanteer: met sleutelframe. Minder is meer! En in plaas daarvan om elke sekonde alles weer te teken, as u 'n reghoek na links of regs wil skuif, kan u eenvoudig die spoor wat dit agterlaat, uitvee, in plaas daarvan om die hele voorwerp uit te vee en dit weer te teken.

Byvoorbeeld, ek het die skermflits gebruik as 'n flikkerende effek vir die karakter tydens die inleiding.

Uit die Adafruit_GFX -biblioteek het ek hoofsaaklik die tft.fillRect (x, y, breedte, hoogte, kleur) gebruik; en tft.print (teks); funksies.

Eksperimenteer is die sleutel.

Stap 3: Ontwerp 'n grafiese gebruikerskoppelvlak / hoofkieslys

Ontwerp 'n grafiese gebruikerskoppelvlak / hoofkieslys
Ontwerp 'n grafiese gebruikerskoppelvlak / hoofkieslys
Ontwerp 'n grafiese gebruikerskoppelvlak / hoofkieslys
Ontwerp 'n grafiese gebruikerskoppelvlak / hoofkieslys

Nadat u kennis in die biblioteek opgedoen het en die beperkings/bevoegdhede daarvan geken het, kan u begin met die ontwerp van 'n hoofkieslys.

Dink weer aan reghoeke. Dit is ten minste wat ek gedoen het.

Hier is my kode vir die UI

pastebin.com/ubggvcqK

U kan skuifbalkies maak vir die helderheid van die skerm, om die '' Lite '' -pen op u Adafruit -aanraakskerm te beheer deur 'n analoog pen.

Stap 4: Verbind die twee beheerders

Draai die twee beheerders
Draai die twee beheerders
Draai die twee beheerders
Draai die twee beheerders
Draai die twee beheerders
Draai die twee beheerders

Vir die kontroleerder is dit eintlik aan u watter tipe sensors u wil gebruik, afhangende van watter speletjie u van plan is om te maak

Goed, so vir die beheerders het ek besluit om te gebruik:

- 'n Druksensor

- 'n OLED -skerm

- Een-kanaal aanraakmodule wat aan- of uitgeskakel word

- Gebaar sensor (RobotDyn APDS9960)

- nRFL01+ Transceiver (vir draadlose kommunikasie)

- 'n drukknop

Opmerking: die gebaar -sensor en die OLED gebruik beide SCL / SDA -verbindings. Dit het my 'n rukkie geneem om te besef dat Arduino net twee het: A4 en A5. Maar u kan hierdie parallelle eenvoudig op die broodbord aansluit, en dit sal goed werk

Stap 5: Begin met die bedrading van die draadlose verbinding

Begin met die bedrading van die draadlose verbinding
Begin met die bedrading van die draadlose verbinding
Begin met die bedrading van die draadlose verbinding
Begin met die bedrading van die draadlose verbinding
Begin met die bedrading van die draadlose verbinding
Begin met die bedrading van die draadlose verbinding

Dit het my 'n geruime tyd geneem om die nRF24L01+ modules aan te sluit.

Ek moes my toevlug tot die TMRh20 RF24 -biblioteek neem nadat ek nie die regte sensordata na die skerm kon stuur nie.

Om verskeie Arduino's met mekaar te kan kommunikeer, moet ons seker maak dat ten minste een van die UNO's sowel as die MEGA aangedryf word.

Gebruik die seriële konsole van die MEGA om die resultate van die UNO af te druk en kyk of dit werk.

Hier is die kode

Hier is die biblioteek

Stap 6: Gaan wild! Probeer verskillende dinge

Gaan wild! Probeer verskillende dinge
Gaan wild! Probeer verskillende dinge

'N Belangrike deel van my ontwikkelingsproses was om net baie dinge uit te probeer!

Watter soort knoppies wil jy gebruik?

Wat sit jy in jou beheerders?

Kyk rond op webwerwe, u vind baie komponente behalwe die gewone '' A/B '' knoppies of analoog joysticks. Word geïnspireer en gemotiveerd om dit te probeer!

Sodra u 'n duidelike en werkende idee gekry het van wat u in die beheerders wil plaas, bedraad die komponente.

Afhangende van hoe dit werk, moet u digitale insette of analoog insette gebruik.

LET WEL: Sommige komponente benodig moontlik SCL / SDA -penne om korrek te werk. En as u twee of meer sensors het wat albei dieselfde benodig, sal u waarskynlik 'n paniekaanval kry soos ek. Maar jy hoef nie bekommerd te wees nie

U kan beide die sensors se SDA- en SCL -penne in serie met mekaar plaas, in A4 en A5, en dit sal werk

Stap 7: Ontwerp

Ontwerp
Ontwerp
Ontwerp
Ontwerp
Ontwerp
Ontwerp

Sodra u 'n goeie idee gekry het vir die sensors wat u wil gebruik, skets 'n paar idees vir 'n ontwerp waarvan u hou.

Gaan daarna na 'n paar modelleringsprogramme soos Blender, Maya, Cinema 4D.

Ek het Blender gebruik om 'n (rowwe) model te skep.

Om duidelike metings in Blender te kry, kan u die eenheid van die roostergrootte na millimeter verander.

Nadat u 'n model gemaak het, moet u seker maak dat u geen dubbele hoekpunte het nie en dat u u norme herbereken het.

Voer die lêer uit as 'n.stl as u 'n 3D -drukker soos ek wil gebruik.

OPMERKING: In Blender moet u die uitvoerskaal op 0,1 stel as u die akkurate grootte in Cura in die volgende stap wil hê

Stap 8: 3D -afdruk van die omhulsel

3D -afdruk van die omhulsel
3D -afdruk van die omhulsel
3D -afdruk van die omhulsel
3D -afdruk van die omhulsel
3D -afdruk van die omhulsel
3D -afdruk van die omhulsel

Hierdie model is gedruk met 'n 2,85 mm swart PLA -filament op 'n Ultimaker 2+ -drukker.

Laai CURA af

Laai u. STL op Cura, en dit sal u wys hoe lank dit sal neem.

Afhangende van die grootte, kan dit tot 10 uur neem om te druk vir 'n draagbare tas.

Vir modelle met 'n lae detail kan u die proses bespoedig, wat ek gedoen het.

Hier is my instellings:

Laaghoogte: 0,2

Muurdikte: 0,8

Bo/onder dikte: 0,8

Spuitstuk: 0,4

Temperatuur: 60 grade Celsius

Vloei: 100%

Rand: oral waar die bouplaat raak

Vuldigtheid: 20%

Geleidelik: 0

Spuitstuk temperatuur: 220 C

Druk spoed: 120%

Stap 9: Soldeer en finaliseer

Soldeer en finaliseer
Soldeer en finaliseer
Soldeer en finaliseer
Soldeer en finaliseer
Soldeer en finaliseer
Soldeer en finaliseer

Jy het 'n lang pad gekom.

Die laaste stap is om 'n perfboard / veroboard aan te skaf en u broodbordverbindings te vertaal na 'n deel van 'n prototipe bord.

Maak seker dat die elektronika in die gedrukte omhulsels pas, en sny miskien 'n hout MDF om dele te maak waar knoppies / kontroleerder -insette deursteek.

Ek het 'n lasersnyer hiervoor gebruik.

Die belangrikste ding is om rond te skarrel, dinge te probeer wat jy nog nooit gedoen het nie en om pret te hê!

Hoop hierdie tutoriaal was duidelik genoeg … Dit was 'n redelik moeilike projek wat 'n uitstekende resultaat opgelewer het!:)

Stap 10: Voorskou

Aanbeveel: