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, el robot avanzará durante 4 segundos antes de detenerse.
cuando empezó :: hat events
unidad [adelante v]
esperar (4) segundos
deja de conducir
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 robot avanzará 400 milímetros y girará 90 grados a la derecha 4 veces seguidas para formar un cuadrado.
cuando empezó :: hat events
repetir (4)
unidad [adelante v] para (400) [mm v] ▶
girar [derecha v] por (90) grado ▶
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 bloque Forever se utiliza para verificar continuamente si se ha presionado el parachoques izquierdo mientras el robot avanza.
cuando empezó :: hat events
unidad [adelante v]
para siempre
si <[leftBumper v] presionado?> entonces
deja de conducir
fin
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 bloque Si entonces se verifica continuamente para ver si el parachoques izquierdo está presionado. Si lo está, la transmisión se detendrá.
cuando empezó :: hat events
unidad [adelante v]
para siempre
si <[LeftBumper v] presionado?> entonces
deja de conducir
fin
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 bloque Si entonces si no se revisa continuamente para ver si el sensor de distancia frontal ha detectado un objeto. Si el sensor detecta un objeto, el robot avanzará; de lo contrario, girará a la derecha.
cuando empezó :: hat events
para siempre
si <[FrontDistance v] Encontraste un objeto?> entonces
unidad [adelante v]
demás
turno [derecha v]
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 bloque Si entonces… si entonces… si entonces… si se revisa continuamente para ver si el Sensor de Ojos Inferiores ha detectado el color verde y luego el azul. Si detecta el color verde, el robot girará 90 grados a la derecha. Si detecta el color azul, girará 90 grados a la izquierda. Si el Sensor de Ojos Inferiores no detecta nada, el robot avanzará.
cuando empezó :: hat events
para siempre
si <[DownEye v] detecta [verde v]?> entonces
girar [derecha v] por (90) grado ▶
de lo contrario si <[DownEye v] detecta [azul v]?> entonces
girar [izquierda v] por (90) grado ▶
demás
unidad [adelante v]
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 informe booleano y no pasará al siguiente bloque hasta que el bloque de informe booleano informe “Verdadero”.
El bloque booleano Esperar hasta puede aceptar bloques con forma hexagonal (de seis lados).
En este ejemplo, el robot avanzará hasta que su posición Y actual en milímetros sea mayor a 300, luego se detendrá.
cuando empezó :: hat events
unidad [adelante v]
esperar hasta <(posición [Y v] en [mm v]) [math_greater_than v] (300)>
deja de conducir
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 robot avanzará en incrementos de 100 milímetros, esperando un segundo después de cada movimiento. El bloque Repetir hasta repetirá estos movimientos hasta que la posición Y del robot sea superior a 300 milímetros.
cuando empezó :: hat events
repetir hasta <(posición [Y v] en [mm v]) [math_greater_than v] (300)>
unidad [adelante v] para (100) [mm v] ▶
esperar (1) segundos
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 robot avanzará mientras el temporizador del cerebro sea inferior a 3 segundos. Una vez que el temporizador sea superior a 3 segundos, el tren motriz se detendrá.
cuando empezó :: hat events
mientras <(temporizador en segundos) [math_less_than v] (3)>
unidad [adelante v]
fin
deja de conducir
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 robot avanzará hasta que el sensor ocular frontal detecte que está cerca de un objeto. Una vez detectado, dejará de verificar la instrucción Si entonces y detendrá el tren motriz.
cuando empezó :: hat events
unidad [adelante v]
para siempre
si <[FrontEye v] está cerca del objeto?> entonces
romper
fin
fin
deja de conducir
Detener el proyecto#
El bloque Detener proyecto se utiliza para detener un proyecto en ejecución
detener el proyecto
En este ejemplo, el robot avanzará durante dos segundos antes de que el proyecto se detenga.
cuando empezó :: hat events
unidad [adelante v]
esperar (2) segundos
detener el proyecto