Innehållsförteckning:

Gestkontrollerad robot med Arduino: 7 steg
Gestkontrollerad robot med Arduino: 7 steg

Video: Gestkontrollerad robot med Arduino: 7 steg

Video: Gestkontrollerad robot med Arduino: 7 steg
Video: Häftig gest-kontrollerad stuntbil snabb, snygg, stark och unik 2024, November
Anonim
Geststyrd robot med Arduino
Geststyrd robot med Arduino

Robotar används i många sektorer som konstruktion, militär, tillverkning, montering etc. Robotar kan vara autonoma eller halvautonoma. Autonoma robotar kräver inget mänskligt ingripande och kan agera på egen hand enligt situationen. Halvautonoma robotar arbetar enligt instruktioner från människor. Dessa semi-autonoma kan styras av fjärrkontroll, telefon, gester, etc. Vi har tidigare byggt några IoT-baserade robotar, som kan styras från webbservern.

I dagens artikel kommer vi att bygga en gestkontrollerad robot med Arduino, MPU6050 Accelerometer, nRF24L01-sändtagarpar och L293D-drivrutinsmodul. Vi kommer att designa denna robot i två delar. Den ena är sändaren och den andra är mottagaren. Sändarsektionen består av en Arduino Uno, MPU6050 Accelerometer och Gyroscope och nRF24L01 medan mottagarsektionen består av en Arduino Uno, nRF24L01, två likströmsmotorer och en L293D -motordrivrutin. Sändaren fungerar som fjärrkontroll för att styra roboten var roboten ska röra sig enligt gesterna.

Steg 1: Komponenter krävs

Komponenter krävs
Komponenter krävs
Komponenter krävs
Komponenter krävs
  • Arduino Uno (2)
  • NRF24L01 (2)
  • MPU6050DC Motor (2)
  • L293D -drivrutinsmodul
  • Smet

MPU6050 Accelerometer och gyroskop MPU6050 sensormodul är ett komplett 6-axligt (3-axligt accelerometer och 3-axligt gyroskop) mikroelektromekaniskt system. MPU6050 sensormodul har också en temperatursensor på chip. Den har en I2C-buss och ett extra I2C-bussgränssnitt för att kommunicera med mikrokontroller och andra sensorenheter som 3-axlig magnetometer, trycksensor etc. MPU6050-sensormodulen används för att mäta acceleration, hastighet, orientering, förskjutning och andra rörelser -relaterade parametrar. Denna sensormodul har också en inbyggd Digital Motion Processor som kan utföra komplexa beräkningar.

NRF24L01 Sändtagarmodul

nRF24L01 är en enkelsidig radiosändare för det globala 2,4 - 2,5 GHz ISM -bandet. Sändtagaren består av en fullt integrerad frekvenssynthesizer, en effektförstärkare, en kristalloscillator, en demodulator, en modulator och en Enhanced ShockBurs -protokollmotor. Utgångseffekt, frekvenskanaler och protokollinställningar är enkelt programmerbara via ett SPI -gränssnitt. Driftspänningsområdet för denna transceivermodul är 1,9V till 3,6V. Den har inbyggda Power Down- och Standby-lägen som gör den energibesparande och lätt att förverkliga.

Steg 2: Arbeta med Hand Gesture Controlled Robot med Arduino

Arbeta med handgestkontrollerad robot med Arduino
Arbeta med handgestkontrollerad robot med Arduino
Arbeta med handgestkontrollerad robot med Arduino
Arbeta med handgestkontrollerad robot med Arduino

För att förstå hur denna Arduino gestkontrollbil fungerar, låt oss dela upp det här projektet i två delar. Den första delen är sändardelen (fjärrkontrollen) där MPU6050 Accelerometer -sensorn kontinuerligt skickar signaler till mottagaren (Robot) genom Arduino och nRF -sändare.

Den andra delen är mottagardelen (robotbil) där nRF -mottagaren tar emot den överförda informationen och skickar den till Arduino, som vidare bearbetar dem och flyttar roboten i enlighet därmed.

MPU6050 Accelerometer -sensorn läser X Y Z -koordinaterna och skickar koordinaterna till Arduino. För detta projekt behöver vi bara X- och Y -koordinater. Arduino kontrollerar sedan koordinaternas värden och skickar data till nRF -sändaren. Den överförda datan tas emot av nRF -mottagaren. Mottagaren skickar data till mottagarsidan Arduino. Arduino skickar data till motordrivrutinens IC och motorföraren vrider motorerna i önskad riktning.

Steg 3: Kretsdiagram

Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram

Denna handgeststyrda robot med Arduino -hårdvara är uppdelad i två sektioner

  1. Sändare
  2. Mottagare

Steg 4: Sändarkrets för Arduino gestkontrollerad bil

Sändarkrets för Arduino gestkontrollerad bil
Sändarkrets för Arduino gestkontrollerad bil
Sändarkrets för Arduino gestkontrollerad bil
Sändarkrets för Arduino gestkontrollerad bil
Sändarkrets för Arduino gestkontrollerad bil
Sändarkrets för Arduino gestkontrollerad bil

Sändardelen i detta projekt består av MPU6050 Accelerometer och Gyroscope, nRF24L01Transceiver och Arduino Uno. Arduino får kontinuerligt data från MPU6050 och skickar dessa data till nRF -sändaren. RF -sändare överför data till miljön.

Steg 5: Mottagarkrets för Arduino gestkontrollerad bil

Mottagarkrets för Arduino gestkontrollerad bil
Mottagarkrets för Arduino gestkontrollerad bil
Mottagarkrets för Arduino gestkontrollerad bil
Mottagarkrets för Arduino gestkontrollerad bil
Mottagarkrets för Arduino gestkontrollerad bil
Mottagarkrets för Arduino gestkontrollerad bil

Mottagarsektionen i denna gestkontrollerade robot består av Arduino Uno, nRF24L01 -sändtagare, 2 likströmsmotorer och en motordrivrutinmodul. NRF24L01 -mottagaren tar emot data från sändaren och skickar den till Arduino. Enligt mottagna signaler flyttar Arduino sedan DC -motorerna.

Steg 6: Programförklaring

För gestkontrollerad robot som använder Arduino är hela koden tillgänglig här. Nedan förklarar vi programmet rad för rad.

Sändarens sidoprogram

I detta program läser Arduino data från MPU6050 och skickar det till nRF 24L01 -sändaren.

1. Börja programmet genom att lägga till de nödvändiga biblioteksfilerna. Du kan ladda ner biblioteksfilerna från de angivna länkarna.

SPI.h

nRF24L01.h

Wire.h

MPU6050.h

2. Definiera sedan variablerna för MPU6050 Gyroscope- och Accelerometer -data. Här kommer endast accelerometerdata att användas.

3. Definiera radiorörets adresser för kommunikations- och nRF -sändarna CN- och CSN -stiften.

4. Inuti void setup () -funktionen börjar seriell bildskärm. Och initiera även tråd- och radiokommunikation. radio.setDataRate används för att ställa in dataöverföringshastigheten.

5. Läs MPU6050 sensordata. Här använder vi bara X- och Y -riktningsaccelerometerdata.

6. Slutligen överför sensordata med funktionen radio.write.

Mottagarsidoprogram

1. Som vanligt startar du programmet genom att inkludera de nödvändiga biblioteksfilerna.

2. Definiera radiorörets adresser för kommunikations- och nRF -sändarna CN- och CSN -stiften.

3. Definiera vänster och höger likströmsmotorstift.

4. Kontrollera nu om radion är tillgänglig eller inte. Om det är det, läs sedan data.

5. Jämför nu de mottagna data och kör motorerna enligt förhållandena.

Steg 7: Testa den handgeststyrda roboten med Arduino

När hårdvaran är klar ansluter du både sändar- och mottagarsidan Arduinos till din bärbara dator och laddar upp koden. Flytta sedan MPU6050 -accelerometern för att styra robotbilen.

Den fullständiga funktionen för den gestkontrollerade roboten finns i videon.

Rekommenderad: