Sensor de rotación#
Introducción#
El Sensor de Rotación mide la rotación de un eje. Puede utilizarse en cualquier parte de un robot donde gire un eje, incluso si este no está conectado directamente a un motor.
Un motor incorpora un codificador que registra su propia rotación. El sensor de rotación funciona como un codificador externo que registra la rotación de un eje independiente.
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 reinicia al iniciar un proyecto ni al apagar el robot. La posición registra cuántos grados o vueltas ha girado el eje hacia adelante o hacia atrás durante un proyecto, y se puede reiniciar 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.

Esta página utiliza el nombre de ejemplo rotation_sensor para el sensor de rotación. Reemplácelo con el nombre que haya configurado según sea necesario.
A continuación se muestra una lista de los métodos disponibles:
set_position— Establece la posición actual del sensor de rotación a 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 vueltas.velocity— Devuelve la velocidad de rotación del eje.reset_position— Restablece la posición actual del sensor de rotación a 0.set_reversed— Establece si la salida del sensor de rotación está invertida.changed— Registra una función que se ejecutará cada vez que cambie el valor del sensor de rotación.
Constructor: Inicializa manualmente un sensor de rotación.
Rotation— Crea un sensor de rotación.
establecer_posición#
set_position establece la posición actual del sensor de rotación a un valor.
La posición indica cuánto ha girado el eje durante un proyecto. Al ajustar la posición, se modifica el valor actual de la misma sin mover el eje.
Usage:
rotation_sensor.set_position(position, units)
Parámetros |
Descripción |
|---|---|
|
El valor de posición que se asignará al sensor de rotación. Puede ser un número entero o decimal. |
|
Opcional. La unidad de posición: |
# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)
ángulo#
angle devuelve el ángulo actual del eje como un valor flotante.
El indicador de ángulo muestra la posición absoluta del eje dentro de una rotación, desde 0 hasta 359,99 grados. No se reinicia al iniciar un proyecto ni al apagar el robot.
Usage:
rotation_sensor.angle(units)
Parámetros |
Descripción |
|---|---|
|
Opcional. La unidad de ángulo: |
posición#
La posición position devuelve cuánto ha girado el eje.
A diferencia del ángulo, la posición puede superar los 359,99 grados o disminuir por debajo de los 0 grados. La posición registra cuánto gira el eje hacia adelante o hacia atrás durante un proyecto y se puede restablecer según sea necesario.
Usage:
rotation_sensor.position(units)
Parámetros |
Descripción |
|---|---|
|
Opcional. La unidad de posición: |
velocidad#
velocity devuelve la velocidad de rotación del eje.
Usage:
rotation_sensor.velocity(units)
Parámetros |
Descripción |
|---|---|
|
La unidad de velocidad: |
restablecer_posición#
reset_position restablece la posición actual del sensor de rotación a 0.
Usage:
rotation_sensor.reset_position()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
conjunto_invertido#
set_reversed establece si la salida del sensor de rotación está invertida.
Cuando se invierten, los valores positivos se vuelven negativos y los valores negativos se vuelven positivos. Este método funciona igual que establecer el parámetro reverse en True cuando se utiliza el constructor Rotation .
Usage:
rotation_sensor.set_reversed(value)
Parámetros |
Descripción |
|---|---|
|
Si se debe invertir la salida del sensor de rotación: |
cambió#
changed registra una función que se llamará cada vez que cambie el valor del sensor de rotación.
Usage:
rotation_sensor.changed(callback, arg)
Parámetros |
Descripción |
|---|---|
|
Una función definida previamente que se ejecuta cuando cambia el valor del sensor de rotación. |
|
Opcional. Una tupla que contiene los argumentos que se pasarán a la función de devolución de llamada. Consulte Uso de funciones con parámetros para obtener más información. |
def my_function():
brain.screen.print("Rotated!")
# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)
Constructor#
Los constructores se utilizan para crear manualmente objetos Rotation , como por ejemplo al configurar un sensor de rotación fuera de VEXcode.
Rotation#
Rotation crea un objeto Sensor de rotación.
Usage:
Rotation(smartport)
Parámetro |
Descripción |
|---|---|
|
El puerto inteligente al que está conectado el sensor de rotación, escrito como |
|
Opcional. Indica si se debe invertir la salida del sensor de rotación: |
# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)