Control#
Esperar#
El bloque Esperar se utiliza para esperar una cantidad de tiempo específica antes de pasar al siguiente bloque.
esperar (1) segundos
Elija un período de tiempo para esperar.
El bloque de espera puede aceptar decimales, números enteros o bloques numéricos.
En este ejemplo, la herramienta de recogida magnética del brazo de 6 ejes se activará para recoger un elemento antes de dejarlo caer después de 1 segundo.
cuando empezó
[Set the Arm and effector to Magnet and engaged.]
Establecer el efector final [brazo v] en [imán v]
Establecer el imán [brazo v] en [activado v]
[Move the Arm lower on the z axis to the object to pick it up.]
mover [brazo v] a la posición x:(120) y:(0) z:(5) [mm v] ▶
[Move the Arm higher on the z axis to move the object.]
mover [brazo v] a la posición x:(120) y:(0) z:(100) [mm v] ▶
[Drop the item after 1 second.]
esperar (1) segundos
Establecer el imán [brazo v] en [liberado v]
Repetir#
El bloque C Repetir se utiliza para repetir los bloques contenidos en el interior una cantidad determinada de veces.
repetir (10)
fin
Primero ingrese un valor para indicar cuántas veces la pila repetirá los bloques contenidos en su interior.
El bloque C Repetir puede aceptar números enteros o bloques numéricos.
Los bloques C también pueden superponerse. Este concepto se denomina anidamiento y puede ahorrar tiempo al programar diferentes comportamientos.
En este ejemplo, el brazo se moverá -20 mm en el eje z dos veces seguidas.
cuando empezó
[Move -20 mm on the z axis twice in a row.]
repetir (2)
incrementar la posición [brazo v] en x:(0) y:(0) z:(-20) [mm v] ▶
fin
Para siempre#
El bloque C Para siempre se utiliza para repetir cualquier bloque contenido dentro para siempre.
para siempre
fin
Coloque bloques en un bloque C Para siempre para que esas acciones se repitan para siempre.
Puedes salir de un bloque C Para siempre colocando un bloque de ruptura dentro.
Los bloques C también pueden superponerse. Este concepto se denomina anidamiento y puede ahorrar tiempo al programar diferentes comportamientos.
En este ejemplo, el código comprobará continuamente si el brazo de 6 ejes puede moverse +20 mm en el eje x. Si el brazo de 6 ejes puede moverse esa distancia, se enviará un mensaje para que lo haga.
cuando empezó
para siempre
[Continuously check if the Arm can move +20 mm on the x axis.]
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
[Every time the 6-Axis Arm can move, broadcast the message.]
transmisión [arm_can_move v]
fin
fin
cuando recibo [arm_can_move v]
[When the message is received, move the Arm +20 mm on the x axis.]
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
Si entonces#
El bloque C Si entonces se utiliza para ejecutar los bloques internos, si la condición booleana informa “Verdadero”.
si <> entonces
fin
El bloque C Si entonces solo comprobará la condición booleana una vez.
Si la condición booleana informa “Verdadero”, se ejecutarán los bloques dentro del bloque C.
Si la condición booleana informa “Falso”, se omitirán los bloques dentro del bloque C.
El bloque C Si entonces puede aceptar bloques con forma hexagonal (de seis lados) como condición.
En este ejemplo, el código comprobará continuamente si el brazo de 6 ejes puede moverse +20 mm en el eje x. Si el brazo de 6 ejes puede moverse esa distancia, se enviará un mensaje para que lo haga.
cuando empezó
para siempre
[Continuously check if the Arm can move +20 mm on the x axis.]
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
[Every time the 6-Axis Arm can move, broadcast the message.]
transmisión [arm_can_move v]
fin
fin
cuando recibo [arm_can_move v]
[When the message is received, move the Arm +20 mm on the x axis.]
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
Si entonces de lo contrario#
El bloque C If then else se utiliza para ejecutar los bloques dentro de la primera o segunda parte del if then else, según el valor booleano informado.
si <> entonces
demás
fin
El bloque C Si entonces si no solo comprobará la condición booleana una vez.
Si la condición booleana informa “Verdadero”, se ejecutarán los bloques dentro de la sección si.
Si la condición booleana informa “Falso”, se ejecutarán los bloques dentro de la sección else.
El bloque C Si entonces si no puede aceptar bloques con forma hexagonal (de seis lados) como condición.
En este ejemplo, el código comprobará continuamente si el brazo de 6 ejes puede moverse +20 mm en el eje x. Si el brazo de 6 ejes puede moverse esa distancia, se enviará un mensaje para que lo haga. Si el brazo de 6 ejes no puede moverse esa distancia, se imprimirá un mensaje en la consola de impresión.
cuando empezó
para siempre
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
demás
imprimir [Arm can no longer move +20 mm on the x axis.] en la consola ▶
fin
fin
Si entonces de lo contrario si entonces de lo contrario#
El bloque C Si entonces de lo contrario si entonces de lo contrario se utiliza para ejecutar los bloques dentro del primer conjunto de bloques internos en el bloque C Si entonces de lo contrario si entonces de lo contrario donde la condición devuelve “Verdadero”.
si <> entonces
de lo contrario si <> entonces
demás
fin
El bloque C Si entonces de lo contrario si entonces de lo contrario solo comprobará la condición booleana una vez.
Si la condición booleana informa “Verdadero”, los bloques dentro de la sección si se ejecutarán.
Si la condición booleana indica “Falso”, el bloque C Si entonces, si entonces, si entonces, si verificará la primera de las líneas si entonces, si. Para cada línea si entonces, si, el bloque verificará si la condición booleana indica “Verdadero”. Si es verdadero, se ejecutarán los bloques internos inmediatamente debajo de esa línea antes de continuar con el siguiente bloque del bloque C Si entonces, si entonces, si.
Si todas las condiciones booleanas para las líneas else if informan “Falso”, se ejecutarán los bloques dentro de la sección else.
El bloque C Si entonces de lo contrario si entonces de lo contrario puede aceptar bloques con forma hexagonal (de seis lados) como condición.
Para agregar otra condición else if, haga clic en el símbolo + en la línea else. Esto agregará una nueva condición else if al final de la lista actual.
Para eliminar una condición else if, haga clic en - en la línea else. Esto eliminará la última línea de la condición else if, pero no eliminará los bloques usados en la condición.
En este ejemplo, el código comprobará continuamente si el brazo de 6 ejes puede moverse +20 mm en el eje x. Si puede hacerlo, se enviará un mensaje para que lo haga. Si no puede, comprobará si puede moverse +20 mm en el eje y y lo hará si es posible. El brazo de 6 ejes continuará moviéndose hasta que no pueda hacerlo y entonces imprimirá un mensaje.
cuando empezó
para siempre
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
de lo contrario si <[brazo v] incremento de posición por x:(0) y:(20) z:(0) [mm v]?> entonces
incrementar la posición [brazo v] en x:(0) y:(20) z:(0) [mm v] ▶
demás
imprimir [Arm can no longer move +20 mm on the x or y axes.] en la consola ▶
fin
fin
Esperar hasta#
El bloque Esperar hasta se utiliza para esperar a que un bloque booleano informe “Verdadero” antes de pasar al siguiente bloque.
esperar hasta <>
El bloque Esperar hasta verificará repetidamente un bloque de reportero booleano y no pasará al siguiente bloque hasta que el bloque de reporte booleano informe “Verdadero”.
El bloque booleano Esperar hasta puede aceptar bloques con forma hexagonal (de seis lados).
En este ejemplo, el brazo de 6 ejes se moverá hacia abajo en el eje z y activará la herramienta de recogida de imán una vez que la posición del brazo de 6 ejes sea inferior a 20 mm en el eje z.
cuando empezó
Establecer el efector final [brazo v] en [imán v]
mover [brazo v] a la posición x:(120) y:(0) z:(5) [mm v] ◀ y no esperes
esperar hasta <([brazo v] posición [z v] en [mm v] :: custom-arm) [math_less_than v] (20)>
Establecer el imán [brazo v] en [activado v]
Repetir hasta#
El bloque C Repetir hasta se utiliza para repetir los bloques internos hasta que la condición booleana informe “Verdadero”.
repetir hasta <>
fin
El bloque C Repetir hasta solo verificará la condición booleana al comienzo de cada bucle.
Si la condición booleana informa “Falso”, los bloques dentro del bloque se ejecutarán.
Si la condición booleana informa “Verdadero”, se omitirán los bloques dentro del bloque.
El bloque C “Repetir hasta” puede aceptar bloques con forma hexagonal (de seis lados) como condición.
En este ejemplo, el brazo de 6 ejes incrementará el movimiento +20 mm a lo largo del eje x hasta que ya no pueda moverse esa distancia.
cuando empezó
repetir hasta <no <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?>>
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
fin
Mientras#
El bloque C While se utiliza para repetir los bloques internos mientras la condición booleana informa “Verdadero”.
mientras <>
fin
El bloque C While solo verificará la condición booleana al comienzo de cada bucle.
Si la condición booleana informa “Verdadero”, los bloques dentro del bloque se ejecutarán.
Si la condición booleana informa “Falso”, se omitirán los bloques dentro del bloque.
El bloque Mientras C puede aceptar bloques con forma hexagonal (de seis lados) como condición.
En este ejemplo, el brazo de 6 ejes se moverá a las coordenadas (200, 200, 100) e imprimirá su posición x cada 0,25 segundos a medida que se mueve el brazo de 6 ejes.
cuando empezó
mover [brazo v] a la posición x:(200) y:(200) z:(100) [mm v] ◀ y no esperes
mientras <no <[brazo v] ya termino de moverme?>>
imprimir ([brazo v] posición [incógnita v] en [mm v] :: custom-arm) en la consola ◀ y coloque el cursor en la siguiente fila
esperar (0.25) segundos
fin
Romper#
El bloque Break se utiliza para salir inmediatamente de un bucle repetitivo.
romper
Cuando se agrega a un bloque C repetitivo, el bloque Break saldrá del bucle en el que se encuentra actualmente.
En este ejemplo, el brazo de 6 ejes comprobará continuamente si puede incrementar el movimiento +20 mm en el eje x hasta que sea imposible. Una vez que el brazo de 6 ejes ya no pueda incrementar esa distancia, saldrá del bucle y se moverá a las coordenadas (120, 0, 100).
cuando empezó
para siempre
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
fin
romper
fin
mover [brazo v] a la posición x:(120) y:(0) z:(100) [mm v] ▶
Detener el proyecto#
El bloque Detener proyecto se utiliza para detener un proyecto en ejecución
detener el proyecto
En este ejemplo, el brazo de 6 ejes comprobará continuamente si puede incrementar el movimiento +20 mm en el eje x hasta que sea imposible. Una vez que el brazo de 6 ejes ya no pueda incrementar esa distancia, el proyecto se detendrá.
cuando empezó
para siempre
si <[brazo v] incremento de posición por x:(20) y:(0) z:(0) [mm v]?> entonces
incrementar la posición [brazo v] en x:(20) y:(0) z:(0) [mm v] ▶
fin
detener el proyecto
fin