Kontrole#
Ievads#
VEXcode vadības bloki pārvalda projekta plūsmu, apstrādājot ciklus, nosacījumus un aizkavējot bloku darbību.
Cikls ir tad, kad dators atkārto vienu un to pašu soli vai soļu grupu atkal un atkal, līdz tam tiek dota komanda apstāties. Nosacījums ir noteikums, ko dators pārbauda, lai izlemtu, kas jādara tālāk. Piemēram, gaisma var iedegties, ja roka pārvieto objektu.
Zemāk ir pieejamo bloku saraksts:
wait – Aptur bloku darbību uz noteiktu laiku.
gaidīt līdz – Aptur bloku izpildi, līdz tiek izpildīts norādītais nosacījums.
repeat – Atkārto bloku kopu noteiktu reižu skaitu.
forever – Atkārto bloku kopu bezgalīgi.
atkārtot līdz – Atkārto bloku kopu, līdz tiek izpildīts nosacījums.
while – Atkārto bloku kopu, kamēr nosacījums paliek spēkā.
if – Izpilda bloku kopu, ja nosacījums ir patiess.
if / else – Izpilda vienu bloku komplektu, ja nosacījums ir patiess, pretējā gadījumā palaiž citu.
if / else if / else – Izpilda dažādus bloku komplektus atkarībā no vairākiem nosacījumiem.
break – Nekavējoties iziet no repeat, forever, repeat until vai while cikla.
apturēt projektu – Beidz projektu.
pagaidiet#
Gaidīšanas steka bloks uz noteiktu laiku aptur bloku darbību, pirms pāriet uz nākamo bloku.
gaidīt (1) sekundes
Parametri |
Apraksts |
|---|---|
laiks |
Gaidīšanas laiks, kas norādīts kā pozitīvs vesels skaitlis vai decimāldaļa sekundēs. |
Piemērs
kad sākts
[Move to the left, then the right after one second.]
palielināt [roka v] pozīciju par x:[100] y:[0] z:[0] [mm v] ▶
gaidīt (1) sekundes
palielināt [roka v] pozīciju par x:[-100] y:[0] z:[0] [mm v] ▶
pagaidiet, līdz#
Steka bloks gaidīt līdz aptur bloku darbību, līdz tiek izpildīts noteikts nosacījums pirms pāriešanas uz nākamo bloku.
gaidīt līdz <>
Parametri |
Apraksts |
|---|---|
stāvoklis |
Nosacījums, kas jāizpilda, pirms pāriet uz nākamo bloku. |
atkārtot#
Atkārtošanas C bloks atkārto tajā esošos blokus noteiktu reižu skaitu.
atkārtot [10]
beigas
Parametri |
Apraksts |
|---|---|
reizes |
Vesels skaitlis, kas nosaka, cik reižu tiek izpildīts atkārtošanas bloks. |
Piemērs
kad sākts
[Move in a square pattern.]
atkārtot [4]
palielināt [roka v] pozīciju par x:[2] y:[0] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[0] y:[2] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[-2] y:[0] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[0] y:[2] z:[0] [collas v] ▶
beigas
uz visiem laikiem#
Mūžīgais C bloks turpina darbināt tajā esošos blokus atkal un atkal, neapstājoties.
mūžīgi
beigas
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
Piemērs
kad sākts
[Move in a square path forever.]
mūžīgi
palielināt [roka v] pozīciju par x:[2] y:[0] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[0] y:[2] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[-2] y:[0] z:[0] [collas v] ▶
palielināt [roka v] pozīciju par x:[0] y:[2] z:[0] [collas v] ▶
beigas
atkārtojiet, līdz#
C bloks atkārtot līdz atkārtoti izpilda tajā esošos blokus, kamēr norādītais nosacījums nav izpildīts.
atkārtot līdz <>
beigas
Parametri |
Apraksts |
|---|---|
stāvoklis |
Izteiksme vai mainīgais, kas tiek pārbaudīts pirms katras cilpas. Ja tā ir False, bloki turpina atkārtoties. Ja tā ir True, cikls apstāsies. |
Piemērs
kad sākts
[Increment along the x-axis until it's no longer possible.]
atkārtot līdz <nav <[roka v] palielināt pozīciju par x:[100] y:[0] z:[0] [mm v]?>>
palielināt [roka v] pozīciju par x:[100] y:[0] z:[0] [mm v] ▶
beigas
iestatīt [roka v] uz apturētu vadību
kamēr#
while C blokā esošie bloki tiek atkārtoti palaisti, kamēr ir izpildīts norādītais nosacījums.
kamēr <>
beigas
Parametri |
Apraksts |
|---|---|
stāvoklis |
Izteiksme vai mainīgais, kas tiek pārbaudīts pirms katras cilpas. Ja tā ir Patiesa, bloki turpina atkārtoties. Ja tā ir Aplama, cikls apstāsies. |
Piemērs
kad sākts
[Display the 6-Axis Arm's position as it moves.]
pārvietot [roka v] uz pozīciju x:(-100) y:(200) z:(100) [mm v] ◀ un negaidīt
kamēr <nav <[roka v] pārvietošana pabeigta?>>
drukāt ([roka v] pozīcija [y v] [mm v]) konsolē ◀ un pāriet uz nākamo rindu
gaidīt [0.25] sekundes
ja#
C bloks if palaiž blokus iekšpusē, ja nosacījums ir True.
ja <> tad
beigas
Parametri |
Apraksts |
|---|---|
stāvoklis |
Izteiksme vai mainīgais, kas tiek pārbaudīts, kad izpilda priekšrakstu. Ja tas ir True, tiks izpildīti bloki if blokā. Ja tas ir False, bloki tiek izlaisti. |
Piemērs
kad sākts
[Check if the 6-Axis Arm can move to a position.]
ja <nav <[roka v] pārvietot uz pozīciju x:[0] y:[0] z:[0] [mm v]?>> tad
drukāt [The 6-Axis Arm can't move to this position.] ◀ un pāriet uz nākamo rindu
ja / citādi#
C bloks if / else nosaka, kurš bloku kopums tiek izpildīts, pamatojoties uz to, vai nosacījums ir True vai False.
ja <> tad
citādi
beigas
Parametri |
Apraksts |
|---|---|
stāvoklis |
Izteiksme vai mainīgais, kas tiek pārbaudīts, kad izpilda priekšrakstu. Ja tas ir True, tiks izpildīti bloki if blokā. Ja tas ir False, tiks izpildīti bloki else blokā. |
Piemērs
kad sākts
[Check if the 6-Axis Arm can or can't move to a position.]
ja <nav <[roka v] pārvietot uz pozīciju x:[100] y:[100] z:[100] [mm v]?>> tad
drukāt [The 6-Axis Arm can't move to this position.] konsolē ◀ un pāriet uz nākamo rindu
citādi
drukāt [The 6-Axis Arm can move to this position.] konsolē ◀ un pāriet uz nākamo rindu
ja / citādi ja / citādi#
Paplašināmais C bloks if / else if / else atlasa, kurš bloku komplekts tiks palaists, pamatojoties uz nosacījumiem:
if palaiž savu koda bloku, ja nosacījums tiek novērtēts kā True.
else if pārbauda papildu nosacījumus tikai tad, ja visi iepriekšējie nosacījumi ir novērtēti kā False. Var izmantot vairākus else if priekšrakstus.
else palaiž savu koda bloku tikai tad, ja neviens no iepriekšējiem nosacījumiem nav novērtēts kā True.
ja <> tad
citādi ja <> tad
citādi
beigas
Parametri |
Apraksts |
|---|---|
stāvoklis |
Izteiksme vai mainīgais, kas tiek pārbaudīts, kad izpildās priekšraksts. Pirmais nosacījums, kas ir True, palaiž šo bloku kopu. Ja visi nosacījumi tiek novērtēti kā False, tiks izpildīti bloki else blokā. |
Piemērs
kad sākts
[Move until the 6-Axis Arm is at the corner of the tile.]
ja <[roka v] palielināt pozīciju par x:[50] y:[0] z:[0] [mm v]?> tad
palielināt [roka v] pozīciju par x:[50] y:[0] z:[0] [mm v] ▶
citādi ja <[roka v] palielināt pozīciju par x:[0] y:[50] z:[0] [mm v]?> tad
palielināt [roka v] pozīciju par x:[0] y:[50] z:[0] [mm v] ▶
citādi
drukāt [The 6-Axis Arm has reached the corner.] konsolē ◀ un pāriet uz nākamo rindu
pārtraukums#
Steka bloks break nekavējoties iziet no cikla. Šo bloku var izmantot blokos repeat, repeat until, while un forever. Break ir noderīgs, ja cikls ir jāpārtrauc priekšlaicīgi, pamatojoties uz kaut ko, kas notiek projekta laikā, piemēram, pogas nospiešanu vai sensora noteikšanu.
pārtraukt
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |
apturēt projektu#
Steka bloks apturēt projektu aptur palaistu projektu.
apturēt projektu
Parametri |
Apraksts |
|---|---|
Šim blokam nav parametru. |