Transmission#

Introduction#

La classe drivetrain contrôle la façon dont un robot se déplace et tourne. Une transmission est composée de moteurs et de roues qui fonctionnent ensemble pour déplacer le robot.

A drivetrain does not use an Inertial Sensor or Gyro Sensor for heading-based or rotation-based turns. It can drive forward or reverse and turn left or right, but it cannot turn to a specific heading or rotation. For heading-based and rotation-based turns, use the smartdrive class.

Classes dérivées#

La classe drivetrain sert de classe de base pour les classes dérivées suivantes :

  • smartdrive - Cette classe ajoute la prise en charge du capteur inertiel ou du capteur gyroscopique pour permettre les virages basés sur le cap et la rotation.

Constructeurs de classes#

1 - Crée une transmission en utilisant motor_group existants pour les côtés gauche (&l) et droit (&r).

drivetrain(
    motor_group      &l,
    motor_group      &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

2 - Crée une transmission en utilisant motor existants pour les côtés gauche (&l) et droit (&r).

drivetrain(
    motor            &l,
    motor            &r,
    double           wheelTravel = 320,
    double           trackWidth = 320,
    double           wheelBase = 130,
    distanceUnits    unit = mm,
    double           externalGearRatio = 1.0 );

Destructeur de classe#

Détruit l’objet drivetrain et libère les ressources associées.

virtual ~drivetrain();

Paramètres#

Paramètre

Taper

Description

&l / &r

motor_group / motor

Les moteurs ou groupes de moteurs gauche et droit. Les deux paramètres doivent utiliser le même type : soit deux objets motor_group , soit deux objets motor.

wheelTravel

double

La circonférence des roues de transmission. La valeur par défaut est 320.

trackWidth

double

La distance entre les roues gauche et droite. La valeur par défaut est 320.

wheelBase

double

La distance entre les roues avant et arrière. La valeur par défaut est 130.

unit

distanceUnits

L’unité pour wheelTravel, trackWidth, et wheelBase: mm (millimètres, par défaut) ou inches.

externalGearRatio

double

Le rapport de transmission utilisé pour ajuster les distances de transmission si des engrenages sont utilisés. La valeur par défaut est 1.0.

Exemple#

// Create the left and right motor objects
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);

// Create the drivetrain object
drivetrain myDrivetrain = drivetrain(
    leftMotor,  // left motor object
    rightMotor, // right motor object
    259.34,     // wheelTravel
    320,        // trackWidth
    40,         // wheelBase
    mm,         // unit
    1.0 );      // externalGearRatio

Fonctions des membres#

Il existe plusieurs façons de programmer la transmission. Vous trouverez ci-dessous la liste de toutes les fonctions membres de la transmission drivetrain :

Actions - Déplacer et faire pivoter le robot.

  • drive - Déplace le robot vers l’avant ou vers l’arrière en permanence.

  • driveFor - Déplace le robot vers l’avant ou vers l’arrière sur une distance spécifique.

  • turn - Fait tourner le robot à gauche ou à droite indéfiniment.

  • turnFor - Tourne le robot à gauche ou à droite d’un nombre spécifique de degrés.

  • stop - Arrête le mouvement du robot.

Modificateurs - Réglage de la transmission.

  • setDriveVelocity - Indique au robot à quelle vitesse conduire.

  • setTurnVelocity - Indique au robot à quelle vitesse tourner.

  • setStopping - Indique comment le robot s’arrêtera de bouger : en freinant, en roulant sur sa roue ou en maintenant.

  • setTimeout - Définit le nombre de secondes pendant lesquelles le robot essaiera de terminer un mouvement.

Getters - Vérifiez l’état du mouvement.

  • isDone - Renvoie si le robot a fini de se déplacer, sous forme de valeur booléenne.

  • isMoving - Renvoie si le robot est en mouvement, sous forme de valeur booléenne.

  • velocity - Renvoie la vitesse à laquelle le robot se déplace.

  • current - Renvoie la quantité de courant électrique utilisée par la transmission.

  • power - Renvoie la vitesse à laquelle la transmission utilise l’énergie.

  • torque - Renvoie la quantité de couple utilisée par la transmission.

  • efficiency - Renvoie l’efficacité avec laquelle la transmission utilise la puissance.

  • temperature - Renvoie la température de la transmission.

  • voltage - Renvoie la tension électrique fournie à la transmission.

Avant d’appeler les fonctions membres de drivetrain , un objet drivetrain doit être créé, comme indiqué ci-dessous :

/* This constructor is required when using VS Code.
Drivetrain configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create the left and right motor objects
motor leftMotor = motor(PORT1, false);
motor rightMotor = motor(PORT9, true);

// Create the drivetrain object
drivetrain myDrivetrain = drivetrain(
    leftMotor,  // left motor object
    rightMotor, // right motor object
    259.34,     // wheelTravel
    320,        // trackWidth
    40,         // wheelBase
    mm,         // unit
    1.0 );      // externalGearRatio

Actes#

conduire#

La position drive permet au robot d’avancer ou de reculer indéfiniment. Il continuera à se déplacer jusqu’à ce qu’une autre action lui soit donnée, comme tourner ou s’arrêter. Pour les régimes moteur (RPM) ou les coups par seconde (DPS), la limite est modifiée par le rapport de transmission.

Available Functions

1 - Entraînements utilisant la vitesse d’entraînement configurée.

void drive(
    directionType dir );

2 - Se déplace à la vitesse spécifiée.

void drive(
    directionType dir,
    double        velocity,
    velocityUnits units );

Parameters

Paramètre

Taper

Description

dir

directionType

La direction dans laquelle le robot se déplace : forward ou reverse.

velocity

double

La vitesse de déplacement peut être de 0 % à 100 % lors de l’utilisation velocityUnits::pct, de 0 à 600 tr/min lors de l’utilisation rpm, ou de 0 à 3600 degrés par seconde lors de l’utilisation dps. Si aucune vitesse n’est fournie, le robot se déplace à la vitesse de déplacement actuelle.

units

velocityUnits

L’unité de vitesse : velocityUnits::pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

Return Values

Cette fonction ne renvoie aucune valeur.

Notes
  • Le lecteur drive n’est pas en attente ; le projet continuera d’exécuter la ligne de code suivante immédiatement après l’appel.

  • La transmission continuera à se déplacer jusqu’à ce que stop soit appelée ou qu’une autre fonction de mouvement de la transmission (telle que driveFor ou turn) soit exécutée.

  • Les fonctions telles que isDone et isMoving ne sont pas applicables à drive, car il n’utilise pas de mouvement basé sur une cible (n’a pas de paramètre de distance distance).

Examples
// Drive forward and back
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.drive(reverse, 25, rpm);
wait(2, seconds);
myDrivetrain.stop();

conduirePour#

La commande driveFor déplace le robot en avant ou en arrière sur une distance précise. Par défaut, le programme attend que le robot ait terminé son déplacement avant d’exécuter la ligne de code suivante. Pour les valeurs de RPM ou DPS, la limite est modifiée par le rapport de transmission.

Available Functions

1 - Se déplace dans la direction spécifiée sur une distance en utilisant la vitesse de déplacement configurée.

bool driveFor(
    directionType dir,
    double        distance,
    distanceUnits units,
    bool          waitForCompletion = true );

2 - Se déplace dans une direction dépendant de la distance en utilisant la vitesse de déplacement configurée.

bool driveFor(
    double        distance,
    distanceUnits units,
    bool          waitForCompletion = true );

3 - Se déplace dans une direction dépendant de la distance à la vitesse spécifiée.

bool driveFor(
    double        distance,
    distanceUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

4 - Se déplace dans la direction spécifiée sur une distance à la vitesse spécifiée.

bool driveFor(
    directionType dir,
    double        distance,
    distanceUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

Paramètre

Taper

Description

dir

directionType

La direction dans laquelle le robot se déplace : forward ou reverse.

distance

double

La distance parcourue par le robot.

units

distanceUnits

L’unité de distance : mm (millimètres), inchesou cm (centimètres).

velocity

double

La vitesse de déplacement peut être de 0 % à 100 % lors de l’utilisation velocityUnits::pct, de 0 à 600 tr/min lors de l’utilisation rpm, ou de 0 à 3600 degrés par seconde lors de l’utilisation dps. Si aucune vitesse n’est fournie, le robot se déplace à la vitesse de déplacement actuelle.

units_v

velocityUnits

L’unité de vitesse : velocityUnits::pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

waitForCompletion

bool

true (par défaut) : le projet attend que le robot ait fini de se déplacer avant d’exécuter la ligne de code suivante. false  : la ligne de code suivante s’exécute immédiatement.

Return Values

Renvoie, sous forme de valeur booléenne, si le robot a atteint la distance cible.

  • true - Le robot a atteint la distance cible.

  • false - Le robot n’a pas terminé le mouvement, ou la fonction est retournée avant que le mouvement ne soit terminé parce que waitForCompletion a été défini sur false.

Notes
  • L’exécution d’une autre fonction de mouvement de transmission (telle que drive ou turnFor) pendant que driveFor est en cours interrompra le mouvement en cours.

  • Parce que driveFor est basé sur une cible (utilise un paramètre de distance distance ), les fonctions telles que isDone et isMoving fonctionnent avec driveFor.

Examples
// Drive 200 mm, then back 200 mm
myDrivetrain.driveFor(forward, 200, mm);
myDrivetrain.driveFor(reverse, 200, mm);

tourner#

turn fait tourner le robot à gauche ou à droite en continu. Il continuera de tourner jusqu’à ce qu’une autre action lui soit donnée, comme avancer ou s’arrêter. Pour le régime moteur (RPM) ou les coups par seconde (DPS), la limite est modifiée par le rapport de transmission.

Available Functions

1 - Virages en utilisant la vitesse de virage configurée.

void turn(
    turnType dir );

2 - Virages à la vitesse spécifiée.

void turn(
    turnType     dir,
    double       velocity,
    velocityUnits units );

Parameters

Paramètre

Taper

Description

dir

turnType

La direction dans laquelle le robot tourne : left ou right.

velocity

double

La vitesse de rotation peut être de 0 % à 100 % avec velocityUnits::pct, de 0 à 600 tr/min avec rpm, ou de 0 à 3600 degrés par seconde avec dpsSi aucune vitesse n’est fournie, le robot tourne à la vitesse de rotation actuelle.

units

velocityUnits

L’unité de vitesse : velocityUnits::pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

Return Values This function does not return a value. Notes
  • turn signifie qu’il n’y a pas d’attente ; le projet continuera d’exécuter la ligne de code suivante immédiatement après l’appel.

  • La transmission continuera à tourner jusqu’à ce que stop soit appelée ou qu’une autre fonction de mouvement de la transmission (telle que turnFor ou drive) soit exécutée.

  • Les fonctions telles que isDone et isMoving ne sont pas applicables à turn, car il n’utilise pas de mouvement basé sur une cible (n’a pas de paramètre d’angle angle).

Examples
// Turn right, then left, then stop
myDrivetrain.turn(right);
wait(2, seconds);
myDrivetrain.turn(left);
wait(2, seconds);
myDrivetrain.stop();

tournerPour#

turnFor tour complet, le robot effectue une rotation à gauche ou à droite d’un nombre de degrés précis. La rotation est relative à la position actuelle du robot. Par défaut, le programme attend la fin de la rotation avant d’exécuter la ligne de code suivante. Pour les valeurs de RPM ou DPS, la limite est modifiée par le rapport de transmission.

Available Functions

1 - Virages pour l’angle spécifié en utilisant la vitesse de virage configurée.

bool turnFor(
    double        angle,
    rotationUnits units,
    bool          waitForCompletion = true );

2 - Virages dans la direction spécifiée pour un angle en utilisant la vitesse de virage configurée.

bool turnFor(
    turnType      dir,
    double        angle,
    rotationUnits units,
    bool          waitForCompletion = true );

3 - Virages pour l’angle spécifié à la vitesse spécifiée.

bool turnFor(
    double        angle,
    rotationUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

4 - Virages dans la direction spécifiée pour un angle à la vitesse spécifiée.

bool turnFor(
    turnType      dir,
    double        angle,
    rotationUnits units,
    double        velocity,
    velocityUnits units_v,
    bool          waitForCompletion = true );

Parameters

Paramètre

Taper

Description

dir

turnType

La direction dans laquelle le robot tourne : left ou right.

angle

double

L’angle de rotation du robot.

units

rotationUnits

L’unité de rotation : deg (degrés), rev (tours), ou raw (unités brutes). Un tour équivaut à 360 degrés.

velocity

double

La vitesse de rotation peut être de 0 % à 100 % avec velocityUnits::pct, de 0 à 600 tr/min avec rpm, ou de 0 à 3600 degrés par seconde avec dpsSi aucune vitesse n’est fournie, le robot tourne à la vitesse de rotation actuelle.

units_v

velocityUnits

L’unité de vitesse : velocityUnits::pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

waitForCompletion

bool

true (par défaut) : le projet attend que le robot ait fini de tourner avant d’exécuter la ligne de code suivante. false  : la ligne de code suivante s’exécute immédiatement.

Return Values

Renvoie, sous forme de valeur booléenne, si le robot a atteint l’angle cible.

  • true - Le robot a atteint l’angle cible.

  • false - Le robot n’a pas terminé le tour, ou la fonction a renvoyé avant que le tour ne soit terminé parce que waitForCompletion a été défini sur false.

Notes
  • L’exécution d’une autre fonction de mouvement de transmission (telle que turn ou drive) pendant que turnFor est en cours interrompra le mouvement en cours.

  • Parce que turnFor est basé sur la cible (utilise un paramètre d’angle angle ), les fonctions telles que isDone et isMoving fonctionnent avec turnFor.

Examples
// Turn right then left
myDrivetrain.turnFor(right, 90, degrees);
wait(1, seconds);
myDrivetrain.turnFor(left, 90, degrees);

arrêt#

stop arrête le mouvement du robot. Si un mode d’arrêt est spécifié, il détermine la manière dont le robot s’arrête pour cet appel de fonction.

Available Functions

1 - Stops the drivetrain using the currently configured stopping mode.

void stop();

2 - Arrête la transmission en utilisant le mode de freinage spécifié.

void stop(
    brakeType mode );

Parameters

Paramètre

Taper

Description

mode

brakeType

Mode d’arrêt du robot :

  • brake - Arrêt immédiat.
  • coast - Ralentissement jusqu’à l’arrêt.
  • hold - Arrêt immédiat et maintien de la position des roues.

Return Values

Cette fonction ne renvoie aucune valeur.

Examples
// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

Mutateurs#

définir la vitesse de conduite#

La commande setDriveVelocity indique au robot sa vitesse de déplacement. Un pourcentage plus élevé augmente la vitesse du robot, et un pourcentage plus faible la diminue. Pour les tours par minute (RPM) ou les coups par seconde (DPS), la limite est modifiée par le rapport de transmission.

Chaque projet commence avec le robot se déplaçant par défaut à 50 % de sa vitesse maximale.

Remarque : Une vitesse plus élevée rend le robot plus rapide, mais peut nuire à sa précision. Une vitesse plus faible le rend plus lent, mais peut améliorer sa précision.

Available Functions
void  setDriveVelocity(
  double velocity,
  velocityUnits units );

Parameters

Paramètre

Taper

Description

velocity

double

La vitesse de déplacement de 0 % à 100 % lors de l’utilisation velocityUnits::pct, de 0 à 600 tr/min lors de l’utilisation rpm, ou de 0 à 3600 degrés par seconde lors de l’utilisation dps.

units

velocityUnits

L’unité de vitesse : velocityUnits::pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

Return Values

Cette fonction ne renvoie aucune valeur.

Notes
  • La vitesse d’entraînement s’applique à toutes les fonctions de mouvement de transmission suivantes (telles que drive et driveFor) à moins qu’une vitesse spécifique ne soit fournie dans l’appel de fonction.

Examples
// Drive forward, then coast to a stop
myDrivetrain.setDriveVelocity(100, percent);
myDrivetrain.drive(forward);
wait(2, seconds);
myDrivetrain.stop(coast);

définirVitesseDeTournement#

La commande setTurnVelocity indique au robot sa vitesse de rotation. Un pourcentage plus élevé accélère la rotation, et un pourcentage plus faible la ralentit. Pour les tours par minute (RPM) ou les coups par seconde (DPS), la limite est modifiée par le rapport de transmission.

Chaque projet commence par défaut avec le robot tournant à 50 % de sa vitesse maximale.

Remarque : Une vitesse plus élevée permet au robot de tourner plus vite, mais sa précision peut être moindre. Une vitesse plus faible permet au robot de tourner plus lentement, mais sa précision peut être accrue.

Available Functions
void  setTurnVelocity(
  double velocity,
  velocityUnits units );

Parameters

Paramètre

Taper

Description

velocity

double

La vitesse de rotation de 0 % à 100 % lors de l’utilisation velocityUnits::pct, de 0 à 600 tr/min lors de l’utilisation rpm, ou de 0 à 3600 degrés par seconde lors de l’utilisation dps.

units

velocityUnits

L’unité de vitesse : percent ou pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

Return Values

Cette fonction ne renvoie aucune valeur.

Notes
  • La vitesse de rotation s’applique à toutes les fonctions de rotation de la transmission suivantes (telles que turn et turnFor) à moins qu’une vitesse spécifique ne soit fournie dans l’appel de fonction.

Examples
// Try default, slow, then fast
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(20, percent);
myDrivetrain.turnFor(right, 360, degrees);
wait(1, seconds);
myDrivetrain.setTurnVelocity(100, percent);
myDrivetrain.turnFor(right, 360, degrees);

Arrêt de l’ensemble#

setStopping définit comment le robot s’arrêtera de bouger : en freinant, en laissant le robot rouler ou en maintenant le mouvement.

Available Functions
void setStopping(
  brakeType mode );

Parameters

Paramètre

Taper

Description

mode

brakeType

Mode d’arrêt du robot :

  • brake - Arrêt immédiat.
  • coast - Ralentissement jusqu’à l’arrêt.
  • hold - Arrêt immédiat et maintien de la position des roues.

Return Values

Cette fonction ne renvoie aucune valeur.

Notes
  • Le mode d’arrêt s’applique à tous les appels stop suivants, sauf si un mode d’arrêt spécifique est fourni dans l’appel de fonction.

définirTimeout#

La valeur setTimeout définit le délai (en secondes) pendant lequel le robot tente de terminer un mouvement. S’il n’y parvient pas, il interrompt ses tentatives et passe à la ligne de code suivante. Cela évite que le robot ne se bloque.

Available Functions
void  setTimeout(
  int32_t time,
  timeUnits units );

Parameters

Paramètre

Taper

Description

time

int32_t

Durée pendant laquelle le robot peut tenter de terminer un mouvement. Il doit s’agir d’un nombre entier positif.

units

timeUnits

L’unité de temps : sec (secondes) ou msec (millisecondes).

Return Values

Cette fonction ne renvoie aucune valeur.

Notes
  • Le délai d’attente ne s’applique qu’aux fonctions de mouvement de la transmission basées sur la cible (telles que driveFor et turnFor).

Examples
// Start turning if driving takes too long
myDrivetrain.setTimeout(1, seconds);
myDrivetrain.driveFor(forward, 25, inches);
myDrivetrain.turnFor(right, 90, degrees);

Getters#

c’est fait#

La fonction isDone renvoie isDone , indiquant si le robot a terminé son déplacement (valeur booléenne). Cette information peut être utilisée pour contrôler le déclenchement d’autres actions en fonction des mouvements du robot.

Available Functions
bool isDone( void );

Parameters

Cette fonction n’accepte aucun paramètre.

Return Values
  • true - Le robot a terminé son déplacement.

  • false - Le robot est toujours en mouvement.

Notes
  • isDone est compatible avec les mouvements de transmission basés sur une cible (fonctions qui se déplacent vers une cible, telles que driveFor et turnFor).

  • isDone n’est pas compatible avec des fonctions telles que drive et turn, car elles n’utilisent pas de mouvement basé sur une cible.

est en mouvement#

La fonction isMoving renvoie isMoving indiquant si le robot est en mouvement (valeur booléenne). Cette information peut être utilisée pour contrôler le déclenchement d’autres comportements en fonction des mouvements du robot.

Available Functions
virtual bool isMoving( void );

Parameters

Cette fonction n’accepte aucun paramètre.

Return Values
  • true - Le robot est en mouvement.

  • false - Le robot ne bouge pas.

Notes
  • isMoving est compatible avec les mouvements de transmission basés sur une cible (fonctions qui se déplacent vers une cible, telles que driveFor et turnFor).

  • isMoving n’est pas compatible avec des fonctions telles que drive et turn, car elles n’utilisent pas de mouvement basé sur une cible.

vitesse#

La vitesse velocity indique la vitesse à laquelle le robot se déplace.

Une valeur positive indique que le robot avance. Une valeur négative indique que le robot recule.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Paramètre

Taper

Description

units

velocityUnits

L’unité de vitesse : percent ou pct (pourcentage), rpm (rotations par minute), ou dps (degrés par seconde).

Return Values

Renvoie la vitesse de la transmission sous la forme d’un double dans l’unité sélectionnée.

Examples
// Show velocity before and during motion
Brain.Screen.print("Resting: %f", myDrivetrain.velocity(percent));
myDrivetrain.drive(forward, 100, velocityUnits::pct);
wait(1, seconds);
Brain.Screen.newLine();
Brain.Screen.print("Moving: %f", myDrivetrain.velocity(percent));
myDrivetrain.stop();

actuel#

La fonction current indique la consommation électrique de la transmission. Le courant correspond à la quantité d’électricité qui traverse la transmission. Il peut être exprimé en ampères (A) ou en pourcentage, selon l’unité de mesure.

Une intensité plus élevée signifie que la transmission consomme davantage de courant électrique. Cela peut se produire lorsque le robot pousse contre un objet ou tente de se dégager alors qu’il est bloqué.

Cela permet de vérifier si la transmission force pendant un mouvement. Si le courant reste élevé, la transmission risque de chauffer ou de consommer moins d’énergie.

Available Functions

1 - Renvoie le courant électrique de la transmission en ampères.

double current(
    currentUnits units = currentUnits::amp );

2 - Renvoie le courant électrique de la transmission en pourcentage du maximum.

double current(
    percentUnits units );

Parameters

Paramètre

Taper

Description

units

currentUnits

L’unité de retour du courant : amp (ampères, par défaut).

units

percentUnits

L’unité de retour du courant : percent ou pct.

Return Values

Renvoie le courant de la transmission sous la forme d’un double double dans l’unité sélectionnée.

pouvoir#

La puissance power la transmission utilise l’énergie.

Une valeur de puissance plus élevée signifie que la transmission consomme de l’énergie plus rapidement. Cela peut se produire lorsque le robot pousse contre un objet ou tente de se dégager alors qu’il est bloqué.

Cela permet de comparer les mouvements ou de vérifier si la transmission peine. Si la puissance reste élevée, la transmission risque de chauffer ou de consommer moins d’énergie.

Available Functions
double power(
  powerUnits units = powerUnits::watt );

Parameters

Paramètre

Taper

Description

units

powerUnits

L’unité de puissance : watt (watts, par défaut).

Return Values

Renvoie la puissance de la transmission sous la forme double en watts.

couple#

Le couple indique la force avec laquelle la transmission peut pousser ou tirer pendant que les roues tournent.

torque renvoie la quantité de couple utilisée par la transmission, mesurée en Newton-mètres (Nm) ou en pouces-livres (InLb).

Une valeur de couple plus élevée signifie que la transmission exerce une force de poussée ou de traction plus importante. Cela peut se produire lorsque le robot pousse contre un objet ou tente de se dégager alors qu’il est bloqué.

Cela peut servir à vérifier si la transmission peine ou à comparer la force de poussée nécessaire pour différents mouvements.

Available Functions
double torque(
  torqueUnits units = torqueUnits::nm );

Parameters

Paramètre

Taper

Description

units

torqueUnits

L’unité de retour du couple : Nm (newton mètres, par défaut) ou InLb (pouces-livres).

Return Values

Renvoie le couple de transmission sous la forme d’un double dans l’unité sélectionnée.

efficacité#

efficiency indique l’efficacité avec laquelle la transmission utilise la puissance, en pourcentage de 0 % à 100 %.

Le rendement indique la part de la puissance de la transmission utilisée pour le mouvement. Un rendement élevé signifie qu’une plus grande partie de la puissance est utilisée pour le déplacement. Un rendement faible peut s’expliquer par un effort important de la transmission sans déplacement significatif, par exemple lorsque le robot est bloqué ou qu’il pousse contre un obstacle.

Cela peut servir à comparer des mouvements ou à vérifier si la transmission gaspille de l’énergie au lieu de l’utiliser pour le mouvement.

Available Functions
double efficiency(
  percentUnits units = percentUnits::pct );

Parameters

Paramètre

Taper

Description

units

percentUnits

L’unité dans laquelle renvoyer l’efficacité : percent ou pct (par défaut).

Return Values

Renvoie le rendement de la transmission sous la forme double dans l’unité sélectionnée.

température#

La fonction temperature renvoie la température moyenne de la transmission en pourcentage, de 0 % à 100 %.

La température indique le niveau de chaleur des moteurs de transmission. Une température plus élevée signifie que les moteurs chauffent pendant leur fonctionnement. Pour un fonctionnement optimal, les moteurs doivent rester en dessous de 55 °C.

Si les moteurs surchauffent, leur courant maximal sera réduit pour se protéger. À 70 °C, les moteurs s’arrêteront complètement jusqu’à leur refroidissement.

Cela peut servir à vérifier si la transmission chauffe excessivement lors de mouvements répétés, de longues courses ou lorsqu’elle exerce une pression contre un objet.

Available Functions
double temperature(
  percentUnits units );

Parameters

Paramètre

Taper

Description

units

percentUnits

L’unité de retour de la température : percent ou pct.

Return Values

Renvoie la température moyenne de la transmission sous la forme d’un double dans l’unité sélectionnée.

Notes
  • Une valeur renvoyée de 50% indique que la température moyenne du moteur est d’environ 45°C (113°F).

  • La plage de température de fonctionnement typique de la transmission est d’environ 20°C (68°F) à 70°C (158°F).

tension#

La tension voltage renvoie la tension électrique fournie à la transmission.

La tension correspond à la pression électrique fournie aux moteurs de la transmission. Elle peut être utilisée conjointement avec les valeurs de courant et de puissance pour comprendre comment la transmission utilise l’énergie électrique.

Available Functions
double  voltage(
  voltageUnits units = voltageUnits::volt );

Parameters

Paramètre

Taper

Description

units

voltageUnits

L’unité de tension de retour : volt (volts, par défaut) ou voltageUnits::mV (millivolts).

Return Values

Renvoie la tension de la transmission sous la forme d’un double double dans l’unité sélectionnée.