Warning
This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

Hledání sloupku

Úkolem robotu TurtleBot je najít sloupky dané barvy a srazit je. Aby sloupek srazil musí do něj robot narazit (narazit znamená, že pozice sloupku je uvnitř půdorysu robotu). Při pohybu robot nesmí srazit sloupky jiné barvy. Zadání je rozděleno do tří úloh podle náročnosti řešení:

  1. nalézt samostatně stojící sloupek dané barvy
  2. nalézt sloupek v prostředí s více sloupky různých barev
  3. nalézt několik sloupků dané barvy v prostředí s více sloupky

Stávající epidemiologická situace nám neumožňuje setkávat se nad řešením úlohy v laboratoři u robotů. Proto byla tato úloha připravena pro simulátor. Pokud by se v průběhu semestru uvolní pravidla pro práci v laboratořích, jsme připraveni Vám zpřístupnit roboty, abyste si vše mohli vyzkoušet i v reálu. Vyřešení úlohy v simulátoru bude však i v takovém případe pro udělení zápočtu vyhovovat.

Obecná pravidla

Základní pravidla pro řešení úkolu, která jsou společná pro všechny úlohy různé obtížnosti.

Hrací plocha a startovní pozice Fig. 1: Hrací plocha a startovní pozice

Hrací plocha a sloupky

Robot TurtleBot se pohybuje po rovné hrací ploše (podlaze) o minimálních rozměrech 2 x 2 m. Plocha může být ohraničena svislými stěnami, nebo jinými překážkami. Na ploše jsou rozmístěny sloupky (jeden či více). Na obdélníkové hrací ploše, kde jsou rozmístěny sloupky nejsou žádné jiné překážky. Sloupky tvoří v našem případě barevné papírové válce o průměru 50mm a výšce cca 350mm. Máme sloupky červené, modré a zelené. Sloupky nejsou k podlaze nijak připevněny a robot je může snadno srazit, pokud se jich dotkne. Vzdálenost sloupků je definována jako vzdálenost jejich nejbližších stěn. Půdorys robotu je přibližně kruhový o průměru 380mm.

Průběh jízdy

Operátor (student) umístí robot TurtleBot na startovní pozici. Pozici i jeho orientaci určí vyučující. Startovní pozice bude na hrací ploše a nebude blíže stěnám či překážkám než 0,8m. Nejbližší sloupek nebude blíže než 0,5m. Startovní pozice je znázorněna na figure 1.

Barvu hledaného sloupku určí vyučující a operátor jí zadá do programu. Po té operátor spustí program a na pokyn vyučujícího zahájí jízdu stisknutím tlačítka na základně robota, nebo dotykem na display robota. V případě implementace na simulátoru bude jízda zahájena spuštění programu. Po zahájení bude již robot řešit stanovený úkol zcela samostatně. Robot nesmí být v průběhu jízdy řízen z jiného počítače než toho, na němž jsou implementovány řídicí algoritmy.

V průběhu jízdy se robot nesmí dotknout nebo srazit žádnou z tyček jiné než hledané barvy. Robot by se měl po splnění úkolu zastavit a činnost programu ukončit.

Bezpečnostní nárazník

V průběhu jízdy musí být aktivní mechanický nárazník robota. Kdykoliv bude v průběhu jízdy nárazník aktivován (naraz do překážky), musí robot neprodleně zastavit a na detekovanou překážku reagovat (zacouvat, otočit, …). Nárazník nebude reagovat při nárazu do sloupků. V simulátoru není nutné funkci nárazníku implementovat, zejména pokud na překážky reaguje robot jiným způsobem.

Pravidla pro jednotlivé úlohy

1. Nalezení samostatně stojícího sloupku

Na ploše je umístěn pouze jeden sloupek předem dané hledané barvy. Hledaný sloupek je od startovní pozice vzdálen maximálně 2m, nemusí však být v zorném poli žádné z kamer na robotu. Po umístění na startovní pozici a spuštění má robot za úkol najít sloupek, dojet k němu a srazit ho. Robot by při tom neměl narazit do stěn ani překážek. Za splnění úlohy může být uděleno maximálně 30 bodů.

2. Hledání sloupku mezi ostatními

Minimální vzdálenost sloupků Fig. 2: Minimální vzdálenost sloupků

Na hrací ploše je rozmístěno více sloupků, ale pouze jeden hledané barvy. Hledaný sloupek nebude dále než 2m od určené startovní pozice. Sloupek nebude ve směru pohledu ze startovní pozice zakrývat žádný jiný sloupek ani překážka. Rozmístěné sloupky však mohou bránit přímému pohybu robotu ze startovní pozice k hledanému sloupku. Minimální vzdálenost mezi jednotlivými sloupky d = 500mm. Po umístění do startovní pozice a spuštění má robot za úkol najít sloupek dané barvy, dojet k němu a srazit ho. Za chybu se považuje, pokud se robot dotkne či srazí sloupek jiné barvy než hledaný sloupek. Pokud bude k takové chybě docházet opakovaně či systematicky, bude to zohledněno v bodovém hodnocení úlohy. Za splnění úlohy může být uděleno maximálně 55 bodů.

3. Hledání několika sloupků

Na hrací ploše je rozmístěno více sloupků, a to i sloupků hledané barvy (hledané sloupky). Nejbližší hledaný sloupek nebude dále než 2m od určené startovní pozice. Minimální vzdálenost mezi jednotlivými sloupky d = 150mm. Vždy však bude existovat alespoň jedna cesta od startovní pozice ke každému hledanému sloupku, která bude široká (vzdálenost sousedních sloupků) alespoň 500mm. Vzdálenost od hledaných sloupků k nejbližším sloupkům jiné barvy bude minimálně 500mm. Po umístění do startovní pozice a spuštění má robot za úkol postupně najít sloupky hledané barvy, dojet k nim a srazit je. Za chybu se považuje, pokud se robot dotkne či srazí sloupek jiné barvy než hledaný sloupek. Chybou však není, pokud padající, nebo ležící sloupek hledané barvy srazí sloupek jiný. Pokud bude k chybám docházet opakovaně či systematicky, bude to zohledněno v bodovém hodnocení úlohy. Za splnění úlohy může být uděleno maximálně 70 bodů.

Bodové hodnocení

Náročnosti dané úlohy odpovídá uvedené maximální bodové hodnocení. Každý z týmů může v průběhu semestru řešit jednu či více úloh. Tým získá bodové hodnocení odpovídající bodovému hodnocení úlohy s největší náročností, kterou úspěšně vyřešil. Uvedený maximální počet bodů odpovídá bezchybnému splnění úlohy. Počet udělených bodů může být nižší v závislosti na funkčnosti předvedeného řešení.

Všichni členové týmu obdrží stejné bodové hodnocení (bodové hodnocení týmu). V případě, že některý z členů týmu v rámci tohoto předmětu nepracuje, mohou ostatní členové týmu navrhnout cvičícímu jeho vyřazení z týmu čí snížení jeho bodového hodnocení. To je možné zejména při předvedení řešení úlohy, kdy by měli být všichni členové týmu přítomni. Cvičící tento požadavek posoudí, prodiskutuje ho se všemi členy týmu a o hodnocení dotčeného studenta rozhodne.

courses/b3b33lar/tasks/torpedo_cs.txt · Last modified: 2021/04/21 09:54 by krsek