Moteur Victor 883#
Introduction#
La classe motor_victor permet de contrôler un contrôleur de moteur Victor 883 connecté à un port à 3 fils. Ce contrôleur envoie un signal PWM depuis le V5 Brain pour piloter les moteurs CC VEXpro ou VEX EDR compatibles qui ne peuvent pas être connectés directement aux ports intelligents.
Le contrôleur de moteur Victor 883 ne peut pas être configuré dans VEXcode et doit être construit manuellement dans le code pour pouvoir être utilisé.
Constructeurs de classes#
1 — Crée un objet
motor_victorpour le contrôleur de moteur Victor 883 connecté au port à 3 fils spécifié.motor_victor( triport::port& port );
2 — Crée un objet
motor_victorsur le port 3 fils spécifié et inverse éventuellement sa direction.motor_victor( triport::port& port, bool reverse );
Destructeur de classe#
Détruit l’objet motor_victor et libère les ressources associées.
~motor_victor();
Paramètres#
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Le port à 3 fils auquel le moteur Victor 883 est connecté, écrit comme |
|
|
Indique si le sens de rotation du moteur est inversé :
|
Exemple#
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
// Create the motor_victor instance with reversed direction
motor_victor victor2 = motor_victor(Brain.ThreeWirePort.B, true);
Fonctions des membres#
La classe motor_victor comprend les fonctions membres suivantes :
spin— Fait tourner le moteur dans une direction spécifiée.stop— Arrête le moteur.setVelocity— Indique au moteur à quelle vitesse tourner.setReversed— Définit le sens de rotation du moteur à inverser ou non.
Before calling any motor_victor member functions, a motor_victor instance must be created, as shown below:
/* This constructor is required to use a
Victor 883 Motor. Replace the values
as needed. */
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
spin#
Fait tourner le moteur dans la direction spécifiée indéfiniment.
Available Functions1 — Fait tourner le moteur en utilisant la vitesse de moteur actuellement configurée.
void spin( directionType dir );
Parameters2 — Fait tourner le moteur à la vitesse spécifiée.
void spin( directionType dir, double velocity, velocityUnits units );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Sens de rotation du moteur : |
|
|
La vitesse de rotation de 0 % à 100 % lors de l’utilisation |
|
|
Unité de vitesse :
|
Cette fonction ne renvoie aucune valeur.
NotesLe moteur continuera à tourner jusqu’à ce que
stopsoit appelé ou qu’une autre fonction de mouvement soit exécutée.
// Spin forward, then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
// Spin forward at 100 rpm
victor.spin(forward, 100, rpm);
wait(1, seconds);
victor.stop();
stop#
Empêche le moteur de tourner.
Available Functionsvoid stop();
Cette fonction n’accepte aucun paramètre.
Return ValuesCette fonction ne renvoie aucune valeur.
NotesAppeler
stoparrête immédiatement tout mouvement de moteur en cours.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
Indique au moteur sa vitesse de rotation. Un pourcentage plus élevé accélère la rotation, et un pourcentage plus faible la ralentit.
Chaque projet commence avec chaque moteur connecté tournant par défaut à 50 % de sa vitesse maximale.
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
La vitesse de rotation de 0 % à 100 % lors de l’utilisation |
|
|
Unité de vitesse : |
Cette fonction ne renvoie aucune valeur.
NotesToute fonction de mouvement de moteur Victor 883 ultérieure (telle que
spin) qui ne spécifie pas explicitement une vitesse utilisera cette valeur.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
Permet de définir si le sens de rotation du moteur doit être inversé ou non.
Available Functionsvoid setReversed( bool value );
Paramètre |
Taper |
Description |
|---|---|---|
|
|
Inversion du sens de rotation du moteur :
|
Cette fonction ne renvoie aucune valeur.
NotesCela revient à modifier le paramètre
reversedans le constructeur.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse