Gyro#

Introduction#

Le capteur gyroscopique est un capteur de mouvement qui détecte la rotation autour d’un seul axe. Il mesure l’angle de rotation du robot, ce qui lui permet de suivre son orientation et sa direction.

Cette page utilise drivetrain_gyro comme nom de capteur gyroscopique d’exemple. Remplacez-le par le nom que vous avez configuré, selon vos besoins.

Vous trouverez ci-dessous la liste de toutes les méthodes disponibles :

Actions — Calibrer ou ajuster le cap et la rotation du capteur gyroscopique.

  • calibrate — Calibre le capteur gyroscopique pour un suivi de cap stable.

  • set_heading — Définit le cap du capteur gyroscopique sur une valeur spécifiée.

  • set_rotation — Définit la valeur de rotation du capteur gyroscopique.

  • reset_heading — Définit le cap du capteur gyroscopique à 0.

  • reset_rotation — Définit la rotation du capteur gyroscopique à 0.

Getters — Lire le cap, la rotation et l’état du capteur gyroscopique.

  • heading — Renvoie le titre actuel.

  • rotation — Renvoie la rotation cumulative.

  • rate — Renvoie la vitesse angulaire autour de l’axe x, y ou z.

  • is_calibrating — Renvoie si le capteur gyroscopique est en cours d’étalonnage ou non.

  • installed — Indique si un capteur gyroscopique est connecté ou non au cerveau.

Rappel — Exécuter le code lorsque le capteur gyroscopique détecte un mouvement ou un changement.

  • changed — Enregistre une fonction à appeler lorsque le capteur gyroscopique détecte un changement.

Constructeurs — Initialisez et configurez manuellement un capteur gyroscopique.

  • Gyro — Crée un capteur gyroscopique.

Actes#

calibrate#

La commande calibrate calibre le capteur gyroscopique. Toutes les commandes suivantes attendront la fin de la calibration avant de s’exécuter. La calibration est une procédure interne qui mesure et compense le bruit et la dérive du capteur sur une période spécifiée. Pendant cette période, le capteur gyroscopique doit rester parfaitement immobile (c’est-à-dire sur une surface stable, sans aucun mouvement extérieur). Tout mouvement pendant la calibration entraînera des résultats inexacts.

Usage:
calibrate()

Paramètre

Description

Cette méthode ne comporte aucun paramètre.

# Start Gyro Sensor calibration
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
    wait(0.1, SECONDS)
brain.screen.print("Done!")

set_heading#

set_heading définit l’orientation du capteur gyroscopique sur une valeur spécifique.

Usage:
set_heading(value, units)

Paramètres

Description

valeur

La valeur de l’en-tête à définir.

unités

Facultatif. Unité utilisée pour représenter le nouveau cap :

  • DEGREES (par défaut)
  • TURNS
# Turn the robot around
drivetrain_gyro.set_heading(180)
drivetrain.turn_to_heading(0)

set_rotation#

set_rotation définit la rotation du capteur gyroscopique à une valeur spécifique.

Usage:
set_rotation(value, units)

Paramètres

Description

value

La valeur de l’en-tête à définir.

units

Facultatif. Unité utilisée pour représenter la nouvelle valeur de rotation :

  • DEGREES (par défaut)
  • TURNS
# Turn the robot around
drivetrain_gyro.set_rotation(-180)
drivetrain.turn_to_rotation(0)

reset_heading#

reset_heading réinitialise le cap du capteur gyroscopique à 0.

Usage:
reset_heading()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# 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)

reset_rotation#

reset_rotation réinitialise la rotation du capteur gyroscopique à 0.

Usage:
reset_rotation()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# 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)

Getters#

heading#

heading renvoie le cap actuel du capteur gyroscopique.

Usage:
heading(units)

Paramètres

Description

units

Facultatif. Unité utilisée pour représenter le cap :

  • DEGREES (par défaut)
  • TURNS
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.heading())

rotation#

La rotation rotation renvoie la rotation actuelle du capteur gyroscopique.

Usage:
rotation(units)

Paramètres

Description

units

Facultatif. Unité de rotation :

  • DEGREES (par défaut)
  • TURNS
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print(drivetrain_gyro.rotation())

rate#

La fonction rate renvoie le taux de variation actuel de la rotation du capteur gyroscopique dans les unités spécifiées.

Usage:
rate(units)

Paramètres

Description

units

Optionnel. Unité utilisée pour représenter la vitesse du gyroscope :

  • DPS (par défaut)
  • RPM
  • PERCENT
# Display the rate of change of 
# rotation while turning
drivetrain.turn(RIGHT)
wait(1, SECONDS)
brain.screen.print(drivetrain_gyro.rate())
drivetrain.stop()

is_calibrating#

is_calibrating vérifie si le capteur gyroscopique est en cours d’étalonnage.

  • True — Le capteur gyroscopique est en cours d’étalonnage.

  • False — Le capteur gyroscopique ne se calibre pas.

Usage:
is_calibrating()

Paramètre

Description

Cette méthode ne comporte aucun paramètre.

# Start Gyro Sensor calibration.
drivetrain_gyro.calibrate()
# Print after calibration
while drivetrain_gyro.is_calibrating():
    wait(0.1, SECONDS)
brain.screen.print("Done!")

installed#

installed renvoie une valeur booléenne indiquant si le capteur gyroscopique est connecté au cerveau.

  • True — Le capteur gyroscopique est connecté au cerveau.

  • False — Le capteur gyroscopique n’est pas connecté au cerveau.

Usage:
installed()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display a message if the Gyro Sensor is
# installed.
if drivetrain_gyro.installed():
    brain.screen.print("Installed!")

Rappel#

changed#

changed enregistre une fonction de rappel pour le moment où le cap du capteur gyroscopique change.

Usage:
changed(callback, arg)

Paramètres

Description

callback

Fonction de rappel à appeler lorsque le cap du capteur gyroscopique change.

arg

Facultatif. Un tuple d’arguments à transmettre à la fonction de rappel.

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)

Constructeurs#

Les constructeurs sont utilisés pour créer manuellement Gyro , qui sont nécessaires pour configurer un capteur gyroscopique en dehors de VEXcode.

Gyro#

Gyro crée un capteur gyroscopique.

Usage:
Gyro(smartport)

Paramètre

Description

smartport

Le port intelligent auquel le capteur gyroscopique est connecté est noté PORTx, où x représente le numéro du port.

# 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)