Valdymas#

Įvadas#

„VEXcode AIM“ valdymo blokai valdo projekto eigą, tvarkydami ciklus, sąlygas ir atidėdami blokų vykdymą.

Ciklas yra tada, kai kompiuteris kartoja tą patį veiksmą arba veiksmų grupę vėl ir vėl, kol jam nurodoma sustoti. Sąlyga yra taisyklė, kurią kompiuteris tikrina, kad nuspręstų, ką daryti toliau. Pavyzdžiui, robotas gali judėti į priekį, jei jutiklis aptinka objektą.

Žemiau pateikiamas visų blokų sąrašas:

  • wait — Pristabdo blokų vykdymą tam tikram laikotarpiui.

  • laukti iki — Pristabdo blokų vykdymą, kol įvykdoma nurodyta sąlyga.

  • repeat — Pakartoja blokų rinkinį tam tikrą skaičių kartų.

  • forever — Kartoja blokų rinkinį neribotą laiką.

  • repeat until — Kartoja blokų rinkinį, kol įvykdoma sąlyga.

  • while — Kartoja blokų rinkinį, kol sąlyga lieka teisinga.

  • if — Paleidžia blokų rinkinį, jei sąlyga yra teisinga.

  • if / else — Paleidžia vieną blokų rinkinį, jei sąlyga teisinga, kitu atveju – kitą.

  • if / else if / else — Paleidžia skirtingus blokų rinkinius, priklausomai nuo kelių sąlygų.

  • break — Nedelsiant išeina iš repeat, forever, repeat until arba while ciklo.

  • stop project — Baigia projektą.

laukti#

Laukimo blokas pristabdo blokų vykdymą tam tikram laikui, prieš pereinant prie kito bloko.

laukimo kamino blokas#
laukti (1) sekundžių

Parametrai

Aprašymas

laikas

Laukimo laikas, nurodytas kaip teigiamas sveikasis skaičius arba dešimtainė trupmena sekundėmis.

Pavyzdys

Pajudėjęs juda į priekį vieną sekundę, o tada sustoja.#
kai pradėta
[Move forward for one second, then stop.]
judėti [pirmyn v]
laukti (1) sekundžių
sustabdyti visus judesius

laukti iki#

Stekavimo blokas laukti, kol pristabdo blokų vykdymą, kol įvykdoma nurodyta sąlyga prieš pereinant prie kito bloko.

palaukite, kol bus blokuojamas krūvos blokas#
laukti kol <>

Parametrai

Aprašymas

būklė

Sąlyga, kurią reikia įvykdyti prieš pereinant prie kito bloko.

Pavyzdys

Paleidus, juda į priekį, kol paspaudžiamas ekranas, tada sustoja visas judėjimas.#
kai pradėta
[Move forward until screen pressed, then stop.]
judėti [pirmyn v]
laukti kol <ekranas paspaustas?>
sustabdyti visus judesius

kartoti#

Pakartojimo C blokas atkartoja jame esančius blokus nustatytą skaičių kartų.

pakartokite C bloką#
kartoti [10]
pabaiga

Parametrai

Aprašymas

kartus

Sveikasis skaičius, nustatantis, kiek kartų bus kartojamas blokas pakartoti.

Pavyzdys

kai pradėta
[Move in a square path.]
kartoti [4]
judėti [pirmyn v] per [50] [mm v] ▶
sukti [dešinėn v] per [90] laipsnių ▶
pabaiga

amžinai#

Amžinai veikiantis C blokas be perstojo paleidžia jame esančius blokus vėl ir vėl.

amžinai C blokas#
amžinai
pabaiga

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Paleidus, nuolat juda kvadratine trajektorija, judėdamas į priekį 50 mm ir pasisukdamas į dešinę 90 laipsnių kampu begalinėje kilpoje.#
kai pradėta
[Move in a square path forever.]
amžinai
judėti [pirmyn v] per [50] [mm v] ▶
sukti [dešinėn v] per [90] laipsnių ▶
pabaiga

kartoti, kol#

C blokas kartoti iki pakartotinai vykdo jame esančius blokus, kol neįvykdoma nurodyta sąlyga.

kartoti iki bloko#
kartoti kol <>
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas prieš kiekvieną ciklą. Jei jis yra Klaidingas, blokai kartojasi toliau. Jei jis yra Teisinga, ciklas sustos.

Pavyzdys

Įjungus, visi šviesos diodai šviečia raudonai, kol paspaudžiamas ekranas, tada jie užgęsta.#
kai pradėta
[Repeat until the screen is pressed before turning off the LEDs.]
kartoti kol <ekranas paspaustas?>
nustatyti [lightall v] LED spalvą į [raudona v]
pabaiga
nustatyti [lightall v] LED spalvą į [išjungta v]

kol#

while C bloke esantys blokai kartojasi, kol tenkinama nurodyta sąlyga.

kol C blokas#
kol <>
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas prieš kiekvieną ciklą. Jei jis yra True, blokai toliau kartojasi. Jei False, ciklas sustos.

Pavyzdys

Pajudėjęs juda 200 mm į priekį, visiems šviesos diodams paliekant žalius. Šviesos diodai užgęsta judėjimui sustojus.#
kai pradėta
[Keep the LEDs green while the robot is moving.]
judėti [pirmyn v] per [200] [mm v] ◀ ir nelaukti
kol <judėjimas aktyvus?>
nustatyti [lightall v] LED spalvą į [žalia v]
pabaiga
nustatyti [lightall v] LED spalvą į [išjungta v]

jei#

C blokas if vykdo jame esančius blokus, jei sąlyga yra True.

jei blokas#
jei <> tada
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Jei jis yra True, bus vykdomi blokai if bloke. Jei jis yra False, blokai praleidžiami.

Pavyzdys

Paleidus, nuolat tikrina, ar paspaustas ekranas. Paspaudus, robotas vidutine jėga spiria į objektą.#
kai pradėta
[Kick when the screen is pressed.]
amžinai
jei <ekranas paspaustas?> tada
spirti objektą [vidutinis v]
pabaiga
pabaiga

jei / kitaip#

C blokas if / else nustato, kuris blokų rinkinys vykdomas, atsižvelgiant į tai, ar sąlyga yra True, ar False.

jei tada kitaip blokuoti#
jei <> tada
kitu atveju
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Jei jis yra True, bus vykdomi blokai if bloke. Jei False, bus vykdomi blokai else bloke.

Pavyzdys

Paleidus, nuolat tikrina, ar ekranas paspaustas. Paspaudus rodoma susijaudinusi ir laukianti jaustuko piktograma; priešingu atveju rodoma nuobodžiaujanti ir laukianti jaustuko piktograma.#
kai pradėta
[Show one emoji when the screen is touched and a different one when it's not.]
amžinai
jei <ekranas paspaustas?> tada
rodyti [emoji_excited v] žiūrint [pirmyn v]
kitu atveju
rodyti [emoji_bored v] žiūrint [pirmyn v]
pabaiga
pabaiga

jei / kitaip jei / kitaip#

Išplečiamas C blokas if / else if / else pasirenka, kuris blokų rinkinys bus vykdomas pagal sąlygas:

  • if vykdo savo kodo bloką, jei sąlyga įvertinama kaip True.

  • else if tikrina papildomas sąlygas tik tuo atveju, jei visos ankstesnės sąlygos įvertintos kaip False. Galima naudoti kelis else if teiginius.

  • else vykdo savo kodo bloką tik tuo atveju, jei nė viena iš ankstesnių sąlygų nebuvo įvertinta kaip True.

jei kitaip jei kitaip blokuoti#
jei <> tada
kitu atveju jei <> tada
kitu atveju
pabaiga

Parametrai

Aprašymas

būklė

Išraiška arba kintamasis, kuris tikrinamas vykdant sakinį. Pirmoji sąlyga, kuri yra True, paleidžia tą blokų rinkinį. Jei visos sąlygos įvertinamos kaip False, bus paleisti blokai, esantys else bloke.

Pavyzdys

Kai valdiklio 1 ašies padėtis pasikeičia, stumiama į priekį juda į priekį, traukiama atgal juda atgal ir sustoja neutralioje padėtyje.#
kai valdiklio ašis [1 v] pasikeitė
[Move the robot forward or reverse based on the position of the joystick.]
jei <(valdiklio ašis [1 v] padėtis) [math_greater_than v] [0]> tada
judėti [pirmyn v]
kitu atveju jei <(valdiklio ašis [1 v] padėtis) [math_less_than v] [0]> tada
judėti [atgal v]
kitu atveju
sustabdyti visus judesius
pabaiga

pertrauka#

Pertraukos blokas iš karto išeina iš ciklo. Šį bloką galima naudoti repeat, repeat until, while ir forever blokų viduje. Pertraukos blokas naudingas, kai ciklą reikia sustabdyti anksčiau dėl kažko, kas įvyksta projekto metu, pavyzdžiui, paspaudus mygtuką arba jutikliui aptikus objektą.

pertraukos kamino blokas#
pertraukti

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Įjungus, šviesos diodai mirksi raudonai ir žaliai kas 0,5 sekundės, kol paspaudžiamas ekranas, tada nustoja mirksėti.#
kai pradėta
[Flash LEDs until the screen is pressed.]
amžinai
nustatyti [lightall v] LED spalvą į [raudona v]
laukti [0.5] sekundžių
nustatyti [lightall v] LED spalvą į [žalia v]
laukti [0.5] sekundžių
jei <ekranas paspaustas?> tada
pertraukti
pabaiga
pabaiga

sustabdyti projektą#

Blokas „stop project“ užbaigia vykdomą projektą.

sustabdyti projekto bloką#
sustabdyti projektą

Parametrai

Aprašymas

Šis blokas neturi parametrų.

Pavyzdys

Paleidus, šviesos diodai mirksi raudonai ir žaliai kas 0,5 sekundės, kol paspaudžiamas ekranas, tada projektas sustabdomas.#
kai pradėta
[Stop the project once the screen is pressed.]
amžinai
nustatyti [lightall v] LED spalvą į [raudona v]
laukti [0.5] sekundžių
nustatyti [lightall v] LED spalvą į [žalia v]
laukti [0.5] sekundžių
jei <ekranas paspaustas?> tada
sustabdyti projektą
pabaiga
pabaiga