codificador#
Inicializando la clase del codificador#
Un sensor codificador se crea utilizando el siguiente constructor:
El constructor encoder
crea un objeto codificador en el puerto de tres cables especificado:
Parámetro |
Descripción |
---|---|
|
El par de puertos de 3 hilos al que está conectado el sensor codificador, ya sea un puerto en el Brain o un Expansor de 3 hilos. |
Primero se debe crear un Brain o un 3-Wire Expander antes de poder usarlos para crear un objeto con el constructor de la clase Encoder.
// Create the Brain.
brain Brain;
// Construct an Encoder Sensor "Encoder" with the
// encoder class.
encoder Encoder = encoder(Brain.ThreeWirePort.A);
Este objeto “Encoder” se utilizará en todos los ejemplos posteriores en esta documentación de API cuando se haga referencia a los métodos de la clase codificador.
Métodos de clase#
restablecerRotación()#
El método resetRotation()
restablece la rotación del sensor codificador a 0.
Devoluciones: Ninguna.
setRotation()#
El método setRotation(value, units)
establece la rotación del sensor codificador.
Parámetros |
Descripción |
---|---|
valor |
El valor de rotación a establecer. |
unidades |
Una rotationUnit válida. |
Devoluciones: Ninguna.
// Set the Encoder Sensor's value of rotation to 180 degrees.
Encoder.setRotation(180);
establecerPosición()#
El método setPosition(value, units)
establece la posición del sensor codificador.
Parámetros |
Descripción |
---|---|
valor |
El valor de rotación a establecer. |
unidades |
Una rotationUnit válida. |
Devoluciones: Ninguna.
// Set the Encoder Sensor's value of position to 180 degrees.
Encoder.setPosition(180);
rotación()#
El método rotation(units)
devuelve el valor de rotación del sensor codificador.
Parámetros |
Descripción |
---|---|
unidades |
Una rotationUnit válida. |
Devuelve: Un doble que representa la rotación actual del codificador.
// Get the current encoder rotation.
double value = Encoder.rotation();
posición()#
El método position(units)
devuelve la posición actual del sensor codificador.
Parámetros |
Descripción |
---|---|
unidades |
Una rotationUnit válida. |
Devuelve: El valor de la posición actual del sensor codificador en las unidades especificadas.
// Get the current Encoder Sensor's position.
double value = Encoder.position();
velocidad()#
El método velocity(units)
devuelve la velocidad actual del sensor codificador.
Parámetros |
Descripción |
---|---|
unidades |
Una velocityUnit válida. |
Devuelve: Un doble que representa el valor de la velocidad actual del sensor del codificador en las unidades especificadas.
// Get the current Encoder Sensor's velocity in rpm.
double value = Encoder.velocity();
cambió()#
El método changed(callback)
registra una función que se llamará cuando cambie el valor del sensor codificador.
Parámetros |
Descripción |
---|---|
llamar de vuelta |
Una función que se llamará cuando cambie el valor del eje del sensor codificador. |
Devuelve: Una instancia de la clase Event.
// Define the encoderChanged function with a void return
// type, showing it doesn't return a value.
void encoderChanged() {
// The Brain will print that the Encoder Sensor changed on
// the Brain's screen.
Brain.Screen.print("encoder changed");
}
int main() {
// Initializing Robot Configuration. DO NOT REMOVE!
vexcodeInit();
// Drive the robot forward.
Drivetrain.drive(forward);
// Run encoderChanged when the value of the
// Encoder Sensor changes.
Encoder.changed(encoderChanged);
}