INHOUDSOPGAWE:

Gebaarbeheerde robot met behulp van Arduino: 7 stappe
Gebaarbeheerde robot met behulp van Arduino: 7 stappe

Video: Gebaarbeheerde robot met behulp van Arduino: 7 stappe

Video: Gebaarbeheerde robot met behulp van Arduino: 7 stappe
Video: Глупый парень, 9 серия #анимация #роблокс #roblox 2024, November
Anonim
Gebaarbeheerde robot met behulp van Arduino
Gebaarbeheerde robot met behulp van Arduino

Robotte word in baie sektore gebruik, soos konstruksie, militêr, vervaardiging, montering, ens. Robotte kan outonoom of semi-outonoom wees. Outonome robotte benodig geen menslike ingryping nie en kan op hul eie optree volgens die situasie. Semi-outonome robotte werk volgens instruksies van mense. Hierdie semi-outonome kan beheer word deur afstandsbedienings, telefoon, gebare, ens. Ons het voorheen 'n paar IoT-gebaseerde robotte gebou wat vanaf die webbediener beheer kan word.

In die huidige artikel gaan ons 'n gebaarbeheerde robot bou met behulp van Arduino, MPU6050 versnellingsmeter, nRF24L01-ontvanger-paar en L293D-motorbestuurdermodule. Ons sal hierdie robot in twee dele ontwerp. Die een is die sender, en die ander is die ontvanger. Die sendergedeelte bestaan uit 'n Arduino Uno, MPU6050 versnellingsmeter en gyroscoop, en nRF24L01, terwyl die ontvanger -afdeling bestaan uit 'n Arduino Uno, nRF24L01, twee GS -motors en 'n L293D -motorbestuurder. Die sender dien as afstandsbediening om die robot te beheer waarheen die robot volgens die gebare sal beweeg.

Stap 1: Vereiste komponente

Komponente benodig
Komponente benodig
Komponente benodig
Komponente benodig
  • Arduino Uno (2)
  • NRF24L01 (2)
  • MPU6050DC motor (2)
  • L293D -motorbestuurdermodule
  • Beslag

MPU6050 versnellingsmeter en gyroscoop Die MPU6050 sensormodule is 'n volledige 6-as (3-as versnellingsmeter en 3-as gyroscoop) mikro-elektro-meganiese stelsel. Die MPU6050-sensormodule het ook 'n temperatuur-sensor op die chip. Dit het 'n I2C-bus en 'n hulp-I2C-bus-koppelvlak om met die mikrobeheerders en ander sensortoestelle te kommunikeer, soos 3-assige magnetometer, druksensor, ens. Die MPU6050-sensormodule word gebruik om versnelling, snelheid, oriëntasie, verplasing en ander bewegings te meet. -verwante parameters. Hierdie sensormodule het ook 'n ingeboude digitale bewegingsverwerker wat ingewikkelde berekeninge kan uitvoer.

NRF24L01 Transceiver Module

nRF24L01 is 'n enkel -chip radio -ontvanger vir die wêreldwye 2,4 - 2,5 GHz ISM -band. Die transceiver bestaan uit 'n volledig geïntegreerde frekwensiesintetiseerder, 'n kragversterker, 'n kristal ossillator, 'n demodulator, 'n modulator en 'n Enhanced ShockBurs protokol -enjin. Uitsetkrag, frekwenskanale en protokolopstelling is maklik programmeerbaar via 'n SPI -koppelvlak. Die werkspanningsreeks van hierdie Transceiver -module is 1.9V tot 3.6V. Dit het ingeboude afskakel- en bystandmodusse wat dit energiebesparend en maklik realiseerbaar maak.

Stap 2: Werk met 'n handgebaar -beheerde robot met Arduino

Werk van handgebaar -beheerde robot met behulp van Arduino
Werk van handgebaar -beheerde robot met behulp van Arduino
Werk van handgebaar -beheerde robot met behulp van Arduino
Werk van handgebaar -beheerde robot met behulp van Arduino

Om die werking van hierdie Arduino gebaarbeheermotor te verstaan, laat ons hierdie projek in twee dele verdeel. Die eerste deel is die sendergedeelte (afstandsbediening) waarin die MPU6050 Accelerometer -sensor deurlopend seine na die ontvanger (Robot) stuur deur middel van Arduino- en nRF -sender.

Die tweede deel is die ontvanger -deel (robotmotor) waarin die nRF -ontvanger die gestuurde data ontvang en dit na Arduino stuur, wat dit verder verwerk en die robot dienooreenkomstig beweeg.

Die MPU6050 versnellingsmeter sensor lees die X Y Z koördinate en stuur die koördinate na die Arduino. Vir hierdie projek benodig ons slegs X- en Y -koördinate. Arduino kontroleer dan die waardes van koördinate en stuur die data na die nRF -sender. Die gestuurde data word deur die nRF -ontvanger ontvang. Die ontvanger stuur die data na die Arduino van die ontvanger. Arduino gee die data deur aan die motorbestuurder -IC en die motorbestuurder draai die motors in die vereiste rigting.

Stap 3: Kringdiagram

Stroombaandiagram
Stroombaandiagram
Stroombaandiagram
Stroombaandiagram

Hierdie handgebare -beheerde robot met behulp van Arduino -hardeware is in twee afdelings verdeel

  1. Sender
  2. Ontvanger

Stap 4: Senderkring vir Arduino gebaar -beheerde motor

Senderkring vir Arduino gebaarbeheerde motor
Senderkring vir Arduino gebaarbeheerde motor
Senderkring vir Arduino gebaarbeheerde motor
Senderkring vir Arduino gebaarbeheerde motor
Senderkring vir Arduino gebaarbeheerde motor
Senderkring vir Arduino gebaarbeheerde motor

Die sender -afdeling van hierdie projek bestaan uit MPU6050 Accelerometer and Gyroscope, nRF24L01Transceiver en Arduino Uno. Die Arduino kry voortdurend data van die MPU6050 en stuur hierdie data na die nRF -sender. RF -sender stuur die data na die omgewing.

Stap 5: Ontvangerbaan vir Arduino gebaarbeheerde motor

Ontvangerbaan vir Arduino gebaarbeheerde motor
Ontvangerbaan vir Arduino gebaarbeheerde motor
Ontvangerbaan vir Arduino gebaarbeheerde motor
Ontvangerbaan vir Arduino gebaarbeheerde motor
Ontvangerbaan vir Arduino gebaarbeheerde motor
Ontvangerbaan vir Arduino gebaarbeheerde motor

Die ontvangersgedeelte van hierdie gebaarbeheerde robot bestaan uit Arduino Uno, nRF24L01 -ontvanger, 2 GS -motors en 'n motorbestuurdermodule. NRF24L01 ontvanger ontvang die data van die sender en stuur dit na Arduino. Volgens die ontvangde seine, beweeg Arduino dan die GS -motors.

Stap 6: Programverklaring

Vir 'n gebaarbeheerde robot wat Arduino gebruik, is die volledige kode hier beskikbaar. Hieronder verduidelik ons die program reël vir reël.

Sender -syprogram

In hierdie program lees Arduino die data van MPU6050 en stuur dit na nRF 24L01 sender.

1. Begin die program deur die vereiste biblioteeklêers by te voeg. U kan die biblioteeklêers aflaai vanaf die gegewe skakels.

SPI.h

nRF24L01.h

Draad.h

MPU6050.h

2. Definieer dan die veranderlikes vir MPU6050 Gyroscope en Accelerometer data. Hier sal slegs Accelerometer -data gebruik word.

3. Definieer die radiopypadresse vir die kommunikasie- en nRF -senders CN- en CSN -penne.

4. Begin die reeksmonitor in die leemte -opstelling () -funksie. En initialiseer ook die draad- en radiokommunikasie. radio.setDataRate word gebruik om die datatransmissietempo in te stel.

5. Lees die MPU6050 sensor data. Hier gebruik ons slegs X- en Y -rigtingversnellingsmeterdata.

6. Laastens, stuur die sensordata met behulp van die radio.write -funksie.

Ontvanger -kantprogram

1. Soos gewoonlik, begin die program deur die vereiste biblioteeklêers in te sluit.

2. Definieer die radiopypadresse vir die kommunikasie- en nRF -senders CN- en CSN -penne.

3. Definieer die linker en regter GS -motorpenne.

4. Kyk nou of die radio beskikbaar is of nie. As dit die geval is, lees dan die data.

5. Vergelyk nou die ontvangde data en ry die motors volgens die voorwaardes.

Stap 7: Toets die handgebaar -beheerde robot met behulp van Arduino

Sodra die hardeware gereed is, koppel die sender en die ontvanger -kant Arduinos aan u skootrekenaar en laai die kode op. Beweeg dan die MPU6050 -versnellingsmeter om die robotmotor te beheer.

Die volledige werking van die gebaar -beheerde robot kan in die video gevind word.

Aanbeveel: