Programovateľný, smartfónom ovládateľný kráčajúci robot má riadiacu jednotku RoboBoard X4, ktorá je založená na populárnej mikrokontrolérovej platforme ESP 32. Robot môžete programovať vo vývojovom prostredí Arduino IDE, prípadne ovládať mobilnou aplikáciou.
Konštrukcia robota aj mechanizmus chôdze sú vysvetlené vo videu:
Tento zaujímavý princíp robotickej chôdze využívajúci 8 nôh (po 4 na každej strane) vymyslel Joe Klann v roku 1994. Na rozdiel od kráčajúcich robotov s mnohými servomotormi, ktorých programovanie je väčšinou tvrdý oriešok, programovanie robota Black Spider je veľmi jednoduché, pretože mechanizmus chôdze ovládajú len dva jednosmerné motory, takže v podstate môžete využiť rovnaké algoritmy ako pre dvojkolesový robotický podvozok.
Navyše pri zostavovaní robota zo stavebnice, ktorá má 1150 dielov sa naučíte veľa mechanických princípov, ktoré môžete použiť v ďalších projektoch.
Riadiaca jednotka RoboBoard X4, batéria a nabíjačka a všetky nástroje potrebné na montáž sú súčasťou stavebnice.
Konštrukcia robota je z mechanických dielov stavebnice Totem, ktorú sme v našom seriáli IoT a robotika už viackrát použili, okrem iného aj na malého kráčajúceho robota so šiestimi nohami. Tento robot je popísaný v článku.
Robot je ovládaný riadiacou doskou RoboBoard X4, ktorá sa dá kúpiť aj samostatne (39 €). Doska využíva populárnu mikrokontrolérovú platformu ESP 32. Taktovacia frekvencia procesora je 240Mhz. RoboBoard X4 podporuje WiFi, Bluetooth, BLE (Bluetooth Low Energy), takže konštrukcia využívajúca túto dosku môže byť ovládaná pomocou mobilnej aplikácie. Na doske je aj MEMS obvod LSM6DS3, ktorý obsahuje trojosový akcelerometer a gyroskop. Čip ESP32 od spoločnosti Espressif Systems má dvojjadrový procesor s 32 bitovými jadrami Xtensa LX6 taktovanými na 160 MHz. Jedno jadro rieši WiFi komunikáciu a druhé máte k dispozícii pre svoj program. Jadrá sa dajú pretaktovať až na 240 MHz. Kapacita pamäti Flash je 4 MB a RAM je tvorená tromi blokmi s celkovou kapacitou 520 kB. Používateľ má k dispozícii približne 400 kB RAM. Zavádzací program je v ROM s kapacitou 448 kB.
Doska má konektory na pripojenie štyroch jednosmerných motorov, troch servomotorov. K dispozícii sú aj štyri vstupno-výstupné (GPIO) porty. Na doske sú štyri RGB diódy a tiež konektory Totem BUS na pripojenie ďalších senzorov, či akčných členov. V súčasnosti je k dispozícii laserový merač vzdialenosti, postupne pribudnú moduly s tlačidlami a potenciometrami aby používateľ mohol svoje výtvory a j priamo ovládať, grafický displej, senzor umožňujúci jazdu po čiare a taktiež audio modul, ktorý umožňuje vášmu robotovi porozumieť, zaznamenávať zvuky a mať hlasový výstup
Vývojové prostredie Arduino IDE je k dispozícii je pre platformy Windows, Mac OS aj Linux. Pre Windows 10 ju nájdete priamo v aplikačnom obchode. ESP32 Arduino core je na GitHube.
Po spustení vývojového prostredia v menu aktivujte položku File > Preferences (v slovenskej verzii Súbor > Vlastnosti). Adresu rozšírenia pre prídavnú dosku – v našom prípade ESP32 – skopírujte do poľa Additional Board Manager URLs (v slovenskej verzii Manažér prídavných dosiek URL). Teraz aktivujte menu Tools > Board menu (alebo v slovenskej verzii Nástroje > Manažér Dosiek). Do poľa pre vyhľadávanie zadajte ESP32 a nainštalujte verziu 1.0.4 doplnkov pre dosky ESP32. Kvôli kompatibilite s knižnicou Totem je potrebné nainštalovať verziu 1.0.4 nie novšiu.
Teraz treba nainštalovať knižnicu pomocou menu Sketch → Include Library → Manage libraries. Do poľa pre vyhľadávanie zadajte totem. Taktiež musíte prekopírovať súbor \Documents\Arduino\libraries\Totem_Library\src\esp32\platform.txt do zložky \Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.4\, kde prepíše súbor s rovnakým názvom
V menu Nástroje -> Doska a vyberte dosku, ktorú budete používať, v našom prípade ESP 32 dev module. Následne pomocou menu Nástroje -> Port nastavte port, ku ktorému je vaša doska pripojená.
Súčasťou knižnice sú aj príklady, takže môžete vyskúšať príklad na blikanie RGB LED, alebo si napísať vlastný s využitím knižničných funkcií.
#include void setup() { // inicializácia X4 Totem.X4.begin(); } // hlavná slučka void loop() { Totem.X4.write("rgbAll", 255, 255, 0, 0); delay(700); Totem.X4.write("rgbAll", 255, 0, 255, 0); delay(700); Totem.X4.write("rgbAll", 255, 0, 0, 255); delay(700); }
Túto aplikáciu blikajúcu LED-kami môžete v riadiacej jednotke nechať, prípadne vytvoriť inú. Zároveň, alebo presnejšie paralelne budete môcť svoju robotickú konštrukciu ovládať aj pomocou smartfónu.
Knižnica Totem totiž ku každému programu pripája BLE komunikáciu s aplikáciou Totem v smartfóne, či tablete. Tento proces beží na pozadí, paralelne s vaším kódom napísaným kódom v Arduino IDE. Aby to takto fungovalo a doska bola pre smartfón viditeľná, musíte v inicializácii zavolať funkciu Totem.X4.begin();
#include void setup() { // inicializácia X4 Totem.X4.begin(); }
Ak bude váš robot autonómny a nebudete ho potrebovať ovládať cez aplikáciu, zavoláte v inicializácii funkciu Totem.X4.beginNoBLE ().
Dosku riadiacej elektroniky môžete z robota ľahko vymontovať a použiť na iný účel
Článek byl převzat z webu Nextech se souhlasem autora.