Sensor de rotación#

Introducción#

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.

El sensor de rotación VEX V5.

Esta página utiliza rotation_sensor como ejemplo de nombre del sensor de rotación. Reemplácelo con su propio nombre 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 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.

  • 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 para que se ejecute 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.

set_position#

set_position establece la posición actual del sensor de rotación en un valor.

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.

Usage:
rotation_sensor.set_position(position, units)

Parámetros

Descripción

position

El valor de posición a asignar al sensor de rotación. Esto puede ser un número entero o un decimal.

units

Opcional. La unidad de posición: DEGREES (predeterminado) o TURNS.

# 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 flotador.

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.

Usage:
rotation_sensor.angle(units)

Parámetros

Descripción

units

Opcional. La unidad de ángulo: DEGREES (predeterminado) o TURNS.

cargo#

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.

Usage:
rotation_sensor.position(units)

Parámetros

Descripción

units

Opcional. La unidad de posición: DEGREES (predeterminado) o TURNS.

velocidad#

velocity devuelve qué tan rápido está girando el eje.

Usage:
rotation_sensor.velocity(units)

Parámetros

Descripción

units

La unidad de velocidad VelocityUnits.RPM VelocityUnits.RPM (revoluciones por minuto) o VelocityUnits.DPS (grados por segundo).

reset_position#

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.

set_reversed#

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

value

Si invertir la salida del sensor de rotación: True o False.

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

callback

Una función previamente definida que se ejecuta cuando cambia el valor del sensor de rotación.

arg

Opcional. Una tupla que contiene argumentos para pasar 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 de sensor de rotación.

Usage:
Rotation(smartport)

Parámetro

Descripción

smartport

El puerto inteligente al que está conectado el sensor de rotación, escrito como Ports.PORTx, donde x es el número de puerto.

reverse

Opcional. Si invertir la salida del sensor de rotación: True o False (predeterminado).

# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)