Judesys#
Įvadas#
Varikliai valdo roboto dalių judėjimą. Varikliai gali būti naudojami rankai pakelti, nagui pasukti, ratui sukti arba kitai konstrukcijos daliai perkelti. Du varikliai gali veikti kartu kaip pavarų dėžė, kad judintų ir suktų visą robotą.
Kiekvienas variklis konfigūruojamas lange „Įrenginiai“. Priklausomai nuo versijos, variklių pavadinimai ir kryptys gali keistis. Pavyzdžiui, „Competition Advanced 2.0“ versijoje yra variklis pavadinimu ArmMotor, kurio kryptys yra aukštyn ir žemyn. Pasirinktinis robotas gali naudoti skirtingus variklių pavadinimus arba kryptis.
Pagal numatytuosius nustatymus, pirmyn variklis sukasi prieš laikrodžio rodyklę, o atgal – pagal laikrodžio rodyklę. Jei įrenginių lange nustatyta variklio sukimosi atbulinės eigos kryptis, šios kryptys bus sukeistos.
Variklius galima koduoti įvairiais būdais. Žemiau pateikiamas visų judesio blokų sąrašas:
Veiksmai — Sustabdyti ir sukti variklius.
sukti variklį — Suka variklį pirmyn arba atgal amžinai.
sukti variklį — Suka variklį tam tikrą atstumą.
sukti variklį į poziciją — Suka variklį į konkrečią padėtį.
stop motor — Sustabdo variklio sukimąsi.
Nustatymai – koreguokite variklio nustatymus.
nustatyti variklio padėtį — Pakeičia dabartinę variklio padėtį į naują reikšmę.
nustatyti variklio greitį — Nurodo varikliui sukimosi greitį.
nustatyti variklio stabdymą — Nustato, kaip variklis sustos: stabdant, riedėdamas iš vietos arba palaikydamas.
nustatyti maksimalų variklio sukimo momentą — Nustato, kiek stipriai variklis gali spausti sukdamasis.
nustatyti variklio timeout — Nustato, kiek sekundžių variklis bandys užbaigti judesį.
Vertės – patikrinkite variklio būseną.
variklis baigtas — Praneša, ar variklis baigė judėti.
variklis sukasi? — Praneša, ar variklis sukasi.
variklio padėtis — Praneša apie dabartinę variklio padėtį.
variklio greitis – nurodo variklio sukimosi greitį procentais nuo -100 % iki 100 %.
variklio srovė – nurodo, kiek energijos variklis naudoja iš akumuliatoriaus, procentais nuo 0 % iki 100 %.
Veiksmai#
sukimosi variklis#
Sukimosi variklio blokas suka variklį pirmyn arba atgal amžinai. Variklis suksis tol, kol jam bus duotas kitas veiksmas, pavyzdžiui, suktis kita kryptimi arba sustoti.
sukti [ArmMotor v] [aukštyn v]
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuris suksis. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
kryptis |
Variklio sukimosi kryptis. Pagal numatytuosius nustatymus galimos pirmyn ir atgal. Krypties parinktys gali keistis priklausomai nuo variklio konfigūracijos. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor, then stop.]
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
sustabdyti [ArmMotor v]
sukimosi variklis#
Blokas „sukti variklį suka variklį tam tikrą atstumą. Sukimasis yra santykinis pagal dabartinę variklio padėtį. Projektas lauks, kol variklis baigs suktis, prieš paleidžiant kitą bloką bloke.
sukti [ArmMotor v] [aukštyn v] per [90] [laipsniai v] ▶
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuris suksis. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
kryptis |
Variklio sukimosi kryptis. Pagal numatytuosius nustatymus galimos pirmyn ir atgal. Krypties parinktys gali keistis priklausomai nuo variklio konfigūracijos. |
atstumas |
Atstumas, kuriuo sukasi variklis. Laipsniai nurodomi sveikaisiais skaičiais. Posūkiai gali būti naudojami sveikaisiais arba dešimtainiais skaičiais. |
vienetas |
Atstumo vienetas: laipsniai arba posūkiai. |
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: Competition Advanced 2.0]
[Raise and lower the ArmMotor.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
sukti [ArmMotor v] [žemyn v] per [180] [laipsniai v] ▶
pasukite variklį į padėtį#
Sukite variklį į padėtį blokų rinkinys suka variklį į konkrečią padėtį.
Variklio padėtis rodo, kiek jis apsisuko, matuojant laipsniais arba apsūkiais. Vienas apsūkis lygus 360 laipsnių. Projekto pradžioje variklio padėtis nustatoma į 0 laipsnių. Variklio padėtį taip pat galima nustatyti naudojant bloką nustatyti variklio padėtį.
Padėties vertės yra absoliučios. Tai reiškia, kad sukimosi kryptis priklauso nuo dabartinės variklio padėties.
sukti [ArmMotor v] į padėtį (90) [laipsniai v] ▶
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuris suksis. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
pozicija |
Variklio sukimosi padėties vertė. Laipsniai naudojami sveikaisiais skaičiais. Apsūkiai gali būti naudojami sveikaisiais arba dešimtainiais skaičiais. |
vienetas |
Padėties vienetas: laipsniai arba posūkiai. |
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: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
sukti [ArmMotor v] į padėtį [0] [laipsniai v] ▶
sustabdyti variklį#
Variklio sustabdymo blokelis sustabdo variklio sukimąsi.
sustabdyti [ArmMotor v]
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurį reikia sustabdyti. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Raise the ArmMotor.]
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
sustabdyti [ArmMotor v]
Nustatymai#
nustatyti variklio padėtį#
Variklio padėtis rodo, kiek jis apsisuko, matuojamas laipsniais arba apsukų. Vienas apsūkis lygus 360 laipsnių. Nustatyti variklio padėtį blokų rinkinys pakeičia dabartinę variklio padėtį į naują reikšmę.
Pavyzdžiui, jei variklis apsisuko iki 180 laipsnių, nustatant 0 laipsnių padėtį, ši padėtis bus atkurta iš 180 į 0 laipsnių. Tada variklis gali suktis į padėtis, pagrįstas ta nauja verte.
nustatyti [ArmMotor v] padėtį į (0) [laipsniai v]
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurio padėtį reikia nustatyti. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
pozicija |
Variklio padėties vertė, kurią reikia nustatyti. Laipsniai gali būti naudojami sveikieji skaičiai. Posūkiai gali būti naudojami sveikieji arba dešimtainiai skaičiai. |
vienetas |
Padėties vienetas: laipsniai arba posūkiai. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Return ArmMotor to 0 degrees after raising.]
nustatyti [ArmMotor v] padėtį į [0] [laipsniai v]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
sukti [ArmMotor v] į padėtį [0] [laipsniai v] ▶
nustatytas variklio greitis#
Nustatyto variklio greičio blokų rinkinys nurodo varikliui, kokiu greičiu jis turi suktis. Didesnis procentas leidžia varikliui suktis greičiau, o mažesnis – lėčiau.
Kiekvienas projektas pradedamas, kai kiekvienas variklis pagal numatytuosius nustatymus sukasi 50 % greičiu.
Pastaba: Didesnis greitis leidžia varikliui sukasi greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia varikliui sukasi lėčiau, bet gali būti tiksliau.
nustatyti [ArmMotor v] greitį į [50] %
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurio greitį reikia nustatyti. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
greitis |
Sukimosi greitis nuo 0% iki 100%. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different velocities.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
[Move slow.]
nustatyti [ArmMotor v] greitį į [20] %
sukti [ArmMotor v] [žemyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
[Move fast.]
nustatyti [ArmMotor v] greitį į [100] %
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
nustatyti variklio stabdymą#
Variklio sustabdymo nustatymo blokas nustato, kaip variklis sustos: stabdant, riedėdamas iš vėžių arba palaikydamas judėjimą.
nustatyti [ArmMotor v] stabdymą į [stabdys v]
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuriam reikia nustatyti stabdymo elgseną. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
stabdantis elgesys |
Kaip variklis sustos:
|
Pavyzdžiui, jei naudojama „Competition Advanced 2.0“ versija ir „ArmMotor“ nustatytas laikyti, variklis laikys ranką dabartinėje padėtyje, kol bus atliktas kitas rankos judesys. Tai reiškia, kad variklis veiks prieš gravitaciją, kad ranka būtų laikoma ore, jei variklis buvo sustabdytas pakelta ranka.
Jei šis blokas nenaudojamas, stabdydamas variklis naudos stabdį.
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor, then coast to a stop.]
nustatyti [ArmMotor v] greitį į [20] %
nustatyti [ArmMotor v] stabdymą į [laisva eiga v]
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
sustabdyti [ArmMotor v]
nustatyti maksimalų variklio sukimo momentą#
Sukimo momentas yra sukimo jėga. Jis parodo, kaip stipriai variklis gali stumti arba traukti, kai sukasi.
Nustatyti maksimalų variklio sukimo momentą blokų rinkinys nustato didžiausią sukimo momentą, kurį variklis gali naudoti.
Didesnis procentas leidžia varikliui stumti stipriau, pavyzdžiui, keliant sunkų daiktą. Mažesnis procentas riboja, kiek stipriai variklis gali stumti. Tai gali padėti apsaugoti robotą, jei variklis užstringa arba pasiekia ribą, kiek gali judėti.
Kiekvienas projektas pradedamas, kai kiekvieno variklio sukimo momentas pagal numatytuosius nustatymus yra 50 %.
nustatyti [ArmMotor v] maksimalų sukimo momentą į (50) %
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuriam reikia nustatyti maksimalų sukimo momentą. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
sukimo momentas |
Maksimalus variklio sukimo momentas gali būti nuo 0 % iki 100 %. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Move the ArmMotor at different torques.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
[Move with less torque.]
nustatyti [ArmMotor v] maksimalų sukimo momentą į [20] %
sukti [ArmMotor v] [žemyn v] per [180] [laipsniai v] ▶
laukti [1] sekundžių
[Move with maximum torque.]
nustatyti [ArmMotor v] maksimalų sukimo momentą į [100] %
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
nustatyti variklio laikmatį#
Blokas „Nustatyti variklio skirtąjį laiką“ nustato, kiek sekundžių variklis bandys užbaigti judesį. Jei variklis negali užbaigti per tą laiką, jis nustos bandyti ir pereis prie kito bloko bloke. Tai neleidžia varikliui užstrigti ties judesiu.
nustatyti [ArmMotor v] laiko limitą į (1) sekundžių
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuriam reikia nustatyti skirtąjį laiką. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
laikas |
Sekundžių skaičius, kurį variklis gali bandyti užbaigti judesį. Tai gali būti sveikasis skaičius arba dešimtainė trupmena. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Move ArmMotor as far as possible for 1 second before resetting.]
nustatyti [ArmMotor v] padėtį į [0] [laipsniai v]
nustatyti [ArmMotor v] laiko limitą į [1] sekundžių
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ▶
sukti [ArmMotor v] į padėtį [0] [laipsniai v] ▶
Vertybės#
variklis baigtas?#
Loginis blokas variklis baigė judėti praneša, ar variklis baigė judėti. Tai galima naudoti norint valdyti kitų veiksmų, pagrįstų variklio judėjimu, laiką.
Teisinga — Variklis nustojo judėti.
Netiesa — Variklis vis dar juda.
Šis blokas veikia kartu su šiais judesio blokais, turinčiais parametrą ir nelaukti: sukimosi variklis už ir sukimosi variklis į poziciją.
<[ArmMotor v] baigė?>
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuris praneš, ar baigė judėti. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ◀ ir nelaukti
laukti [0.1] sekundžių
amžinai
jei <[ArmMotor v] baigė?> tada
nustatyti akies šviesą [išjungta v]
kitu atveju
nustatyti akies šviesą [įjungta v]
variklis sukasi?#
Loginis blokas „variklis sukasi? praneša, ar variklis sukasi. Tai galima naudoti norint valdyti kitų veiksmų, pagrįstų variklio judėjimu, laiką.
Tiesa – Variklis sukasi.
Netiesa — Variklis nesisuka.
Šis blokas veikia kartu su šiais judesio blokais, turinčiais parametrą ir nelaukti: sukimosi variklis už ir sukimosi variklis į poziciją.
<[ArmMotor v] sukasi?>
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kuris praneš, ar sukasi. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Turn the Eye Sensor's light on while ArmMotor is moving.]
sukti [ArmMotor v] [aukštyn v] per [180] [laipsniai v] ◀ ir nelaukti
laukti [0.1] sekundžių
amžinai
jei <[ArmMotor v] sukasi?> tada
nustatyti akies šviesą [įjungta v]
kitu atveju
nustatyti akies šviesą [išjungta v]
variklio padėtis#
Variklio padėtis nurodo, kiek jis apsisuko, matuojant laipsniais arba apsisukimais. Variklio padėties pranešimo blokas praneša apie dabartinę variklio padėtį.
Projekto pradžioje variklio padėtis nustatyta į 0 laipsnių. Jei variklis sukasi vieną pilną apsisukimą į priekį, padėtis bus 360 laipsnių arba 1 apsisukimas. Jei variklis sukasi kita kryptimi, padėtis bus neigiama.
([ArmMotor v] padėtis [laipsniai v] :: custom-motion)
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurio padėties ataskaita. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
vienetas |
Variklio padėties matavimo vienetas: laipsniais arba apsukais. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Display how far the ArmMotor moves after one second.]
nustatyti [ArmMotor v] padėtį į [0] [laipsniai v]
spausdinti [Start: ] ▶
spausdinti ([ArmMotor v] padėtis [laipsniai v] :: custom-motion) ▶
perkelti žymeklį į kitą eilutę
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
sustabdyti [ArmMotor v]
spausdinti [After: ] ▶
spausdinti ([ArmMotor v] padėtis [laipsniai v] :: custom-motion) ▶
variklio greitis#
Variklio greičio reporterio blokas nurodo variklio sukimosi greitį procentais nuo -100 % iki 100 %.
Teigiama reikšmė reiškia, kad variklis sukasi į priekį. Neigiama reikšmė reiškia, kad variklis sukasi atgal.
([ArmMotor v] greitis %)
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurio greitis turi būti nurodytas. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Display the ArmMotor's velocity when it moves.]
spausdinti [Resting: ] ▶
spausdinti ([ArmMotor v] greitis %) ▶
perkelti žymeklį į kitą eilutę
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
spausdinti [Moving: ] ▶
spausdinti ([ArmMotor v] greitis %) ▶
sustabdyti [ArmMotor v]
variklio srovė#
Variklio srovės ataskaitų blokas praneša, kiek energijos variklis naudoja iš akumuliatoriaus, procentais nuo 0 % iki 100 %.
Didesnė srovės vertė reiškia, kad variklis naudoja daugiau galios. Taip gali nutikti, kai variklis kelia sunkų daiktą, stumia į objektą arba bando pajudėti, kai yra užstrigęs.
([ArmMotor v] srovė %)
Parametrai |
Aprašymas |
|---|---|
variklis |
Variklis, kurio srovės stiprumą reikia pranešti. Pasirinkite iš variklių, sukonfigūruotų lange „Įrenginiai“. |
Pavyzdys
kai pradėta :: hat events
[Build Used: Competition Advanced 2.0]
[Display the motor's current when it moves.]
spausdinti [Resting: ] ▶
spausdinti ([ArmMotor v] srovė %) ▶
perkelti žymeklį į kitą eilutę
sukti [ArmMotor v] [aukštyn v]
laukti [1] sekundžių
spausdinti [Moving: ] ▶
spausdinti ([ArmMotor v] srovė %) ▶
sustabdyti [ArmMotor v]