Bedieningselementen#

Invoering#

De besturingsblokken in VEXcode AIR beheren de projectstroom door lussen, voorwaarden en vertragingen in de uitvoering van blokken af ​​te handelen.

Een lus is wanneer een computer dezelfde stap of groep stappen steeds opnieuw herhaalt totdat hij de opdracht krijgt om te stoppen. Een voorwaarde is een regel die de computer controleert om te bepalen wat hij vervolgens moet doen. De drone kan bijvoorbeeld vooruit vliegen wanneer er op een knop van de controller wordt gedrukt.

Hieronder vindt u een lijst met beschikbare blokken:

  • wait — Pauzeert de uitvoering van blokken gedurende een bepaalde tijd.

  • wacht tot — Pauzeert de uitvoering van blokken totdat aan een bepaalde voorwaarde is voldaan.

  • repeat — Herhaalt een set blokken een specifiek aantal keren.

  • voor altijd — Herhaalt een reeks blokken oneindig.

  • herhaal tot — Herhaalt een reeks blokken totdat aan een voorwaarde is voldaan.

  • while — Herhaalt een reeks blokken zolang een voorwaarde waar blijft.

  • if — Voert een reeks blokken uit als aan een voorwaarde is voldaan.

  • if / else — Voert één set blokken uit als een voorwaarde waar is, anders voert het een andere set blokken uit.

  • als / anders als / anders — Voert verschillende sets blokken uit, afhankelijk van meerdere voorwaarden.

  • break — Verlaat een lus onmiddellijk.

  • stop project — Beëindigt het project.

wachten#

Het wacht-blok op de stack zorgt ervoor dat blokken een bepaalde tijd niet worden uitgevoerd voordat naar het volgende blok wordt overgegaan.

wachtstapelblok#
wacht (1) seconden

Parameters

Beschrijving

tijd

De wachttijd, weergegeven als een positief geheel getal of decimaal getal in seconden.

Voorbeeld

wanneer gestart
[Fly for 1 second.]
stijg op naar (500) [mm v] ▶
wacht [1] seconden
land ▶

wacht tot#

Het wacht tot-blok op de stack zorgt ervoor dat blokken niet worden uitgevoerd totdat aan een bepaalde voorwaarde is voldaan, waarna naar het volgende blok wordt overgegaan.

wacht tot het blok gestapeld is#
wacht totdat <>

Parameters

Beschrijving

voorwaarde

De voorwaarde waaraan moet worden voldaan voordat naar het volgende blok kan worden overgegaan. Als de waarde is:

  • Onwaar - Het wachten gaat verder
  • Waar - Het wachten stopt en er wordt naar het volgende blok overgegaan

Voorbeeld

wanneer gestart
[Hover at 200 mm.]
stijg op naar [500] [mm v] ▶
klim [omlaag v]
wacht totdat <(distance [downward v] range in [mm v]) [math_less_than v] [200]>
zweef
wacht (3) seconden
land ▶

herhalen#

Het C-blok repeat voert de blokken erin een vast aantal keren uit.

herhaal c-blok#
herhaal [10]
einde

Parameters

Beschrijving

tijden

Een geheel getal dat bepaalt hoe vaak het herhaal-blok wordt uitgevoerd.

Voorbeeld

wanneer gestart
[Move back and forth four times then land.]
stijg op naar [500] [mm v] ▶
herhaal (4)
beweeg [vooruit v] voor (500) [mm v] ▶
wacht (1) seconden
beweeg [backward v] voor (500) [mm v] ▶
wacht (1) seconden
einde
land ▶

voor altijd#

Het eeuwige C-blok zorgt ervoor dat de blokken erin steeds opnieuw worden uitgevoerd zonder te stoppen.

voor altijd c blok#
altijd
einde

Parameters

Beschrijving

Dit blok heeft geen parameters.

Voorbeeld

wanneer gestart
[Move with controller.]
stijg op naar [500] [mm v] ▶
altijd
beweeg met controller
einde

herhaal tot#

Het C-blok herhaal tot de blokken erin herhaaldelijk uitvoert totdat aan de opgegeven voorwaarde niet is voldaan.

herhaal tot het blok#
herhaal totdat <>
einde

Parameters

Beschrijving

voorwaarde

Een expressie of variabele die vóór elke lus wordt gecontroleerd. Als deze False is, worden de blokken herhaald. Als deze True is, stopt de lus.

Voorbeeld

wanneer gestart
[Move with controller until button 7 is pressed.]
stijg op naar [500] [mm v] ▶
herhaal totdat <controller-knop [7 v] ingedrukt?>
beweeg met controller
einde
land ▶

terwijl#

Het C-blok while voert de blokken binnenin herhaaldelijk uit zolang aan de opgegeven voorwaarde wordt voldaan.

terwijl c-blok#
zolang <>
einde

Parameters

Beschrijving

voorwaarde

Een expressie of variabele die vóór elke lus wordt gecontroleerd. Als deze waar is, worden de blokken herhaald. Als deze onwaar is, stopt de lus.

Voorbeeld

wanneer gestart
[Hover at 200 mm.]
stijg op naar [500] [mm v] ▶
zolang <(distance [downward v] range in [mm v]) [math_greater_than v] [200]>
klim [omlaag v]
einde
zweef
wacht (3) seconden
land ▶

als#

Het C-blok if voert de blokken binnenin uit als de voorwaarde waar is.

als blok#
als <> dan
einde

Parameters

Beschrijving

voorwaarde

Een expressie of variabele die wordt gecontroleerd tijdens de uitvoering van de instructie. Als deze waar is, worden de blokken binnen het if-blok uitgevoerd. Als deze onwaar is, worden de blokken overgeslagen.

Voorbeeld

wanneer gestart
[Take a picture when button 5 is pressed.]
stijg op naar [500] [mm v] ▶
altijd
beweeg met controller
als <controller-knop [5 v] ingedrukt?> dan
maak foto op [vooruit v] camera
einde
einde

als / anders#

Het C-blok if/else bepaalt welke reeks blokken wordt uitgevoerd, afhankelijk van of de voorwaarde waar of onwaar is.

als dan anders blok#
als <> dan
anders
einde

Parameters

Beschrijving

voorwaarde

Een expressie of variabele die wordt gecontroleerd tijdens de uitvoering van de instructie. Als deze True is, worden de blokken binnen het if-blok uitgevoerd. Als deze False is, worden de blokken binnen het else-blok uitgevoerd.

Voorbeeld

wanneer gestart
[Climb when the left joystick is moved up.]
stijg op naar [500] [mm v] ▶
altijd
als <(controller-as [1 v] positie) [math_greater_than v] [0]> dan
klim [omhoog v]
anders
zweef
einde

als / anders als / anders#

Het uitbreidbare C-blok if / else if / else selecteert welke set blokken wordt uitgevoerd op basis van voorwaarden:

  • De if-functie voert het codeblok uit als de voorwaarde als True wordt geëvalueerd.

  • De else if-instructie controleert aanvullende voorwaarden alleen als alle voorgaande voorwaarden als onwaar zijn geëvalueerd. Er kunnen meerdere else if-instructies worden gebruikt.

  • De else-instructie voert het codeblok alleen uit als geen van de voorgaande voorwaarden als waar is geëvalueerd.

if else if else blok#
als <> dan
anders als <> dan
anders
einde

Parameters

Beschrijving

voorwaarde

Een expressie of variabele die wordt gecontroleerd wanneer de instructie wordt uitgevoerd. De eerste voorwaarde die waar is, voert die reeks blokken uit. Als alle voorwaarden onwaar zijn, worden de blokken binnen het else-blok uitgevoerd.

Voorbeeld

wanneer gestart
[Move the drone up or down based on the position of the joystick.]
stijg op naar [500] [mm v] ▶
altijd
als <(controller-as [1 v] positie) [math_greater_than v] [0]> dan
beweeg [vooruit v]
anders als <(controller-as [1 v] positie) [math_less_than v] [0]> dan
beweeg [achteruit v]
anders
zweef
einde
einde

pauze#

Het break-blok beëindigt een lus onmiddellijk. Dit blok kan worden gebruikt binnen repeat, repeat until, while en forever blokken. Break is handig wanneer een lus vroegtijdig moet stoppen op basis van iets dat tijdens het project gebeurt, zoals het indrukken van een knop of het detecteren van een object door een sensor.

breek stapelblok#
onderbreek

Parameters

Beschrijving

Dit blok heeft geen parameters.

Voorbeeld

wanneer gestart
[Land when button 5 is pressed.]
stijg op naar [500] [mm v] ▶
altijd
beweeg met controller
als <controller-knop [5 v] ingedrukt?> dan
onderbreek
einde
einde
land ▶

stop project#

Het stackblok stop project beëindigt een lopend project.

stop projectblokkering#
stop project :: control cap

Parameters

Beschrijving

Dit blok heeft geen parameters.

Voorbeeld

wanneer gestart
[Stop motors after landing.]
stijg op naar [500] [mm v] ▶
wacht [1] seconden
land ▶
stop project