Controlador#
Introducción#
La clase controller representa un controlador VEX IQ conectado al IQ Brain. Un objeto controller se puede usar para acceder a los valores de los ejes del joystick, leer los estados de los botones, registrar las funciones de devolución de llamada de los botones o del joystick y comprobar si el controlador está conectado.
El cerebro IQ (2 .ª generación) puede conectarse a un controlador IQ (2 .ª generación) o IQ (1 .ª generación). Un controlador IQ (1ª generación) debe tener una radio inteligente azul instalada.
Cuando se configuran uno o más controladores en la ventana Dispositivos, VEXcode IQ también proporciona RemoteControlCodeEnabled. Esta variable global habilita o deshabilita las acciones del controlador configuradas en el menú Dispositivos.
Clases derivadas#
La clase controller proporciona las siguientes clases derivadas:
Constructores#
1 - Crea un controlador utilizando el tipo de controlador principal. Normalmente se utiliza cuando se conecta un solo controlador.
controller();
2 - Crea un controlador para el tipo de controlador especificado. Se utiliza cuando hay dos controladores conectados.
controller( controllerType id );
Funciones disponibles
controller();
controller(controllerType id);
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Opcional. El tipo de controlador a crear: |
Notas
Only one primary controller and one partner controller can be created in a single project.
Ejemplo
// Create the primary controller
controller Controller1 = controller();
// Create a partner controller
controller Controller2 = controller(partner);
Destructor#
~controlador#
~controller destruye el objeto controller y libera los recursos asociados.
Función disponible
~controller();
Parámetros#
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
El tipo de controlador que se crea:
|
Observaciones#
Only one
primaryand onepartnercontroller may exist in a single project.
Ejemplo#
// Create a controller instance
controller Controller = controller();
Funciones de los miembros#
La clase controlador controller incluye la siguiente función miembro:
installed- Comprueba si el controlador está conectado al cerebro.
instalado#
installed devuelve si el controlador está conectado al Brain.
Función disponible
bool installed();
Parámetros
Esta función no tiene parámetros.
Valor de devolución
Devuelve un valor booleano.
true- The controller is installed/connected.false- The controller is not installed/connected.
Variables Globales#
RemoteControlCodeEnabled#
RemoteControlCodeEnabled habilita o deshabilita las acciones del controlador configuradas en el menú Dispositivos. Las acciones configuradas por el controlador están habilitadas de forma predeterminada.
Usage:
RemoteControlCodeEnabled = state;
Valor |
Descripción |
|---|---|
|
Habilita las acciones configuradas por el controlador. |
|
Desactiva las acciones configuradas por el controlador. |
true- Controller-configured actions are enabled.false- Controller-configured actions are disabled.
Las acciones configuradas por el controlador están habilitadas de forma predeterminada.
// Drive forward or backward using the left joystick
RemoteControlCodeEnabled = false;
while (true) {
if (Controller1.AxisA.position() > 0) {
Drivetrain.drive(forward);
}
else if (Controller1.AxisA.position() < 0) {
Drivetrain.drive(reverse);
}
// Press E Up to use controller configured actions again
else if (Controller1.ButtonEUp.pressing()) {
break;
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
RemoteControlCodeEnabled = true;