- Požadované komponenty:
- Vytvorenie rozhrania pre robota pomocou aplikácie RemoteXY:
- Schéma zapojenia a vysvetlenie:
- Vysvetlenie kódu:
- Ako to spustiť:
V tomto článku sa chystáme ovládať robotické auto cez senzor G nášho mobilného telefónu a budete môcť pohybovať robotom iba naklonením telefónu. Pre tento robot ovládaný senzorom G-Sensor tiež použijeme aplikáciu Arduino a RemoteXY. Aplikácia RemoteXY sa používa na vytvorenie rozhrania v inteligentnom telefóne na ovládanie robota. Joystick pridáme do rozhrania, aby bolo možné Robota ovládať aj joystickom, ako aj nakláňaním telefónu.
Senzor G alebo gravitačný senzor je v podstate akcelerometer v inteligentnom telefóne, ktorý sa používa na ovládanie orientácie obrazovky telefónu. Akcelerometer sníma smery gravitačnej sily X, Y, Z a otáča obrazovku podľa zarovnania telefónu. V súčasnosti sa v mobiloch používa na určovanie orientácie obrazovky citlivejší a presnejší senzor gyroskopu. V našom projekte sa robotické auto bude pohybovať podľa smeru, v ktorom sa telefón nakláňa, ako keď telefón nakloníte dopredu, potom sa auto pohne dopredu a my ho sklopíte nadol, potom sa auto pohne dozadu. Je to rovnaké, ako keď hráme niektoré automobilové hry v mobilných zariadeniach, používajú tiež senzor G na zodpovedajúce pohybovanie autom. Skontrolujte video na konci a tu si tiež pozrite naše ďalšie projekty v oblasti robotiky.
Požadované komponenty:
- Podvozok dvojkolesového automobilu
- Arduino UNO
- Ovládač motora L298N
- Modul Bluetooth HC-06 (HC-05 bude fungovať tiež)
- Napájanie alebo články
- Pripojovacie vodiče
Vytvorenie rozhrania pre robota pomocou aplikácie RemoteXY:
Ak chcete vytvoriť rozhranie na ovládanie robotického vozidla pomocou aplikácie RemoteXY, musíte prejsť na nasledujúci odkaz
remotexy.com/en/editor/ Webová stránka bude vyzerať takto
Potom z ľavej strany obrazovky zdvihnite prepínač a joystick a vložte ich do mobilného rozhrania. Tlačidlo rozsvieti svetlo na kolíku 13, ktorý je interne pripojený k Arduinu, a joystick pohne robotickým autom. Webová stránka po umiestnení prepínača a joysticku budú vyzerať takto.
Potom budeme musieť umiestniť tlačidlo aktivácie / deaktivácie senzora G spolu s joystickom, aby sme mohli pohybovať robotickým autom nakláňaním telefónu doľava, doprava, hore a dole. Pomocou tohto tlačidla môžeme zapnúť a vypnúť senzor G, keď je senzor G deaktivovaný. Auto je možné ovládať pohybom joysticku. Takže aby ste umiestnili tlačidlo aktivácie / deaktivácie senzora G, kliknite na joystick, ktorý ste umiestnili do rozhrania a na ľavej strane bude sekcia vlastností, na konci bude možnosť umiestnenia tlačidla senzora G blízko joysticku, takže umiestnite senzorové tlačidlo G tam, kde sa vám bude páčiť. Nasledujúca webová stránka bude vyzerať takto.
Potom kliknite na tlačidlo „Získať zdrojový kód“ a uložte ho do počítača. Stiahnite si knižnicu odtiaľto a uložte ju do priečinka knižnice Arduino. Zostavte stiahnutý kód a skontrolujte, či v ňom nie sú chyby. Toto nie je kód, ktorý spustí robot, ale pomôže pri používaní aplikácie s Arduinom. Stiahnite si aplikáciu odtiaľto alebo choďte do Obchodu Play a odtiaľ si stiahnite aplikáciu RemoteXY pre svoj chytrý telefón s Androidom.
Schéma zapojenia a vysvetlenie:
Najskôr prepojíme motorový radič L298N s Arduinom. Pripojte kolíky ENA a ENB ovládača motora k pinom Arduino 12 a 11. Tieto dva kolíky slúžia na PWM riadenie motora. Pomocou týchto pinov môžeme zvýšiť alebo znížiť rýchlosť automobilu. Potom pripojte IN1, IN2, IN3 a IN4 k pinom Arduino 10, 9, 8 a 7. Tieto kolíky budú otáčať motory v oboch smeroch (v smere hodinových ručičiek a proti smeru hodinových ručičiek).
Na napájanie motora pripojte kladný a záporný pól batérie k 12V a uzemnenie ovládača motora. Potom pripojte 5V a zem z ovládača motora k Arduino Vin a zemi.
Potom spojíme Bluetooth modul HC-06 s arduino. Ak máte HC-05, potom to bude fungovať tiež. Pripojte VCC a uzemnenie modulu Bluetooth k 5V a uzemneniu Arduina. Potom pripojte pin TX modulu Bluetooth k kolíku 2 Arduina a kolík RX ku kolíku 3 Arduina. Skontrolujte tiež Bluetooth autíčko pomocou Arduina a dozviete sa viac o používaní Bluetooth s Arduinom.
Vysvetlenie kódu:
Úplný Arduino kód pre tento mobilný robotizovaný automobil je uvedený nižšie v sekcii Kód, tu pochopíme, ako tento kód funguje.
Najskôr sme zahrnuli knižnice pre softvér Serial Serial a RemoteXY. Knižnica RemoteXY nám pomôže pri nastavovaní aplikácie pomocou Arduina, cez ktoré budeme ovládať robotické auto. Potom sme definovali kolíky pre modul Bluetooth, TX z modulu Bluetooth je pripojený k kolíku 2 Arduina, ktorý je kolíkom RX Arduina, a RX z modulu Bluetooth je pripojený k kolíku 3 Arduina, ktorý je TX pin Arduina a nastavil prenosovú rýchlosť Bluetooth modulu na 9600.
#define REMOTEXY_MODE__SOFTWARESERIAL #include
Nasledujúci kód zvýši alebo zníži rýchlosť motora. Keď bude joystick v strede, rýchlosť bude nulová a keď bude v smere jazdy, potom sa rýchlosť zvýši z nuly na 100. Rýchlosť sa zníži z 0 na -100, keď sa auto bude pohybovať v opačný smer. S autom je možné pohnúť aj špecifickou rýchlosťou, čo sa dá dosiahnuť pomocou signálu PWM. Signál pwm sa bude dávať motorom podľa rotácie joysticku.
if (motor_speed> 100) motor_speed = 100; if (motor_speed <-100) motor_speed = -100; if (motor_speed> 0) {digitalWrite (pointer, HIGH); digitalWrite (ukazovateľ, LOW); analogWrite (ukazovateľ, rýchlosť motora * 2,55); } else if (motor_speed <0) {digitalWrite (pointer, LOW); digitalWrite (ukazovateľ, VYSOKÝ); analogWrite (ukazovateľ, (-motor_speed) * 2,55); } else {digitalWrite (ukazovateľ, LOW); digitalWrite (ukazovateľ, LOW); analogWrite (ukazovateľ, 0); }
V nasledujúcom kóde sme definovali funkciu, ktorá sa bude volať vždy, keď v aplikácii pohneme joystickom. Keď zapneme prepínač v aplikácii, potom bude logika 1 daná kolíku 13 Arduina, ktorý rozsvieti kolík LED. Počas pohybu robotického vozidla v smere dopredu a dozadu bude vyvolaná funkcia Speed .
void loop () {RemoteXY_Handler (); digitalWrite (ledpin, (RemoteXY.switch_1 == 0)? LOW: HIGH); Rýchlosť (prvý_motor, RemoteXY.joystick_1_y - RemoteXY.joystick_1_x); Rýchlosť (druhý_motor, RemoteXY.joystick_1_y + RemoteXY.joystick_1_x); }
Ako to spustiť:
Pridajte knižnicu RemoteXY do knižníc Arduino a nahrajte kód do IDE Arduino. Potom si stiahnite aplikáciu do mobilného telefónu a potom zapnite Bluetooth. Rozhranie aplikácie bude vyzerať takto
Potom choďte na Bluetooth a tam Bluetooth zapnite. Po zapnutí sa vám zobrazia zariadenia Bluetooth. Odtiaľ vyberte svoj modul Bluetooth HC-06, ktorý vás zavedie do rozhrania, odkiaľ môžete ovládať robotické auto.
Takto môžeme na pohyb robotom použiť gravitačný senzor vo vnútri nášho mobilného telefónu. Môžete ďalej experimentovať a nájsť zaujímavejšie použitie senzora G na riadenie vonkajších vecí prepojením mikrokontroléra medzi nimi (napríklad Arduino).