Jak jsme vyhráli Eurobot

Dne 18. dubna jsme vyhráli britské finále robotické soutěže Eurobot. V každém kole proti sobě soutěží dva týmy na hracím stole, kde se snaží splnit bodované úkoly. Každý tým může mít dva plně autonomní roboty. Tohle by bylo pro úvod; teď se pojďme podívat, jak to vše začalo.

Minulý rok jsme se už pokoušeli zúčastnit soutěže Eurobot, ale nepodařilo se nám projít homologací, a to z několika důvodů - špatný management a žádné předávání vědomostí v rámci našeho spolku RoboSoc. Toto pro nás bylo velké ponaučení, které podnítilo naši práci, aby se to samé v budoucnu už neopakovalo.

V RoboSocu jsem zavedli tutoriály a workshopy pro nováčky. Během nich jsme studenty učili jak nadesignovat, postavit a naprogramovat robota. Na konci prvního semestru jsme pak zorganizovali robotické závody, kde nováčci soutěžili s roboty, které si sami postavili. Ti byli kontrolované z mobilního telefonu pomocí Bluetooth.

Práce pro Eurobot byla zahájena až po Vánocích, takže jsme měli méně než polovinu času v porovnání s minulým rokem. Klíčem bylo vymyslet co nejjednodušší a nejspolehlivější řešení na splnění soutěžních úkolů. Rozdělili jsme oba roboty do několika systémů, které jsme mohli nezávisle otestovat, např. podvozek, vystřelovací mechanismus a skladovací prostor pro míčky. Jakmile jsme měli koncept, který by mohl fungovat, všichni jsme si sedli a snažili se ho vylepšit a ještě více zjednodušit. Poté jsme daný systém nadesignovali na počítači a znovu ho přezkoumali. Vyrobený prototyp jsme pak otestovali na soutěžním stole. Ten byl málokdy perfektní, takže po identifikování způsobu, jak ho zlepšit, jsme celý proces opakovali, dokud jsme neměli funkční systém. Na konci jsme veškeré systémy složili dohromady a znovu testovali a zlepšovali.

Vzhledem k tomu, že většina našeho týmu byla tvořena prváky, snažili jsme se kód robota udělat co možná nejjednodušší. Místo použití Raspberry Pi s ROS jako minulý rok jsme letos programovali na Arduinu. Předešlý rok jsme se snažili vyvinout logiku, která by automaticky plánovala úkoly na základě současného chování na hracím stole. Tento rok jsme si nechtěli přidělávat komplikace, proto jsme tzv. napevno naprogramovali sérii úkolů, které se robot snažil splnit. I tak obsahoval nějakou logiku, jako např. co dělat, když narazil na překážku, ale ta nebyla celkově nějak komplikovaná.

Tento jednoduchý a systematický přístup nám napomohl vyhrát britské finále Eurobot a zabezpečil nám postup na světové finále ve Francii, kde jsme se umístili na 17. místě.