Difference between revisions of "E-Puck Bludisko"
From RoboWiki
(E-Puck Bludisko moved to RoboWiki over redirect: revert) |
m |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | # | + | [[Image:E-puck.jpg|thumb|E puck]] |
+ | |||
+ | =E-Puck v bludisku= | ||
+ | |||
+ | ==E-Puck v bludisku, problém == | ||
+ | :Problém, ktorý som riešil s robotom E-Puck bolo vytvoriť program pomocou, ktorého dokáže náš robot prejsť bludisko zostrojené z bielych stien a konečného bodu, steny odlíšenej od zvyšku bludiska rozdielnou farbou, v našom prípade čiernou, ktorá zabezpečuje dostatočné rozdiel v rozhraní a presne určuje koniec bludiska. | ||
+ | |||
+ | [[Image:E1.jpg|middle|400px|E puck v bludisku]] | ||
+ | [[Image:E2.jpg|middle|400px|E puck v bludisku]] | ||
+ | |||
+ | ==Robot E-Puck, Informácie== | ||
+ | :E-Puck je robot kruhového tvaru s open-source hardwarom. | ||
+ | |||
+ | '''Parametre robota:''' | ||
+ | *Kruhová podstava s priemerom 7cm | ||
+ | *Výška robota 5cm | ||
+ | *Hmotnosť 200g | ||
+ | *Pamäť: 8kB RAM a 144kb FLASH | ||
+ | *dsPIC 30 CPU @ 30 MHz (15 MIPS) | ||
+ | *Bluetooth modul | ||
+ | *8 IR senzorov, 8 LED diód v kruhu | ||
+ | *3D akcelerometer | ||
+ | *3 mikrofóny, reproduktor | ||
+ | *Farebná VGA kamera 640x480 | ||
+ | *2 kruhové motory (prevod 50:1) | ||
+ | |||
+ | Samotný robot E-Puck je programovateľný v jazyku C. | ||
+ | |||
+ | ===Komponetny robota a ich rozloženie=== | ||
+ | |||
+ | [[Image:Epuck_devices.png|middle|480px|E puck - komponenty]] | ||
+ | |||
+ | Viac o robotovi nájdete na: | ||
+ | :http://www.e-puck.org/ | ||
+ | :http://en.wikipedia.org/wiki/E-puck_mobile_robot | ||
+ | :Kompletné knižnice a vzorové programy: | ||
+ | :http://www.e-puck.org/index.php?option=com_phocadownload&view=file&id=42:e-puck-svn-snapshot&Itemid=38 | ||
+ | |||
+ | ==Programovanie a práca s robotom E-Puck== | ||
+ | :Robota je možné programovať v prostredí MPLaB IDE, ktorý vytvára .hex súbor, ktorý sa ďalej pomocou bluetooth nahráva do samotného robota. Taktiež je potrebné nainštalovať najnovšiu verziu kompilátora MPLAB C Compiler for dsPIC DSCs. | ||
+ | ===Párovanie Bluetooth=== | ||
+ | Pre párovanie robota a počítača je potrebná inštalácia programu Tiny Bootloader,ktorý nám umožní spojenie a prenos nášho .hex súboru do samotného E-pucka. | ||
+ | # Spárujem počítač s E-puck zariadením, pre ďalšiu komunikáciu a prenos je potrebné zapamätať si COM príslušného BT spojenia. | ||
+ | # Po spárovaní zariadení nastavím program Tiny Bootloader a nižšie uvedené parametre a pri nahrávaní programu do E-Pucka stačím reset priamo na robotovi. | ||
+ | |||
+ | [[Image:tiny.png|middle|TinyBootloader]] | ||
+ | |||
+ | Užitočným pomocníkom pri práci s robotom je aj '''EpuckMonitor''' dostupný na stránke výrobcu. | ||
+ | |||
+ | '''Schémy pozícií diód a senzorov''' | ||
+ | |||
+ | [[Image:Epuck-leds.png|middle|E-puck - pozície diód]] | ||
+ | [[Image:Epuck-senzors.png|middle|E-puck - pozície senzorov]] | ||
+ | |||
+ | ==Program a algoritmus riešenia bludiska== | ||
+ | '''Reprezentácia bludiska''' | ||
+ | :Bludisko, pevných rozmerov, (maximálne 55x55) je reprezentované bielymi stenami a koncovou stenou čiernej farby. | ||
+ | |||
+ | ===Algoritmus Bludiska=== | ||
+ | :Pre vyriešenie bludiska využíva algoritmus robota 2 základné časti: | ||
+ | '''Vyhýbanie sa prekážkam''' | ||
+ | :Robot pomocou senzorov zaznamená prekážku a vyhodnocuje jej pozíci a „vyhýba sa jej“,Senzory odovzdávajú podnety motorov a algoritmus zabezpečuje opatrné prejdenie okolo prekážky a jej následné obídenie, čo využívam v daľšej časti pri riešení samotného problému bludiska. | ||
+ | '''Rozoznávanie čiernej''' | ||
+ | :Robot má implementovanú metódu na rozoznávanie čiernej farby, ktorá určuje koniec bludiska. | ||
+ | |||
+ | :Pokiaľ nie je splnená podmienka viditeľnosti tejto čiernej steny, robot vyhodnocuje prekážku, ktorá je pred ním a dáva signály svojím motorom na opatrný pohyb popri týchto prekážkach (vyhýbanie sa prekážkam). Robot vyhľadá pravú stenu bludiska, podľa ktorej sa orientuje a dané bludisko prehľadáva. | ||
+ | |||
+ | # Implementuj a inicializuj pole bludiska, | ||
+ | # Otáčaj sa a ak narazíš na pravú stenu bludiska, kopíruj jej pohyb, otačaním a pohybom motorov smere doprava | ||
+ | # Overuj farebnosť steny v blízkosti robota | ||
+ | # Pokiaľ sa podarilo nájsť čiernu stenu, zastav, rozsieť ledky. | ||
+ | # Robot je v cieli | ||
+ | |||
+ | ==Výsledok== | ||
+ | :Výsledkom je robot schopný riešiť problém bludiska, tak ako je popísané v úvode. Robot je však veľmi pomalý a táto časová náročnosť je veľmi nepraktická. | ||
+ | |||
+ | ==Zdrojové kódy== | ||
+ | [[Media:EPuck Wall.zip|Epuck Wall.zip]] | ||
+ | |||
+ | ==Galéria, Videá== | ||
+ | <youtube>oJEwcnLYyW4</youtube> |
Latest revision as of 17:53, 22 June 2013
Contents
E-Puck v bludisku
E-Puck v bludisku, problém
- Problém, ktorý som riešil s robotom E-Puck bolo vytvoriť program pomocou, ktorého dokáže náš robot prejsť bludisko zostrojené z bielych stien a konečného bodu, steny odlíšenej od zvyšku bludiska rozdielnou farbou, v našom prípade čiernou, ktorá zabezpečuje dostatočné rozdiel v rozhraní a presne určuje koniec bludiska.
Robot E-Puck, Informácie
- E-Puck je robot kruhového tvaru s open-source hardwarom.
Parametre robota:
- Kruhová podstava s priemerom 7cm
- Výška robota 5cm
- Hmotnosť 200g
- Pamäť: 8kB RAM a 144kb FLASH
- dsPIC 30 CPU @ 30 MHz (15 MIPS)
- Bluetooth modul
- 8 IR senzorov, 8 LED diód v kruhu
- 3D akcelerometer
- 3 mikrofóny, reproduktor
- Farebná VGA kamera 640x480
- 2 kruhové motory (prevod 50:1)
Samotný robot E-Puck je programovateľný v jazyku C.
Komponetny robota a ich rozloženie
Viac o robotovi nájdete na:
- http://www.e-puck.org/
- http://en.wikipedia.org/wiki/E-puck_mobile_robot
- Kompletné knižnice a vzorové programy:
- http://www.e-puck.org/index.php?option=com_phocadownload&view=file&id=42:e-puck-svn-snapshot&Itemid=38
Programovanie a práca s robotom E-Puck
- Robota je možné programovať v prostredí MPLaB IDE, ktorý vytvára .hex súbor, ktorý sa ďalej pomocou bluetooth nahráva do samotného robota. Taktiež je potrebné nainštalovať najnovšiu verziu kompilátora MPLAB C Compiler for dsPIC DSCs.
Párovanie Bluetooth
Pre párovanie robota a počítača je potrebná inštalácia programu Tiny Bootloader,ktorý nám umožní spojenie a prenos nášho .hex súboru do samotného E-pucka.
- Spárujem počítač s E-puck zariadením, pre ďalšiu komunikáciu a prenos je potrebné zapamätať si COM príslušného BT spojenia.
- Po spárovaní zariadení nastavím program Tiny Bootloader a nižšie uvedené parametre a pri nahrávaní programu do E-Pucka stačím reset priamo na robotovi.
Užitočným pomocníkom pri práci s robotom je aj EpuckMonitor dostupný na stránke výrobcu.
Schémy pozícií diód a senzorov
Program a algoritmus riešenia bludiska
Reprezentácia bludiska
- Bludisko, pevných rozmerov, (maximálne 55x55) je reprezentované bielymi stenami a koncovou stenou čiernej farby.
Algoritmus Bludiska
- Pre vyriešenie bludiska využíva algoritmus robota 2 základné časti:
Vyhýbanie sa prekážkam
- Robot pomocou senzorov zaznamená prekážku a vyhodnocuje jej pozíci a „vyhýba sa jej“,Senzory odovzdávajú podnety motorov a algoritmus zabezpečuje opatrné prejdenie okolo prekážky a jej následné obídenie, čo využívam v daľšej časti pri riešení samotného problému bludiska.
Rozoznávanie čiernej
- Robot má implementovanú metódu na rozoznávanie čiernej farby, ktorá určuje koniec bludiska.
- Pokiaľ nie je splnená podmienka viditeľnosti tejto čiernej steny, robot vyhodnocuje prekážku, ktorá je pred ním a dáva signály svojím motorom na opatrný pohyb popri týchto prekážkach (vyhýbanie sa prekážkam). Robot vyhľadá pravú stenu bludiska, podľa ktorej sa orientuje a dané bludisko prehľadáva.
- Implementuj a inicializuj pole bludiska,
- Otáčaj sa a ak narazíš na pravú stenu bludiska, kopíruj jej pohyb, otačaním a pohybom motorov smere doprava
- Overuj farebnosť steny v blízkosti robota
- Pokiaľ sa podarilo nájsť čiernu stenu, zastav, rozsieť ledky.
- Robot je v cieli
Výsledok
- Výsledkom je robot schopný riešiť problém bludiska, tak ako je popísané v úvode. Robot je však veľmi pomalý a táto časová náročnosť je veľmi nepraktická.
Zdrojové kódy
Galéria, Videá