Kazalo:

Robot s kretnjami, ki uporablja Arduino: 7 korakov
Robot s kretnjami, ki uporablja Arduino: 7 korakov

Video: Robot s kretnjami, ki uporablja Arduino: 7 korakov

Video: Robot s kretnjami, ki uporablja Arduino: 7 korakov
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
Robot s kretnjami z uporabo Arduina
Robot s kretnjami z uporabo Arduina

Roboti se uporabljajo v številnih sektorjih, kot so gradbeništvo, vojska, proizvodnja, montaža itd. Roboti so lahko avtonomni ali pol-avtonomni. Avtonomni roboti ne potrebujejo človekovega posredovanja in lahko glede na situacijo delujejo sami. Polavtonomni roboti delujejo po navodilih ljudi. Te polavtonomne funkcije je mogoče upravljati z daljinskim upravljalnikom, telefonom, kretnjami itd. Pred tem smo izdelali nekaj robotov, ki temeljijo na IoT, ki jih je mogoče upravljati s spletnega strežnika.

V današnjem članku bomo z uporabo Arduino, merilnika pospeška MPU6050, para oddajnikov nRF24L01 in modula gonilnika motorja L293D zgradili robota, ki ga upravlja gesta. Robota bomo oblikovali v dva dela. Eden je oddajnik, drugi pa sprejemnik. Odsek oddajnika sestavljajo Arduino Uno, merilnik pospeška in žiroskop MPU6050 ter nRF24L01, oddelek sprejemnika pa Arduino Uno, nRF24L01, dva enosmerna motorja in gonilnik motorja L293D. Oddajnik bo deloval kot daljinski upravljalnik robota, kjer se bo robot premikal v skladu s kretnjami.

1. korak: potrebne komponente

Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
  • Arduino Uno (2)
  • NRF24L01 (2)
  • Motor MPU6050DC (2)
  • Modul gonilnika motorja L293D
  • Testo

Merilnik pospeška in žiroskop MPU6050 Senzorski modul MPU6050 je popoln 6-osni (3-osni merilnik pospeška in 3-osni žiroskop) mikro-elektro-mehanski sistem. Senzorski modul MPU6050 ima tudi senzor temperature na čipu. Ima vodilo I2C in vmesnik pomožnega vodila I2C za komunikacijo z mikrokrmilniki in drugimi senzorskimi napravami, kot so 3-osni magnetometer, senzor tlaka itd. Senzorski modul MPU6050 se uporablja za merjenje pospeška, hitrosti, orientacije, premika in nekaterih drugih gibanj. -povezani parametri. Ta senzorski modul ima tudi vgrajen digitalni procesor gibanja, ki lahko izvaja zapletene izračune.

Oddajniški modul NRF24L01

nRF24L01 je radijski oddajnik z enim čipom za svetovni pas 2,4 - 2,5 GHz ISM. Oddajnik je sestavljen iz popolnoma integriranega frekvenčnega sintetizatorja, ojačevalnika moči, kristalnega oscilatorja, demodulatorja, modulatorja in motorja protokola Enhanced ShockBurs. Izhodno moč, frekvenčne kanale in nastavitev protokola je enostavno programirati prek vmesnika SPI. Območje delovne napetosti tega oddajnega modula je od 1,9 V do 3,6 V. Ima vgrajene načine za izklop in stanje pripravljenosti, ki omogočata varčevanje z energijo in enostavno izvedbo.

2. korak: Delovanje robota, ki ga upravljate z ročnimi kretnjami, z uporabo Arduina

Delovanje robota, ki ga krmili ročna kretnja, z uporabo Arduina
Delovanje robota, ki ga krmili ročna kretnja, z uporabo Arduina
Delovanje robota, ki ga krmili ročna kretnja, z uporabo Arduina
Delovanje robota, ki ga krmili ročna kretnja, z uporabo Arduina

Za razumevanje delovanja tega avtomobila za kretnje Arduino razdelimo ta projekt na dva dela. Prvi del je oddajni del (daljinski), v katerem senzor merilnika pospeška MPU6050 nenehno pošilja signale sprejemniku (robotu) prek oddajnika Arduino in nRF.

Drugi del je sprejemni del (avtomobil Robot), v katerem sprejemnik nRF sprejme poslane podatke in jih pošlje v Arduino, ki jih nadalje obdela in ustrezno premakne robota.

Senzor pospeška MPU6050 bere koordinate X Y Z in jih pošilja v Arduino. Za ta projekt potrebujemo samo koordinate X in Y. Arduino nato preveri vrednosti koordinat in podatke pošlje oddajniku nRF. Poslane podatke sprejme sprejemnik nRF. Sprejemnik pošlje podatke na Arduino na strani sprejemnika. Arduino posreduje podatke v IC voznika motorja in voznik motorja obrne motorje v želeno smer.

3. korak: Shema vezja

Shema vezja
Shema vezja
Shema vezja
Shema vezja

Ta robot, krmiljen z gestami rok, s strojno opremo Arduino je razdeljen na dva dela

  1. Oddajnik
  2. Sprejemnik

4. korak: Oddajniško vezje za avtomobil, ki ga upravlja Arstuino s kretnjami

Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino
Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino
Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino
Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino
Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino
Oddajniški tokokrog za avto z gestami, ki ga upravlja Arduino

Odsek oddajnika tega projekta sestavljata merilnik pospeška in žiroskop MPU6050, oddajnik nRF24L01 in Arduino Uno. Arduino neprestano pridobiva podatke iz MPU6050 in te podatke pošilja oddajniku nRF. RF oddajnik prenaša podatke v okolje.

5. korak: Vezje sprejemnika za avtomobil, ki ga upravlja Arstuino z gestami

Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino
Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino
Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino
Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino
Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino
Vezje sprejemnika za avto z gestami, ki ga upravlja Arduino

Odsek sprejemnika tega robota, krmiljenega s kretnjami, sestavljajo Arduino Uno, oddajnik nRF24L01, 2 enosmerna motorja in modul gonilnika motorja. Sprejemnik NRF24L01 sprejme podatke od oddajnika in jih pošlje v Arduino. Nato glede na prejete signale Arduino premakne enosmerne motorje.

6. korak: Razlaga programa

Za robota z gestami, ki uporablja Arduino, je celotna koda na voljo tukaj. Spodaj razlagamo program po vrsticah.

Stranski program oddajnika

V tem programu Arduino prebere podatke iz MPU6050 in jih pošlje na oddajnik nRF 24L01.

1. Zaženite program tako, da dodate zahtevane knjižnične datoteke. Knjižnične datoteke lahko prenesete s navedenih povezav.

SPI.h

nRF24L01.h

Wire.h

MPU6050.h

2. Nato določite spremenljivke za podatke žiroskopa in merilnika pospeška MPU6050. Tu bodo uporabljeni samo podatki merilnika pospeška.

3. Določite naslove radijskih kanalov za komunikacijske in oddajnike nRF CN in CSN.

4. V funkciji void setup () zaženite serijski monitor. Inicializirajte tudi žično in radijsko komunikacijo. radio.setDataRate se uporablja za nastavitev hitrosti prenosa podatkov.

5. Preberite podatke senzorja MPU6050. Tukaj uporabljamo samo podatke merilnika pospeška X in Y.

6. Nazadnje prenesite podatke senzorja s funkcijo radio.write.

Stranski program sprejemnika

1. Kot običajno zaženite program tako, da vključite zahtevane knjižnične datoteke.

2. Določite naslove radijskih kanalov za komunikacijske in oddajnike nRF CN in CSN.

3. Določite levi in desni zatič enosmernega motorja.

4. Zdaj preverite, ali je radio na voljo ali ne. Če je, potem preberite podatke.

5. Zdaj primerjajte prejete podatke in motorje poganjajte v skladu s pogoji.

Korak 7: Preizkus robota, ki ga upravljate s kretnjami rok, z uporabo Arduina

Ko je strojna oprema pripravljena, na prenosni računalnik priključite oddajnik in sprejemnik na strani Arduinos in naložite kodo. Nato premaknite merilnik pospeška MPU6050 za nadzor robotskega avtomobila.

Celotno delovanje robota z gestami najdete v videoposnetku.

Priporočena: