Difference between revisions of "Acrob in maze (line sensor, distance sensor, robot navigates towards the maze exit) (Martin Hrivnák, Tomáš Matúš)"
From RoboWiki
(→Programovanie a práca s Acrob-om) |
(→Zdrojový kód programu) |
||
(17 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
==Acrob, informácie== | ==Acrob, informácie== | ||
− | + | [http://ap.urpi.fei.stuba.sk/sensorwiki/index.php/Acrob_technical_description Dokumentácia] | |
− | + | ==Komponenty robota== | |
− | |||
:1, Pole 8 infračervených senzorov (Infrared Line Follower Kit) | :1, Pole 8 infračervených senzorov (Infrared Line Follower Kit) | ||
− | : * sú zapojené na digitálne | + | : * sú zapojené na digitálne piny |
: * komunikácia 1bit HIGH/LOW výstup pre každý infračervený senzor | : * komunikácia 1bit HIGH/LOW výstup pre každý infračervený senzor | ||
: | : | ||
:2, Senzor na meranie vzdialenosti (Long Distance Measuring Senzor) | :2, Senzor na meranie vzdialenosti (Long Distance Measuring Senzor) | ||
− | : * | + | : * dosah: 20-150cm |
− | : * zapojenie na analogovy | + | : * zapojenie na analogovy pin |
[[Image:robot-senzory.png|middle|325px|Komponenty robota]] | [[Image:robot-senzory.png|middle|325px|Komponenty robota]] | ||
==Programovanie a práca s Acrob-om== | ==Programovanie a práca s Acrob-om== | ||
:Program robota sme vyvíjali v prostredí Arduino, ktoré má syntax podobnú jazyku C. | :Program robota sme vyvíjali v prostredí Arduino, ktoré má syntax podobnú jazyku C. | ||
+ | [[Image:arduino.png|middle|325px|Arduino]] | ||
+ | |||
+ | :Pre spárovanie robota s PC je nutné na PC nainštalovať FTDI USB ovládač a nastavi USB SERIAL PORT. [http://ap.urpi.fei.stuba.sk/sensorwiki/index.php/Acrob001 Pre podrobnejsi postup instalacie kliknite na tento odkaz]. | ||
+ | |||
+ | ==Program a algoritmus chodenia po bludisku== | ||
+ | |||
+ | |||
+ | ===Reprezentácia bludiska=== | ||
+ | :Bludisko reprezentujeme stromovou štruktúrou, kde prvá križovatka predstavuje koreň celého stromu a následné križovatky sú "vetvy". | ||
+ | |||
+ | ===Pohyb po čiare=== | ||
+ | :Robot sa po čiare pohybuje pomocou pola infračervených senzorov, ktoré vracajú 0/LOW alebo 1/HIGH, výslednú hodnotu, ktoré senzory sú zopnuté, a ktoré nie vyhodnotíme po 100 iteráciách získavania ich hodnôt a na základe toho sa robot rozhoduje či vidí rovnú čiaru alebo je na križovatke alebo odbočke. Tieto hodnoty tiež pomáhajú udržovať vystredeného na čiare. | ||
+ | |||
+ | ==Výsledok== | ||
+ | :Výsledkom je robot schopný prehľadávať bludisko až pokiaľ nenájde cieľ a následne po nájdení cieľa je schopný sa doň znova zo začiatku dostať bez toho aby znova vchádzal do slepých uličiek. | ||
+ | |||
+ | ==Zdrojový kód programu== | ||
+ | [[Media:LineMaze.zip]] | ||
− | : | + | ==Video== |
+ | :[http://www.youtube.com/watch?v=5Yh1IaQm41M Kratka] | ||
+ | :[http://www.youtube.com/watch?v=-3-ZyDKdPSY Dlha] |
Latest revision as of 17:24, 12 June 2013
Contents
Acrob in maze
Acrob in maze, úloha
- Našou úlohou bolo naprogramovať robota aby prechádzal bludiskom a hľadal ciel, pri tom mal zaznamenávať trasu. Po nájdení cieľa sa robot položí znova na začiatok a podľa zapamätanej trasy sa znova dostane do cieľa bez toho aby vošiel do slepej uličky.
Acrob, informácie
Komponenty robota
- 1, Pole 8 infračervených senzorov (Infrared Line Follower Kit)
- * sú zapojené na digitálne piny
- * komunikácia 1bit HIGH/LOW výstup pre každý infračervený senzor
- 2, Senzor na meranie vzdialenosti (Long Distance Measuring Senzor)
- * dosah: 20-150cm
- * zapojenie na analogovy pin
Programovanie a práca s Acrob-om
- Program robota sme vyvíjali v prostredí Arduino, ktoré má syntax podobnú jazyku C.
- Pre spárovanie robota s PC je nutné na PC nainštalovať FTDI USB ovládač a nastavi USB SERIAL PORT. Pre podrobnejsi postup instalacie kliknite na tento odkaz.
Program a algoritmus chodenia po bludisku
Reprezentácia bludiska
- Bludisko reprezentujeme stromovou štruktúrou, kde prvá križovatka predstavuje koreň celého stromu a následné križovatky sú "vetvy".
Pohyb po čiare
- Robot sa po čiare pohybuje pomocou pola infračervených senzorov, ktoré vracajú 0/LOW alebo 1/HIGH, výslednú hodnotu, ktoré senzory sú zopnuté, a ktoré nie vyhodnotíme po 100 iteráciách získavania ich hodnôt a na základe toho sa robot rozhoduje či vidí rovnú čiaru alebo je na križovatke alebo odbočke. Tieto hodnoty tiež pomáhajú udržovať vystredeného na čiare.
Výsledok
- Výsledkom je robot schopný prehľadávať bludisko až pokiaľ nenájde cieľ a následne po nájdení cieľa je schopný sa doň znova zo začiatku dostať bez toho aby znova vchádzal do slepých uličiek.