Controlador#
Introducción#
El controlador V5 cuenta con botones, dos joysticks, un motor de vibración y una pantalla. Los bloques del controlador permiten comprobar las pulsaciones de los botones, leer el movimiento de los joysticks, activar la vibración del controlador, habilitar o deshabilitar las acciones configuradas, ejecutar bloques cuando se producen eventos en el controlador o mostrar texto en la pantalla del controlador.
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 bloques disponibles:
Valores: compruebe el estado de los botones del controlador o lea la posición del joystick.
¿Controlador presionado? — Devuelve si se está presionando un botón seleccionado del controlador.
Posición del controlador — Devuelve la posición del joystick a lo largo de un eje seleccionado.
Acciones: Activar el controlador, habilitar/deshabilitar las acciones configuradas del controlador o ejecutar bloques cuando cambie la entrada del controlador.
reproducir vibración en el mando — Reproduce un patrón de vibración en un mando.
Controlador habilitado/deshabilitado — Habilita o deshabilita las acciones del controlador configuradas en el menú Dispositivos para todos los controladores conectados.
cuando se presiona el botón del controlador — Ejecuta la pila adjunta cuando se presiona o se suelta un botón seleccionado.
cuando cambia el eje del controlador — Ejecuta la pila adjunta cuando la posición de un joystick cambia a lo largo del eje seleccionado.
Pantalla: muestra texto y números en la pantalla del controlador.
imprimir en el controlador — Muestra texto, números o valores de variables en la pantalla del controlador.
establecer cursor en fila columna en el controlador — Mueve el cursor a una fila y columna específicas en la pantalla del controlador.
establecer cursor a la siguiente fila en el controlador — Mueve el cursor a la siguiente fila en la pantalla del controlador.
establecer precisión de impresión en el controlador — Establece cuántos lugares decimales se muestran cuando se imprimen números en la pantalla del controlador.
borrar controlador — Borra todas las filas en la pantalla del controlador.
borrar fila en el controlador — Borra una fila en la pantalla del controlador.
Valores#
¿Controlador presionado?#
El bloque booleano ¿Controlador presionado? devuelve si se está presionando un botón seleccionado del controlador.

<[Controller 1 v] [▲ v] presionado?>
Parámetro |
Descripción |
|---|---|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
botón |
El botón a marcar:
|
Ejemplo
cuando empezó
[Drive forward while X is pressed.]
para siempre
si <[Controller 1 v] [X v] presionado?> entonces
unidad [adelante v]
demás
deja de conducir
fin
fin
Posición del controlador#
El bloque de informe de Posición del controlador devuelve la posición del joystick a lo largo de un eje seleccionado como un número entre -100 y 100.

([Controller1 v] [1 v] position :: sensing)
Parámetro |
Descripción |
|---|---|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
eje |
Eje del joystick a informar:
|
Ejemplo
cuando empezó
[Drive forward while the left joystick is pushed up.]
para siempre
si <([Controller1 v] [3 v] position :: sensing) [math_greater_than v] [0]> entonces
unidad [adelante v]
demás
deja de conducir
fin
fin
Comportamiento#
Juega a Rumble en el mando#
El bloque de pila reproducir vibración en el mando reproduce un patrón de vibración en el mando.
jugar rumble [Long v] contra [Controller 1 v]
Parámetro |
Descripción |
|---|---|
patrón |
Patrón de vibración para reproducir en el mando:
|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando [Controller 1 v] botón [R1 v] [presionado v] :: hat events
jugar rumble [Short v] contra [Controller 1 v]
Habilitar/deshabilitar el controlador#
El bloque de pila Activar/Desactivar controlador habilita o desactiva las acciones configuradas del controlador desde el menú Dispositivos para todos los controladores conectados.
Controlador [Disable v]
Parámetro |
Descripción |
|---|---|
estado |
El controlador configuró el estado de acción: Deshabilitar o Habilitar. |
Ejemplo
cuando empezó
[Disable Controller configured actions until the drive movement is done.]
Controlador [Disable v]
unidad [adelante v] para (6) [pulgadas v] ▶
Controlador [Enable v]
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.

when [Controller1 v] axis [1 v] is changed :: hat events
Parámetro |
Descripción |
|---|---|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
eje |
Ejes del joystick a comprobar:
|
Ejemplo
when [Controller1 v] axis [3 v] is changed :: hat events
[Drive forward when the joystick's position changes along axis 3.]
unidad [adelante v] para (200) [mm v] ▶
Pantalla#
imprimir en el controlador#
El bloque de pila imprimir en el controlador muestra texto, números o valores de variables en la pantalla del controlador en la posición actual del cursor.
imprimir [VEXcode] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
valor |
El texto, número o valor de variable que se mostrará en la pantalla del controlador. |
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
flecha expansiva |
Expande el bloque para incluir y posicionar el cursor en la siguiente fila, lo que mueve el cursor a la siguiente fila después de que se imprima el valor. Si no se utiliza esta opción, el siguiente valor impreso aparece inmediatamente después del valor anterior en la misma fila. |
Ejemplo
cuando empezó
[Display a message on the Controller screen.]
imprimir [Hello, robot!] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
establecer el cursor en la columna de fila en el controlador#
El bloque de pila establecer cursor en fila y columna en el controlador mueve el cursor a una fila y columna específicas en la pantalla del controlador. El siguiente valor impreso aparecerá en esa posición.
Coloque el cursor en la fila [1] columna [1] de [Controller 1 v] :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
fila |
La fila a la que se debe mover el cursor en la pantalla del controlador. |
columna |
La columna a la que se debe mover el cursor en la pantalla del controlador. |
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando empezó
[Display a message on row 2.]
Coloque el cursor en la fila [2] columna [1] de [Controller 1 v] :: custom-controller-inertial-timer
imprimir [Ready] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
establecer el cursor en la siguiente fila en el controlador#
El bloque de pila establecer cursor en la siguiente fila del controlador mueve el cursor a la columna 1 de la siguiente fila de la pantalla del controlador. El siguiente valor impreso aparecerá en esa fila.
establece el cursor en la siguiente fila en [Controller 1 v] :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando empezó
[Display two rows of text.]
imprimir [Row 1] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
establece el cursor en la siguiente fila en [Controller 1 v] :: custom-controller-inertial-timer
imprimir [Row 2] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
Configurar la precisión de impresión en el controlador.#
El bloque establecer precisión de impresión en el controlador configura la cantidad de decimales que se muestran al imprimir números en la pantalla del controlador. Esta configuración se aplica a los números impresos después de usar este bloque.
Establezca la precisión de impresión en [0.1 v] sobre [Controller 1 v] :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
precisión |
Precisión de impresión a utilizar:
|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando empezó
[Display 1/3 with two decimals.]
Establezca la precisión de impresión en [0.01 v] sobre [Controller 1 v] :: custom-controller-inertial-timer
imprimir ([1] [math_division v] [3]) en [Controller 1 v] ▶ :: custom-controller-inertial-timer
controlador limpio#
El bloque de pila clear controller borra todas las filas de la pantalla del controlador y mueve el cursor de vuelta a la primera fila.
clear [Controller1 v] :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando empezó
[Clear the Controller screen after printing.]
imprimir [This will disappear...] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
esperar [2] segundos
clear [Controller1 v] :: custom-controller-inertial-timer
borrar fila en el controlador#
El bloque de pila borrar fila en el controlador borra una sola fila en la pantalla del controlador.
Limpiar la fila [1] en [Controller 1 v] :: custom-controller-inertial-timer
Parámetro |
Descripción |
|---|---|
fila |
La fila que se va a borrar en la pantalla del controlador. |
dispositivo |
El controlador que se va a utilizar, configurado en la ventana Dispositivos. |
Ejemplo
cuando empezó
[Clear one row on the Controller screen.]
imprimir [Row 1] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
establece el cursor en la siguiente fila en [Controller 1 v] :: custom-controller-inertial-timer
imprimir [Row 2] en [Controller 1 v] ▶ :: custom-controller-inertial-timer
esperar [2] segundos
Limpiar la fila [1] en [Controller 1 v] :: custom-controller-inertial-timer