Valdymas#

Įvadas#

„VEXcode“ 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, lemputė gali įsijungti, jei ranka judina objektą.

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

  • laukti – Pristabdo blokų vykdymą tam tikram laikotarpiui.

  • laukti iki – Sustabdo 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, atsižvelgdami į kelias sąlygas.

  • 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 to the left, then the right after one second.]
padidinti [ranka v] padėtį x:[100] y:[0] z:[0] [mm v] ▶
laukti (1) sekundžių
padidinti [ranka v] padėtį x:[-100] y:[0] z:[0] [mm v] ▶

laukti, kol#

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.

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 pattern.]
kartoti [4]
padidinti [ranka v] padėtį x:[2] y:[0] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[0] y:[2] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[-2] y:[0] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[0] y:[2] z:[0] [coliai v] ▶
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
padidinti [ranka v] padėtį x:[2] y:[0] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[0] y:[2] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[-2] y:[0] z:[0] [coliai v] ▶
padidinti [ranka v] padėtį x:[0] y:[2] z:[0] [coliai v] ▶
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
[Increment along the x-axis until it's no longer possible.]
kartoti kol <ne <[ranka v] padidinti padėtį x:[100] y:[0] z:[0] [mm v]?>>
padidinti [ranka v] padėtį x:[100] y:[0] z:[0] [mm v] ▶
pabaiga
nustatyti [ranka v] valdymą sustabdytą

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

Blokų krūva, prasidedanti bloku „when started“, po kurio eina komentarų blokas „Rodyti laiką po 2 sekundžių“. Blokas „wait until“ pristabdo vykdymą, kol laikmatis pasiekia arba viršija dvi sekundes. Kai ši sąlyga įvykdoma, spausdinimo blokas ekrane rodo laikmačio reikšmę.#
kai pradėta
[Display the 6-Axis Arm's position as it moves.]
perkelti [ranka v] į padėtį x:(-100) y:(200) z:(100) [mm v] ◀ ir nelaukti
kol <ne <[ranka v] baigė judėti?>>
spausdinti ([ranka v] padėtis [y v] [mm v]) konsolėje ◀ ir perkelti žymeklį į kitą eilutę
laukti [0.25] sekundžių

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

kai pradėta
[Check if the 6-Axis Arm can move to a position.]
jei <ne <[ranka v] judėjimas į padėtį x:[0] y:[0] z:[0] [mm v]?>> tada
spausdinti [The 6-Axis Arm can't move to this position.] ◀ ir perkelti žymeklį į kitą eilutę

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

kai pradėta
[Check if the 6-Axis Arm can or can't move to a position.]
jei <ne <[ranka v] judėjimas į padėtį x:[100] y:[100] z:[100] [mm v]?>> tada
spausdinti [The 6-Axis Arm can't move to this position.] konsolėje ◀ ir perkelti žymeklį į kitą eilutę
kitu atveju
spausdinti [The 6-Axis Arm can move to this position.] konsolėje ◀ ir perkelti žymeklį į kitą eilutę

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 pradėta
[Move until the 6-Axis Arm is at the corner of the tile.]
jei <[ranka v] padidinti padėtį x:[50] y:[0] z:[0] [mm v]?> tada
padidinti [ranka v] padėtį x:[50] y:[0] z:[0] [mm v] ▶
kitu atveju jei <[ranka v] padidinti padėtį x:[0] y:[50] z:[0] [mm v]?> tada
padidinti [ranka v] padėtį x:[0] y:[50] z:[0] [mm v] ▶
kitu atveju
spausdinti [The 6-Axis Arm has reached the corner.] konsolėje ◀ ir perkelti žymeklį į kitą eilutę

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ų.

sustabdyti projektą#

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

sustabdyti projekto bloką#
sustabdyti projektą

Parametrai

Aprašymas

Šis blokas neturi parametrų.