Controlador#

Introducción#

El controlador VEX IQ (2.ª generación) tiene botones y dos joysticks. Los bloques del controlador se pueden usar para comprobar si se han pulsado los botones, leer el movimiento de los joysticks, activar o desactivar las acciones configuradas del controlador o ejecutar bloques cuando se producen eventos en el controlador.

El módulo IQ (2.ª generación) puede conectarse a un controlador IQ (2.ª generación) o a un controlador IQ (1.ª generación). Un controlador IQ (1.ª generación) debe tener instalada una radio inteligente azul.

Las acciones del controlador configuradas son comportamientos del controlador establecidos en el menú Dispositivos. Utilice el bloque habilitar/deshabilitar controlador para habilitar o deshabilitar temporalmente dichas acciones configuradas durante un proyecto.

A continuación se muestra una lista de todos los bloques:

Valores booleanos: comprueban el estado de los botones del mando.

Periodistas: lean la posición del joystick.

Acciones: Habilita o deshabilita las acciones del controlador configuradas.

Eventos: Bloques de ejecución cuando cambia la entrada del controlador.

Booleanos#

¿Botón del controlador presionado?#

El bloque booleano ¿botón del controlador pulsado? devuelve si se está pulsando un botón del controlador seleccionado.

Vista frontal y posterior del mando IQ de segunda generación con todos los botones resaltados en amarillo. La superficie del mando cuenta con dos botones de joystick en las esquinas superior izquierda y derecha, con la tecla E para subir y bajar debajo del joystick izquierdo y la tecla F para subir y bajar debajo del derecho. En la parte posterior del mando se encuentran las teclas L para subir y bajar y R para subir y bajar en los laterales izquierdo y derecho, respectivamente.
¿Botón del mando pulsado? Bloque booleano#
<Controller [E ▲ v] pressed?>

Parámetro

Descripción

botón

El botón a comprobar:

  • E ▲
  • E ▼
  • F ▲
  • F ▼
  • L ▲
  • L ▼
  • R ▲
  • R ▼
  • L3
  • R3

Ejemplo

Al arrancar, avanza mientras se mantiene pulsado el botón R ▲.#
when started
[Move forward while the R ▲ button is pressed.]
forever
if <Controller [R ▲ v] pressed?> then
drive [forward v]
else
stop driving
fin
fin

reporteros#

posición del eje del controlador#

El bloque de informe de posición del eje del controlador devuelve la posición del joystick a lo largo de un eje seleccionado como un número de -100 a 100.

El controlador IQ de segunda generación con los cuatro ejes del joystick resaltados. En el joystick izquierdo, el eje A es vertical y el eje B es horizontal. En el joystick derecho, el eje C es horizontal y el eje D es vertical.
bloque informador de posición del eje del controlador#
(Controller [A v] position)

Parámetro

Descripción

eje

Eje del joystick a informar:

  • A — eje vertical del joystick izquierdo
  • B — eje horizontal del joystick izquierdo
  • C — eje horizontal del joystick derecho
  • D — eje vertical del joystick derecho

Ejemplo

Al arrancar, gira dependiendo de la posición del joystick derecho.#
when started
[Turn depending on the position of the right joystick.]
forever
if <(Controller [C v] position) [math_less_than v] [0]> then
turn [left v]
else if <(Controller [C v] position) [math_greater_than v] [0]> then
turn [right v]
else
stop driving
fin
fin

Comportamiento#

habilitar/deshabilitar el controlador#

El bloque de pila habilitar/deshabilitar controlador habilita o deshabilita las acciones del controlador configuradas en el menú Dispositivos.

Bloque de pila de habilitación/deshabilitación del controlador#
Controller [Disable v]

Parámetro

Descripción

estado

El controlador configuró el estado de acción: Deshabilitar o Habilitar.

Ejemplo

Al iniciarse, desactiva las acciones del controlador configuradas mientras el robot avanza.#
when started
[Disable controller configured actions until the drive movement is done.]
Controller [Disable v]
drive [forward v] for (6) [inches v] ▶
Controller [Enable v]

Eventos#

cuando el botón del controlador#

El bloque Hat when controller button ejecuta la pila adjunta cuando se presiona o se suelta un botón seleccionado del controlador.

Vista frontal y posterior del mando IQ de segunda generación con todos los botones resaltados en amarillo. La superficie del mando cuenta con dos botones de joystick en las esquinas superior izquierda y derecha, con la tecla E para subir y bajar debajo del joystick izquierdo y la tecla F para subir y bajar debajo del derecho. En la parte posterior del mando se encuentran las teclas L para subir y bajar y R para subir y bajar en los laterales izquierdo y derecho, respectivamente.
cuando el botón del controlador Bloqueo de sombrero#
when Controller button [E ▲ v] [pressed v]

Parámetro

Descripción

botón

El botón a comprobar:

  • E ▲
  • E ▼
  • F ▲
  • F ▼
  • L ▲
  • L ▼
  • R ▲
  • R ▼
  • L3
  • R3

estado del botón

El evento del botón que activa la pila adjunta: presionado o soltado.

Ejemplo

Al pulsar el botón R ▲, el robot gira 90 grados a la derecha.#
when Controller button [R ▲ v] [pressed v]
[Turn when the R ▲ button is pressed.]
turn [right v] for (90) degrees ▶

cuando se cambia el eje del controlador#

El bloque Hat cuando se cambia el eje del controlador ejecuta la pila adjunta cuando la posición de un joystick cambia a lo largo del eje seleccionado.

El controlador IQ de segunda generación con los cuatro ejes del joystick resaltados. En el joystick izquierdo, el eje A es vertical y el eje B es horizontal. En el joystick derecho, el eje C es horizontal y el eje D es vertical.
cuando se cambia el eje del controlador Bloque de sombrero#
when Controller axis [A v] is changed

Parámetro

Descripción

eje

Ejes del joystick a comprobar:

  • A — eje vertical del joystick izquierdo
  • B — eje horizontal del joystick izquierdo
  • C — eje horizontal del joystick derecho
  • D — eje vertical del joystick derecho

Ejemplo

Cuando la posición del joystick cambia a lo largo del eje C del controlador, el robot gira 90 grados a la derecha.#
when Controller axis [C v] is changed
[Turn when the joystick's position changes along axis C.]
turn [right v] for (90) degrees ▶