Přejít k hlavnímu obsahu

Tunelový labyrint

Použijte bloky [Jezdit] a [Otočit se], přední senzor vzdálenosti a dolní senzor oka k přesunutí VR robota z počáteční pozice (zelený čtverec) do koncové pozice (červený čtverec) na hřišti Maze+.

  • Vyberte nástěnné bludiště + hřiště.
  • Stáhněte si soubor .vrmaze zsložky  nahrajte bludiště do hřiště.
  • Naprogramujte VR robota tak, aby jel z počáteční pozice (zelený čtvereček) do koncové pozice (červený čtvereček).
    • Vytvořte algoritmus, který pomocí senzoru předního vzdálenosti naviguje VR robota pohybujícího se v bludišti, aniž by narazil do zdi.
    • Pomocí senzoru oka dolů zkontrolujte červenou barvu, abyste zjistili, zda VR robot dorazil do koncové polohy.
    • Použijte blok [Navždy], aby se VR robot neustále pohyboval v bludišti, a nechte senzor oka dolů neustále kontrolovat koncovou polohu, aby robota zastavil.

Užitečné rady

  • Použijte blok Down Eye detects z kategorie Sensing k hlášení, zda senzor Down Eye detekuje určitou barvu.

    Blok snímání barev VEXcode, který zobrazuje hodnotu 'DownEye detekuje červenou?'.

    • Odpovídající příkaz Pythonu:

      down_eye.detect(ČERVENÁ)
  • Pomocí senzoru přední vzdálenosti určete, zda se VR robot blíží ke zdi. Použijte porovnávací blok Méně než z kategorie Operátory k hlášení, zda je vzdálenost mezi VR robotem a stěnou bludiště menší než prahová hodnota, která určí, zda se VR robot blíží ke zdi.

    VEXcode Menší než blok obsahující Vzdálenost od bloku, která dohromady čte 'FrontDistance v mm < 200'.

    • Odpovídající příkaz Pythonu:

      front_distance.get_distance(MM) < 200
  • Použijte blok if then else z kategorie Control pro kontrolu, zda se VR robot blíží ke zdi, a spusťte kód pro provedení různých chování na základě booleovské podmínky. Pokud je booleovská podmínka true, budou spuštěny bloky uvnitř sekce if . Pokud je booleovská podmínka false, budou spuštěny bloky uvnitř sekce else .

    Prázdný VEXcode If then else blok, který čte 'if then, else'.

    • Odpovídající příkaz Pythonu:

      pokud podmínka:
      	splněno
      jinak:
      	splněno
  • Pro okamžité ukončení opakující se smyčky použijte příkaz break block z kategorie Control.

    VEXcode Zastaví blok, který čte 'zastaví'.

    • Odpovídající příkaz Pythonu:

      přerušení