Servisné roboty môžu pracovať v čiastočne alebo plne autonómnom režime z hľadiska riadenia. Z energetického hľadiska sa obvykle vyžaduje, aby systémy boli autonómne. Režim činnosti určuje zložitosť a komplexnosť senzorového systému, riadiaceho systému, komunikačného systému, metód a algoritmov riadenia.
Plne autonómne systémy riešia tie najzložitejšie úlohy, ich technické a programové vybavenie je však mimoriadne zložité, a preto je aj cena systému vysoká. Pre mnohé aplikácie sú vyhovujúcim riešením systémy s teleoperačným riadením s automatizáciou rutinných činností. Jednoduché systémy tejto koncepcie pritom môžu pracovať len na základe lokálnych informácií o prostredí. Z hľadiska úplnosti informácií pre operátora sú však výhodnejšie systémy s globálnymi informáciami o prostredí, ktoré umožňujú využívať globálnu mapu prostredia. Pri použití mapy prostredia a informácií z ostatných senzorov sa používa tzv. zmiešaná realita, spájajúca viaceré informácie do integrovanej informácie. Riadenie servisného robota však aj tak vyžaduje značnú skúsenosť od operátora. Z hľadiska bezpečnosti a istoty vykonania želanej činnosti sú preto významné systémy dosiahnutia vysokej bezpečnosti pri vykonávaní činnosti v prostredí, systémy s možnosťou automatického pohybu robota medzi prekážkami a s automatickým navedením robota k stanovenému cieľu aktivity.
Mobilný teleriadený servisný robot
Pre profesionálne aplikácie bol vyvinutý servisný robot so štvorkolesovým podvozkom vybavený ramenom s chápadlom. V režime teleriadenia je robot ovládaný z pracoviska operátora prostredníctvom WIFI siete. V tomto režime, ako aj v režime autonómneho riadenia, sú k dispozícii informácie o stave robota zo senzorov v pohonoch kolies a kĺbov kinematických dvojíc ramena. Na lokalizáciu a navigáciu sú k dispozícii aj informácie snímané videokamerou na platforme, videokamerou umiestnenou na ramene, gyroskopom, laserovým skenerom, elektronickým kompasom, ultrazvukovými a infračervenými snímačmi, prípadne s presným GPS systémom.
Riadenie systému je rozdelené do dvoch úrovní. Prvá úroveň sa zaoberá vyhodnotením odometrie, parsovaním dát z laserového skenera, zapínaním a vypínaním prístrojov, riadením pohybu robota, zastavením robota v automatickom režime, presmerovaním signálov.
Riadiaci systém vyššej úrovne spracúva a posiela nižšej úrovni riadiace príkazy od operátora alebo modulu autonómneho riadenia. V rámci modulu operátora sú generované príkazy v režime teleriadenia a je zabezpečená vizualizácia všetkých údajov a obrazov z kamier. Modul autonómneho riadenia sa uplatňuje v režime automatickej činnosti, pričom neštandardné situácie rieši operátor a, samozrejme, využíva všetky dostupné informácie zo senzorov.
Bloky riadiaceho systému mobilného robota
V bloku Hardware sú znázornené použité hardvérové prostriedky pre túto konfiguráciu. Každý element hardvéru je v rámci riadiaceho systému mobilného robota implementovaný ako samostatný objekt, ktorý možno v prípade potreby ľahko vybrať z hlavného programu. Boli implementované nasledujúce objekty: gyroskop Crosbow IMU330CC, zbernica RS422 (ako základná forma riadenia mobilného robota), laserový skener HOKUYO, riadenie kamery SONY, GPS (pričom je uvažovaná rôzna konfigurácia viet zo snímača), kompas OceanServer 5000. Triedy hardvéru sú založené na báze komunikačného protokolu s hardvérom. Dá sa povedať, že čo kábel, to trieda – preto je napríklad v rámci triedy RS422 kompletne rozpracovaná komunikácia s pohonmi (MotorControlBoard pravý a ľavý), SensorBoard, MainControlBoard. Triedy sú súčasťou triedy Robot a ich metódy sú volané výlučne z vlákna Robot.
V rámci vlákna Robot v nižšej úrovni je riešené meranie času, komunikácia s hardvérom a distribúcia dát do jednotlivých úrovní. V tomto vlákne je riešený stavový stroj mobilného robota, ktorý je potrebné podrobiť revízii najmä z hľadiska implementácie umelej inteligencie. Sú uvažované rôzne stavy mobilného robota, pričom relevantné z hľadiska riadenia sú nasledovné tri:
►►Stav inicializácie – je testovaný hardvér, teda či komunikuje a keď komunikuje, je konfigurovaný pre potreby riadenia a následne je testovaný, či dáva očakávané údaje.
►►Stav automatického/manuálneho riadenia – množina stavov, v ktorých sa očakávajú príkazy od hornej úrovne, teda príkaz na pohyb, otáčanie kamery, zapínanie a vypínanie prístrojov. S každou činnosťou je spojený vlastný stav a sú riešené rôzne problémy. Súčasná implementácia neumožňuje, aby mobilný robot bol naraz v rôznych stavoch (napríklad z hľadiska jednotlivých prístrojov). Hlavným dôvodom tohto kroku je, že sa to ukazuje ako schodné riešenie z hľadiska spoľahlivosti.
►►Stav deinicializácie – využíva sa najmä pri slabej batérii, všetky prístroje sa vypnú v správnej sekvencii a na mobilnom robote treba vymeniť batérie.
Vo vlákne Comm – server nižšej úrovne je zabudovaný protokol na komunikáciu s vyššou úrovňou a riešenie servera. V súčasnosti je umožnené len jedno pripojenie, ale v budúcnosti to bude možné rozšíriť na viacero pripojení. Napríklad cez jeden port by bolo možné posielať riadiace príkazy pre podvozok, druhým portom by bolo možné riadiť iné prístroje, napríklad kameru.
Vlákno Computing nižšej úrovne preberá surové dáta z laserového skenera, dáta sú v tomto vlákne parsované a predspracovávané. Je implementovaná metóda na odometriu z dát laserového skenera.
Vo vlákne Comm – client vyššej úrovne je implementovaný protokol na komunikáciu s nižšou úrovňou (zhodný s nižšou úrovňou). V tomto bloku sú riešené aj prípadné výpadky komunikácie, ktoré sú indikované operátorovi.
Vlákno Computing vyššej úrovne využíva metódy v rámci modulov spracovania obrazu – modul Watershed, modul Houghovej transformácie, modul reaktívnej navigácie VFH+, a iné. Metódy musia fungovať v osobitnom vlákne, aby bola zabezpečená dostatočne rýchla kontrola pokynov operátora pre mobilný robot.
Vo vlákne Robot vyššej úrovne, podobne ako v nižšej úrovni, je riešená komunikácia s prípadným hardvérom (môže to byť napríklad GPS alebo dodatočný laserový skener). V tomto vlákne je riešený aj stavový stroj podobným štýlom ako v nižšej úrovni.
Vlákno Interfejs s blokmi joystick, klávesnica, monitor zabezpečuje zobrazovanie informácií na monitor a spracovanie vstupov od operátora (joystick, klávesnica).
Vlákno Comm – server vyššej úrovne je pripravené na komunikáciu s inými systémami, ako napríklad skupinové riadenie, dodatočné systémy spracovania obrazu, vstupy od jednotky spracovania hlasu, samozrejme, za predpokladu implementácie aspoň jednoduchého protokolu.
Záver
Opísaný systém sa využíva vo výskumnej a pedagogickej činnosti. Boli na ňom overené viaceré koncepcie senzorového a riadiaceho systému mobilného robota. Vo vnútornom i vo vonkajšom prostredí boli implementované algoritmy lokalizácie a navigácie.
Poďakovanie:
Článok vznikol za podpory projektu VMSP-P-0004-09 a KEGA 3/7307/09.
TEXT/FOTO: František Duchoň, Ladislav Jurišica, Marián Kľúčik, Anton Vitko
Literatúra:
Miková, Ľ., Kelemen, M., Kelemenová, T.: Štvorkolesový inšpekčný robot s diferenčným riadením kolies. Acta Mechanica Slovaca. Roč. 12, č. 3-B (2008), s. 548 – 558, ISSN 1335 – 2393
Hanzel, J.: Web Based Remote Mobile Robot Control. In: AT&P Journal Plus, ISSN 1336 – 5010, č. 2. Robotika vo vzdelávaní (2010), s. 43 – 45
Jurišica, L., Vitko, A., Duchoň, F, Kaštan, D.: Statistical Approach to GPS Positioning of Mobile Robot. In: Control Engineering and Applied Informatics. ISSN 1454 – 8658. Vol. 12, No. 2 (2010), s. 44 – 51
Jurišica, L., Vitko, A.: Imbedding Intelligence into Mechatronic Systems. In: Metalurgija Metallurgy. ISSN 0543 – 5846. Roč. 49, č. 2 (2010), s. 99 – 102

