Inerciální#

Zavedení#

Kódovací robot VEX AIM má vestavěný inerciální senzor. Tento senzor měří, jak se robot pohybuje a otáčí.

Inerciální senzor k tomu používá dvě části. Gyroskop měří otáčení, jako je směr robota, rotace, rychlost otáčení a orientace. Akcelerometr měří změny pohybu, jako je zrychlení, zpomalení nebo náhlé zastavení během havárie.

Inerciální bloky lze použít ke sledování zatáček, měření zrychlení, detekci nehod a resetování hodnot směru nebo rotace.

Níže je uveden seznam všech bloků:

Hodnoty – Hlásí orientaci a data o pohybu.

  • heading — Ukazuje směr, kterým se robot nachází, od 0 do 359,99 stupňů.

  • rotation — Ukazuje, o kolik se robot otočil.

  • zrychlení — Udává, jak rychle robot zrychluje nebo zpomaluje na vybrané ose.

  • get turn rate — Udává, jak rychle se robot otáčí na vybrané ose.

  • orientation — Ukazuje úhel klopení, stoupání nebo stáčení robota.

Akce – Reakce na havárie nebo resetování hodnot tahu.

Hodnoty#

záhlaví#

Směr pohybu robota je směr, měřený ve stupních od 0 do 359,99. Blok hlášení heading hlásí aktuální směr pohybu robota.

Výchozí kurz je 0 stupňů. Pokud se robot otočí za více než 359,99 stupňů, kurz se vrátí zpět na 0 stupňů.

Blok reportéra nadpisů.#
kurz ve stupních

Parametry

Popis

Tento blok nemá žádné parametry.

Příklady

při spuštění
[Turn right until the heading reaches 90 degrees.]
otočit [vpravo v]
čekat [0.05] sekund
čekat dokud <(kurz ve stupních) [math_greater_than v] [90]>
zastavit veškerý pohyb

při spuštění
[Display the robot's heading as it is rotated by hand.]
navždy
vymazat řádek [1] na obrazovce
nastavit kurzor na řádek [1] sloupec [1] na obrazovce
tisk (kurz ve stupních) na obrazovce ▶
čekat [0.05] sekund

otáčení#

Rotace udává, o kolik se robot otočil, měřeno ve stupních. Na rozdíl od směru se rotace může zvýšit nad 359,99 stupňů nebo snížit pod 0 stupňů. Na začátku projektu je hodnota rotace nastavena na 0 stupňů. Blok hlášení rotace hlásí aktuální rotaci robota.

Otočení doprava zvětšuje rotaci a otočení doleva ji snižuje. Například provedení dvou celých otoček doprava bude znamenat rotaci o 720 stupňů. Otočení o jednu celou otáčku doleva z 0 stupňů bude znamenat rotaci o -360 stupňů.

Blok reportéra Rotace.#
(rotace ve stupních)

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Print the rotation value as the robot turns.]
otočit [vpravo v] o [480] stupňů ◀ a nečekat
navždy
vymazat obrazovku
nastavit kurzor na řádek [1] sloupec [1] na obrazovce
tisk (rotace ve stupních) na obrazovce ▶

akcelerace#

Zrychlení udává, jak rychle robot zrychluje nebo zpomaluje. Blok hlášení zrychlení hlásí zrychlení robota podél vybrané osy, od -4,00 G do 4,00 G.

G je jednotka používaná k měření zrychlení. 1 G udává zrychlení, které cítíte vlivem gravitace, když sedíte v klidu.

Hodnota může být kladná nebo záporná v závislosti na směru zrychlení na vybrané ose. V AIM jsou možnosti os pojmenovány podle směrů robota: vpřed, doprava a dolů.

Blok reportéra zrychlení.#
(zrychlení osy [dopředu v] v g :: custom-controller-inertial-timer)

Parametry

Popis

osa

Osa pro měření zrychlení:

  • vpřed
  • vpravo
  • dolů

Senzorové zařízení VEX je zobrazeno se třemi označenými barevnými šipkami označujícími směr. Červená šipka označená DOPRAVA směřuje diagonálně nahoru doleva, zelená šipka označená VPŘED směřuje diagonálně nahoru doprava a modrá šipka označená DOLŮ směřuje přímo dolů ze středu.

Příklad

při spuštění
[Show the change in acceleration as the robot begins to move.]
nastavit kurzor na řádek [4] sloupec [1] na obrazovce
tisk (spojit [Resting: ] (zrychlení osy [doprava v] v g :: custom-controller-inertial-timer)) na obrazovce ▶
přesunout kurzor na další řádek na obrazovce
čekat [0.5] sekund
pohybovat [vpravo v] na [50] [mm v] ◀ a nečekat
čekat [0.1] sekund
tisk (spojit [Startup: ] (zrychlení osy [doprava v] v g :: custom-controller-inertial-timer)) na obrazovce ▶

získat rychlost otáčení#

Rychlost otáčení udává, jak rychle se robot otáčí. Blok get turn rate hlásí aktuální rychlost otáčení robota podél vybrané osy ve stupních za sekundu \(dps\) jako celé číslo.

Hodnota může být kladná nebo záporná v závislosti na směru, kterým se robot otáčí kolem dané osy. Obrázek níže zobrazuje směr kladné rotace pro klopení, stoupání a stáčení pomocí šipek.

Senzorové zařízení VEX je zobrazeno se třemi barevnými šipkami označujícími jeho rotační osy. Červená šipka označená jako „Pitch“ (náklon) směřuje diagonálně nahoru doleva, zelená šipka označená jako „Roll“ (klopení) směřuje diagonálně nahoru doprava a modrá šipka označená jako „Yaw“ (stáčení) směřuje přímo dolů ze středu.

Blok reportéra Get Turn Rate.#
(rychlost otáčení osy [zatočení v] v dps)

Parametry

Popis

osa

Osa, na které se má hlásit rychlost otáčení:

  • klopení
  • klopení
  • stáčení

Příklad

při spuštění
[Observe the yaw turn rate as the robot turns.]
otočit [vpravo v] o [180] stupňů ◀ a nečekat
navždy
vymazat obrazovku
nastavit kurzor na řádek [1] sloupec [1] na obrazovce
tisk (rychlost otáčení osy [zatočení v] v dps) na obrazovce ▶

orientace#

Orientace je aktuální úhel robota na vybrané ose otáčení. Blok hlášení orientace hlásí klopení, stoupání nebo vybočení robota v rozsahu od -180,00 do 180,00 stupňů jako desetinné číslo.

Naklánění, stoupání a stáčení popisují různé způsoby, jakými se robot může naklánět nebo otáčet. Obrázek níže používá šipky k znázornění směru kladné rotace pro naklánění, stoupání a stáčení.

Senzorové zařízení VEX je zobrazeno se třemi barevnými šipkami označujícími jeho rotační osy. Červená šipka označená jako „Pitch“ (náklon) směřuje diagonálně nahoru doleva, zelená šipka označená jako „Roll“ (klopení) směřuje diagonálně nahoru doprava a modrá šipka označená jako „Yaw“ (stáčení) směřuje přímo dolů ze středu.

Blok reportérů Orientace.#
orientace [zatočení v] ve stupních

Parametry

Popis

osa

Orientační osa, která se má hlásit:

  • klopení
  • klopení
  • stáčení

Příklad

při spuštění
[Display the robot's orientation as it is rotated by hand.]
navždy
vymazat řádek [1] na obrazovce
nastavit kurzor na řádek [1] sloupec [1] na obrazovce
tisk (orientace [náklon v] ve stupních) na obrazovce ▶
čekat [0.05] sekund

Akce#

když havaroval#

Blok when crashed spustí připojený zásobník, když robot detekuje náhlý náraz nebo kolizi. Detekce nárazu využívá akcelerometr a aktuální citlivost na náraz.

Když havaroval kloboukový blok.#
při nárazu

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Start moving forward.]
nastavit rychlost pohybu na [100]%
pohybovat [dopředu v]

při nárazu
[Respond when a crash is detected.]
zastavit veškerý pohyb
přehrát zvuk [náraz v] ▶

nastavit citlivost na náraz#

Blok set crash sensitivity upravuje, jak velké náhlé zrychlení je potřeba, aby robot detekoval náraz.

Blok zásobníku nastavené citlivosti na pád.#
nastavit citlivost nárazu na [nízký v]

Parametry

Popis

citlivost

Citlivost robota při detekci nárazů:

  • nízká – Detekuje pouze silnější nárazy.
  • střední – Detekuje středně silné nárazy.
  • vysoká – Detekuje menší nárazy.

Příklad

při spuštění
[Move slowly with high crash sensitivity.]
nastavit rychlost pohybu na [35]%
nastavit citlivost nárazu na [vysoký v]
pohybovat [dopředu v]

při nárazu
[Respond when a crash is detected.]
zastavit veškerý pohyb
přehrát zvuk [náraz v] ▶

resetovat nadpis#

Blok reset heading resetuje aktuální směr robota na 0 stupňů. Po spuštění tohoto bloku se směr, kterým se robot aktuálně pohybuje, stane novým směrem 0 stupňů.

Blok zásobníku záhlaví Reset.#
resetovat kurz

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Face left before turning around.]
otočit na kurz [270] stupňů ▶
resetovat kurz
čekat [1] sekund
otočit na kurz [180] stupňů ▶

resetovat rotaci#

Blok reset rotation resetuje aktuální hodnotu rotace robota na 0 stupňů. Po spuštění tohoto bloku robot sleduje budoucí otáčení od nové hodnoty rotace 0 stupňů.

Blok zásobníku rotace Reset.#
resetovat rotaci

Parametry

Popis

Tento blok nemá žádné parametry.

Příklad

při spuštění
[Turn for 480 degrees before resetting rotation.]
otočit [vpravo v] o [480] stupňů ▶
resetovat rotaci
navždy
vymazat obrazovku
nastavit kurzor na řádek [1] sloupec [1] na obrazovce
tisk (rotace ve stupních) na obrazovce ▶