Innholdsfortegnelse:

Gestkontrollert robot ved bruk av Arduino: 7 trinn
Gestkontrollert robot ved bruk av Arduino: 7 trinn

Video: Gestkontrollert robot ved bruk av Arduino: 7 trinn

Video: Gestkontrollert robot ved bruk av Arduino: 7 trinn
Video: Голубая стрела (1958) фильм 2024, November
Anonim
Gestkontrollert robot ved hjelp av Arduino
Gestkontrollert robot ved hjelp av Arduino

Roboter brukes i mange sektorer som konstruksjon, militær, produksjon, montering, etc. Roboter kan være autonome eller semi-autonome. Autonome roboter krever ingen menneskelig inngrep og kan handle på egen hånd i henhold til situasjonen. Semi-autonome roboter jobber i henhold til instruksjoner gitt av mennesker. Disse semi-autonome kan styres av fjernkontroll, telefon, bevegelser, etc. Vi har tidligere bygget noen få IoT-baserte roboter, som kan styres fra webserveren.

I dagens artikkel skal vi bygge en gestkontrollert robot ved hjelp av Arduino, MPU6050 Accelerometer, nRF24L01 Transceiver-par og L293D-motordrivermodul. Vi vil designe denne roboten i to deler. Den ene er senderen, og den andre er mottakeren. Senderseksjonen består av et Arduino Uno, MPU6050 Accelerometer og Gyroscope, og nRF24L01 mens mottakerdelen består av en Arduino Uno, nRF24L01, to likestrømsmotorer og en L293D -motordriver. Senderen vil fungere som fjernkontroll for å kontrollere roboten hvor roboten skal bevege seg i henhold til bevegelsene.

Trinn 1: Komponenter påkrevd

Komponenter påkrevd
Komponenter påkrevd
Komponenter påkrevd
Komponenter påkrevd
  • Arduino Uno (2)
  • NRF24L01 (2)
  • MPU6050DC Motor (2)
  • L293D -motordrivermodul
  • Røre

MPU6050 Akselerometer og gyroskop MPU6050 sensormodulen er et komplett 6-akset (3-akset akselerometer og 3-akset gyroskop) mikro-elektro-mekanisk system. MPU6050 sensormodul har også en temperatursensor på brikken. Den har en I2C-buss og tilleggs-I2C-bussgrensesnitt for å kommunisere med mikrokontrollerne og andre sensorenheter som 3-akset magnetometer, trykksensor, etc. MPU6050 sensormodulen brukes til å måle akselerasjon, hastighet, orientering, forskyvning og andre bevegelser -relaterte parametere. Denne sensormodulen har også en innebygd digital bevegelsesprosessor som kan utføre komplekse beregninger.

NRF24L01 Transceiver Module

nRF24L01 er en enkeltbrikke radiosender / mottaker for verdensomspennende 2,4 - 2,5 GHz ISM -båndet. Transceiveren består av en fullt integrert frekvenssynthesizer, en effektforsterker, en krystalloscillator, en demodulator, en modulator og en Enhanced ShockBurs -protokollmotor. Utgangseffekt, frekvenskanaler og protokolloppsett kan enkelt programmeres via et SPI -grensesnitt. Driftsspenningsområdet til denne mottakermodulen er 1,9V til 3,6V. Den har innebygd Power Down og Standby-modus som gjør den strømbesparende og lett realiserbar.

Trinn 2: Arbeid med håndbevegelseskontrollert robot ved hjelp av Arduino

Arbeid med håndbevegelse kontrollert robot ved hjelp av Arduino
Arbeid med håndbevegelse kontrollert robot ved hjelp av Arduino
Arbeid med håndbevegelse kontrollert robot ved hjelp av Arduino
Arbeid med håndbevegelse kontrollert robot ved hjelp av Arduino

For å forstå hvordan denne Arduino gestkontrollbilen fungerer, la oss dele dette prosjektet i to deler. Den første delen er senderdelen (fjernkontrollen) der MPU6050 Accelerometer -sensoren kontinuerlig sender signaler til mottakeren (Robot) gjennom Arduino og nRF -sender.

Den andre delen er mottakerdelen (robotbil) der nRF -mottakeren mottar de overførte dataene og sender dem til Arduino, som videre behandler dem og flytter roboten deretter.

MPU6050 Accelerometer -sensor leser X Y Z -koordinatene og sender koordinatene til Arduino. For dette prosjektet trenger vi bare X- og Y -koordinater. Arduino sjekker deretter koordinatens verdier og sender dataene til nRF -senderen. De overførte dataene mottas av nRF -mottakeren. Mottakeren sender dataene til mottakerens Arduino. Arduino sender dataene til motordriverens IC og motorføreren snur motorene i ønsket retning.

Trinn 3: Kretsdiagram

Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram

Denne håndbevegelseskontrollerte roboten som bruker Arduino -maskinvare er delt inn i to seksjoner

  1. Sender
  2. Mottaker

Trinn 4: Senderkrets for Arduino Gesture Controlled Car

Senderkrets for Arduino Gesture Controlled Car
Senderkrets for Arduino Gesture Controlled Car
Senderkrets for Arduino Gesture Controlled Car
Senderkrets for Arduino Gesture Controlled Car
Senderkrets for Arduino Gesture Controlled Car
Senderkrets for Arduino Gesture Controlled Car

Senderseksjonen i dette prosjektet består av MPU6050 Accelerometer and Gyroscope, nRF24L01Transceiver og Arduino Uno. Arduinoen får kontinuerlig data fra MPU6050 og sender disse dataene til nRF -senderen. RF -sender overfører dataene til miljøet.

Trinn 5: Mottakerkrets for Arduino Gesture Controlled Car

Mottakerkrets for Arduino Gesture Controlled Car
Mottakerkrets for Arduino Gesture Controlled Car
Mottakerkrets for Arduino Gesture Controlled Car
Mottakerkrets for Arduino Gesture Controlled Car
Mottakerkrets for Arduino Gesture Controlled Car
Mottakerkrets for Arduino Gesture Controlled Car

Mottakerdelen av denne geststyrte roboten består av Arduino Uno, nRF24L01 Transceiver, 2 DC -motorer og en motordrivermodul. NRF24L01 mottaker mottar dataene fra senderen og sender dem til Arduino. I henhold til mottatte signaler flytter Arduino likestrømsmotorene.

Trinn 6: Forklaring av programmet

For geststyrt robot som bruker Arduino, er hele koden tilgjengelig her. Nedenfor forklarer vi programmet linje for linje.

Sendersideprogram

I dette programmet leser Arduino dataene fra MPU6050 og sender dem til nRF 24L01 sender.

1. Start programmet ved å legge til de nødvendige bibliotekfilene. Du kan laste ned biblioteksfilene fra de angitte koblingene.

SPI.h

nRF24L01.h

Wire.h

MPU6050.h

2. Deretter definerer du variablene for data fra MPU6050 Gyroscope og Accelerometer. Her vil bare Accelerometer -data bli brukt.

3. Definer radiorøradressene for kommunikasjons- og nRF -sendere CN- og CSN -pinner.

4. Begynn den serielle skjermen inne i funksjonen for oppsett av tomrom (). Og initialiser også tråd- og radiokommunikasjon. radio.setDataRate brukes til å angi dataoverføringshastigheten.

5. Les sensordata for MPU6050. Her bruker vi bare X- og Y -retningsakselometerdata.

6. Til slutt sender du sensordataene ved hjelp av radio.write -funksjonen.

Program for mottaker

1. Som vanlig starter du programmet ved å inkludere de nødvendige bibliotekfilene.

2. Definer radiorøradressene for kommunikasjons- og nRF -sendere CN- og CSN -pinner.

3. Definer venstre og høyre DC -motorstift.

4. Sjekk nå om radioen er tilgjengelig eller ikke. Hvis det er det, les deretter dataene.

5. Sammenlign nå de mottatte dataene og kjør motorene i henhold til forholdene.

Trinn 7: Testing av håndbevegelseskontrollert robot ved hjelp av Arduino

Når maskinvaren er klar, kobler du både sender og mottaker side Arduinos til den bærbare datamaskinen og laster opp koden. Flytt deretter MPU6050 -akselerometeret for å kontrollere robotbilen.

Den komplette bearbeidingen av den geststyrte roboten finner du i videoen.

Anbefalt: