Ellenőrzés#

Bevezetés#

A VEXcode vezérlőblokkjai a projekt folyamatát irányítják a ciklusok, feltételek és a blokkok futtatásának késleltetésével.

Egy ciklus az, amikor egy számítógép ugyanazt a lépést vagy lépéscsoportot ismétli újra és újra, amíg utasítást nem kap a leállításra. A feltétel egy olyan szabály, amelyet a számítógép ellenőrzi, hogy eldöntse, mit tegyen ezután. Például egy lámpa felgyulladhat, ha a kar egy tárgyat mozgat.

Az alábbiakban a rendelkezésre álló blokkok listája található:

  • wait – Meghatározott ideig szünetelteti a blokkok futását.

  • várjon addig, amíg – Szünetelteti a blokkok futását, amíg egy megadott feltétel nem teljesül.

  • repeat – Meghatározott számú alkalommal ismétel meg egy blokkkészletet.

  • forever – Blokkhalmazt ismétel határozatlan ideig.

  • ismétlésig – Ismétel egy blokkhalmazt, amíg egy feltétel nem teljesül.

  • while – Megismétli a blokkok egy halmazát, amíg egy feltétel igaz marad.

  • if – Blokkhalmazt futtat, ha egy feltétel igaz.

  • if / else – Egy blokkkészletet futtat, ha egy feltétel igaz, egyébként egy másikat.

  • if / else if / else – Különböző blokkkészleteket futtat több feltételtől függően.

  • break – Azonnal kilép a repeat, forever, repeat until vagy while ciklusból.

  • projekt leállítása – Befejezi a projektet.

Várjon#

A várakozás veremblokk egy meghatározott időre szünetelteti a blokkok futását, mielőtt a következő blokkra lépne.

várakozó veremblokk#
várakozás (1) másodpercig

Paraméterek

Leírás

idő

A várakozási idő pozitív egész számként vagy tizedes törtként másodpercben.

Példa

Indításkor egy másodpercig előre mozog, majd minden mozgás leáll.#
amikor elindul
[Move to the left, then the right after one second.]
[kar v] pozíciójának növelése x:[100] y:[0] z:[0] [mm v] értékkel ▶
várakozás (1) másodpercig
[kar v] pozíciójának növelése x:[-100] y:[0] z:[0] [mm v] értékkel ▶

várj, amíg#

A várakozás amíg veremblokk szünetelteti a blokkok futását, amíg egy megadott feltétel nem teljesül, mielőtt a következő blokkra lépne.

várjon, amíg a veremblokk#
várakozás amíg <>

Paraméterek

Leírás

állapot

A feltétel, amelynek teljesülnie kell, mielőtt továbblépnénk a következő blokkra.

ismétlés#

A ismétlés C blokk a benne lévő blokkokat meghatározott számú alkalommal futtatja le.

ismételje meg a C blokkot#
ismétlés [10]
vége

Paraméterek

Leírás

alkalommal

Egy egész szám, amely meghatározza, hogy hányszor fusson le az ismétlés blokk.

Példa

amikor elindul
[Move in a square pattern.]
ismétlés [4]
[kar v] pozíciójának növelése x:[2] y:[0] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[0] y:[2] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[-2] y:[0] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[0] y:[2] z:[0] [hüvelyk v] értékkel ▶
vége

örökre#

Az örökké C blokk újra és újra lefuttatja a benne lévő blokkokat megállás nélkül.

örökké C blokk#
örökre
vége

Paraméterek

Leírás

Ennek a blokknak nincsenek paraméterei.

Példa

Indításkor folyamatosan, négyzet alakú pályán mozog, 50 mm-t előre haladva és 90 fokkal jobbra fordulva egy végtelen ciklusban.#
amikor elindul
[Move in a square path forever.]
örökre
[kar v] pozíciójának növelése x:[2] y:[0] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[0] y:[2] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[-2] y:[0] z:[0] [hüvelyk v] értékkel ▶
[kar v] pozíciójának növelése x:[0] y:[2] z:[0] [hüvelyk v] értékkel ▶
vége

ismételd, amíg#

Az ismétlésig C blokk a benne lévő blokkokat ismételten lefuttatja, amíg a megadott feltétel nem teljesül.

ismételd a blokkig#
ismétlés amíg <>
vége

Paraméterek

Leírás

állapot

Egy kifejezés vagy változó, amelyet minden ciklus előtt ellenőriz a rendszer. Ha Hamis, a blokkok ismétlődnek. Ha Igaz, a ciklus leáll.

Példa

Indításkor az összes LED pirosan világít, amíg a képernyőt meg nem nyomjuk, majd kikapcsol.#
amikor elindul
[Increment along the x-axis until it's no longer possible.]
ismétlés amíg <nem <[kar v] pozíció növelhető x:[100] y:[0] z:[0] [mm v] értékkel?>>
[kar v] pozíciójának növelése x:[100] y:[0] z:[0] [mm v] értékkel ▶
vége
[kar v] vezérlésének leállítása

míg#

A while C blokk ismételten lefuttatja a benne lévő blokkokat, amíg a megadott feltétel teljesül.

míg a c blokk#
amíg <>
vége

Paraméterek

Leírás

állapot

Egy kifejezés vagy változó, amelyet minden ciklus előtt ellenőriz a rendszer. Ha Igaz, a blokkok ismétlődnek. Ha Hamis, a ciklus leáll.

Példa

Egy blokkokból álló köteg, amely egy „when started” blokkal kezdődik, majd egy „2 másodperc elteltével megjeleníti az időt” megjegyzésblokk követi. A „wait until” blokk szünetelteti a végrehajtást, amíg az időzítő el nem éri vagy meghaladja a két másodpercet. Ha ez a feltétel teljesül, egy nyomtatási blokk megjeleníti az időzítő értékét a képernyőn.#
amikor elindul
[Display the 6-Axis Arm's position as it moves.]
[kar v] mozgatása x:(-100) y:(200) z:(100) [mm v] pozícióba ◀ és ne várjon
amíg <nem <[kar v] befejezte a mozgást?>>
([kar v] pozíciója [y v] [mm v] egységben) nyomtatása a konzolon ◀ és kurzor a következő sorra
várakozás [0.25] másodpercig

ha#

Az ha C blokk lefuttatja a benne lévő blokkokat, ha a feltétel Igaz.

ha blokk#
ha <> akkor
vége

Paraméterek

Leírás

állapot

Egy kifejezés vagy változó, amelyet a program az utasítás futtatásakor ellenőriz. Ha Igaz, akkor az hamis blokkon belüli blokkok futnak le. Ha Hamis, akkor a blokkok átugranak.

Példa

amikor elindul
[Check if the 6-Axis Arm can move to a position.]
ha <nem <[kar v] mozgatható x:[0] y:[0] z:[0] [mm v] pozícióba?>> akkor
[The 6-Axis Arm can't move to this position.] nyomtatása ◀ és kurzor a következő sorra

ha / máskülönben#

Az if / else C blokk határozza meg, hogy mely blokkok futnak le az alapján, hogy a feltétel Igaz vagy Hamis.

ha akkor különben blokkol#
ha <> akkor
különben
vége

Paraméterek

Leírás

állapot

Egy kifejezés vagy változó, amelyet a művelet futtatásakor ellenőriz a rendszer. Ha Igaz, akkor az hamis blokkban lévő blokkok fognak lefutni. Ha Hamis, akkor az más blokkban lévő blokkok fognak lefutni.

Példa

amikor elindul
[Check if the 6-Axis Arm can or can't move to a position.]
ha <nem <[kar v] mozgatható x:[100] y:[100] z:[100] [mm v] pozícióba?>> akkor
[The 6-Axis Arm can't move to this position.] nyomtatása a konzolon ◀ és kurzor a következő sorra
különben
[The 6-Axis Arm can move to this position.] nyomtatása a konzolon ◀ és kurzor a következő sorra

ha / különben ha / különben#

Az if / else if / else bővíthető C blokk a feltételek alapján választja ki, hogy mely blokkok fussanak:

  • Az ha függvény lefuttatja a kódblokkját, ha a feltétel Igaz értéket ad ki.

  • Az else if csak akkor ellenőrzi a további feltételeket, ha az összes korábbi feltétel Hamis-nak lett kiértékelve. Több else if utasítás is használható.

  • Az else függvény csak akkor futtatja le a kódblokkját, ha az előző feltételek egyike sem értékelődött ki Igaz-ként.

ha másképp ha másképp blokk#
ha <> akkor
különben ha <> akkor
különben
vége

Paraméterek

Leírás

állapot

Egy kifejezés vagy változó, amelyet a rendszer ellenőriz az utasítás futtatásakor. Az első feltétel, amely Igaz, lefuttatja a blokkok adott halmazát. Ha minden feltétel Hamis-ként értékelődik, akkor az más blokkon belüli blokkok fognak lefutni.

Példa

amikor elindul
[Move until the 6-Axis Arm is at the corner of the tile.]
ha <[kar v] pozíció növelhető x:[50] y:[0] z:[0] [mm v] értékkel?> akkor
[kar v] pozíciójának növelése x:[50] y:[0] z:[0] [mm v] értékkel ▶
különben ha <[kar v] pozíció növelhető x:[0] y:[50] z:[0] [mm v] értékkel?> akkor
[kar v] pozíciójának növelése x:[0] y:[50] z:[0] [mm v] értékkel ▶
különben
[The 6-Axis Arm has reached the corner.] nyomtatása a konzolon ◀ és kurzor a következő sorra

szünet#

A break veremblokk azonnal kilép a ciklusból. Ez a blokk használható a repeat, repeat until, while és forever blokkokon belül. A Break akkor hasznos, ha egy ciklust korábban le kell állítani valamilyen, a projekt során történt esemény miatt, például egy gomb megnyomása vagy egy érzékelő által érzékelt objektum miatt.

törési veremblokk#
megszakítás

Paraméterek

Leírás

Ennek a blokknak nincsenek paraméterei.

projekt leállítása#

A projekt leállítása veremblokk leállítja a futó projektet.

projektblokk leállítása#
projekt leállítása

Paraméterek

Leírás

Ennek a blokknak nincsenek paraméterei.