Procus

Procus robotics

Začiatkom roka 2012 Procus začal vyvíjať úsilie v oblasti výskumu a vývoja v robotike. V počiatočných fázach bolo hlavným cieľom zvládnutie všetkých výziev, ktoré taký vývoj prináša – návrh robota po všetkých stránkach (funkčnej, elektronickej, mechanickej, softvérovej) ako aj nájsť vhodných dodávateľov a výrobcov. Nakoniec po prekonaní mnohých prekážok a slepých uličiek bol prvý robot od Procus Robotics úspešne dokončený.

SpiritJunior je šesť kolesový robot určený na výskum a vývoj v oblasti mobilnej robotiky a všetkého čo k nej patrí – riadenie v reálnom čase, umelá inteligencie, či strojové videnie. Podobnosť s robotom Spirit, ktorý donedávna skúmal Mars, nieje náhodná – podvozok typu rocker-bogie so šiestimi kolesami, z ktorých každé je možné natočiť o 70 stupňov v každom smere a zároveň má aj vlastný pohon, je to najlepšie pre testovanie komplexných riadiacich algoritmov v praxi. Vďaka tomuto podvozku je robot ako doma aj v náročnejšom teréne.


Na obrázku sú graficky znázornené niektoré z mnohých možností pohybu:

  • Pohyb rovno – dopredu alebo dozadu
  • Ackermanovský spôsob riadenia
  • Otáčanie okolo bodu, či už v strede robota alebo kdekoľvek inde
  • Paralelný pohyb akýmkoľvek smerom

Architektúra elektronického systému robota:

  • Router je spojivom celého riadiaceho systému. Palubný počítač, IP kamera a prípadný dodatočný notebook sú prepojené pomocou ethernetu. Router taktiež zdieľa pripojenie k internetu prostredníctvom 3G modulu.
  • Pre lokálne vysokoúrovňové riadenie je na robotovi umiestnený relatívne vysoko výkonný linuxový počítač na platforme ARM. Zbiera údaje zo senzorov ako Kinect, GPS, high-res kamery a okrem spracovania informácii v nich ich poskytuje ďalším častiam systému.
  • Keďže pre niektoré typy úloh je palubný počítač nepostačujúci, na robotovi je priestor pre štandardný 15 palcový notebook. Ten okrem dodatočného výpočtového výkonu môže poskytnúť aj priestor pre použitie technológií nedostupných na ARM platforme (plný .NET, CUDA)
  • Ako rozhranie medzi vysokoúrovňovým a nízkoúrovňovým riadením slúži malý jedno-doskový počítač založený na platforme Pic32. Poskytuje všetky základné priemyselné komunikačné štandardy ako RS232, RS485, I2C, TWI.
  • Štandardne, robot obsahuje GPS, inerciálnu jednotku s kompasom, 6 enkóderov a 24 sonarov. V kombinácii s Kinectom a kamerami je to postačujúce množstvo informácií pre bezpečnú navigáciu v prostredí.

Riadiaci systém

Nároky na riadiaci systém rástli lineárne so stále komplikovanejším robotom. Od začiatku bol robot navrhovaný ako plne autonómny. Dosiahnuť autonómnosť a postačujúci stupeň umelej inteligencie je aj s relatívne výkonným palubným počítačom takmer nemožné. Prílišné zaťaženie procesora úlohami ako je spracovanie obrazu berie čas potencionálne dôležitejším úlohám ako je reakcia na prekážku, ako aj zvyšuje spotrebu systému. Cloud technológie na druhú stranu ponúkajú takmer neobmedzený výpočtový výkon, bez akéhokoľvek dopadu na spotrebu samotného robota. Modularita a škálovateľnosť boli hlavné myšlienky, ktoré stáli za vznikom riadiaceho systému DAOCCS – distribuovaného agentovo orientovaného cloudového riadiaceho systému.

Systém poskytuje slobodu voľnosti výberu programovacej paradigmy, či už si zvolíte multiagentový prístup alebo všetko spravíte v jednej riadiacej slučke, či všetky dáta spracujete lokálne alebo výpočtovo náročné úlohy spracujete na cloude. Pre zjednodušenie práce so systémom je dostupné aj SDK obsahujúce množstvo pomocných tried.

Základnou jednotkou systému je Environment a ako prostriedok komunikácie s ďalšími boli zvolené webové služby (webservice). Vďaka tomu je možné spájať systémy implementované v rôznych jazykoch podporujúcich túto technológiu. Systém je momentálne vyhotovený na platforme java.


Diagram znázorňuje jednotlivé časti systému a spojitosť medzi nimi.

  • Jedna inštancia CCS beží na cloude. Je to najvyššia úroveň svojho kontextu. Obsahuje informácie o všetkých podriadených inštanciách. Okrem riešenia náročných úloh môže obsahovať aj agentov pre kooperáciu viacerých robotov.
  • Inštancia CCS v riadiacom počítači robota typicky obsahuje ovládače senzorov a bezpečnostných agentov ktorý potrebujú čo najmenšie oneskorenia.
  • Ak je na robotovi viacero počítačov schopných spustiť CCS, táto inštancia bude zaregistrovaná ako podriadená hlavnej (CCS je kaskádovateľný). Takéto inštancie typicky pomáhajú hlavnej inštancii s predspracovaním dát z netriviálnych senzorov.
  • Aj keď bol systém navrhnutý pre autonómne riadenie, môže byť použitý v teleoperačnom móde. Toto je momentálne dostupné prostredníctvom web rozhrania alebo zariadenia s Androidom.