Obsah:

Robot ovládaný gesty pomocí Arduina: 7 kroků
Robot ovládaný gesty pomocí Arduina: 7 kroků

Video: Robot ovládaný gesty pomocí Arduina: 7 kroků

Video: Robot ovládaný gesty pomocí Arduina: 7 kroků
Video: Hrajeme si s Arduinem 5: Vícebarevná lampička - AlzaTech #43 2024, Červenec
Anonim
Robot ovládaný gesty pomocí Arduina
Robot ovládaný gesty pomocí Arduina

Roboti se používají v mnoha odvětvích, jako je stavebnictví, armáda, výroba, montáž atd. Roboti mohou být autonomní nebo poloautonomní. Autonomní roboti nevyžadují žádný lidský zásah a mohou podle situace jednat sami. Poloautonomní roboti pracují podle pokynů od lidí. Tyto poloautonomní lze ovládat pomocí dálkového ovladače, telefonu, gest, atd. Dříve jsme postavili několik robotů založených na IoT, které lze ovládat z webového serveru.

V dnešním článku budeme stavět robota ovládaného gesty pomocí Arduino, MPU6050 Accelerometer, dvojice transceiverů nRF24L01 a modulu ovladače motoru L293D. Tento robot navrhneme na dvě části. Jeden je vysílač a druhý je přijímač. Sekce vysílače se skládá z akcelerometru a gyroskopu Arduino Uno, MPU6050 a nRF24L01, zatímco část přijímače se skládá z Arduino Uno, nRF24L01, dvou stejnosměrných motorů a ovladače motoru L293D. Vysílač bude fungovat jako dálkové ovládání robota, kde se robot bude pohybovat podle gest.

Krok 1: Požadované součásti

Požadované součásti
Požadované součásti
Požadované součásti
Požadované součásti
  • Arduino Uno (2)
  • NRF24L01 (2)
  • Motor MPU6050DC (2)
  • Modul ovladače motoru L293D
  • Těsto

Akcelerometr a gyroskop MPU6050 Senzorový modul MPU6050 je kompletní 6osý (3osý akcelerometr a 3osý gyroskop) mikroelektro-mechanický systém. Modul snímače MPU6050 má také teplotní senzor na čipu. Má sběrnici I2C a rozhraní pomocné sběrnice I2C pro komunikaci s mikrokontroléry a dalšími senzorovými zařízeními, jako jsou 3osý magnetometr, snímač tlaku atd. Senzorový modul MPU6050 se používá k měření zrychlení, rychlosti, orientace, posunutí a některých dalších pohybů -související parametry. Tento senzorový modul má také vestavěný digitální pohybový procesor, který dokáže provádět složité výpočty.

Modul transceiveru NRF24L01

nRF24L01 je jednočipový rádiový transceiver pro celosvětové pásmo ISM 2,4 - 2,5 GHz. Transceiver se skládá z plně integrovaného frekvenčního syntetizátoru, výkonového zesilovače, krystalového oscilátoru, demodulátoru, modulátoru a modulu protokolu Enhanced ShockBurs. Výstupní výkon, frekvenční kanály a nastavení protokolu lze snadno programovat pomocí rozhraní SPI. Rozsah provozního napětí tohoto modulu transceiveru je 1,9 V až 3,6 V. Má vestavěné režimy Power Down a Standby, díky nimž je úsporný a snadno realizovatelný.

Krok 2: Práce ručního robota ovládaného gesty pomocí Arduina

Práce ručního robota ovládaného gesty pomocí Arduina
Práce ručního robota ovládaného gesty pomocí Arduina
Práce ručního robota ovládaného gesty pomocí Arduina
Práce ručního robota ovládaného gesty pomocí Arduina

Abychom porozuměli fungování tohoto vozu s ovládáním gest Arduino, rozdělme tento projekt na dvě části. První částí je část vysílače (dálková), ve které senzor akcelerometru MPU6050 nepřetržitě vysílá signály do přijímače (robota) prostřednictvím vysílače Arduino a nRF.

Druhou částí je přijímací část (Robot car), ve které přijímač nRF přijímá přenesená data a odesílá je do Arduina, který je dále zpracovává a podle toho pohybuje robota.

Senzor akcelerometru MPU6050 čte souřadnice X Y Z a odesílá souřadnice do Arduina. Pro tento projekt potřebujeme pouze souřadnice X a Y. Arduino poté zkontroluje hodnoty souřadnic a odešle data do vysílače nRF. Přenášená data jsou přijímána přijímačem nRF. Přijímač odesílá data do Arduina na straně přijímače. Arduino předává data do IC ovladače motoru a ovladač motoru otáčí motory požadovaným směrem.

Krok 3: Schéma zapojení

Kruhový diagram
Kruhový diagram
Kruhový diagram
Kruhový diagram

Tento robot ovládaný gesty pomocí hardwaru Arduino je rozdělen na dvě části

  1. Vysílač
  2. Přijímač

Krok 4: Obvod vysílače pro auto řízené gesty Arduino

Obvod vysílače pro auto řízené gesty Arduino
Obvod vysílače pro auto řízené gesty Arduino
Obvod vysílače pro auto řízené gesty Arduino
Obvod vysílače pro auto řízené gesty Arduino
Obvod vysílače pro auto řízené gesty Arduino
Obvod vysílače pro auto řízené gesty Arduino

Sekce vysílače tohoto projektu se skládá z akcelerometru a gyroskopu MPU6050, transceiveru nRF24L01 a Arduino Uno. Arduino nepřetržitě získává data z MPU6050 a odesílá je do vysílače nRF. RF vysílač přenáší data do okolí.

Krok 5: Obvod přijímače pro auto řízené gesty Arduino

Obvod přijímače pro auto řízené gesty Arduino
Obvod přijímače pro auto řízené gesty Arduino
Obvod přijímače pro auto řízené gesty Arduino
Obvod přijímače pro auto řízené gesty Arduino
Obvod přijímače pro auto řízené gesty Arduino
Obvod přijímače pro auto řízené gesty Arduino

Přijímací část tohoto robota ovládaného gesty se skládá z Arduino Uno, vysílače nRF24L01, 2 stejnosměrných motorů a modulu ovladače motoru. Přijímač NRF24L01 přijímá data z vysílače a odesílá je do Arduina. Poté podle přijatých signálů přesune Arduino stejnosměrné motory.

Krok 6: Vysvětlení programu

U robotů ovládaných gesty pomocí Arduina je kompletní kód k dispozici zde. Níže vysvětlujeme program řádek po řádku.

Boční program vysílače

V tomto programu Arduino čte data z MPU6050 a odesílá je do vysílače nRF 24L01.

1. Spusťte program přidáním požadovaných souborů knihovny. Soubory knihovny si můžete stáhnout z daných odkazů.

SPI.h

nRF24L01.h

Wire.h

MPU6050.h

2. Poté definujte proměnné pro data gyroskopu a akcelerometru MPU6050. Zde budou použita pouze data akcelerometru.

3. Definujte adresy rádiových kanálů pro komunikační a nRF vysílače piny CN a CSN.

4. Ve funkci neplatné instalace () spusťte sériový monitor. A také inicializovat drátovou a rádiovou komunikaci. radio.setDataRate se používá k nastavení rychlosti přenosu dat.

5. Přečtěte si data senzoru MPU6050. Zde používáme pouze data akcelerometru ve směru X a Y.

6. Nakonec odešlete data ze senzoru pomocí funkce radio.write.

Program na straně přijímače

1. Jako obvykle spusťte program zahrnutím požadovaných souborů knihovny.

2. Definujte adresy rádiového kanálu pro komunikační a nRF vysílače piny CN a CSN.

3. Definujte levý a pravý kolík stejnosměrného motoru.

4. Nyní zkontrolujte, zda je rádio dostupné nebo ne. Pokud ano, přečtěte si data.

5. Nyní porovnejte přijatá data a pohněte motory podle podmínek.

Krok 7: Testování robota ovládaného gesty rukou pomocí Arduina

Jakmile je hardware připraven, připojte vysílač i přijímač Arduinos k notebooku a nahrajte kód. Poté pohybem akcelerometru MPU6050 ovládejte robotické auto.

Kompletní práci robota ovládaného gesty najdete ve videu.

Doporučuje: