Hnací ústrojí#
Zavedení#
Robot VEX IQ (2. generace) používá k řízení a otáčení pohon. Pohon se skládá z motorů a kol, které spolupracují na pohybu robota.
Nakonfigurovaný pohon může používat připojený Gyro senzor, vestavěný Inerciální senzor modulu Brain nebo žádný senzor. Pokud je použit senzor, pohon ho využívá k přesnému pohybu a otáčení robota. Na začátku každého projektu pohon automaticky kalibruje senzor. Během kalibrace držte robota přibližně 2 sekundy v klidu, aby se mohl správně pohybovat a otáčet.
Existuje mnoho způsobů, jak kódovat hnací ústrojí. Níže je uveden seznam všech bloků hnacího ústrojí:
Akce – Pohyb a otáčení robota.
drive — Pohybuje robota vpřed nebo vzad natrvalo.
drive for — Pohybuje robota vpřed nebo vzad o určitou vzdálenost.
turn — Otočí robota doleva nebo doprava natrvalo.
otoč se o — Otočí robota doleva nebo doprava o určitý počet stupňů.
otočit se do směru — Otočí robota tak, aby dosáhl určitého směru od -359 do 359 stupňů. Robot se otočí nejkratším směrem, aby dosáhl cílového směru.
otočení do rotace — Otočí robota do určité rotace.
zastavit jízdu — Zastaví pohyb robota.
Nastavení – Úprava nastavení hnacího ústrojí.
nastavit rychlost jízdy — Říká robotovi, jak rychle má jet.
nastavit rychlost otáčení — Říká robotovi, jak rychle se má otáčet.
nastavit zastavení pohonu — Určuje, jak se robot zastaví: brzděním, doběhem nebo zastavením.
set drive timeout — Nastaví, po kolik sekund se bude robot pokusit dokončit pohyb.
nastavit směr jízdy — Změní aktuální směr robota na nový směr.
nastavit rotaci pohonu — Změní aktuální rotaci robota na novou rotaci.
Hodnoty – Zkontrolujte stav pohybu.
pohon dokončen — Hlásí, zda robot dokončil pohyb.
pohon se pohybuje — Hlásí, zda se robot pohybuje.
směrování — Ukazuje aktuální směr pohybu robota od 0 do 359 stupňů.
rotace pohonu — Hlásí aktuální rotaci robota.
rychlost pohonu — Udává, jak rychle se robot pohybuje.
proud pohonu — Udává, kolik elektrického proudu hnací ústrojí spotřebovává.
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 backward 500 mm (millimeters).]
jet [zpět 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 around to the 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 robota 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, ve stupních. Může se jednat o celé číslo nebo desetinné číslo od -359 do 359. |
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 the cardinal directions.]
otočit na kurz (90) stupňů ▶
čekat (2) sekund
otočit na kurz (180) stupňů ▶
čekat (2) sekund
otočit na kurz (270) stupňů ▶
čekat (2) sekund
otočit na kurz (0) stupňů ▶
čekat (2) sekund
otočit se k rotaci#
Blok zásobníku otoč se na rotaci otočí robota do určité rotace.
Rotace udává, o kolik se robot otočil, měřeno ve stupních. Na začátku projektu je hodnota rotace nastavena na 0 stupňů. Rotaci lze také nastavit pomocí bloku set drive rotation.
Hodnoty rotace jsou absolutní. To znamená, že směr otáčení závisí na aktuální rotaci robota. Otočení doprava rotaci zvyšuje a otáčení doleva snižuje.
Například pokud robot začne na 0 stupních a otočíte se o 720 stupňů, otočí se dvakrát doprava. Pokud se poté otočíte o 360 stupňů, otočí se jednou doleva, protože 360 je menší než 720.
otočit na rotaci (90) stupňů ▶
Parametry |
Popis |
|---|---|
otáčení |
Hodnota rotace ve stupních, na kterou 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 spin in a circle clockwise and face right.]
otočit na rotaci (-90) stupňů ▶
čekat (2) sekund
otočit na rotaci (450) stupňů ▶
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šší rychlost znamená, že robot jede rychleji a nižší rychlost znamená, ž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 % při použití %. rpm (otáčky za minutu) používá hodnoty od 0 do 120. |
jednotka |
Jednotka měření: % nebo rpm (otáčky za minutu). |
Příklad
při spuštění
[Drive forward at the default velocity.]
jet [dopředu v] na (100) [mm v] ▶
čekat (1) sekund
[Move slower.]
nastavit rychlost jízdy na (20) [% v]
jet [dopředu v] na (100) [mm v] ▶
čekat (1) sekund
[Move faster.]
nastavit rychlost jízdy na (100) [% v]
jet [dopředu v] na (100) [mm v] ▶
čekat (1) sekund
nastavená rychlost otáčení#
Blok set turn velocity říká robotovi, jak rychle se má otáčet. Vyšší rychlost způsobí, že se robot otáčí rychleji, a nižší rychlost způsobí, že se robot otáčí 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 % při použití %. rpm (otáčky za minutu) používá hodnoty od 0 do 120. |
jednotka |
Jednotka měření: % nebo rpm (otáčky za minutu). |
Příklad
při spuštění
[Turn at default velocity.]
otočit [vpravo v] o (100) stupňů ▶
čekat (1) sekund
[Turn slower.]
nastavit rychlost otáčení na (20) [% v]
otočit [vpravo v] o (100) stupňů ▶
čekat (1) sekund
[Turn faster.]
nastavit rychlost otáčení na (100) [% v]
otočit [vpravo v] o (100) stupňů ▶
čekat (1) sekund
nastavit zastavení pohonu#
Blok set drive stopping nastavuje, jak se robot zastaví: brzděním, doběhem nebo pozastavením.
nastavit zastavování jízdy na [brzda v]
Parametry |
Popis |
|---|---|
zastavující chování |
Jak robot zastaví:
|
Pokud se tento blok nepoužije, robot při zastavení použije brzdu.
Příklad
při spuštění
[Drive forward and coast to a stop.]
nastavit rychlost jízdy na (100) [% v]
nastavit zastavování jízdy na [volnoběh v]
jet [dopředu v]
čekat (2) sekund
zastavit jízdu
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 to být celé nebo desetinné číslo. |
Příklad
při spuštění
[Drive forward for 1 second, then turn.]
nastavit časový limit jízdy na (1) sekund
jet [dopředu v] na (25) [palce 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, kterou chcete nastavit pro robota. Může to být celé číslo nebo desetinné číslo od 0 do 359. |
Příklad
při spuštění
[Turn to the left.]
nastavit kurz jízdy na (90) stupňů
otočit na kurz (0) stupňů ▶
nastavení otáčení pohonu#
Rotace udává, o kolik se robot otočil, měřeno ve stupních. Na začátku projektu je hodnota rotace nastavena na 0 stupňů. Blok zásobníku set drive rotation změní aktuální rotaci robota na novou hodnotu.
Například pokud robot provedl dvě plné otáčky doprava, jeho hodnota rotace bude 720 stupňů. Nastavením rotace na 0 stupňů se tato hodnota resetuje ze 720 na 0 stupňů. Robot se pak může otáčet na základě této nové hodnoty.
nastavit rotaci jízdy na (0) stupňů
Parametry |
Popis |
|---|---|
otáčení |
Hodnota rotace ve stupních, která se má nastavit pro robota. Může to být celé číslo nebo desetinné číslo. |
Příklad
při spuštění
[Spin counterclockwise two times.]
nastavit rotaci jízdy na (720) stupňů
otočit na rotaci (0) stupňů ▶
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 následujícími bloky Drivetrain, které mají parametr a nečekej: drive for, turn for, turn to heading a turn to rotation.
<jízda dokončena?>
Parametry |
Popis |
|---|---|
Tento blok nemá žádné parametry. |
Příklad
při spuštění
[Start spinning when the drive is complete.]
jet [dopředu v] na (200) [mm v] ◀ a nečekat
navždy
pokud <jízda dokončena?> pak
otočit [vpravo v] o (360) stupňů ▶
přerušit
jinak
nastavit kurzor na řádek (1) sloupec (1) na obrazovce
tisk [Still Moving...] na obrazovce ▶
čekat (0.1) sekund
vymazat obrazovku
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 následujícími bloky Drivetrain, které mají parametr a nečekej: drive for, turn for, turn to heading a turn to rotation.
<jede?>
Parametry |
Popis |
|---|---|
Tento blok nemá žádné parametry. |
Příklad
při spuštění
[Print that the robot is moving while it is still driving.]
jet [dopředu v] na (200) [mm v] ◀ a nečekat
dokud <jede?>
nastavit kurzor na řádek (1) sloupec (1) na obrazovce
tisk [Still Moving...] na obrazovce ▶
čekat (0.1) sekund
vymazat obrazovku
konec
nastavit kurzor na řádek (1) sloupec (1) na obrazovce
tisk [Done!] na obrazovce ▶
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í řízení hlásí aktuální směr robota od 0 do 359 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 (450) stupňů ▶
tisk (kurz jízdy ve stupních) na obrazovce ◀ a přesunout kurzor na další řádek
otáčení pohonu#
Rotace udává, o kolik se robot otočil, měřeno ve stupních. Na začátku projektu je hodnota rotace nastavena na 0 stupňů. Blok hlášení rotace pohonu 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ňů.
(rotace jízdy ve stupních)
Parametry |
Popis |
|---|---|
Tento blok nemá žádné parametry. |
Příklad
při spuštění
[Display the rotation after turning.]
otočit [vpravo v] o (450) stupňů ▶
tisk (rotace jízdy ve stupních) na obrazovce ◀ a přesunout kurzor na další řádek
rychlost pohonu#
Blok drive velocity hlásí, jak rychle robot jede.
Může hlásit rychlost v procentech od -100 % do 100 % nebo v otáčkách za minutu (rpm) od -127 do 127. Kladná hodnota znamená, že robot jede vpřed. Záporná hodnota znamená, že robot jede vzad.
(rychlost jízdy v [% v])
Parametry |
Popis |
|---|---|
jednotka |
Jednotka pro hlášení rychlosti pohonu v: % (od -100 % do 100 %) nebo rpm (otáčky za minutu, od -127 do 127). |
Příklad
při spuštění
[Display the velocity as the robot is moving.]
jet [dopředu v]
čekat (1) sekund
tisk (rychlost jízdy v [% v]) na obrazovce ◀ a přesunout kurzor na další řádek
zastavit jízdu
proud pohonu#
Blok hlášení proud pohonu hlásí, kolik elektrického proudu hnací ústrojí spotřebovává, měřeno v ampérech od 0,0 do 1,2 A. Proud je množství elektřiny protékající hnacím ústrojím.
Vyšší hodnota proudu znamená, že pohon spotřebovává více elektrického proudu. K tomu může dojít, když robot tlačí na nějaký předmět nebo se snaží pohnout, když je zaseknutý.
Toto lze použít ke kontrole, zda se během pohybu nevyskytují problémy s pohonem. Pokud proud zůstává vysoký, hnací ústrojí se může zahřívat nebo méně efektivně využívat energii.
(proud jízdy v [amps v])
Parametry |
Popis |
|---|---|
Tento blok nemá žádné parametry. |
Příklad
při spuštění
[Display the current as the robot is moving.]
nastavit přesnost tisku na [0.01 v] na obrazovce
jet [dopředu v]
čekat (1) sekund
tisk (proud jízdy v [amps v]) na obrazovce ◀ a přesunout kurzor na další řádek
zastavit jízdu