Codificador#
Introducción#
La clase encoder se utiliza con el Optical Shaft Encoder, que mide la posición de rotación y la velocidad de un eje. Utiliza sensores ópticos internos para detectar qué tan lejos y qué tan rápido gira el eje, lo que lo hace útil para rastrear la rotación de la rueda, la posición del brazo u otros mecanismos.

Constructor de clases#
encoder(
triport::port &port );
Destructor de clase#
Destruye el objeto encoder y libera los recursos asociados.
virtual ~encoder();
Parámetros#
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
El primer puerto de 3 hilos de un grupo de dos puertos requerido utilizado por el codificador de eje óptico. El codificador ocupa dos puertos adyacentes (A–B, C–D, E–F o G–H) en el cerebro o en un expansor de 3 hilos. Especifique el primer puerto del par (A, C, E o G), escrito como Brain.ThreeWirePort.X |
Ejemplos#
// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);
Funciones de los miembros#
La clase encoder incluye las siguientes funciones miembro:
setPosition— Establece la posición actual del codificador en un valor especificado.position— Devuelve cuánto ha girado el codificador.velocity— Devuelve la velocidad de rotación actual del codificador.
Before calling any encoder member functions, a encoder instance must be created, as shown below:
/* This constructor is required when using VS Code.
Encoder configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);
setPosition#
Establece la posición actual del codificador en un valor especificado. Esto se puede utilizar para establecer manualmente la posición de seguimiento sin girar un motor u otro mecanismo.
Available Functionsvoid setPosition(
double value,
rotationUnits units);
Parámetros |
Tipo |
Descripción |
|---|---|---|
|
|
La posición de rotación a ajustar. |
|
|
La unidad que representa la posición:
|
Esta función no devuelve un valor.
position#
Devuelve cuánto ha girado el eje conectado al codificador.
Available Functionsdouble position(
rotationUnits units );
Parámetros |
Tipo |
Descripción |
|---|---|---|
|
|
La unidad que representa la posición:
|
Devuelve un double que representa la rotación en las unidades especificadas.
velocity#
Devuelve la velocidad de rotación del codificador.
Available Functionsdouble velocity(
velocityUnits units );
Parámetros |
Tipo |
Descripción |
|---|---|---|
|
|
La unidad utilizada para representar la velocidad:
|
Devuelve un double que representa la velocidad en las unidades especificadas.