Obsah:
- Krok 1: Vybavenie
- Krok 2: Obrazový diagram schémy zapojenia
- Krok 3: Fritzingový súbor schémy zapojenia
- Krok 4: Kód vysielača
- Krok 5: Kód prijímača
- Krok 6: Súbory INO
- Krok 7: Odkaz na knižnice
Video: Bezdrôtové auto ovládané gestami: 7 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
V tomto návode sa naučíme, ako vyrobiť auto alebo akéhokoľvek robota ovládaného gestami. Tento projekt má dve časti, jedna časť je vysielacia a druhá časť je prijímacia. Vysielacia jednotka je v skutočnosti namontovaná na ručných rukaviciach a prijímacia jednotka je umiestnená vo vnútri auta alebo akéhokoľvek robota. Teraz je čas urobiť pekné auto. Poďme!
Krok 1: Vybavenie
Vysielacia jednotka
1. Arduino Nano.
2. Snímací modul MPU6050.
3. Vysielač RF 433 MHz.
4. Akýkoľvek typ 3 -článkovej, 11,1 -voltovej batérie (tu som použil gombíkový článok).
5. Vero-Board.
6. Ručné rukavice.
Prijímacia jednotka
1. Arduino Nano alebo Arduino Uno.
2. Modul ovládača motora L298N.
3. Rám 4 -kolesového robota vrátane motorov.
4. RF 433 RF prijímač.
5. 3článková Li-po batéria 11,1 voltov.
6. Vero-board.
Iní
1. Lepiace tyčinky a pištoľ.
2. prepojovacie vodiče.
3. Skrutkovače
4. Súprava na spájkovanie.
atď.
Krok 2: Obrazový diagram schémy zapojenia
Krok 3: Fritzingový súbor schémy zapojenia
Krok 4: Kód vysielača
#zahrnúť
#zahrnúť
#zahrnúť
MPU6050 mpu6050 (drôt);
dlhý časovač = 0;
regulátor char *;
neplatné nastavenie ()
{Serial.begin (9600); Wire.begin (); mpu6050.begin (); mpu6050.calcGyroOffsets (true); vw_set_ptt_inverted (true); // vw_set_tx_pin (10); vw_setup (4000); // rýchlosť prenosu dát Kbps
}
prázdna slučka ()
{ ////////////////////////////////////////////////////////////////////////////////////////////////
mpu6050.update ();
ak (milis () - časovač> 1000)
{Serial.println ("==================================================== ============ "); Serial.print ("temp:"); Serial.println (mpu6050.getTemp ()); Serial.print ("accX:"); Serial.print (mpu6050.getAccX ()); Serial.print ("\ taccY:"); Serial.print (mpu6050.getAccY ()); Serial.print ("\ taccZ:"); Serial.println (mpu6050.getAccZ ()); Serial.print ("gyroX:"); Serial.print (mpu6050.getGyroX ()); Serial.print ("\ tgyroY:"); Serial.print (mpu6050.getGyroY ()); Serial.print ("\ tgyroZ:"); Serial.println (mpu6050.getGyroZ ()); Serial.print ("accAngleX:"); Serial.print (mpu6050.getAccAngleX ()); Serial.print ("\ taccAngleY:"); Serial.println (mpu6050.getAccAngleY ()); Serial.print ("gyroAngleX:"); Serial.print (mpu6050.getGyroAngleX ()); Serial.print ("\ tgyroAngleY:"); Serial.print (mpu6050.getGyroAngleY ()); Serial.print ("\ tgyroAngleZ:"); Serial.println (mpu6050.getGyroAngleZ ()); Serial.print ("angleX:"); Serial.print (mpu6050.getAngleX ()); Serial.print ("\ tangleY:"); Serial.print (mpu6050.getAngleY ()); Serial.print ("\ tangleZ:"); Serial.println (mpu6050.getAngleZ ()); Serial.println ("===================================================== =========== / n "); časovač = milis (); }
/////////////////////////////////////////////////////////////////////////////////////
if (mpu6050.getAccAngleX () 30) {radič = "X2"; vw_send ((uint8_t *) radič, strlen (ovládač)); vw_wait_tx (); // Počkajte, kým sa neodstráni celá správa Serial.println ("Vpred"); } else if (mpu6050.getAccAngleY ()> 40) {kontroler = "Y1"; vw_send ((uint8_t *) radič, strlen (ovládač)); vw_wait_tx (); // Počkajte, kým nezmizne celá správa Serial.println ("VLEVO"); } else if (mpu6050.getAccAngleY () <-40) {controller = "Y2"; vw_send ((uint8_t *) radič, strlen (ovládač)); vw_wait_tx (); // Počkajte, kým sa neodstráni celá správa Serial.println ("RIGHT"); } else if (mpu6050.getAccAngleX ()-10 && mpu6050.getAccAngleY ()-10) {kontroler = "A1"; vw_send ((uint8_t *) radič, strlen (ovládač)); vw_wait_tx (); // Počkajte, kým sa neodstráni celá správa Serial.println ("STOP"); }}
Krok 5: Kód prijímača
#zahrnúť
int LA = 3;
int LB = 11; int RA = 5; int RB = 6; void setup () {Serial.begin (9600); vw_set_ptt_inverted (true); // Vyžadované pre DR3100 vw_set_rx_pin (12); vw_setup (4000); // bitov za sekundu pinMode (13, VÝSTUP); pinMode (LA, VÝSTUP); pinMode (LB, VÝSTUP); pinMode (RA, OUTPUT); pinMode (RB, OUTPUT); vw_rx_start (); // Spustite prijímač PLL so spustením Serial.println ("Všetko v poriadku");
}
prázdna slučka () {uint8_t buf [VW_MAX_MESSAGE_LEN]; uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message (buf, & buflen)) // Neblokujúce
{if ((buf [0] == 'X') && (buf [1] == '1')) {Serial.println ("BACKWARD"); dozadu (); oneskorenie (100); // off (); } else if ((buf [0] == 'X') && (buf [1] == '2')) {Serial.println ("FORWARD"); dopredu (); oneskorenie (100); // off (); }
else if ((buf [0] == 'Y') && (buf [1] == '1'))
{Serial.println ("VLEVO"); vľavo (); oneskorenie (100); // off (); }
else if ((buf [0] == 'Y') && (buf [1] == '2'))
{Serial.println ("RIGHT"); správny(); oneskorenie (100); // off (); } else if ((buf [0] == 'A') && (buf [1] == '1')) {Serial.println ("STOP"); vypnuté (); oneskorenie (100); }} else {Serial.println ("Žiadny signál prijatý"); }}
neplatné dopredu ()
{analogWrite (LA, 70); analogWrite (LB, 0); analogWrite (RA, 70); analogWrite (RB, 0); }
neplatné dozadu ()
{analogWrite (LA, 0); analogWrite (LB, 70); analogWrite (RA, 0); analogWrite (RB, 70); }
prázdno vľavo ()
{analogWrite (LA, 0); analogWrite (LB, 70); analogWrite (RA, 70); analogWrite (RB, 0); }
zrušiť právo ()
{analogWrite (LA, 70); analogWrite (LB, 0); analogWrite (RA, 0); analogWrite (RB, 70); }
zrušiť ()
{analogWrite (LA, 0); analogWrite (LB, 0); analogWrite (RA, 0); analogWrite (RB, 0); }
Krok 6: Súbory INO
Krok 7: Odkaz na knižnice
Virtuálna knižnica drôtov:
MPU6050_tockn Libraby:
Knižnica drôtov:
Odporúča:
Diaľkovo ovládané auto - ovládané pomocou bezdrôtového ovládača Xbox 360: 5 krokov
Diaľkovo ovládané auto - ovládané pomocou bezdrôtového ovládača Xbox 360: Toto sú pokyny na zostavenie vlastného diaľkovo ovládaného auta ovládaného pomocou bezdrôtového ovládača Xbox 360
RC auto ovládané rukou gestami: 15 krokov
Ručne ovládané RC auto na diaľkové ovládanie: Ahoj, svet! Toto je môj prvý pokyn. Ak máte nejaké otázky - neváhajte sa ich opýtať. Cieľové publikum: Tento projekt je použiteľný pre každého, kto má vášeň, pokiaľ ide o technológie. Či už ste odborník alebo úplný začiatočník
Auto ovládané gestami: 5 krokov (s obrázkami)
Auto ovládané gestami: Roboty hrajú dôležitú úlohu v automatizácii vo všetkých odvetviach, ako je stavebníctvo, armáda, zdravotníctvo, výroba atď. Po vyrobení niekoľkých základných robotov, ako je riadené auto pomocou Bluetooth, som vyvinul tento ges založený na akcelerometri
Ako si vyrobíte auto na diaľkové ovládanie doma jednoduchým spôsobom - DIY bezdrôtové RC auto: 7 krokov
Ako si vyrobíte auto na diaľkové ovládanie doma jednoduchým spôsobom - DIY bezdrôtové RC auto: Ahoj priatelia, v tomto návode vám ukážem, ako ľahko vytvoriť diaľkovo ovládané auto na diaľkové ovládanie, pokračujte v čítaní …… Toto je skutočne skvelý projekt, skúste ho teda postaviť
Robotický invalidný vozík ovládaný gestami DTMF a gestami: 7 krokov (s obrázkami)
Robotický invalidný vozík ovládaný gestami DTMF a gestami: V tomto svete je veľa ľudí zdravotne postihnutých. Ich život sa točí okolo kolies. Tento projekt predstavuje prístup k ovládaniu pohybu invalidného vozíka pomocou rozpoznávania gest rúk a DTMF smartfónu