Capteur gyroscopique#
Introduction#
Le gyroscope gyro est utilisé pour mesurer le cap et le mouvement de rotation du robot, permettant ainsi le suivi de son orientation au fil du temps.
Constructeur de classe#
gyro(
triport::port &port);
Destructeur de classe#
Détruit l’objet gyro et libère les ressources associées.
virtual ~gyro();
Paramètres#
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Le port à 3 fils auquel le capteur gyroscopique est connecté, écrit comme |
Exemple#
// Create a gyro instance in Port A
gyro GyroA = gyro(Brain.ThreeWirePort.A);
Fonctions des membres#
La classe gyro comprend les fonctions membres suivantes :
calibrate— Calibre le gyroscope pour un suivi de cap stable.setHeading— Définit le cap du gyroscope.setRotation— Définit la valeur de rotation actuelle du gyroscope.heading— Renvoie le cap du gyroscope.rotation— Renvoie la rotation du gyroscope.
Avant d’appeler les fonctions membres gyro , une instance gyro doit être créée, comme indiqué ci-dessous :
/* This constructor is required when using VS Code.
Gyro Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a gyro instance in Port A
gyro GyroA = gyro(Brain.ThreeWirePort.A);
calibrate#
Calibre le capteur gyroscopique.
Available Functionsvoid calibrate(
int32_t value = 0 );
Paramètres |
Taper |
Description |
|---|---|---|
|
|
Durée d’étalonnage en secondes. Valeur par défaut : |
Cette fonction ne renvoie aucune valeur.
NotesLa fonction
calibratene doit être appelée que lorsque le capteur est immobile.
// Start calibration with the calibration time set to 3 seconds.
GyroA.calibrate(3);
setHeading#
Définit l’orientation du capteur gyroscopique sur une valeur spécifique.
Available Functionsvoid setHeading(
double value,
rotationUnits units );
Paramètres |
Taper |
Description |
|---|---|---|
|
|
La valeur à utiliser pour le nouvel en-tête. |
|
|
L’unité qui représente le cap :
|
Cette fonction ne renvoie aucune valeur.
setRotation#
Définit la rotation du capteur gyroscopique sur une valeur spécifique.
Available Functionsvoid setRotation(
double value,
rotationUnits units );
Paramètres |
Taper |
Description |
|---|---|---|
|
|
La valeur à utiliser pour la nouvelle valeur de rotation. |
|
|
L’unité qui représente la valeur de rotation :
|
Cette fonction ne renvoie aucune valeur.
heading#
Renvoie le cap actuel du capteur gyroscopique.
Available Functionsdouble heading(
rotationUnits units = degrees );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
L’unité qui représente le cap :
|
Renvoie un double double représentant le cap actuel du capteur gyroscopique dans les unités spécifiées, par défaut degrees.
// Get the current heading for the Gyro.
double value = GyroA.heading();
Brain.Screen.print(value);
rotation#
Renvoie la rotation actuelle du capteur gyroscopique.
Available Functionsdouble rotation(
rotationUnits units = degrees );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
L’unité représentant la valeur de rotation :
|
Renvoie un double double représentant la valeur de rotation actuelle du capteur gyroscopique dans les unités spécifiées, par défaut degrees.
// Get the current rotation for the Gyro.
double value = GyroA.rotation();
Brain.Screen.print(value);