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, Jun
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 sa situacijom. Poluautonomni roboti rade prema uputama koje su dali ljudi. Ove poluautonomne jedinice mogu se kontrolirati daljinski, telefonom, pokretima itd. Ranije smo izgradili nekoliko robota zasnovanih na IoT-u, kojima se može upravljati s web servera.

U današnjem ćemo članku izgraditi robota kontroliranog pokretima koristeći Arduino, akcelerometar MPU6050, par primopredajnika nRF24L01 i upravljački modul 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 pokretima.

Korak 1: Potrebne komponente

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

MPU6050 Akcelerometar i žiroskop Modul senzora MPU6050 je kompletan 6-osi (troosni akcelerometar i troosni žiroskop) mikro-elektro-mehanički sistem. Modul senzora MPU6050 takođe ima ugrađeni senzor temperature. Ima I2C sabirnicu i sučelje pomoćne I2C sabirnice za komunikaciju s mikrokontrolerima i drugim senzorskim uređajima poput troosnog magnetometra, senzora 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 pokreta koji može izvesti složene proračune.

NRF24L01 primopredajnički modul

nRF24L01 je jedno čip radio primopredajnik za svjetski ISM opseg 2,4 - 2,5 GHz. Primopredajnik se sastoji od potpuno integriranog sintetizatora frekvencije, 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. Opseg radnog napona ovog primopredajnika je od 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 rad ovog Arduino automobila za kontrolu pokreta, podijelimo ovaj projekt na dva dijela. Prvi dio je dio predajnika (daljinski) u kojem senzor akcelerometra 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 Arduinu, koji ih dalje obrađuje i prema tome pomiče robota.

Senzor ubrzanja MPU6050 čita koordinate X Y Z i šalje koordinate Arduinu. 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. Prijemnik šalje podatke na Arduino sa strane primatelja. Arduino prenosi podatke na IC upravljačkog programa motora, a vozač motora okreće motore u željenom smjeru.

Korak 3: Dijagram kola

Dijagram kola
Dijagram kola
Dijagram kola
Dijagram kola

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

  1. Odašiljač
  2. Prijemnik

Korak 4: Krug odašiljača za automobil 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 Arduino automobil kontroliran pokretima
Krug odašiljača za Arduino automobil kontroliran pokretima
Krug odašiljača za Arduino automobil kontroliran pokretima
Krug odašiljača za Arduino automobil kontroliran pokretima

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 predajnik prenosi podatke u okolinu.

Korak 5: Krug prijemnika za Arduino automobil kontroliran pokretima

Krug prijemnika za Arduino automobil kontroliran pokretima
Krug prijemnika za Arduino automobil kontroliran pokretima
Krug prijemnika za Arduino automobil kontroliran pokretima
Krug prijemnika za Arduino automobil kontroliran pokretima
Krug prijemnika za Arduino automobil kontroliran pokretima
Krug prijemnika za Arduino automobil kontroliran pokretima

Odsjek 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 kod dostupan je ovdje. U nastavku objašnjavamo program po redak.

Program odašiljača sa strane

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

1. Pokrenite program dodavanjem potrebnih datoteka biblioteke. Datoteke biblioteke možete preuzeti sa navedenih linkova.

SPI.h

nRF24L01.h

Wire.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 predajnike CN i CSN pinove.

4. Unutar funkcije void setup () pokrenite serijski monitor. Također, inicijalizirajte žičanu i radio komunikaciju. radio.setDataRate se koristi 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 sa strane prijemnika

1. Kao i obično, pokrenite program uključivanjem potrebnih datoteka biblioteke.

2. Definirajte adrese radio cijevi za komunikacijske i nRF predajnike CN i CSN pinove.

3. Definirajte lijevu i desnu iglu istosmjernog motora.

4. Sada provjerite je li radio dostupan ili nije. Ako jeste, 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 učitajte kôd. Zatim pomaknite akcelerometar MPU6050 za upravljanje robotskim automobilom.

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

Preporučuje se: