- Požadované komponenty:
- Vytvoření rozhraní pro robota pomocí aplikace RemoteXY:
- Schéma zapojení a vysvětlení:
- Vysvětlení kódu:
- Jak to spustit:
V tomto článku se chystáme ovládat robotické auto pomocí senzoru G našeho mobilního telefonu a budete moci pohybovat robotem pouze nakloněním telefonu. U tohoto robota řízeného senzorem G také použijeme aplikaci Arduino a RemoteXY. Aplikace RemoteXY se používá k vytvoření rozhraní v chytrém telefonu pro ovládání robota. Přidáme joystick do rozhraní, aby bylo možné robota ovládat také joystickem a nakláněním telefonu.
G-senzor nebo gravitační senzor je v zásadě akcelerometr v chytrém telefonu, který se používá k ovládání orientace obrazovky telefonu. Akcelerometr snímá směry gravitační síly X, Y, Z a otáčí obrazovku podle zarovnání telefonu. Nyní se v mobilních telefonech k rozhodování o orientaci obrazovky používá citlivější a přesnější senzor gyroskopu. V našem projektu se robotické auto bude pohybovat podle směru, ve kterém je telefon nakloněn, jako když nakloníme telefon dopředu, pak se auto pohne dopředu a my ho nakloníme dolů, pak se auto pohne dozadu. Je to stejné, jako když hrajeme některé automobilové hry v mobilu, ale také podle toho používají senzor G k pohybu vozu. Podívejte se na video na konci a podívejte se také na naše další projekty robotiky zde.
Požadované komponenty:
- Podvozek robota se dvěma koly
- Arduino UNO
- Ovladač motoru L298N
- Modul Bluetooth HC-06 (HC-05 bude fungovat také)
- Napájení nebo články
- Připojovací vodiče
Vytvoření rozhraní pro robota pomocí aplikace RemoteXY:
K vytvoření rozhraní pro ovládání robotického vozu pomocí aplikace RemoteXY budete muset přejít na následující odkaz
remotexy.com/en/editor/ Webová stránka bude vypadat takto
Poté z levé strany obrazovky zvedněte přepínač a joystick a umístěte je do mobilního rozhraní. Tlačítko zapne světlo na pinu 13, který je interně připojen k Arduinu, a joystick pohne robotickým vozem. Webová stránka po umístění přepínače a joysticku bude vypadat takto.
Poté budeme muset umístit tlačítko aktivace / deaktivace senzoru G spolu s joystickem, abychom mohli pohybovat robotickým vozem nakloněním telefonu doleva, doprava, nahoru a dolů. Pomocí tohoto tlačítka můžeme aktivovat a deaktivovat senzor G, když je senzor G deaktivován. Auto lze ovládat pohybem joysticku. Chcete-li tedy umístit tlačítko aktivace / deaktivace senzoru G, klikněte na joystick, který jste umístili do rozhraní, a na levé straně bude sekce vlastností, na konci bude možnost umístění tlačítka senzoru G poblíž joysticku, umístěte senzorové tlačítko G tam, kde se vám bude líbit. Webová stránka poté bude vypadat takto.
Poté klikněte na tlačítko „Získat zdrojový kód“ a uložte jej do počítače. Stáhněte si knihovnu odtud a uložte ji do složky knihovny Arduino. Zkompilovejte stažený kód a zkontrolujte, zda neexistují žádné chyby. Toto není kód, který spustí robota, ale pomůže při používání aplikace s Arduinem. Stáhněte si aplikaci odtud nebo přejděte do Obchodu Play a stáhněte si odtud aplikaci RemoteXY pro svůj chytrý telefon Android.
Schéma zapojení a vysvětlení:
Nejprve propojíme ovladač motoru L298N s Arduino. Připojte kolík ENA a ENB řídicí jednotky motoru k kolíku 12 a 11 Arduino. Tyto dva kolíky slouží k řízení PWM motoru. Pomocí těchto pinů můžeme zvýšit nebo snížit rychlost automobilu. Poté připojte IN1, IN2, IN3 a IN4 k pinům Arduino 10, 9, 8 a 7. Tyto kolíky budou otáčet motory v obou směrech (ve směru i proti směru hodinových ručiček).
Pro napájení motoru připojte kladný a záporný pól baterie k 12V a uzemnění ovladače motoru. Poté připojte 5V a zem z ovladače motoru k Arduino Vin a zemi.
Poté propojíme Bluetooth modul HC-06 s arduino. Pokud máte HC-05, pak to bude fungovat také. Připojte VCC a uzemnění modulu Bluetooth k 5V a uzemnění Arduina. Poté připojte pin TX modulu Bluetooth ke kolíku 2 Arduina a kolík RX ke kolíku 3 Arduina. Zkontrolujte také Bluetooth autíčko pomocí Arduina a dozvíte se více o používání Bluetooth s Arduinem.
Vysvětlení kódu:
Úplný Arduino kód pro tento mobilní řízený robot je uveden níže v sekci Kód, zde pochopíme, jak tento kód funguje.
Nejprve jsme zahrnuli knihovny pro Software Serial a RemoteXY. Knihovna RemoteXY nám pomůže s nastavením aplikace pomocí Arduina, pomocí kterého budeme ovládat robotické auto. Poté jsme definovali piny pro modul Bluetooth, TX z modulu Bluetooth je připojen ke kolíku 2 Arduina, který je kolíkem RX Arduina, a RX z modulu Bluetooth je připojen ke kolíku 3 Arduina, který je TX pin Arduina a nastavil přenosovou rychlost Bluetooth modulu na 9600.
#define REMOTEXY_MODE__SOFTWARESERIAL #include
Následující kód zvýší nebo sníží rychlost motoru. Když bude joystick ve středu, rychlost bude nulová a když bude ve směru dopředu, rychlost se zvýší z nuly na 100. Rychlost se sníží z 0 na -100, když se auto bude pohybovat v opačný směr. Vůzem lze také pohnout určitou rychlostí, což lze provést předáním signálu PWM. Signál pwm bude motorům předáván podle otáčení joysticku.
if (motor_speed> 100) motor_speed = 100; if (motor_speed <-100) motor_speed = -100; if (motor_speed> 0) {digitalWrite (pointer, HIGH); digitalWrite (ukazatel, LOW); analogWrite (ukazatel, motor_speed * 2,55); } else if (motor_speed <0) {digitalWrite (pointer, LOW); digitalWrite (ukazatel, VYSOKÝ); analogWrite (pointer, (-motor_speed) * 2,55); } else {digitalWrite (ukazatel, LOW); digitalWrite (ukazatel, LOW); analogWrite (ukazatel, 0); }
V následujícím kódu jsme definovali funkci, která se bude volat pokaždé, když v aplikaci pohneme joystickem. Když zapneme přepínač v aplikaci, logika 1 bude dána kolíku 13 Arduina, který zapne LED kolík. Při pohybu robota ve směru dopředu a dozadu bude vyvolána funkce Speed .
void loop () {RemoteXY_Handler (); digitalWrite (ledpin, (RemoteXY.switch_1 == 0)? LOW: HIGH); Rychlost (first_motor, RemoteXY.joystick_1_y - RemoteXY.joystick_1_x); Rychlost (druhý_motor, RemoteXY.joystick_1_y + RemoteXY.joystick_1_x); }
Jak to spustit:
Přidejte knihovnu RemoteXY do knihoven Arduino a nahrajte kód do Arduino IDE. Poté si stáhněte aplikaci do mobilního telefonu a zapněte Bluetooth. Rozhraní aplikace bude vypadat takto
Poté přejděte na Bluetooth a zapněte Bluetooth tam. Po zapnutí se vám zobrazí zařízení Bluetooth. Odtud vyberte svůj modul Bluetooth HC-06, který vás přenese na rozhraní, odkud můžete ovládat robotické auto.
Takto můžeme použít Gravitační senzor uvnitř našeho mobilního telefonu k pohybu robota. Můžete dále experimentovat a najít zajímavější využití senzoru G k ovládání vnějších věcí propojením mikrokontroléru mezi nimi (jako je Arduino).