Giroscopio#
Introducción#
El sensor giroscópico es un sensor de movimiento que detecta la rotación sobre un solo eje. Puede medir cuánto ha girado el robot, lo que le permite rastrear su orientación y dirección.
A continuación se muestra una lista de todos los métodos disponibles:
Métodos – Medir el movimiento de rotación y detectar cambios en el movimiento.
calibrar – Calibra el sensor giroscópico para un seguimiento de rumbo estable.
set_heading – Establece el rumbo del sensor giroscópico en un valor específico.
set_rotation – Establece el valor de rotación del sensor giroscópico.
encabezado – Devuelve el encabezado actual.
rotación – Devuelve la rotación acumulada.
rate – Devuelve la velocidad angular alrededor del eje x, y o z.
is_calibrating – Devuelve si el sensor giroscópico está calibrando o no.
reset_heading – Establece el rumbo del sensor giroscópico en 0.
reset_rotation – Establece la rotación del sensor giroscópico en 0.
cambiado – Registra una función para llamar cuando el sensor giroscópico detecta un cambio.
instalado – Devuelve si un sensor giroscópico está conectado o no al cerebro.
Constructores: inicializan y configuran manualmente un sensor giroscópico.
Giroscopio – Crea un sensor giroscópico.
Métodos#
calibrar#
calibrate
calibra el sensor giroscópico. Todas las líneas subsiguientes esperarán a que se complete la calibración antes de ejecutarse. La calibración es un procedimiento interno que mide y compensa el ruido y la deriva del sensor durante un período específico. Durante este tiempo, el sensor giroscópico debe permanecer completamente inmóvil (es decir, sobre una superficie estable sin ningún movimiento externo). El movimiento durante la calibración producirá resultados inexactos.
Uso:
calibrate()
Parámetro |
Descripción |
---|---|
Este método no tiene parámetros. |
# Start Gyro Sensor calibration.
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
establecer_encabezado#
set_heading
establece el rumbo del sensor giroscópico a un valor específico.
Uso:
set_heading(valor, unidades)
Parámetros |
Descripción |
---|---|
valor |
El valor del encabezado a establecer. |
unidades |
Opcional. Unidad utilizada para representar el nuevo rumbo:
|
# Turn the robot around
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)
rotación_del_conjunto#
set_rotation
establece la rotación del sensor giroscópico en un valor específico.
Uso:
set_rotation(valor, unidades)
Parámetros |
Descripción |
---|---|
valor |
El valor del encabezado a establecer. |
unidades |
Opcional. Unidad utilizada para representar el nuevo valor de rotación:
|
# Turn the robot around
drivetrain_gyro.set_rotation(-180)
drivetrain.turn_to_rotation(0)
título#
heading
devuelve el rumbo actual del sensor giroscópico.
Uso:
heading(unidades)
Parámetros |
Descripción |
---|---|
unidades |
Opcional. Unidad utilizada para representar el rumbo:
|
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.heading())
rotación#
rotation
devuelve la rotación actual del sensor giroscópico.
Uso:
rotación(unidades)
Parámetros |
Descripción |
---|---|
unidades |
Opcional. Unidad utilizada para representar la rotación:
|
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.rotation())
tasa#
rate
devuelve la tasa actual de cambio de la rotación del sensor giroscópico en unidades especificadas.
Uso:
tasa(unidades)
Parámetros |
Descripción |
---|---|
unidades |
Opcional. Unidad utilizada para representar la velocidad del giroscopio:
|
# Display the rate of change of rotation while turning
drivetrain.turn(RIGHT)
wait(1, SECONDS)
brain.screen.print(drivetrain_gyro.rate())
drivetrain.stop()
está_calibrando#
is_calibrating
verifica si el sensor giroscópico se está calibrando actualmente.
Verdadero
: el sensor giroscópico se está calibrando.Falso
: el sensor giroscópico no está calibrando.
Uso:
is_calibrating()
Parámetro |
Descripción |
---|---|
Este método no tiene parámetros. |
# Start Gyro Sensor calibration.
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
wait(0.1, SECONDS)
brain.screen.print("Done!")
restablecer_encabezado#
reset_heading
restablece el rumbo del sensor giroscópico a 0.
Uso:
reset_heading()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Turn the robot before and after resetting the heading
drivetrain.turn_to_heading(90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_heading()
drivetrain.turn_to_heading(90, DEGREES)
restablecer_rotación#
reset_rotation
restablece la rotación del sensor giroscópico a 0.
Uso:
reset_rotation()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Turn the robot before and after resetting the rotation
drivetrain.turn_to_rotation(-90, DEGREES)
wait(0.5,SECONDS)
drivetrain_gyro.reset_rotation()
drivetrain.turn_to_rotation(-90, DEGREES)
cambió#
changed
registra una función de devolución de llamada para cuando cambia el rumbo del sensor giroscópico.
Uso:
changed(callback, arg)
Parámetros |
Descripción |
---|---|
llamar de vuelta |
La función de devolución de llamada que se llamará cuando cambie el rumbo del sensor giroscópico. |
arg |
Opcional. Una tupla de argumentos para pasar a la función de devolución de llamada. |
def gyro_changed():
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain_gyro.heading())
# Display the heading when the gyro detects a change
drivetrain.turn_for(RIGHT, 90, DEGREES, wait=False)
drivetrain_gyro.changed(gyro_changed)
instalado#
installed
devuelve un valor booleano que indica si el sensor giroscópico está conectado al cerebro.
Verdadero
- El sensor giroscópico está conectado al cerebro.Falso
- El sensor giroscópico no está conectado al cerebro.
Uso:
installed()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Display a message if the Gyro Sensor is
# installed.
if drivetrain_gyro.installed():
brain.screen.print("Installed!")
Constructores#
Los constructores se utilizan para crear manualmente objetos “Gyro”, que son necesarios para configurar un sensor giroscópico fuera de VEXcode.
Para los ejemplos siguientes, el sensor giroscópico configurado se llamará drivetrain_gyro
y se utilizará en todos los ejemplos posteriores en esta documentación de API cuando se haga referencia a los métodos de la clase Gyro
.
Giroscopio#
Gyro
crea un sensor giroscópico.
Uso:
Gyro(puerto)
Parámetro |
Descripción |
---|---|
|
A qué puerto inteligente está conectado el sensor giroscópico se le asigna el nombre “PUERTO” seguido del número de puerto, que varía entre 1 y 12. |
# Create the Brain
brain = Brain()
# When constructing Gyro Sensor "drivetrain_gyro" with a
# SmartDrive "drivetrain"
drivetrain_gyro = Gyro(Ports.PORT1)
drivetrain = SmartDrive(left_drive_smart, right_drive_smart, drivetrain_gyro, 200)
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)