Pavarų dėžė#
Įvadas#
Pavaros sistemą sudaro ratai ir varikliai, kurie valdo roboto judėjimą ir posūkius. Pavaros sistemas galima rasti tokiuose modeliuose kaip „Code Base 2.0“, „Super Car“ arba individualiai pritaikytame robote.
Pavaros naudoja smegenyse esantį inercinį jutiklį, kad aptiktų avarijas ir padėtų robotui tiksliai judėti ir pasisukti. Kiekvieno projekto pradžioje pavaros sistema automatiškai kalibruoja inercinį jutiklį. Kalibravimo metu robotą reikia laikyti nejudant apie 2 sekundes, kad jis galėtų tinkamai judėti ir pasisukti.
Yra daug būdų, kaip koduoti pavaros sistemą. Žemiau pateikiamas visų pavaros sistemos blokų sąrašas:
Veiksmai — Judinti ir pasukti robotą.
drive — Robotas juda pirmyn arba atgal amžinai.
drive for — Robotas juda pirmyn arba atgal tam tikru atstumu.
važiuoti iki — Robotas juda pirmyn arba atgal, kol akių jutiklis aptinka objektą arba robotas aptinka susidūrimą.
turn — Robotas pasukamas į kairę arba į dešinę visam laikui.
pasukti — Robotas pasukamas į kairę arba į dešinę tam tikru laipsnių skaičiumi.
pasukti į kryptį — Robotas pasuka tam tikra kryptimi nuo -359 iki 359 laipsnių. Robotas pasuks trumpiausia kryptimi, kad pasiektų tikslinę kryptį.
sukti į rotaciją — Įjungia roboto sukimąsi konkrečia kryptimi.
stop driving — Sustabdo roboto judėjimą.
Nustatymai – koreguokite pavaros nustatymus.
nustatytas važiavimo greitis — Nurodo robotui, kokiu greičiu važiuoti.
nustatytas apsisukimo greitis — Nurodo robotui, kaip greitai jis turi suktis.
nustatyti pavaros sustabdymą — Nurodo, kaip robotas sustabdys judėjimą: stabdydamas, riedėdamas iš vietos arba palaikydamas.
nustatyti pavaros timeout — Nustato, kiek sekundžių robotas bandys užbaigti judesį.
nustatyti važiavimo kryptį — Pakeičia dabartinę roboto kryptį į naują.
nustatyti pavaros sukimąsi — Pakeičia dabartinį roboto sukimąsi į naują sukimąsi.
Vertės – patikrinkite judėjimo būseną.
vairavimas baigtas — Praneša, ar robotas baigė judėti.
vairavimo kryptis — Praneša apie dabartinę roboto kryptį nuo 0 iki 359 laipsnių.
pavaros sukimas — Praneša apie dabartinį roboto sukimąsi.
vairavimo greitis – nurodo roboto važiavimo greitį procentais nuo -100 % iki 100 %.
Veiksmai#
vairuoti#
Pavaros blokas robotą judina pirmyn arba atgal be galo. Robotas judės tol, kol jam bus duotas kitas veiksmas, pavyzdžiui, pasisukti arba sustoti.
važiuoti [pirmyn v]
Parametrai |
Aprašymas |
|---|---|
kryptis |
Roboto judėjimo kryptis: pirmyn arba atgal. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
važiuoti [pirmyn v]
laukti (2) sekundžių
sustabdyti važiavimą
siekti#
Blokas „vairuoti“ krūvoje robotą judina pirmyn arba atgal tam tikrą atstumą. Projektas lauks, kol robotas baigs judėti, prieš paleidžiant kitą bloką krūvoje.
važiuoti [pirmyn v] per [100] [mm v] ▶
Parametrai |
Aprašymas |
|---|---|
kryptis |
Roboto judėjimo kryptis: pirmyn arba atgal. |
atstumas |
Atstumas, kurį nuvažiuoja robotas. Tai gali būti sveikasis arba dešimtainis skaičius. |
vienetas |
Atstumo vienetas: mm (milimetrai) arba coliai. |
ir nelauk |
Pasirinkite rodyklę (▶), kad išplėstumėte bloką, pavadindami ir nelaukite, kad kitas blokas krūvoje būtų paleistas iš karto. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive back and forth.]
važiuoti [pirmyn v] per [100] [mm v] ▶
važiuoti [atgal v] per [4] [coliai v] ▶
važiuoti iki#
Važiuoti iki bloko blokas judina robotą pirmyn arba atgal, kol akių jutiklis aptinka objektą arba robotas aptinka susidūrimą.
važiuoti [pirmyn v] kol [objektas v] ▶
Parametrai |
Aprašymas |
|---|---|
kryptis |
Roboto judėjimo kryptis: pirmyn arba atgal. |
būklė |
Sąlyga, kuri sustabdo robotą: objektas arba susidūrimas. |
ir nelauk |
Pasirinkite rodyklę (▶), kad išplėstumėte bloką, pavadindami ir nelaukite, kad kitas blokas krūvoje būtų paleistas iš karto. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn right after a crash.]
važiuoti [pirmyn v] kol [smūgis v] ▶
sukti [dešinėn v] per (90) laipsnių ▶
posūkis#
Pasuko bloko blokas suka robotą į kairę arba į dešinę amžinai. Robotas suksis tol, kol jam bus duotas kitas veiksmas, pavyzdžiui, važiuoti iki sustojimo.
sukti [dešinėn v]
Parametrai |
Aprašymas |
|---|---|
kryptis |
Roboto sukimosi kryptis: kairėn arba dešinėn. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn right and left, then stop.]
sukti [dešinėn v]
laukti [2] sekundžių
sukti [kairėn v]
laukti [2] sekundžių
sustabdyti važiavimą
pasukti#
Blokas „posūkis“ pasuka robotą į kairę arba į dešinę tam tikru laipsnių skaičiumi. Posūkis yra santykinis su dabartine roboto padėtimi. Projektas lauks, kol robotas baigs pasisukti, prieš paleidžiant kitą bloką krūvoje.
sukti [dešinėn v] per (90) laipsnių ▶
Parametrai |
Aprašymas |
|---|---|
kryptis |
Roboto sukimosi kryptis: kairėn arba dešinėn. |
kampas |
Roboto posūkio laipsnių skaičius. Tai gali būti sveikasis arba dešimtainis skaičius. |
ir nelauk |
Pasirinkite rodyklę (▶), kad išplėstumėte bloką, pavadindami ir nelaukite, kad kitas blokas krūvoje būtų paleistas iš karto. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn right then left.]
sukti [dešinėn v] per (90) laipsnių ▶
sukti [kairėn v] per (90) laipsnių ▶
pasukite į antraštę#
Kryptis – tai kryptis, kuria pasukęs robotas, matuojama laipsniais. Pasukite į kryptį blokas pasuka robotą tam tikra kryptimi nuo -359 iki 359 laipsnių. Robotas pasisuks trumpiausia kryptimi, kad pasiektų tikslinę kryptį.
Pradinė kryptis yra 0 laipsnių.

Projektas lauks, kol robotas baigs suktis, prieš paleidžiant kitą bloką krūvoje.
sukti į [90] laipsnių kryptį ▶
Parametrai |
Aprašymas |
|---|---|
antraštė |
Roboto pasukimo kryptis, išreikšta sveikuoju skaičiumi nuo -359 iki 359 laipsnių. |
ir nelauk |
Pasirinkite rodyklę (▶), kad išplėstumėte bloką, pavadindami ir nelaukite, kad kitas blokas krūvoje būtų paleistas iš karto. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn to face the cardinal directions.]
sukti į [90] laipsnių kryptį ▶
laukti [1] sekundžių
sukti į [180] laipsnių kryptį ▶
laukti [1] sekundžių
sukti į [270] laipsnių kryptį ▶
laukti [1] sekundžių
sukti į [0] laipsnių kryptį ▶
pasukti į rotaciją#
Pasukite į rotaciją blokų blokas įjungia roboto rotaciją.
Sukimas rodo, kiek robotas pasisuko, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. Sukimą taip pat galima nustatyti naudojant bloką set drive rotation.
Sukimosi vertės yra absoliučios. Tai reiškia, kad posūkio kryptis priklauso nuo roboto dabartinio sukimosi. Sukant į dešinę, sukimasis padidėja, o sukant į kairę – sumažėja.
Pavyzdžiui, jei robotas pradeda judėti nuo 0 laipsnių ir jūs pasisukate 720 laipsnių kampu, jis du kartus pasisuks į dešinę. Jei tada pasisuksite 360 laipsnių kampu, jis vieną kartą pasisuks į kairę, nes 360 laipsnių yra mažiau nei 720.

Projektas lauks, kol robotas baigs suktis, prieš paleidžiant kitą bloką krūvoje.
sukti į (90) laipsnių posūkį ▶
Parametrai |
Aprašymas |
|---|---|
rotacija |
Roboto sukimosi vertė laipsniais. Tai gali būti sveikasis skaičius. |
ir nelauk |
Pasirinkite rodyklę (▶), kad išplėstumėte bloką, pavadindami ir nelaukite, kad kitas blokas krūvoje būtų paleistas iš karto. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Make one full turn to the right.]
sukti į [360] laipsnių posūkį ▶
[Make another full turn to the right.]
sukti į [720] laipsnių posūkį ▶
[Make one full turn to the left, returning to 360 degrees.]
sukti į [360] laipsnių posūkį ▶
nustoti vairuoti#
Sustabdyti važiavimą bloko blokas sustabdo roboto judėjimą.
sustabdyti važiavimą
Parametrai |
Aprašymas |
|---|---|
Šis blokas neturi parametrų. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive forward then stop.]
važiuoti [pirmyn v]
laukti (2) sekundžių
sustabdyti važiavimą
Nustatymai#
nustatytas pavaros greitis#
Nustatyto važiavimo greičio blokų rinkinys nurodo robotui, kokiu greičiu važiuoti. Didesnis procentas leidžia robotui važiuoti greičiau, o mažesnis – lėčiau.
Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus važiuoja 50 % greičiu.
Pastaba: Didesnis greitis leidžia robotui važiuoti greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui važiuoti lėčiau, bet tiksliau.
nustatyti važiavimo greitį į (50) %
Parametrai |
Aprašymas |
|---|---|
greitis |
Važiavimo greitis nuo 0% iki 100%. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive at different velocities.]
važiuoti [pirmyn v] per [100] [mm v] ▶
laukti [1] sekundžių
[Drive slow.]
nustatyti važiavimo greitį į (20) %
važiuoti [pirmyn v] per [100] [mm v] ▶
laukti [1] sekundžių
[Drive fast.]
nustatyti važiavimo greitį į (100) %
važiuoti [pirmyn v] per [100] [mm v] ▶
nustatytas posūkio greitis#
Nustatyto apsisukimo greičio blokų rinkinys nurodo robotui, kokiu greičiu jis turi suktis. Didesnis procentas leidžia robotui suktis greičiau, o mažesnis – lėčiau.
Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus sukasi 50 % greičiu.
Pastaba: Didesnis greitis leidžia robotui sukasi greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui sukasi lėčiau, bet tiksliau.
nustatyti sukimosi greitį į [50]%
Parametrai |
Aprašymas |
|---|---|
greitis |
Sukimosi greitis nuo 0% iki 100%. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn at different velocities.]
sukti [dešinėn v] per [180] laipsnių ▶
laukti [1] sekundžių
[Turn fast.]
nustatyti sukimosi greitį į [100]%
sukti [dešinėn v] per [180] laipsnių ▶
nustatyti pavaros stabdymą#
Blokas „nustatyti pavaros sustabdymą“ nustato, kaip robotas sustabdys judėjimą: stabdydamas, riedėdamas iš vietos arba palaikydamas.
nustatyti važiavimo stabdymą į [stabdys v]
Parametrai |
Aprašymas |
|---|---|
stabdantis elgesys |
Kaip robotas sustos:
|
Jei šis blokas nenaudojamas, robotas stabdydamas naudos stabdį.
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive, then coast to a stop.]
nustatyti važiavimo greitį į (100) %
nustatyti važiavimo stabdymą į [laisva eiga v]
važiuoti [pirmyn v]
laukti [2] sekundžių
sustabdyti važiavimą
nustatyti važiavimo laikmatį#
Blokas „nustatyti pavaros laiką“ nustato, kiek sekundžių robotas bandys užbaigti judesį. Jei robotas negali užbaigti per tą laiką, jis nustos bandyti ir pereis prie kito bloko bloke. Tai neleidžia robotui užstrigti ties judesiu.
nustatyti važiavimo laiko limitą į [1] sekundžių
Parametrai |
Aprašymas |
|---|---|
laikas |
Sekundžių skaičius, kurį robotas gali bandyti užbaigti judesį. Tai gali būti sveikasis skaičius arba dešimtainė trupmena. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Drive as far as possible for 1 second before turning right.]
nustatyti važiavimo laiko limitą į [1] sekundžių
važiuoti [pirmyn v] per [25] [coliai v] ▶
sukti [dešinėn v] per [90] laipsnių ▶
nustatyti važiavimo kryptį#
Kryptis – tai roboto smegenų kryptis, matuojama laipsniais. nustatyti pavaros kryptį bloko reikšmė pakeičia dabartinę roboto kryptį į naują.
Pavyzdžiui, jei robotas pasisuko veidu į dešinę, nustačius 0 laipsnių kryptį, ta nukreipta į dešinę pozicija tampa nauja 0 laipsnių. Tada robotas gali pasisukti į kitas pozicijas, remdamasis ta nauja kryptimi.
nustatyti važiavimo kryptį į [0] laipsnių
Parametrai |
Aprašymas |
|---|---|
antraštė |
Roboto krypties vertė laipsniais. Tai gali būti sveikasis skaičius nuo 0 iki 359. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Face the new 0 degree heading.]
nustatyti važiavimo kryptį į [90] laipsnių
sukti į [0] laipsnių kryptį ▶
nustatyti pavaros sukimąsi#
Sukimas – tai roboto pasisuko kampas, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. nustatyti pavaros sukimąsi blokų blokas pakeičia dabartinę roboto sukimosi vertę į naują.
Pavyzdžiui, jei robotas atliko du pilnus posūkius į dešinę, jo sukimosi vertė bus 720 laipsnių. Nustačius sukimąsi į 0 laipsnių, sukimasis bus atstatytas iš 720 į 0 laipsnių. Tada robotas galės atlikti sukimus pagal tą naują vertę.
nustatyti važiavimo posūkį į (0) laipsnių
Parametrai |
Aprašymas |
|---|---|
rotacija |
Roboto sukimosi vertė laipsniais. Tai gali būti sveikasis skaičius. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Spin counterclockwise two times.]
nustatyti važiavimo posūkį į [720] laipsnių
sukti į [0] laipsnių posūkį ▶
Vertybės#
važiavimas baigtas#
Būlio blokas važiuoti baigta praneša, ar robotas baigė judėti. Tai galima naudoti norint valdyti kitų veiksmų, pagrįstų roboto judėjimu, laiką.
Tiesa — Robotas baigė judėti.
Netiesa — Robotas vis dar juda.
Šis blokas veikia kartu su šiais transmisijos blokais, turinčiais parametrą ir nelaukti: drive for, drive until, turn for, turn to heading ir turn to rotation.
<važiavimas baigtas?>
Parametrai |
Aprašymas |
|---|---|
Šis blokas neturi parametrų. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Turn when the drivetrain is done moving forward.]
važiuoti [pirmyn v] per [100] [mm v] ◀ ir nelaukti
laukti [0.25] sekundžių
amžinai
jei <važiavimas baigtas?> tada
sukti [dešinėn v] per [180] laipsnių ▶
pertraukti
kitu atveju
spausdinti [Still moving...] ▶
laukti [0.1] sekundžių
išvalyti visas eilutes
važiavimo kryptis#
Kryptis – tai roboto smegenų kryptis, matuojama laipsniais. Važiavimo krypties reporterio blokas praneša apie kryptį nuo 0 iki 359 laipsnių.
Roboto pradinė kryptis yra 0 laipsnių.

(važiavimo kryptis laipsniais)
Parametrai |
Aprašymas |
|---|---|
Šis blokas neturi parametrų. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Display the heading while turning.]
sukti [dešinėn v] per [450] laipsnių ◀ ir nelaukti
amžinai
išvalyti visas eilutes
spausdinti (važiavimo kryptis laipsniais) ▶
laukti [0.1] sekundžių
pavaros sukimasis#
Sukimasis – tai roboto pasisuko kampas, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. pavaros sukimosi reporterio blokas praneša apie dabartinį roboto sukimąsi.
Sukant į dešinę, sukimasis padidėja, o sukant į kairę – sumažėja. Pavyzdžiui, padarius du pilnus posūkius į dešinę, bus pranešta apie 720 laipsnių sukimąsi.

(važiavimo posūkis laipsniais)
Parametrai |
Aprašymas |
|---|---|
Šis blokas neturi parametrų. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Display the rotation while turning.]
sukti [dešinėn v] per [450] laipsnių ◀ ir nelaukti
amžinai
išvalyti visas eilutes
spausdinti (važiavimo posūkis laipsniais) ▶
laukti [0.1] sekundžių
pavaros greitis#
Važiavimo greičio reporterio blokas praneša apie roboto važiavimo greitį procentais nuo -100 % iki 100 %.
Teigiama reikšmė reiškia, kad robotas važiuoja į priekį. Neigiama reikšmė reiškia, kad robotas važiuoja atbuline eiga.
(važiavimo greitis %)
Parametrai |
Aprašymas |
|---|---|
Šis blokas neturi parametrų. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Code Base 2.0]
[Display the velocity of the robot before and while moving.]
spausdinti [Start: ] ▶
spausdinti (važiavimo greitis %) ▶
perkelti žymeklį į kitą eilutę
važiuoti [pirmyn v]
laukti [0.5] sekundžių
spausdinti [Moving: ] ▶
spausdinti (važiavimo greitis %) ▶
sustabdyti važiavimą