Logo Robotika.SK Faculty of Electrical Engineering and Information Technology, Slovak University of Technology  Logo Faculty of Mathematics, Physics and Informatics, Comenius University 

Team name: rmtino

About the team: Sme tim z Kosic - Gymnazium, Alejova 1. O robotiku a programovanie sa zaujimame uz 3 roky

Assignment: Minesweeper

Robot

Náš Minesweeper robot bol postavený na základe základného EV3 modelu. Do prednej časti modelu bol pripevnený stredný motor a rameno.

Pomocou stredného motora a ozubených koliesok otáčame rameno. Na konci ramena je pripevnený farebný senzor ktorý hľadá čiernu farbu (mínu). Pôvodne bol v polke ramena pripevnený druhý senzor ale vďaka zmenám v programe nebol naďalej potrebný. Posledný farebný senzor je pripevnený v podvozku robota. Sníma červenú farbu (ohraničenie ihriska). Plánovali sme použiť aj gyro senzor no nanešťastie sme nedokázali navrhnúť ideálny program pre robota.

Program

Rozhodli sme sa že to bude najlepšie riešiteľné tým, že prejdeme jeden pás ihriska následne sa na ohraničení ihriska otočíme o 90 stupňov následne pohneme dopredu a znova sa otočíme o 90 stupňov. Tým nenarazíme na tú istú mínu dva-krát a prejdeme celé ihrisko tak že nám neutečie žiadna mína. Na prerušenie určitých cyklov používam loop interupt vďaka ktorému môžem prerušiť nepotrebnú časť kódu ak sa stane niečo dôležité inde v kóde.

Photos:

Videos:

Programs:

Rating:

Spoločné poznámky pre všetkých: viacerí si neprečítali zadanie poriadne: robot mal vojsť do štvorca so stranou 25cm a ihrisko nemalo byť ohraničené čiernou ani inou čiarou - ak ste ju použili iba na znázornenie okrajov, tak fajn, ale nemala byť použitá na detekciu okraja. Áaa, biela plocha mala byť na podlahe, ale to nie je také podstatné. :-)

rmtino: Pekné riešenie - už len dotiahnuť, aby boli otočky presné, na oboch stranách a opakovali sa a je to ono. Vitajte v lige a držíme palce do ďalších kôl! Rozhodcovia Vaše riešenie ohodnotili takto:

1. Za úlohu Minesweeper získavate 2,5b, pretože nie je na videu počuť zvuk robota v prípade nájdenia míny. Robot pracuje podla zadania takže pri nájdení míny sa viditeľne zastaví.

2. Robot je pekne spravený a zdá sa, že by mohol spĺňať podmienky zadania, žiaľ nevideli sme, či naozaj preskenuje úplne celú plochu.

3. Z tohto uhla pohľadu vidím dosť málo. Zvládli ste zastavenie na čiernej bodke, ale prechod cez pole robilo asi menší problém.

Assignment: Cave exploration

Tento robot je schopný nájsť cestu von z bludiska(jaskyne) pomocou pravidla pravej ruky. Na zistenie jeho aktuálnej pozície v bludisku sa starajú 3 ultrasonické senzory, o otáčanie sa o 90(180) stupňov a chodenie rovno sa stará gyroskop.

V konštrukcii som použil základný model Lego Education EV3, s pridanou časťou s ultrasonickými senzormi. V programe bolo zavedené pravidlo pravej ruky pomocou blokov switch, na chodenie rovno bol použitý PID follower gyroskopu. Postup programovania:

    1. Vytvoril som si podmienky, podľa ktorých robot mal riešiť bludisko.
    2. Urobil som bloky na otočenie sa vľavo a otočenie sa vpravo podľa uhlu.
    3. Do podmienok som dal ekvivalentné bloky(otočenie vpravo(90 stupňov), otočenie vľavo(90 stupňov), motor blok nastavený na chodenie rovno(0.5 otáčky))…
    4. Otestoval som kód a zistil som, že robot nechodí presne rovno, kvoli zotrvačnosti motorov sa netotáča 90 stupňov ale viac - tankové otáčanie nebolo ideálne a bolo potreba zmeniť uhol otočenia na 84 stupňov kvôli kompenzácii zotrvačnosti motorov.
    5. Zmenil som spôsob otáčania z tankového na státie jedného kolesa a točenie sa druhého a znížil som uhol otáčania z 90 stupňov na 84 stupňov.
    6. Pridal som PID algoritmus na chodenie rovno pomocou gyroskopu. Integrálnu časť som vynechal. Konštanta kP bola 6, konštanta kD bola 1
    7. Zistil som, ze gyroskop číta uhol otáčania opačne ako som potreboval, takže som zmenil hodnotu kP na zápornu - -6.
    8. Robot uz chodil rovno aj spravne zatáčal, ale po zatáčke hned číta hodnoty zo senzorov  a tak som musel pridat blok chodenia motorov rovno na 0.7 otáčok. Tak isto uhol otáčania nebol ideálny - nakoniec som skončil pri čísle 86.
    9. Ďalej som už iba testoval a menil hodnoty…
    10. Robot prešiel bludisko. Boli tam ale ešte určité muchy, ako napríklad to, že po otočení sa resetuje gyroskop a ak sa otočí zle, tak to pokladá ako základnú hodnotu pri používaní PID algoritmu.
    11. Pustil som sa do riešenia tejto chyby - vytvoril som si premennú midpoint, ktorá sa pri každej otáčke navyšuje o 90 alebo o 180.
    12. Ďalšiou chybou bolo to, že po niektorých otočeniach išiel rovno 1 až 1,3 otáčky. Lenže keďže som používal motor blok tak robot nechodil rovno. Nakoniec som tento problém vyriešil resetovaním otáčkomeru a následnym zavolaním bloku, ktorý sa stará o PID algoritmus v cykle, ktorý sa opakoval dovtedy, dokedy otáčkomer nezaznamenal 1 otáčku motora.
    13. A zase čas na testovanie a zmeny hodnôt.
    14. Robot prešiel bez závad cez celé bludisko tam aj späť. Juchúú! :)

Photos:

Videos:

Programs:

Rating:

Spoločné poznámky pre všetkých: Niektorí si povedali, že robot je dvojrozmerný objekt a žije v rovine a steny vytvorili len obrazcom v rovine. Už ste videli takú jaskyňu? :-) Ako by tam vyzerali stalagnity, stalagtity a stalagnáty? :) No dobre, rozhodcovia to nebrali do úvahy, keďže ste si aj tak zadanie mohli vysvetliť, aj keď mne sa samozrejme viac páčia naozajstné jaskyne, nielen také nakreslené na papieri. :)
V skutočnej jaskyni je totiž úloha náročnejšia, ako sa na prvý pohľad zdá - ultrazvukový senzor nevidí len jedným smerom podľa úsečky, ale zachytáva odrazy z celého kužela pred sebou, naviac meranie je ovplyvnené uhlom, pod ktorým je prekážka naklonená a tak jedno meranie senzorom hovorí len o približnej vzdialenosti k prekážke a skoro vôbec nič o tom, ako sme k nej natočení. Napriek tomu aj túto úlohu niektorí zvládli a nahrali nám skvelé riešenie! Ďakujeme!

rmtino: fíha, ako tí psíci reagujú na robota? Skúsil si použiť zvuk psieho brechotu? :-) A čo mačacie prskanie? To by som rád videl, čo ten pes na to? Vybudovali ste si skvelú jaskyňu, perfektná robota! Ďakujeme za výborné riešenie a tu sú komentáre rozhodcov:

1. Za úlohu Prieskum jaskyne získavate 3b. Páči sa mi, že priebeh nahratého videa je komentovaný.

2. Páči sa mi, že robot jazdí po jaskyni veľmi pekne a plynule, netreba ho nijako naprávať, hoci sa mu asi neotáča ľahko. Akurát že v zadaní bolo, že má z jaskyne (nie bludiska) vyjsť cez ten istý vchod/východ.

3. Chválim podrobný popis riešenia úlohy nie len písomný, ale aj ústny na videu. Robot však mal vstúpiť aj výstúpiť z bludiska rovnakým (vchodom/východom), inak ok.