Kráčajúci mobilný robot Cricket II.

15. Jún, 2009, Autor článku: Kostroš Juraj, Elektrotechnika, Študentské práce
Ročník 2, číslo 6 This page as PDF Pridať príspevok

V predchádzjúcej časti sme si predstavili niektoré prvky kráčajúceho robota Cricket. Popísali sme si výhody a nevýhody kráčajúcich robotov, stabilitu, mechanickú konštrukciu a časť zo senzorického systému. Dnes si popíšeme zvyšok senzoriky a riadenie. Ďalšie informácie nájdete aj na osobnej stránke alebo katedrovej wiki.

Snímač napätia akumulátora

Pri návrhu senzorového systému mobilného robota nesmie chýbať snímač napätia akumulátorov. Od veľkosti napätia na batérii vieme zistiť koľko elektrickej energie sa v nachádza v akumulátoroch. Snímač je realizovaný ako delič napätia z dvoch 10KΩ rezistorov ktoré sú pripojené priamo na akumulátor a stred deliča je privedený do A/D prevodníka mikrokontroléra. Stav akumulátorov signalizujeme trojicou LED.

  • zelena – kapacita batérie > 50%
  • oranžová – kapacita batérie je v intervale 30-50%
  • červená – kapacita batérie < 30%


Obr.8 Snímanie a signalizovanie stavu akumulátorov

Ultrazvukový snímač

Princip merania vzdialenosti k prekážke je založený na principe merania doby medzi vyslaním akustického signálu a prijatím odrazeného akustického signálu – echa.


Obr.9 Detekovanie prekážky ultrazvukovým snímačom

Najbežnejšie frekvencie akustického signálu sú hodnoty nad 40 kHz. Takéto snímače sú označované ako ultrazvukové sonary, prípadne len sonary. Vďaka relativne nízkej rýchlosti zvuku (vo vzduchu) je doba medzi vysláním a príjmom signálu výrazne vyššia než u radarových, laserových a IR snímačov. Preto možno dosiahnuť relativne vysoké pesnosti merania i bez extrémnych nárokov na vyhodnocovacie obvody. Vďaka tomu je ich cena pomernr nízka, ale perioda vzorkovania je vyššia (0,1 s). Nevýhodou je vysoké tlmenie ultrazvukového signálu, čo obmedzuje praktický dosah na desiatky metrov (bežne do cca 10m). Vzhľadom k pomere širokému rozptylu tohoto signálu nie je možné prekážku detekovať celkom presne čo sa týka jej úhlovej pozície. Ďalším problémom bývá odraz ultrazvukového signálu, ktorý dopadá na hladký povrch prekážky pod ostrým uhlom (nazývá se zrkadlový odraz).


Obr.10 Zrkadlový odraz od prekážky

V takomto prípade sa signál odrazí ďalej smerom od sonaru a zpätne sa odrazí až od vzdialenejšej prekážky. Sonarom je potom detekovaná vzdialenejšia prekážka. Preto by malo byť časové oneskorenie medzi jednotlivými meraniami väčšie ako oneskorenie odpovedajúce maximálnemu dosahu sonaru. Nezanedbateľný je i vplyv teploty vzduchu na rýchlosť šířenia zvuku. Pre teplotu t = 0°C; v = 331 m/s a pre t = 25 °C; v = 343 m/s.

Ultrazvukový snímač SFR08

Sonar SRF08 bol predstavený v roku 2002. Je vhodný pre meranie vzdialenosti i k viacerým překážkám, dokáže totiž vyhodnotiť viacnásobné echo v nastaviteľných rozsahoch, pričom najdlhší rozsah je približne 11m. Jednou z predností zmieneného sonaru je jeho priemerná spotreba – 15 mA/5 V. Oproti spotrebe jeho predchodcu SRF04 (50 mA/5 V), poprípade sonaru rady Polaroid 6500 (300 mA/5 V), v robotike doteras často používaným, je veľmi malá. Vďaka tomu možno jednoducho napájať večší počet týchto snímačov z malého zdroja napätia (batéria, akumulátor). Naviac sa sonar môže po ukončení merania a pri čakání na dalšie meranie, príkazom prepnúť do pohotovostného režimu, v ktorom odeberá zo zdroja prúd len 3mA. Modul dokáže vyhodnotiť viacnásobný odraz (echo) a uchovává až šestnásť ech (umožňuje napr. merať cez otvorené dvere – obr. 4). Ďalej dokáže v móde ANN (Artificial Neural Network) zmerané hodnoty spracovať a poskytnúť ich vo vhodnom tvare pre vyhodnotenie neurónovou sieťou.

Modul komunikuje po zbernici I2C. Je možné softwarovo meniť jeho adresu. Sonar priamo poskytuje všetky požadované informácie, teda vzdialenosť k prekážke (prekážkam) už v konečnej číselnej podobe. V sonare SRF08 je naviac zabudovaný snímač osvetlenia, ktorého analogový výstup je digitalizovaný zabudovaným A/D prevodníkom, ktorým je vybavený použitý mikroprocesor PIC16F872. Intenzita osvetlenia je vyhodnocovaná behom každého merania vzdialenosti. Modul SRF08 obsahuje celkem 36 registrov. Register 0 je príkazový, register 1 je vyhradený pre zosilnenie snímača osvetlenia. Dalšie registre obsahujú údaje o jednotlivých echách (pre každé echo sú určené dva registre). Zápisom príslušného kódu do príkazového registra sa nastavuje jeden z dvoch módov činnosti modulu, tj. meranie vzdialenosti alebo ANN, a zároveň se spustí vlastné meranie.


Obr.11 SRF08 a jeho smerová charakteristika

Riadiaci subsystém

Riadiaci subsystém je realizovaný Mikrokontrolérom Atmel ATmega168 v prevedení DIP28, ktorý pracuje na taktovacej frekvencii 20 MHz. Použitý je externý oscilátor tvorený kryštálom Q2 a kondenzátormi C10 a C11. Resetovací obvod sa skladá z R6 a C13 po zapnutí napájania sa nabíja C13 cez rezistor R6, čo má za následok udržanie resetovacieho pinu mikrokontroléra v log.0. Programovanie procesora je realizované pomocou ISP (In System Programing) programátora, pripájame ho cez konektor ISP1. Keďže využívame A/D prevodník mikrokontroléra je nutné mu určiť napäťovú referenciu, v našom prípade je to napájacie napätie a na pin Aref pripojíme 100nF kondenzátor voči zemi. Procesor môže komunikovať s počítačom pomocou USART a tak robot môže posielať nazbierané informácie na ďalšie spracovanie, prípadne môžeme robota ovládať. Procesor vyhodnocuje podnety z okolia, ktoré dostáva zo senzorického subsystému a na ich základe stanoví pohybový algoritmus.


Obr.12 Schéma zapojenia riadiacej dosky


Obr.13 Schéma zapojenia stabilizátora napätia


Obr.14 Pripojenie SRF08, servomotorov a batérie


Obr.15 DPS robota

Algoritmy pohybu

Robot má tri stupne voľnosti, čiže musíme riadiť tri servopohony. Predné a zadné nohy na jednotlivých stranách sú navzájom prepojené tiahlami a taktiež sú prepojené aj stredné nohy. Tiahla sú prepojené s výstupnými hriadeľmi servopohonov. Pre priamu chôdzu vpred je algoritmus nasledovný:

  1. Centrálne servo sa natočí doprava, čo má za následok nadvihnutie robota, pri nadvihnutí sa nohy na pravej strane natočia smerom dozadu a nohy na ľavej strane na natočia smerom dopredu.(Obr.16)
  2. Centrálne servo sa natočí doľava, čo má za následok nadvihnutie robota, pri nadvihnutí sa nohy na ľavej strane natočia smerom dozadu a nohy na pravej strane na natočia smerom dopredu. (Obr.16)

Tieto kroky sa cyklicky opakujú. Medzi jednotlivými krokmi sa sledujú údaje z jednotlivých snímačov prekážok, aby robot bol schopný včas reagovať na prekážky v jeho okolí.


Obr.16 Algoritmus pre pohyb vpred

Ak robot detekuje prekážku, ktorú nie je schopný prekonať, je potrebné aby sa jej vyhol. Algoritmus pre zmenu smeru je nasledovný:

  1. Centrálne servo sa natočí doľava, čo má za následok nadvihnutie prevej strany robota. Nohy na ľavej strane sa natočia dopredu a tým robota pootočíme okolo pravej strednej nohy smerom doľava. Potom natočíme nohy na pravej strane dopredu (Obr.17)
  2. Centrálne servo sa natočí doprava, čo má za následok nadvihnutie ľavej strany robota. Nohy na prevej strane sa natočia dozadu a tým robota pootočíme okolo ľavej strednej nohy smerom doľava. Potom natočíme nohy na pravej strane dozadu. (Obr.17)

Tieto kroky sa cykicky opakujú toľkokrát pokiaľ robot nemá pred sebou voľnú cestu.


Obr.17 Algorytmus pre zatočenie doľava

Algoritmus pre zatáčanie doprava je podobný ako na zatáčanie doľava, podstata je v tom, aby sa robot otáčal okolo strednej nohy požadovaným smerom. Na obrázkoch sú vyfarbené koncové body nôh ktoré sú v kontakte s podložkou po ktorej sa robot pohybuje. Aplikovaním braintenbergových algoritmov vieme dosiahnuť pomerne sofistikované správanie.

Záver

Projekt chce ukázať, že aj pri relatívne jednoduchom riadení a konštrukcii vieme dosiahnuť pomerne komplexné prejavy inteligencie robota a dobrú dostupnosť v teréne. Tento projekt má ľuďom ukázať, že robotika má svoju budúcnosť a aj to, že roboty môžu mať viac ľudských vlastností ako by sa od nich dalo očakávať. Chcel by som pokračovať ďalej vo vývoji a to použitím neurónových sietí pri mapovaní prostredia v ktorom sa robot nachádza. Ďalej by som chcel použiť aj iné typy snímačov, ako napríklad elektronický kompas, gyroskop, aby modely správania mohli byť oveľa komplexnejšie a nevypočítateľné.

Obr.18 Obrázky robota

Literatúra

  1. Petr Novák, Mobilní roboty-pohony,senzory,riadenie BEN – technická literatúra, Praha 2005
  2. http://www.societyofrobots.com/
  3. http://chiumanfu.solarbotics.net/
  4. http://matescb.skvorsmalt.cz/robotika_kybernetika/VUT_Brno_Robotika.pdf
  5. http://www.mcs.alma.edu/LMICSE/LabMaterials/AlgoComp/Lab5/AlgCoL5.htm
  6. http://www.robot-electronics.co.uk/htm/srf08tech.shtml
  7. http://www.odbornecasopisy.cz/index.php?id_document=32330

Napísať príspevok