Capteur de rotation#
Introduction#
La classe de rotation rotation est utilisée pour contrôler et accéder aux données d’un capteur de rotation V5.
Le capteur de rotation mesure la rotation d’un arbre. Il peut être utilisé partout sur un robot où un arbre est en rotation, même si cet arbre n’est pas directement relié à un moteur.
Un moteur possède un codeur intégré qui suit sa propre rotation. Le capteur de rotation fonctionne comme un codeur externe et suit la rotation d’un arbre séparé.
Le capteur de rotation fournit l’angle, la position et la vitesse de l’arbre. L’angle correspond à la position absolue de l’arbre, comprise entre 0 et 359,99 degrés. Il n’est pas réinitialisé au démarrage d’un projet ni à la mise hors tension du robot. La position enregistre le nombre de degrés ou de tours effectués par l’arbre dans les deux sens pendant un projet et peut être réinitialisée si nécessaire.
Le capteur de rotation est compatible avec les arbres VEX standard de 1/8 pouce et 1/4 pouce.
Constructeur de classe#
rotation(
int32_t index,
bool reverse = false );
Destructeur de classe#
Détruit l’objet de rotation rotation et libère les ressources associées.
virtual ~rotation();
Paramètres#
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Le port intelligent auquel le capteur de rotation est connecté, écrit sous la forme |
|
|
Optionnel. Inversion du signal du capteur de rotation :
|
Exemples#
// Create a Rotation Sensor instance in Port 1
rotation Rotation1 = rotation(PORT1);
Fonctions des membres#
La classe rotation comprend les fonctions membres suivantes :
setPosition— Définit la position actuelle du capteur de rotation sur une valeur spécifique.angle— Renvoie l’angle actuel de l’arbre de 0 à 359,99 degrés.position— Renvoie la distance de rotation de l’arbre en degrés ou en tours.velocity— Renvoie la vitesse de rotation de l’arbre.
Avant d’appeler les fonctions membres de rotation rotation , une instance de rotation rotation doit être créée, comme indiqué ci-dessous :
// Create a Rotation Sensor instance in Port 1
rotation Rotation1 = rotation(PORT1);
setPosition#
Définit la position actuelle du capteur de rotation sur une valeur spécifique.
La position correspond à la rotation de l’arbre au cours d’un projet. La modification de la position change la valeur de position actuelle sans déplacer l’arbre.
Available Functionsvoid setPosition(
double value,
rotationUnits units );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Valeur de position à attribuer au capteur de rotation. Il peut s’agir d’un entier ou d’un nombre décimal. |
|
|
Unité de position :
|
Cette fonction ne renvoie aucune valeur.
angle#
Renvoie l’angle actuel de l’arbre.
La fonction Angle indique la position absolue de l’arbre sur une rotation complète, de 0 à 359,99 degrés. Elle ne se réinitialise pas au démarrage d’un projet ni à la mise hors tension du robot.
Available Functionsdouble angle( rotationUnits units = degrees );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Optionnel. Unité d’angle :
|
Renvoie un double double représentant l’angle actuel de l’arbre dans les unités spécifiées.
// Get the current angle of the shaft
double angle = Rotation1.angle(degrees);
// Print the current angle of the shaft to the
// Brain's screen.
Brain.Screen.print(angle);
position#
Indique la distance de rotation de l’arbre.
Contrairement à l’angle, la position peut dépasser 359,99 degrés ou être inférieure à 0 degré. Elle indique la rotation de l’arbre dans le sens avant ou arrière pendant un projet et peut être réinitialisée au besoin.
Available Functionsdouble position( rotationUnits units );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Unité de position :
|
Renvoie un double représentant la distance de rotation de l’arbre dans les unités spécifiées.
velocity#
Indique la vitesse de rotation de l’arbre.
Available Functionsdouble velocity( velocityUnits units );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Unité de vitesse :
|
Renvoie un double représentant la vitesse de rotation de l’arbre dans les unités spécifiées.