Sensor de rotación#
Introducción#
La clase rotation se utiliza para controlar y acceder a los datos de un sensor de rotación EXP.
El Sensor de rotación mide la rotación de un eje. Se puede usar en cualquier lugar de un robot donde un eje esté girando, incluso si ese eje no está conectado directamente a un motor.
Un motor tiene un codificador incorporado que puede rastrear su propia rotación. El sensor de rotación funciona como un codificador externo que puede rastrear la rotación de un eje separado.
El sensor de rotación puede devolver el ángulo, la posición y la velocidad del eje. El ángulo es la posición absoluta del eje de 0 a 359,99 grados. No se restablece cuando se inicia un proyecto o cuando el robot está apagado. La posición rastrea cuántos grados o giros ha girado el eje hacia adelante o hacia atrás durante un proyecto, y se puede restablecer según sea necesario.
El sensor de rotación es compatible con ejes VEX estándar de 1/8 de pulgada y 1/4 de pulgada.
Constructores de clase#
rotation(
int32_t index,
bool reverse = false );
Destructor de clase#
Destruye el objeto con rotación rotation , y libera los recursos asociados.
virtual ~rotation();
Parámetros#
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
El puerto inteligente al que está conectado el sensor de rotación, escrito como |
|
|
Opcional. Si invertir la salida del sensor de rotación:
|
Ejemplos#
// Create a Rotation Sensor instance in Port 1
rotation Rotation1 = rotation(PORT1);
Funciones de los miembros#
La clase rotation incluye las siguientes funciones miembro:
setPosition— Establece la posición actual del sensor de rotación en un valor específico.angle— Devuelve el ángulo actual del eje de 0 a 359,99 grados.position— Devuelve cuánto ha girado el eje en grados o giros.velocity: devuelve la velocidad a la que gira el eje.
Antes de llamar a rotation miembro de rotation instancia de rotación, como se muestra a continuación:
/* This constructor is required when using VS Code.
Rotation Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a Rotation Sensor instance in Port 1
rotation Rotation1 = rotation(PORT1);
setPosition#
Establece la posición actual del sensor de rotación en un valor específico.
La posición es cuánto ha girado el eje durante un proyecto. La configuración de la posición cambia el valor de la posición actual sin mover el eje.
Available Functionsvoid setPosition(
double value,
rotationUnits units );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
El valor de posición a asignar al sensor de rotación. Esto puede ser un número entero o un decimal. |
|
|
La unidad de posición:
|
Esta función no devuelve un valor.
angle#
Devuelve el ángulo actual del eje.
Angle informa de la posición absoluta del eje en una rotación, de 0 a 359,99 grados. No se restablece cuando se inicia un proyecto o cuando el robot está apagado.
Available Functionsdouble angle( rotationUnits units = degrees );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Opcional. La unidad de ángulo:
|
Devuelve un double que representa el ángulo actual del eje en las unidades especificadas.
// Get the current angle of the shaft
double angle = Rotation1.angle(degrees);
// Print the current angle of the shaft to the
// Brain's screen.
Brain.Screen.print(angle);
position#
Devuelve cuánto ha girado el eje.
A diferencia del ángulo, la posición puede aumentar más de 359,99 grados o disminuir por debajo de 0 grados. La posición rastrea cuánto gira el eje hacia adelante o hacia atrás durante un proyecto y se puede restablecer según sea necesario.
Available Functionsdouble position( rotationUnits units );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
La unidad de posición:
|
Devuelve un double que representa cuánto ha girado el eje en las unidades especificadas.
velocity#
Devuelve la velocidad a la que gira el eje.
Available Functionsdouble velocity( velocityUnits units );
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
La unidad de velocidad:
|
Devuelve un double que representa la velocidad de rotación del eje en las unidades especificadas.