Control#
Introducción#
Los bloques de control en VEXcode gestionan el flujo de un proyecto manejando bucles, condiciones, retrasos y deteniendo la ejecución.
A continuación se muestra una lista de los bloques disponibles:
espera – Pausa la ejecución durante una duración específica.
esperar hasta – Pausa la ejecución hasta que se cumpla una condición específica.
repetir – Repite los bloques encerrados un número específico de veces.
para siempre – Repite los bloques encerrados indefinidamente.
repetir hasta – Repite los bloques encerrados hasta que se cumpla una condición.
mientras – Repite los bloques encerrados mientras una condición siga siendo verdadera.
if – Ejecuta los bloques encerrados si una condición es verdadera.
if / else – Ejecuta un conjunto de bloques si una condición es verdadera, de lo contrario ejecuta otro.
if / else if / else – Ejecuta diferentes conjuntos de bloques dependiendo de múltiples condiciones.
break – Sale inmediatamente de un bucle repeat, forever, repeat until o while.
detener proyecto – Finaliza la ejecución del proyecto.
esperar#
El bloque de espera se detiene durante un tiempo específico antes de pasar al siguiente bloque.
esperar (1) segundos
Parámetros |
Descripción |
|---|---|
tiempo |
El tiempo de espera, expresado como un número entero positivo o decimal en segundos. |
Ejemplo
cuando empezó
[Move to the left, then the right after one second.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
esperar (1) segundos
incrementar la posición [brazo v] en x:[-100] y:[0] z:[0] [mm v] ▶
espera hasta#
El bloque esperar hasta pausa la ejecución hasta que se cumpla una condición específica antes de pasar al siguiente bloque.
esperar hasta <>
Parámetros |
Descripción |
|---|---|
condición |
La condición que debe cumplirse antes de pasar al siguiente bloque. |
repetir#
El bloque repeat ejecuta los bloques que contiene un número determinado de veces.
repetir [10]
fin
Parámetros |
Descripción |
|---|---|
veces |
Un número entero que indica cuántas veces se ejecuta el bloque repetir. |
Ejemplo
cuando empezó
[Move in a square pattern.]
repetir [4]
incrementar la posición [brazo v] en x:[2] y:[0] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[0] y:[2] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[-2] y:[0] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[0] y:[2] z:[0] [pulgadas v] ▶
fin
para siempre#
El bloque para siempre sigue ejecutando los bloques que contiene una y otra vez sin parar.
para siempre
fin
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Move in a square path forever.]
para siempre
incrementar la posición [brazo v] en x:[2] y:[0] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[0] y:[2] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[-2] y:[0] z:[0] [pulgadas v] ▶
incrementar la posición [brazo v] en x:[0] y:[2] z:[0] [pulgadas v] ▶
fin
repetir hasta#
El bloque repetir hasta ejecuta repetidamente los bloques que contiene mientras la condición se evalúa como falsa.
repetir hasta <>
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se evalúa antes de cada iteración. Si se evalúa como:
|
Ejemplo
cuando empezó
[Increment along the x-axis until it's no longer possible.]
repetir hasta <no <[brazo v] incremento de posición por x:[100] y:[0] z:[0] [mm v]?>>
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
fin
Establecer [brazo v] para controlar la detención
mientras#
El bloque while ejecuta repetidamente los bloques que contiene mientras la condición se evalúa como verdadera.
mientras <>
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se evalúa antes de cada iteración. Si se evalúa como:
|
Ejemplo
when started, seguido de un bloque de comentarios que indica que se mostrará el tiempo transcurrido después de 2 segundos. Un bloque wait until pausa la ejecución hasta que el temporizador alcance o supere los dos segundos. Una vez que se cumple esta condición, un bloque print muestra el valor del temporizador en la pantalla.#cuando empezó
[Display the 6-Axis Arm's position as it moves.]
mover [brazo v] a la posición x:(-100) y:(200) z:(100) [mm v] ◀ y no esperes
mientras <no <[brazo v] ya termino de moverme?>>
imprimir ([brazo v] posición [y v] en [mm v]) en la consola ◀ y coloque el cursor en la siguiente fila
esperar [0.25] segundos
si#
El bloque if ejecuta el bloque de código que contiene si la condición se evalúa como verdadera.
si <> entonces
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se evalúa cuando se ejecuta la instrucción. Si se evalúa como:
|
Ejemplo
cuando empezó
[Check if the 6-Axis Arm can move to a position.]
si <no <[arm v] move to position x:[0] y:[0] z:[0] [mm v] ?>> entonces
imprimir [The 6-Axis Arm can't move to this position.] ◀ y coloque el cursor en la siguiente fila
si / de lo contrario#
El bloque if / else determina qué bloque de código incluido se ejecuta en función de si la condición se evalúa como verdadera o falsa.
si <> entonces
demás
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se evalúa cuando se ejecuta la instrucción. Si se evalúa como:
|
Ejemplo
cuando empezó
[Check if the 6-Axis Arm can or can't move to a position.]
si <no <[arm v] move to position x:[100] y:[100] z:[100] [mm v] ?>> entonces
imprimir [The 6-Axis Arm can't move to this position.] en la consola ◀ y coloque el cursor en la siguiente fila
demás
imprimir [The 6-Axis Arm can move to this position.] en la consola ◀ y coloque el cursor en la siguiente fila
si / si no si / si no#
La estructura de bloque if / else if / else selecciona qué bloque de código incluido se ejecuta en función de las condiciones:
Si la condición se evalúa como verdadera, ejecuta su bloque de código.
La instrucción
else ifcomprueba las condiciones adicionales solo si todas las condiciones anteriores se evaluaron como falsas. Se pueden utilizar varias instruccioneselse if.De lo contrario, ejecuta su bloque de código solo si ninguna de las condiciones anteriores se evaluó como verdadera.
si <> entonces
de lo contrario si <> entonces
demás
fin
Parámetros |
Descripción |
|---|---|
condición |
Una expresión o variable que se evalúa cuando se ejecuta la instrucción. La primera condición que se evalúa como:
|
Ejemplo
cuando empezó
[Move until the 6-Axis Arm is at the corner of the tile.]
si <[brazo v] incremento de posición por x:[50] y:[0] z:[0] [mm v]?> entonces
incrementar la posición [brazo v] en x:[50] y:[0] z:[0] [mm v] ▶
de lo contrario si <[brazo v] incremento de posición por x:[0] y:[50] z:[0] [mm v]?> entonces
incrementar la posición [brazo v] en x:[0] y:[50] z:[0] [mm v] ▶
demás
imprimir [The 6-Axis Arm has reached the corner.] en la consola ◀ y coloque el cursor en la siguiente fila
romper#
El bloque break sale de un bucle inmediatamente.
romper
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
proyecto detenido#
El bloque detener proyecto finaliza un proyecto en ejecución.
detener el proyecto
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |