Bloky specifické pro robota#

Zavedení#

VR Rover Robot obsahuje hnací ústrojí, senzor vzdálenosti a akce jedinečné pro hřiště Rover Rescue.

Všechny standardní bloky VR VEXcode jsou k dispozici pro použití na hřišti Rover Rescue.

Níže je uveden seznam všech dostupných bloků specifických pro roboty:

Pohon – Pohybujte a otáčejte VR Roverem.

Akce – Interakce s roverem, jeho zdroji, nepřáteli a vestavěnými systémy umělé inteligence.

  • Akce

  • Hodnoty

    • rover vidí – Vrátí, zda VR Rover vidí objekt ve svém zorném poli.

    • rover detects – Vrátí, zda VR Rover detekuje minerály nebo nepřátele ve svém detekčním okruhu.

    • minerály ve skladu – Vrátí, kolik minerálů VR Rover přepravuje.

    • úložná kapacita – Vrátí aktuální úložnou kapacitu VR Roveru.

    • směr roveru - Vrátí směr k objektu ve stupních.

    • vzdálenost roveru – Vrátí vzdálenost k objektu v milimetrech nebo palcích.

    • poloha roveru – Vrátí souřadnici X nebo Y objektu v milimetrech nebo palcích.

    • pod útokem – Vrátí, zda je VR Rover aktuálně pod útokem.

    • úroveň nepřítele - Vrátí úroveň nejbližšího detekovaného nepřítele.

    • enemy radiation - Vrátí radiaci nejbližšího detekovaného nepřítele.

    • úroveň baterie – Vrátí aktuální úroveň nabití baterie VR Roveru v %.

    • level – Vrátí aktuální úroveň VR Roveru.

    • XP – Vrátí aktuální zkušenostní body VR Roveru.

    • při útoku - Spustí připojené bloky, když je VR Rover napaden.

    • při zvyšování úrovně - Spustí připojené bloky, když se VR Rover vyšplhá na vyšší úroveň.

Snímání – Detekce blízkých objektů pomocí senzoru vzdálenosti roveru.

Příklady na této stránce používají výchozí počáteční pozici hřiště.

Hnací ústrojí#

Pohon řídí, jak se VR Rover pohybuje a zatáčí. Pohon se může pohybovat vpřed nebo vzad, zatáčet doleva nebo doprava, otáčet se do směru jízdy a hlásit svůj směr.

Akce#

řídit#

Blok drive pohybuje robotem vpřed nebo vzad donekonečna. Robot se bude pohybovat, dokud nedostane další akci, například otočení nebo zastavení.

jet [dopředu v]

Parametry

Popis

směr

Směr pohybu robota: vpřed nebo vzad.

Příklad

při spuštění
[Drive forward, then stop.]
jet [dopředu v]
čekat (2) sekund
zastavit jízdu

jet pro#

Blok drive for pohybuje robotem vpřed nebo vzad o určitou vzdálenost. Projekt počká, dokud se robot nedokončí s pohybem, než se spustí další blok v zásobníku.

jet [dopředu v] na (200) [mm v] ▶

Parametry

Popis

směr

Směr pohybu robota: vpřed nebo vzad.

vzdálenost

Vzdálenost, kterou robot urazí. Může to být celé číslo nebo desetinné číslo.

jednotka

Jednotka vzdálenosti: mm (milimetry) nebo palce.

a nečekej

Vyberte šipku (▶) pro rozbalení bloku s textem a nečekejte, takže další blok v zásobníku se spustí ihned.

Příklad

při spuštění
[Drive forward for 500 mm.]
jet [dopředu v] na (500) [mm v] ▶

otočit#

Blok turn otáčí robota doleva nebo doprava navždy. Robot se bude otáčet, dokud nedostane další akci, například jízdu nebo zastavení.

otočit [vpravo v]

Parametry

Popis

směr

Směr otáčení robota: doleva nebo doprava.

Příklad

při spuštění
[Turn right, then stop.]
otočit [vpravo v]
čekat (2) sekund
zastavit jízdu

otočit se pro#

Blok turn for otočí robota doleva nebo doprava o určitý počet stupňů. Otočení je relativní vzhledem k aktuální poloze robota. Projekt počká, dokud robot nedokončí otáčení, než se spustí další blok v zásobníku.

otočit [vpravo v] o (90) stupňů ▶

Parametry

Popis

směr

Směr otáčení robota: doleva nebo doprava.

úhel

Počet stupňů, o které se robot otočí. Může to být celé číslo nebo desetinné číslo.

a nečekej

Vyberte šipku (▶) pro rozbalení bloku s textem a nečekejte, takže další blok v zásobníku se spustí ihned.

Příklad

při spuštění
[Turn left, then turn right.]
otočit [vlevo v] o (90) stupňů ▶
otočit [vpravo v] o (180) stupňů ▶

otočit k nadpisu#

Směr je směr, kterým je robot otočen, měřený ve stupních. Blok zásobníku otoč se do směru otočí robota tak, aby směřoval v určitém směru, od -359 do 359 stupňů. Robot se otočí nejkratším směrem, aby dosáhl cílového směru.

Výchozí směr je 0 stupňů.

Projekt počká, dokud robot nedokončí otáčení, než se spustí další blok v zásobníku.

otočit na kurz (90) stupňů ▶

Parametry

Popis

záhlaví

Směr, kterým by se měl robot otočit, od -359 do 359 stupňů.

a nečekej

Vyberte šipku (▶) pro rozbalení bloku s textem a nečekejte, takže další blok v zásobníku se spustí ihned.

Příklad

při spuštění
[Turn to face east.]
otočit na kurz (90) stupňů ▶

přejít k objektu#

Blok zásobníku přejít na objekt se otočí a najede VR roverem k vybranému objektu.

přejděte na [minerals v] ▶

Parametry

Popis

objekt

K jakému objektu se VR Rover vydá:

  • minerály
  • nepřítel
  • základna

a nečekej

Vyberte šipku (▶) pro rozbalení bloku s textem a nečekejte, takže další blok v zásobníku se spustí ihned.

Pokud VR Rover detekuje více minerálů nebo více nepřátel, přesune se k bližší možnosti.

Pokud se v zorném poli roveru během pohybu bloku nenacházejí minerály nebo nepřítel, robot se nepohne. Základnu lze vždy zaměřit.

Příklad

při spuštění
[Drive to the closest mineral.]
přejděte na [minerals v] ▶

přestaň řídit#

Blok stop driving zastaví pohyb robota.

zastavit jízdu

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Drive forward, then stop.]
jet [dopředu v]
čekat (4) sekund
zastavit jízdu

Nastavení#

nastavená rychlost pohonu#

Blok set drive velocity říká robotovi, jak rychle má jet. Vyšší procento způsobí, že robot jede rychleji, a nižší procento, že robot jede pomaleji.

Každý projekt začíná s robotem, který se standardně pohybuje rychlostí 50 %.

Poznámka: Vyšší rychlost zrychluje pohyb robota, ale může být méně přesný. Nižší rychlost zpomaluje pohyb robota, ale může být přesnější.

nastavit rychlost jízdy na (50) [% v]

Parametry

Popis

rychlost

Rychlost jízdy od 0 % do 100 %.

jednotka

Jednotka rychlosti: %

Příklad

při spuštění
[Move faster.]
nastavit rychlost jízdy na (100) [% v]
jet [dopředu v] na (100) [mm v] ▶

nastavená rychlost otáčení#

Blok set turn velocity říká robotovi, jak rychle se má otáčet. Vyšší procento způsobí, že se robot bude otáčet rychleji, a nižší procento způsobí, že se robot bude otáčet pomaleji.

Každý projekt začíná s robotem, který se standardně otáčí rychlostí 50 %.

Poznámka: Vyšší rychlost způsobí, že se robot otáčí rychleji, ale může být méně přesný. Nižší rychlost způsobí, že se robot otáčí pomaleji, ale může být přesnější.

nastavit rychlost otáčení na (50) [% v]

Parametry

Popis

rychlost

Rychlost otáčení od 0 % do 100 %.

jednotka

Jednotka rychlosti: %

Příklad

při spuštění
[Turn faster.]
nastavit rychlost otáčení na (100) [% v]
otočit [vpravo v] o (90) stupňů ▶

nastavit směr jízdy#

Směr je směr, kterým je robot otočen, měřený ve stupních. Blok zásobníku set drive heading změní aktuální směr robota na novou hodnotu směru.

Například pokud se robot otočil čelem doprava, nastavením směru na 0 stupňů se tato poloha směřující doprava stane novými 0 stupni. Robot se pak může na základě tohoto nového směru otáčet do jiných pozic.

nastavit kurz jízdy na (0) stupňů

Parametry

Popis

záhlaví

Hodnota směru ve stupních, která se má nastavit pro robota.

Příklad

při spuštění
[Set the heading, then turn to 0 degrees.]
nastavit kurz jízdy na (90) stupňů
otočit na kurz (0) stupňů ▶

nastavit časový limit disku#

Blok set drive timeout nastavuje, po kolik sekund se robot pokusí dokončit pohyb. Pokud robot nedokončí pohyb v tomto čase, přestane se snažit a přesune se k dalšímu bloku v zásobníku. Tím se zabrání tomu, aby se robot zasekl na pohybu.

nastavit časový limit jízdy na (1) sekund

Parametry

Popis

čas

Počet sekund, po které se robot může pokusit dokončit pohyb. Může se jednat o celé číslo nebo desetinné číslo.

Příklad

při spuštění
[Drive for at most 1 second.]
nastavit časový limit jízdy na (1) sekund
jet [dopředu v] na (25) [palce v] ▶

Hodnoty#

jízda je hotová#

Logický blok drive is done hlásí, zda robot dokončil pohyb. To lze použít k řízení načasování dalších chování na základě pohybu robota.

  • Pravda – Robot dokončil pohyb.

  • Nepravda - Robot se stále pohybuje.

Tento blok spolupracuje s bloky hnacího ústrojí, které mají parametr a nečekat.

<jízda dokončena?>

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Start turning when the drive is complete.]
jet [dopředu v] na (200) [mm v] ◀ a nečekat
čekat dokud <jízda dokončena?>
otočit [vpravo v] o (360) stupňů ▶

pohon se pohybuje#

Logický blok pohon se pohybuje hlásí, zda se robot pohybuje. To lze použít k řízení načasování dalších chování na základě pohybu robota.

  • Pravda – Robot se pohybuje.

  • Nepravda - Robot se nepohybuje.

Tento blok spolupracuje s bloky hnacího ústrojí, které mají parametr a nečekat.

<jede?>

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Print while the rover is moving.]
jet [dopředu v] na (200) [mm v] ◀ a nečekat
dokud <jede?>
tisk [Still Moving...] ▶
čekat (0.1) sekund
vymazat všechny řádky
konec
tisk [Done!] ▶

směr jízdy#

Směr otáčení je směr, kterým je robot otočen, měřený ve stupních. Blok hlášení směrování otáčení hlásí tento směr od 0 do 359,99 stupňů.

Výchozí směr robota je 0 stupňů.

(kurz jízdy ve stupních)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Display the heading after turning.]
otočit [vpravo v] o (90) stupňů ▶
tisk (kurz jízdy ve stupních) ▶
přesunout kurzor na další řádek

Akce#

Akce#

působení minerálů#

minerály [vyzvednout v]

Parametry

Popis

akce

Co dělat s minerály:

  • sebrání - Umístí minerály do skladu VR roveru.
  • drop - Dropy nesou minerály.
  • použití - Spotřebuje minerály na zemi k obnovení energie.

Sbírání minerálů je ukládá do VR roveru, dokud nejsou odhozeny nebo použity.

Používání minerálů doplňuje část energie VR Roveru. Minerály lze použít pouze tehdy, pokud jsou na zemi.

VR Rover získává zkušenostní body (XP) používáním minerálů nebo jejich odhozením na základnu.

Příklad

při spuštění
[Drive to the closest mineral and pick it up.]
přejděte na [minerals v] ▶
minerály [vyzvednout v]

absorbovat nepřátelské záření#

Blok absorb nepřítelského záření absorbuje záření od nepřítele na hřišti Rover Rescue.

absorbovat záření

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Drive to the closest enemy and absorb radiation.]
přejděte na [enemy v] ▶
absorbovat záření

pohotovostní#

Blok standby přepne VR Rover do pohotovostního režimu, dokud není dosaženo zadané prahové hodnoty nabití baterie.

pohotovostní režim do [50] % nabití baterie

Parametry

Popis

procento

Prahová hodnota nabití baterie, která způsobí, že VR Rover ukončí pohotovostní režim, od 0 do 100.

V pohotovostním režimu VR Rover spotřebovává baterii pomaleji, ale počítadlo Počet přežitých dnů se zvyšuje rychleji.

Když baterie dosáhne zvolené prahové hodnoty, VR Rover ukončí pohotovostní režim a vrátí se k normálnímu využití baterie a dennímu postupu.

Pokud je vybraná prahová hodnota rovna nebo vyšší než aktuální úroveň nabití baterie, VR Rover se nepřepne do pohotovostního režimu.

Příklad

při spuštění
[Wait in standby until battery reaches 35%.]
pohotovostní režim do [35] % nabití baterie
přejděte na [minerals v] ▶

Hodnoty#

rover vidí#

Blok rover sees vrací booleovskou hodnotu, která indikuje, zda VR Rover vidí vybraný objekt pomocí své vestavěné technologie umělé inteligence.

  • True – Vybraný objekt se nachází do 1000 milimetrů od VR roveru a v jeho zorném poli.

  • Nepravda – Vybraný objekt je dále než 1000 milimetrů a/nebo mimo zorné pole.

<vidí [minerals v]?>

Parametry

Popis

objekt

Který objekt kontrolovat:

  • minerály
  • nepřítel
  • základna
  • překážky
  • nebezpečí

Zorné pole VR Roveru je 40 stupňů, což je na minimapě znázorněno jako šedý průsvitný kužel vyčnívající z přední části roveru.

Příklad

při spuštění
navždy
pokud <vidí [minerals v]?> pak
přejděte na [minerals v] ▶
konec
konec

rover detekuje#

Blok rover detects vrací booleovskou hodnotu, která indikuje, zda VR Rover detekuje minerály nebo nepřátele pomocí své vestavěné technologie umělé inteligence.

  • True – Vybraný objekt se nachází v detekčním okruhu roveru.

  • False – Vybraný objekt se nenachází v detekčním rádiusu roveru.

<detekuje [minerals v]?>

Parametry

Popis

objekt

Který objekt detekovat:

  • minerály
  • nepřítel

Detekční poloměr VR Roveru je 800 milimetrů, což je na minimapě znázorněno jako žlutý kruh kolem roveru.

Příklad

při spuštění
navždy
pokud <detekuje [minerals v]?> pak
přejděte na [minerals v] ▶
konec
konec

minerály ve skladech#

Blok minerály ve skladu vrací aktuální množství minerálů, které má VR Rover ve svém skladu.

(minerály ve skladech)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
tisk (minerály ve skladech) ▶
přesunout kurzor na další řádek

úložná kapacita#

Blok storage capacity vrací nosnou kapacitu úložiště VR Roveru.

(úložná kapacita)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
tisk (úložná kapacita) ▶
přesunout kurzor na další řádek

směr roveru#

Blok směr roveru vrací směr od VR roveru k vybranému objektu ve stupních.

([minerals v] směr ve stupních)

Parametry

Popis

objekt

Směr, kterým objektem hlásit:

  • minerály
  • nepřítel
  • základna

U minerálů a nepřátel tento blok hlásí hodnoty pouze tehdy, když se vybraný objekt nachází do 1000 milimetrů a uvnitř 40stupňového zorného pole roveru.

Pokud je vybrána možnost základna, směr se hlásí, i když základna není v zorném poli. Pro základnu tento blok hlásí hodnotu od -180 do 180 stupňů.

Příklad

při spuštění
tisk ([minerals v] směr ve stupních) ▶
přesunout kurzor na další řádek

vzdálenost roveru#

Blok rover distance vrací vzdálenost od VR roveru k vybranému objektu.

(vzdálenost [minerals v] v [mm v] :: custom-actions)

Parametry

Popis

objekt

Vzdálenost kterého objektu hlásit:

  • minerály
  • nepřítel
  • překážky
  • nebezpečí
  • základna

jednotka

Jednotka použitá k vyjádření vzdálenosti: mm nebo palce

U minerálů a nepřátel tento blok hlásí hodnoty pouze tehdy, když se vybraný objekt nachází do 1000 milimetrů a uvnitř 40stupňového zorného pole roveru.

Pokud je vybrána možnost báze, vzdálenost se uvádí, i když se báze nenachází v zorném poli.

Příklad

při spuštění
tisk (vzdálenost [minerals v] v [mm v] :: custom-actions) ▶
přesunout kurzor na další řádek

umístění roveru#

Blok rover location vrací souřadnici X nebo Y vybraného objektu pomocí vestavěné technologie umělé inteligence roveru.

([minerals v] míst [X v] ze [mm v])

Parametry

Popis

objekt

Poloha kterého objektu hlásit:

  • minerály
  • nepřítel
  • překážky
  • nebezpečí
  • základna

osa

Kterou souřadnici vrátit:

  • X
  • Y

jednotka

Jednotka použitá k udání souřadnice: mm nebo palce

U minerálů a nepřátel tento blok hlásí hodnoty pouze tehdy, když se vybraný objekt nachází do 1000 milimetrů a uvnitř 40stupňového zorného pole roveru.

Pokud je vybrána možnost základna, bude poloha hlášena, i když základna není v zorném poli.

Příklad

při spuštění
tisk ([base v] míst [X v] ze [mm v]) ▶
přesunout kurzor na další řádek
tisk ([base v] míst [Y v] ze [mm v]) ▶
přesunout kurzor na další řádek

pod útokem#

Blok under attack vrací booleovskou hodnotu, která indikuje, zda je VR Rover aktuálně pod útokem nepřítele.

  • Pravda - VR Rover je pod útokem.

  • Nepravda - VR Rover není pod útokem.

<pod útokem?>

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
navždy
pokud <pod útokem?> pak
jet [zpět v] na [500] [mm v] ▶
konec
konec

úroveň nepřítele#

Blok enemy level vrací úroveň nejbližšího nepřítele detekovaného VR roverem.

(úroveň nepřítele)

Parametry

Popis

Tento blok nemá žádné parametry.

Pokud v detekčním okruhu VR Roveru nejsou detekováni žádní nepřátelé, tento blok vrátí 0.

Příklad

při spuštění
navždy
pokud <(úroveň nepřítele) [math_equal v] [1]> pak
přejděte na [enemy v] ▶
jinak
jet [zpět v] na [500] [mm v] ▶
konec
konec

nepřátelské záření#

Blok nepřátelského záření vrací záření nejbližšího nepřítele detekovaného VR roverem.

(nepřátelské záření)

Parametry

Popis

Tento blok nemá žádné parametry.

Pokud v detekčním okruhu VR Roveru nejsou detekováni žádní nepřátelé, tento blok vrátí 0.

Příklad

při spuštění
tisk (nepřátelské záření) ▶
přesunout kurzor na další řádek

úroveň nabití baterie#

Blok battery level vrací aktuální úroveň nabití baterie VR Roveru v procentech.

(úroveň baterie v % :: custom-actions)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
tisk (úroveň baterie v % :: custom-actions) ▶
přesunout kurzor na další řádek

úroveň#

Blok level vrací aktuální úroveň VR Roveru.

(úroveň)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
tisk (úroveň) ▶
přesunout kurzor na další řádek

Zkušenosti#

Blok XP vrací aktuální počet zkušenostních bodů, které VR Rover má.

(Zkušenosti)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
tisk (Zkušenosti) ▶
přesunout kurzor na další řádek

když je pod útokem#

Blok when under attack spustí svůj připojený zásobník pokaždé, když je VR Rover napaden nepřítelem.

když je pod útokem

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

když je pod útokem
absorbovat záření

při zvyšování úrovně#

Blok when level up spustí svůj připojený zásobník pokaždé, když se VR Rover přesune z jedné úrovně do další.

při zvyšování úrovně

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při zvyšování úrovně
tisk [The VR Rover has leveled up!] ▶
přesunout kurzor na další řádek

Snímání#

Vzdálenost#

Vzdálenost nalezeného objektu#

Blok Vzdálenost nalezena při detekci objektu vrací booleovskou hodnotu, která indikuje, zda senzor vzdálenosti detekoval objekt do vzdálenosti 2000 mm.

  • True – Senzor vzdálenosti detekoval objekt.

  • False - Senzor vzdálenosti nedetekoval žádný objekt.

<[distance v] našel objekt?>

Parametry

Popis

senzor vzdálenosti

Který senzor vzdálenosti použít? V tomto hřišti je k dispozici senzor vzdálenosti distance.

Příklad

při spuštění
[Turn until the Distance Sensor detects an object.]
otočit [vpravo v]
čekat dokud <[distance v] našel objekt?>
zastavit jízdu

vzdálenost objektu#

Blok object distance vrací vzdálenost nejbližšího objektu ze senzoru vzdálenosti.

([distance v] in [mm v])

Parametry

Popis

senzor vzdálenosti

Který senzor vzdálenosti použít? V tomto hřišti je k dispozici senzor vzdálenosti distance.

jednotka

Jednotka vzdálenosti: mm nebo palce

Příklad

při spuštění
[Wait until the Distance Sensor detects an object, then print the distance.]
otočit [vpravo v]
čekat dokud <[distance v] našel objekt?>
zastavit jízdu
tisk ([distance v] in [mm v]) ▶