Movimiento#
Introducción#
El robot codificador VEX AIM cuenta con un sistema de propulsión holonómico que le permite moverse en cualquier dirección y rotar de forma independiente. Motion proporciona bloques para movimiento, giro, ajuste de velocidad y seguimiento de posición.
A continuación se muestra una lista de bloques disponibles:
Acciones: Mover y girar el robot.
mover – Mueve el robot hacia adelante, hacia atrás, hacia la izquierda o hacia la derecha.
Mover en ángulo – Mueve el robot en una dirección específica usando un ángulo.
mover por – Mueve el robot en una dirección específica durante una distancia establecida.
Mover en ángulo durante – Mueve el robot en un ángulo específico durante una distancia establecida.
girar – Gira el robot hacia la izquierda o hacia la derecha.
girar para – Gira el robot una cantidad específica de grados.
girar hacia el rumbo – Gira el robot para orientarse hacia un rumbo específico.
Mover con controlador – Permite conducir el robot usando el controlador.
detener todo movimiento – Detiene todo movimiento del robot.
Configuración: ajusta el movimiento y la velocidad de los giros.
establecer velocidad de movimiento – Establece la velocidad de movimiento como un porcentaje.
establecer velocidad de giro – Establece la velocidad de giro como un porcentaje.
Posición – Rastrear y modificar la posición del robot.
posición – Devuelve la coordenada x o y actual del robot.
establecer posición del robot – Establece manualmente la posición x e y del robot.
Valores – Verificar estado de movimiento.
¿mover activo? – Devuelve si el robot se está moviendo actualmente.
¿girar activo? – Devuelve si el robot está girando actualmente.
¿detenido? – Devuelve si el robot no se está moviendo ni girando.
Comportamiento#
mover#
El bloque mover mueve el robot en cuatro direcciones específicas utilizando la velocidad de movimiento actual.
movimiento [adelante v]
Parámetros |
Descripción |
---|---|
dirección |
Mueva el robot en una de las siguientes direcciones:
|
Ejemplo
cuando empezó :: hat events
[Move forward]
movimiento [adelante v]
moverse en ángulo#
El bloque mover en ángulo mueve el robot en un ángulo especificado usando la velocidad de movimiento actual.
moverse a (90) grados
Parámetros |
Descripción |
---|---|
ángulo |
El ángulo, en forma de número entero o decimal, en el que se mueve el robot, que va desde -360 a 360 grados. |
Ejemplos
cuando empezó :: hat events
[Move right, then move forward and stop.]
moverse a (90) grados
esperar (1) segundos
moverse a (0) grados
esperar (1) segundos
detener todo movimiento
cuando empezó :: hat events
[Move diagonally to the right and stop.]
moverse a (45.33) grados
esperar (1) segundos
detener todo movimiento
moverse para#
El bloque mover por mueve el robot en cuatro direcciones específicas por una distancia específica usando la velocidad de movimiento actual.
mover [adelante v] por (200) [mm v] ▶
Parámetros |
Descripción |
---|---|
dirección |
Mueva el robot en una de las siguientes direcciones:
|
distancia |
La distancia, en número entero o decimal, que se moverá el robot, medida en unidades. |
unidad |
La unidad de medida, que puede ser una de las siguientes:
|
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el robot terminará de moverse antes de ejecutar el siguiente bloque. Para que el robot empiece a moverse y ejecute el siguiente bloque inmediatamente, expande el bloque para indicar y no esperes. |
Ejemplo
cuando empezó :: hat events
[Move forward for 200 mm]
mover [adelante v] por (200) [mm v] ▶
moverse en ángulo para#
El bloque mover en ángulo para mueve el robot en un ángulo específico durante una distancia especificada usando la velocidad de movimiento actual.
moverse a (45) grados durante (200) [mm v] ▶
Parámetros |
Descripción |
---|---|
ángulo |
El ángulo, en forma de número entero o decimal, en el que se mueve el robot, que va desde -360 a 360 grados. |
distancia |
La distancia, en número entero o decimal, que se moverá el robot, medida en unidades. |
unidad |
La unidad de medida, que puede ser una de las siguientes:
|
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el robot terminará de moverse antes de ejecutar el siguiente bloque. Para que el robot empiece a moverse y ejecute el siguiente bloque inmediatamente, expande el bloque para indicar y no esperes. |
Ejemplos
cuando empezó :: hat events
[Move right, then move forward.]
moverse a (90) grados durante (50) [mm v] ▶
moverse a (0) grados durante (100) [mm v] ▶
cuando empezó :: hat events
[Drive forward and blink all LEDs red.]
moverse a (0) grados durante (100) [mm v] ◀ y no esperes
Establezca el color del LED [lightall v] en [rojo v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [rojo v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
doblar#
El bloque girar gira el robot en una dirección específica utilizando la velocidad de giro actual.
turno [derecha v]
Parámetros |
Descripción |
---|---|
dirección |
La dirección en la que gira el robot:
|
Ejemplo
cuando empezó :: hat events
[Turn left, then stop.]
turno [izquierda v]
esperar (1) segundos
detener todo movimiento
girar para#
El bloque girar para gira el robot en una dirección específica por una distancia establecida en relación a su dirección de orientación actual usando la velocidad de giro actual.
girar [derecha v] por (90) grado ▶
Parámetros |
Descripción |
---|---|
dirección |
La dirección en la que gira el robot:
|
ángulo |
El ángulo, en forma de número entero o decimal, en el que se mueve el robot, que va desde -360 a 360 grados. |
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el robot terminará de girar antes de ejecutar el siguiente bloque. Para que el robot empiece a girar y ejecute el siguiente bloque inmediatamente, expande el bloque para indicar y no esperes. |
Ejemplos
cuando empezó :: hat events
[Turn left, then turn around to the right.]
girar [izquierda v] por (90) grado ▶
girar [derecha v] por (180) grado ▶
cuando empezó :: hat events
[Turn right and blink all LEDs blue.]
girar [derecha v] por (180) grado ◀ y no esperes
Establezca el color del LED [lightall v] en [azul v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [azul v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
girar al rumbo#
El bloque girar hacia el rumbo gira el robot para orientarlo hacia un rumbo específico utilizando la velocidad de giro actual.
girar hacia el rumbo (270) grados ▶
Parámetros |
Descripción |
---|---|
título |
El rumbo que tomará el robot será de –360 a 360 grados. |
flecha expansiva |
Por defecto, este es un bloque de espera, por lo que el robot terminará de girar antes de ejecutar el siguiente bloque. Para que el robot empiece a girar y ejecute el siguiente bloque inmediatamente, expande el bloque para indicar y no esperes. |
Ejemplos
cuando empezó :: hat events
[Turn to face each cardinal direction.]
girar hacia el rumbo (90) grados ▶
esperar (2) segundos
girar hacia el rumbo (180) grados ▶
esperar (2) segundos
girar hacia el rumbo (270) grados ▶
esperar (2) segundos
girar hacia el rumbo (0) grados ▶
esperar (2) segundos
cuando empezó :: hat events
[Turn around quickly and blink all LEDs green.]
girar hacia el rumbo (180) grados ◀ y no esperes
Establezca el color del LED [lightall v] en [verde v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [verde v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
moverse con el controlador#
El bloque mover con el mando permite controlar el robot con el mando de un solo joystick. Para usar el mando, hay que colocar el bloque dentro de un bucle, como un bucle infinito. Si el bucle se detiene y ningún otro bloque le indica al robot que se mueva, este seguirá en la última dirección en la que se movió el joystick.
moverse con el controlador
Parámetros |
Descripción |
---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó :: hat events
[Drive with the controller for five seconds.]
reiniciar el temporizador :: custom-orientation
mientras <(temporizador en segundos) [math_less_than v] [5]>
moverse con el controlador
fin
detener todo movimiento
detener todo movimiento#
El bloque detener todo movimiento detiene todo movimiento del robot.
detener todo movimiento
Parámetros |
Descripción |
---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó :: hat events
[Turn right, then stop.]
turno [derecha v]
esperar (1) segundos
detener todo movimiento
Ajustes#
establecer velocidad de movimiento#
El bloque establecer velocidad de movimiento establece la velocidad de movimiento predeterminada como porcentaje para todos los bloques de movimiento posteriores del proyecto. Una velocidad de movimiento del 100 % equivale a 200 milímetros por segundo (mm/s).
establecer la velocidad de movimiento al (50)%
Parámetros |
Descripción |
---|---|
velocidad |
Establece la velocidad de movimiento predeterminada como un porcentaje. |
Ejemplo
cuando empezó :: hat events
[Move forward at the default velocity.]
establecer la velocidad de movimiento al (50)%
moverse a (0) grados durante (100) [mm v] ▶
esperar (1) segundos
[Move slower.]
establecer la velocidad de movimiento al (20)%
moverse a (0) grados durante (100) [mm v] ▶
esperar (1) segundos
[Move faster.]
establecer la velocidad de movimiento al (100)%
moverse a (0) grados durante (100) [mm v] ▶
esperar (1) segundos
establecer la velocidad de giro#
El bloque establecer velocidad de giro establece la velocidad predeterminada como porcentaje para todos los bloques de giro subsiguientes del proyecto. Una velocidad de giro del 100 % equivale a 150 grados por segundo (dps).
establecer la velocidad de giro a (50) %2
Parámetros |
Descripción |
---|---|
velocidad |
Establece la velocidad de giro predeterminada como un porcentaje. |
Ejemplo
cuando empezó :: hat events
[Turn around at default velocity.]
establecer la velocidad de giro a (50) %2
girar [derecha v] por (180) grado ▶
esperar (1) segundos
[Turn around slower.]
establecer la velocidad de giro a (20) %2
girar [derecha v] por (180) grado ▶
esperar (1) segundos
[Turn around faster.]
establecer la velocidad de giro a (20) %2
girar [derecha v] por (180) grado ▶
esperar (1) segundos
Posición#
posición#
El bloque posición devuelve la coordenada x o y actual del robot como un entero, medido en milímetros.
[incógnita v] posición en [mm v]
Parámetros |
Descripción |
---|---|
coordinar |
El eje de coordenadas, que puede ser uno de los siguientes:
|
unidad |
La unidad de medida, que puede ser una de las siguientes:
|
Ejemplo
cuando empezó :: hat events
moverse a (0) grados durante (200) [mm v] ▶
[Move forward and print the new coordinate and heading.]
establecer la posición del robot x: [0] y: [0]
moverse a (45) grados durante (200) [mm v] ▶
imprimir ([incógnita v] posición en [mm v]) en la pantalla ▶
Colocar el cursor en la siguiente fila de la pantalla
imprimir ([y v] posición en [mm v]) en la pantalla ▶
establecer la posición del robot#
El bloque establecer posición del robot establece la posición actual del robot en valores especificados en milímetros (mm).
establecer la posición del robot x: [0] y: [0]
Parámetros |
Descripción |
---|---|
incógnita |
La posición x que se debe establecer para el robot, en mm. |
y |
La posición y que se debe establecer para el robot, en mm. |
Ejemplo
cuando empezó :: hat events
[Reset the robot's position after moving.]
mover [adelante v] por [60] [mm v] ▶
establecer la posición del robot x: [0] y: [0]
imprimir ([y v] posición en [mm v]) en la pantalla ▶
Valores#
¿mover activamente?#
El bloque ¿movimiento activo? devuelve un valor booleano que indica si el robot se está moviendo actualmente.
Verdadero: el robot se está moviendo.
Falso` - El robot no se mueve.
<¿mover activamente?>
Parámetros |
Descripción |
---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó :: hat events
[Blink all of the LEDs when the robot is moving.]
moverse a (0) grados durante (200) [mm v] ◀ y no esperes
mientras <¿mover activamente?>
Establezca el color del LED [lightall v] en [rojo v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
fin
Establezca el color del LED [lightall v] en [apagado v]
¿activarse?#
El bloque ¿girar activo? devuelve un valor booleano que indica si el robot está girando actualmente.
Verdadero
– El robot está girando.Falso
- El robot no está girando.
<¿activarse?>
Parámetros |
Descripción |
---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó :: hat events
[Blink all of the LEDs while the robot is turning.]
girar [derecha v] por (180) grado ◀ y no esperes
mientras <¿activarse?>
Establezca el color del LED [lightall v] en [rojo v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [apagado v]
esperar (0.5) segundos
fin
Establezca el color del LED [lightall v] en [apagado v]
¿interrumpido?#
El bloque ¿detenido? devuelve un valor booleano que indica si el robot no se está moviendo ni girando.
Verdadero: el robot no se mueve ni gira.
Falso: el robot se está moviendo o girando.
<¿interrumpido?>
Parámetros |
Descripción |
---|---|
Este bloque no tiene parámetros. |
Ejemplo
definir light show
[Flash LEDs while the robot is moving or turning.]
repetir hasta <¿interrumpido?>
Establezca el color del LED [lightall v] en [verde v]
esperar (0.5) segundos
Establezca el color del LED [lightall v] en [púrpura v]
esperar (0.5) segundos
fin
cuando empezó :: hat events
[Blink all the LEDs while the robot is moving or turning.]
moverse a (0) grados durante (200) [mm v] ◀ y no esperes
light show
girar [derecha v] por (180) grado ◀ y no esperes
light show