Sadržaj:

Robot kontroliran pokretima pomoću Arduina: 7 koraka
Robot kontroliran pokretima pomoću Arduina: 7 koraka

Video: Robot kontroliran pokretima pomoću Arduina: 7 koraka

Video: Robot kontroliran pokretima pomoću Arduina: 7 koraka
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Srpanj
Anonim
Robot kontroliran pokretima pomoću Arduina
Robot kontroliran pokretima pomoću Arduina

Roboti se koriste u mnogim sektorima poput građevinarstva, vojske, proizvodnje, montaže itd. Roboti mogu biti autonomni ili poluautonomni. Autonomni roboti ne zahtijevaju nikakvu ljudsku intervenciju i mogu djelovati sami u skladu s situacijom. Poluautonomni roboti rade prema uputama koje su dali ljudi. Ove poluautonomne jedinice mogu se kontrolirati daljinski, telefonom, pokretima itd. Prethodno smo izgradili nekoliko robota temeljenih na IoT-u, kojima se može upravljati s web poslužitelja.

U današnjem ćemo članku izgraditi robota kontroliranog pokretima pomoću Arduina, akcelerometra MPU6050, para primopredajnika nRF24L01 i upravljačkog modula motora L293D. Dizajnirat ćemo ovog robota u dva dijela. Jedan je odašiljač, a drugi prijemnik. Odjeljak odašiljača sastoji se od Arduino Uno, MPU6050 akcelerometra i žiroskopa i nRF24L01 dok se odjeljak prijemnika sastoji od Arduino Uno, nRF24L01, dva istosmjerna motora i pogona motora L293D. Odašiljač će djelovati kao daljinski za upravljanje robotom gdje će se robot kretati u skladu s gestama.

Korak 1: Potrebne komponente

Potrebne komponente
Potrebne komponente
Potrebne komponente
Potrebne komponente
  • Arduino Uno (2)
  • NRF24L01 (2)
  • Motor MPU6050DC (2)
  • L293D Modul pokretača motora
  • Tijesto

MPU6050 Akcelerometar i žiroskop Modul senzora MPU6050 kompletan je 6-osni (troosni akcelerometar i troosni žiroskop) mikro-elektromehanički sustav. Modul senzora MPU6050 također ima senzor temperature na čipu. Ima I2C sabirnicu i sučelje pomoćne I2C sabirnice za komunikaciju s mikrokontrolerima i drugim senzorskim uređajima poput troosnog magnetometra, osjetnika tlaka itd. Modul senzora MPU6050 koristi se za mjerenje ubrzanja, brzine, orijentacije, pomaka i nekih drugih pokreta -povezani parametri. Ovaj senzorski modul također ima ugrađeni digitalni procesor kretanja koji može izvesti složene proračune.

Modul primopredajnika NRF24L01

nRF24L01 je jedno čip radio primopredajnik za svjetski ISM opseg 2,4 - 2,5 GHz. Primopredajnik se sastoji od potpuno integriranog sintetizatora frekvencija, pojačala snage, kristalnog oscilatora, demodulatora, modulatora i poboljšanog mehanizma protokola ShockBurs. Izlazna snaga, frekvencijski kanali i postavljanje protokola lako se mogu programirati putem SPI sučelja. Raspon radnog napona ovog primopredajničkog modula je 1,9 V do 3,6 V. Ima ugrađene načine isključivanja i pripravnosti koji ga štede i lako ostvaruju.

Korak 2: Rad robota kontroliranog pokretima ruke pomoću Arduina

Rad robota kontroliranog pokretima ruke pomoću Arduina
Rad robota kontroliranog pokretima ruke pomoću Arduina
Rad robota kontroliranog pokretima ruke pomoću Arduina
Rad robota kontroliranog pokretima ruke pomoću Arduina

Da bismo razumjeli funkcioniranje ovog automobila za upravljanje pokretima Arduino, podijelimo ovaj projekt na dva dijela. Prvi dio je odašiljački dio (daljinski) u kojem senzor ubrzanja MPU6050 kontinuirano šalje signale prijemniku (robotu) putem Arduina i nRF odašiljača.

Drugi dio je prijemni dio (Robotski automobil) u kojem nRF prijemnik prima prenesene podatke i šalje ih u Arduino, koji ih dalje obrađuje i prema tome pomiče robota.

Senzor ubrzanja MPU6050 čita koordinate X Y Z i šalje koordinate na Arduino. Za ovaj projekt potrebne su nam samo X i Y koordinate. Arduino zatim provjerava vrijednosti koordinata i šalje podatke nRF odašiljaču. Prenesene podatke prima nRF prijemnik. Primatelj šalje podatke na Arduino sa strane primatelja. Arduino prenosi podatke na IC upravljački program motora, a vozač motora okreće motore u željenom smjeru.

Korak 3: Dijagram kruga

Kružni dijagram
Kružni dijagram
Kružni dijagram
Kružni dijagram

Ovaj Robot kontroliran pokretima ruke pomoću Arduino hardvera podijeljen je u dva dijela

  1. Odašiljač
  2. Prijamnik

Korak 4: Krug odašiljača za auto kontroliran pokretima Arduino

Krug odašiljača za auto kontroliran pokretima Arduino
Krug odašiljača za auto kontroliran pokretima Arduino
Krug odašiljača za auto kontroliran pokretima Arduino
Krug odašiljača za auto kontroliran pokretima Arduino
Krug odašiljača za auto kontroliran pokretima Arduino
Krug odašiljača za auto kontroliran pokretima Arduino

Odjeljak odašiljača ovog projekta sastoji se od MPU6050 akcelerometra i žiroskopa, primopredajnika nRF24L01 i Arduino Uno. Arduino kontinuirano prima podatke iz MPU6050 i šalje te podatke nRF odašiljaču. RF odašiljač prenosi podatke u okoliš.

Korak 5: Krug prijamnika za auto kontroliran pokretima Arduino

Krug prijamnika za auto kontroliran pokretima Arduino
Krug prijamnika za auto kontroliran pokretima Arduino
Krug prijamnika za auto kontroliran pokretima Arduino
Krug prijamnika za auto kontroliran pokretima Arduino
Krug prijamnika za automobil s Arduino pokretima kontroliran pokretima
Krug prijamnika za automobil s Arduino pokretima kontroliran pokretima

Odjeljak prijemnika ovog robota kojim se upravlja pokretima sastoji se od Arduino Uno, primopredajnika nRF24L01, 2 istosmjerna motora i modula upravljačkog programa motora. NRF24L01 prijemnik prima podatke od odašiljača i šalje ih u Arduino. Zatim prema primljenim signalima, Arduino pomiče istosmjerne motore.

Korak 6: Objašnjenje programa

Za robota kontroliranog pokretima koji koristi Arduino, potpuni kôd dostupan je ovdje. U nastavku objašnjavamo program redak po redak.

Bočni program odašiljača

U ovom programu Arduino čita podatke s MPU6050 i šalje ih na odašiljač nRF 24L01.

1. Pokrenite program dodavanjem potrebnih datoteka knjižnice. Datoteke knjižnice možete preuzeti s navedenih veza.

SPI.h

nRF24L01.h

Žica.h

MPU6050.h

2. Zatim definirajte varijable za podatke žiroskopa i akcelerometra MPU6050. Ovdje će se koristiti samo podaci akcelerometra.

3. Definirajte adrese radio cijevi za komunikacijske i nRF odašiljače CN i CSN pinove.

4. Unutar funkcije void setup () pokrenite serijski monitor. Također, inicijalizirajte žičanu i radio komunikaciju. radio.setDataRate koristi se za postavljanje brzine prijenosa podataka.

5. Pročitajte podatke senzora MPU6050. Ovdje koristimo samo podatke akcelerometra smjera X i Y.

6. Na kraju, prenesite podatke senzora pomoću funkcije radio.write.

Program prijemnika sa strane

1. Kao i obično, pokrenite program uključivanjem potrebnih datoteka knjižnice.

2. Definirajte adrese radio cijevi za komunikacijske i nRF odašiljače CN i CSN pinove.

3. Definirajte lijevu i desnu iglu istosmjernog motora.

4. Sada provjerite je li radio dostupan ili nije. Ako jest, pročitajte podatke.

5. Sada usporedite primljene podatke i vozite motore prema uvjetima.

Korak 7: Testiranje robota kontroliranog pokretom ruke pomoću Arduina

Nakon što je hardver spreman, spojite Arduinos sa odašiljača i prijemnika na prijenosno računalo i prenesite kôd. Zatim pomaknite mjerač ubrzanja MPU6050 za upravljanje robotskim automobilom.

Cjeloviti rad robota kontroliranog pokretom može se pronaći u videu.

Preporučeni: