Kazalo:

Ročna konzola z brezžičnimi krmilniki in senzorji (Arduino MEGA & UNO): 10 korakov (s slikami)
Ročna konzola z brezžičnimi krmilniki in senzorji (Arduino MEGA & UNO): 10 korakov (s slikami)

Video: Ročna konzola z brezžičnimi krmilniki in senzorji (Arduino MEGA & UNO): 10 korakov (s slikami)

Video: Ročna konzola z brezžičnimi krmilniki in senzorji (Arduino MEGA & UNO): 10 korakov (s slikami)
Video: 🚀 RUTUBE и ТОЧКА. Разработка РУТУБА за 5 часов *БЕЗ ВОДЫ* [Next / React / Nest / PostgreSQL / Redux] 2024, November
Anonim
Image
Image
Ožičite zaslon (na dotik)
Ožičite zaslon (na dotik)

Kar sem uporabil

- Arduino MEGA

- 2x Arduino UNO

- Adafruit 3,5 TFT 320x480 zaslon na dotik HXD8357D

- zvočni signal

- 4 ohmski 3W zvočnik

- 5 mm LED luči

- Tiskalnik Ultimaker 2+ s črno PLA nitko

- Laserski rezalnik iz lesa MDF

- Črna barva v spreju (za les)

- 3x brezžični oddajniki nRF24L01+

- 2x 16 mm gumb

- 2x senzorja tlaka

- 3x 9V držala za baterije

- Ogledna plošča

- 2x 0,96 -palčni zasloni OLED I2C

- Moško - ženske žice

- Solderstation

- Super lepilo

- 2x enokanalni modul na dotik (RDEČA/MODRA)

1. korak: Ožičite zaslon (na dotik)

Ožičite zaslon (na dotik)
Ožičite zaslon (na dotik)
Ožičite zaslon (na dotik)
Ožičite zaslon (na dotik)

Tako bomo naredili ročno konzolo z dvema brezžičnima krmilnikoma.

Zato bomo imeli glavno enoto (največji del z LCD zaslonom)

Glavna enota bo delovala z Arduino MEGA.

Oba ločena krmilnika bosta upravljala Arduino UNO.

Kasneje bomo Arduinove medsebojno komunicirali za pošiljanje podatkov krmilnika.

Začnite s pravilnim ožičenjem zaslona 320x480 na enoto glavnega zaslona (Arduino MEGA), kot je v tej vadnici. (Adafruit ima odlično podrobno vadnico za ožičenje in kodo).

Za zvok sem ožičil brenčalo in 3W 4Ohm zvočnik za ločevanje digitalnih zatičev in GND.

s tonom (pin, frekvenca, trajanje); Ustvarite lahko nekaj osnovnih monofonskih zvokov.

Korak: Spoznajte knjižnice

Spoznajte knjižnice
Spoznajte knjižnice
Spoznajte knjižnice
Spoznajte knjižnice

Zaslon Adafruit 320x480 podpira ustrezne knjižnice Adafruit_GFX in Adafruit_TFTLCD.

Preberite dokumentacijo. Mislim, da je tam dobro razloženo.

V Arduino IDE vnesite prave nastavitve:

Orodja -> Plošča -> Arduino/Genuino MEGA ali MEGA 2560

Orodja -> Vrata -> [Vrata z '' Arduino MEGA '' v njem]

Ta posebna knjižnica zaslona podpira pisave po meri, osnovne oblike in različne barve.

Omeniti velja, da je hitrost osveževanja prenizka za nemoteno animacijo. Če želite posodabljati zaslon ob vsakem kljuku, bo prepočasen pri ponovnem risanju vsake slikovne pike in utripal bo

Zato predlagam, da se oko tega kreativno lotite, na primer, kako so nekateri starejši ročni računalniki ravnali z animacijo: s ključnimi sličicami. Manj je več! Namesto da bi vsako sekundo prerisali vse, če želite pravokotnik premakniti v levo ali desno, lahko preprosto izbrišete sled, ki jo pušča, namesto da izbrišete celoten predmet in ga na novo narišete.

Na primer, utripanje zaslona sem uporabil kot utripajoč učinek za lik v uvodnem zaporedju.

Iz knjižnice Adafruit_GFX sem uporabljal predvsem tft.fillRect (x, y, širina, višina, barva); in tft.print (besedilo); funkcije.

Eksperimentiranje je ključno.

3. korak: Oblikujte grafični uporabniški vmesnik / glavni meni

Oblikujte grafični uporabniški vmesnik / glavni meni
Oblikujte grafični uporabniški vmesnik / glavni meni
Oblikujte grafični uporabniški vmesnik / glavni meni
Oblikujte grafični uporabniški vmesnik / glavni meni

Ko pridobite znanje v knjižnici in spoznate njene omejitve/pooblastila, lahko začnete oblikovati zaslon glavnega menija.

Še enkrat pomislite na pravokotnike. Vsaj to sem naredil.

Tukaj je moja koda za uporabniški vmesnik

pastebin.com/ubggvcqK

Ustvarite lahko drsnike za svetlost zaslona in s pomočjo analognega zatiča upravljate pin "Lite" na zaslonu na dotik Adafruit.

4. korak: Povežite dva krmilnika

Ožičite dva krmilnika
Ožičite dva krmilnika
Ožičite dva krmilnika
Ožičite dva krmilnika
Ožičite dva krmilnika
Ožičite dva krmilnika

Kar zadeva krmilnik, je odvisno od vas, kakšne senzorje želite uporabiti, odvisno od igre, ki jo nameravate narediti

V redu, za krmilnike sem se odločil uporabiti:

- Senzor tlaka

- Zaslon OLED

- Enokanalni modul na dotik, ki se vklopi ali izklopi

- Senzor kretnje (RobotDyn APDS9960)

- oddajnik nRFL01+ (za brezžično komunikacijo)

- Potisni gumb

Opomba: Senzor kretnje in OLED uporabljata povezavi SCL / SDA. Trajalo je nekaj časa, da sem ugotovil, da ima Arduino samo dva: A4 in A5. Lahko pa te vzporednice preprosto povežete na mizo in delovalo bo v redu

5. korak: Začnite ožičiti brezžično povezavo

Začnite ožičiti brezžično povezavo
Začnite ožičiti brezžično povezavo
Začnite ožičiti brezžično povezavo
Začnite ožičiti brezžično povezavo
Začnite ožičiti brezžično povezavo
Začnite ožičiti brezžično povezavo

Ožičenje modulov nRF24L01+ mi je vzelo nekaj časa, da je delovalo.

Moral sem se zateči k knjižnici TMRh20 RF24, potem ko nisem mogel dobiti ustreznih podatkov senzorja, prenesenih na zaslon.

Če želimo, da več Arduino komunicira med seboj, moramo poskrbeti, da bo vsaj en od UNO -jev napajan, prav tako kot MEGA.

S serijsko konzolo MEGA natisnite rezultate, ki jih dobite pri UNO, in preverite, ali deluje.

Tukaj je koda

Tukaj je knjižnica

6. korak: Poživite! Preizkusite različne stvari

Pojdi divje! Preizkusite različne stvari
Pojdi divje! Preizkusite različne stvari

Ključni del mojega razvojnega procesa je bilo, da preizkusim veliko stvari!

Kakšne gumbe želite uporabiti?

Kaj dajete v krmilnike?

Oglejte si spletna mesta, poleg običajnih gumbov '' A/B '' ali analognih igralnih palic boste našli veliko komponent. Bodite navdihnjeni in motivirani, da poskusite!

Ko dobite jasno in delujočo predstavo o tem, kaj želite vstaviti v krmilnike, priključite komponente.

Glede na to, kako delujejo, boste morali uporabiti digitalne vhode ali analogne vhode.

OPOMBA: Za pravilno delovanje nekaterih komponent bodo morda potrebni zatiči SCL / SDA. In če imate dva ali več senzorjev, ki potrebujeta enako, boste verjetno dobili napad panike, kot sem jaz. Vendar vam ni treba skrbeti

Zatiče SDA in SCL obeh senzorjev lahko postavite zaporedno med seboj, tako da greste v A4 in A5 in delovalo bo

7. korak: Oblikovanje

Oblikovanje
Oblikovanje
Oblikovanje
Oblikovanje
Oblikovanje
Oblikovanje

Ko dobite kul idejo za senzorje, ki jih želite uporabiti, skicirajte nekaj idej za obliko, ki vam je všeč.

Po tem pojdite v nekatere modelarske programe, kot so Blender, Maya, Cinema 4D.

Z mešalnikom sem ustvaril (grob) model.

Za jasne meritve v mešalniku lahko enoto velikosti mreže spremenite v milimetre.

Ko naredite model, se prepričajte, da nimate dvojnih točk in ste preračunali normale.

Izvozi datoteko kot.stl, če želiš uporabiti 3D tiskalnik, kot sem jaz.

OPOMBA: V Blenderju boste morali izvozno lestvico nastaviti na 0,1, če želite v naslednjem koraku natančno velikost v Curi

8. korak: 3D tiskanje ohišja

3D tiskanje ohišja
3D tiskanje ohišja
3D tiskanje ohišja
3D tiskanje ohišja
3D tiskanje ohišja
3D tiskanje ohišja

Ta model je bil natisnjen z 2,85 mm črno PLA žarilno nitko na tiskalniku Ultimaker 2+.

Prenesite CURA

Naložite svoj. STL v Curo in pokazal vam bo, koliko časa bo trajal.

Tiskanje ročnega ohišja lahko traja do 10 ur, odvisno od velikosti.

Pri modelih z majhnimi podrobnostmi pa lahko postopek pospešite, kar sem tudi storil.

Tu so moje nastavitve:

Višina sloja: 0,2

Debelina stene: 0,8

Zgornja/spodnja debelina: 0,8

Šoba: 0,4

Temperatura: 60 stopinj Celzija

Pretok: 100%

Brim: kjer koli se dotika gradbene plošče

Gostota polnjenja: 20%

Postopno: 0

Temperatura šobe: 220 C

Hitrost tiskanja: 120%

9. korak: Spajkanje in dokončanje

Spajkanje in dokončanje
Spajkanje in dokončanje
Spajkanje in dokončanje
Spajkanje in dokončanje
Spajkanje in dokončanje
Spajkanje in dokončanje

Prišli ste daleč.

Zadnji korak je pridobitev perfboard / veroboard plošče in povezave z vašo mizo prevedite v del plošče za izdelavo prototipov.

Poskrbite, da se elektronika prilega tiskanim ohišjem, in morda izrežite nekaj lesenega MDF -ja, da naredite dele, skozi katere se držijo gumbi / vhodi krmilnika.

Za to sem uporabil laserski rezalnik.

Najpomembnejše je, da se zajebavate, preizkusite nekaj, česar sicer niste storili drugače, in se zabavajte!

Upam, da je bila ta vadnica dovolj jasna … To je bil precej težak projekt, ki je prinesel odličen rezultat!:)

10. korak: Predogled

Priporočena: