/
MoveTank() {FR}

MoveTank() {FR}

Objectif

Facilement ajouter un contrôle de style « tank » à votre base de robot.

Quand l’utiliser

Si vous avez une base de robot en configuration « tank », où un signal contrôle les moteurs du côté droit et un autre, les moteurs du côté gauche.

Où l’utiliser

Dans la partie void loop() de votre fichier .ino, puisqu’il faut qu’elle soit appelée en boucle le plus rapidement possible.

Cette fonction requiert l’utilisation des fonctions suivantes dans votre programme:

Valeur de retour

Cette fonction ne retourne aucune valeur après avoir exécuté ses tâches.

Prototype principal

static void CrcLib::MoveTank(int8_t leftChannel, int8_t rightChannel, unsigned char frontLeftMotor, unsigned char backLeftMotor, unsigned char frontRightMotor, unsigned char backRightMotor)

Les paramètres suivants sont requis par la fonction:

  • leftChannel: La vitesse à laquelle les moteurs gauches devrait aller. De type int8_t (aussi appelé signed char), soit entre -128 et 127.

  • rightChannel: La vitesse à laquelle les moteurs droits devrait aller. De type int8_t (aussi appelé signed char), soit entre -128 et 127.

  • frontLeftMotor: Le port PWM auquel est connecté le moteur avant gauche.

  • backLeftMotor: Le port PWM auquel est connecté le moteur arrière gauche.

  • frontRightMotor: Le port PWM auquel est connecté le moteur avant droit.

  • backRightMotor: Le port PWM auquel est connecté le moteur arrière droit.

Overloads

#1: Un seul moteur par côté

static void CrcLib::MoveTank(int8_t leftChannel, int8_t rightChannel, unsigned char leftMotor, unsigned char rightMotor)

Les paramètres suivants sont requis par la fonction:

  • leftChannel: La vitesse à laquelle les moteurs gauches devrait aller. De type int8_t (aussi appelé signed char), soit entre -128 et 127.

  • rightChannel: La vitesse à laquelle les moteurs droits devrait aller. De type int8_t (aussi appelé signed char), soit entre -128 et 127.

  • leftMotor: Le port PWM auquel est connecté le moteur gauche.

  • rightMotor: Le port PWM auquel est connecté le moteur droit.

#2: Utiliser directement les valeurs de la manettes, 2 moteurs par côté

static void CrcLib::MoveTank(ANALOG leftChannel, ANALOG rightChannel, unsigned char frontLeftMotor, unsigned char backLeftMotor, unsigned char frontRightMotor, unsigned char backRightMotor)

Les paramètres suivants sont requis par la fonction:

  • leftChannel: Le channel de joystick à utiliser pour contrôler les moteurs gauches. De type ANALOG (voir https://robocrc.atlassian.net/wiki/spaces/AR/pages/671121424 )

  • rightChannel: Le channel de joystick à utiliser pour contrôler les moteurs droits. De type ANALOG (voir https://robocrc.atlassian.net/wiki/spaces/AR/pages/671121424 )

  • frontLeftMotor: Le port PWM auquel est connecté le moteur avant gauche.

  • backLeftMotor: Le port PWM auquel est connecté le moteur arrière gauche.

  • frontRightMotor: Le port PWM auquel est connecté le moteur avant droit.

  • backRightMotor: Le port PWM auquel est connecté le moteur arrière droit.

#3: Utiliser directement les valeurs de la manettes, 1 seul moteur par côté

static void CrcLib::MoveTank(ANALOG leftChannel, ANALOG rightChannel, unsigned char leftMotor, unsigned char rightMotor)

Les paramètres suivants sont requis par la fonction:

Exemples

#include <CrcLib.h> void setup() { CrcLib::Initialize(); CrcLib::InitializePwmOutput(CRC_PWM_1); CrcLib::InitializePwmOutput(CRC_PWM_2); /* Reste du code d'initialisation ... */ } void loop() { CrcLib::Update(); CrcLib::MoveTank(ANALOG::JOYSTICK1_Y, ANALOG::JOYSTICK2_Y, CRC_PWM_1, CRC_PWM_2); /* Reste de la boucle principale ... */ }

Articles reliés

Related content

MoveArcade() {FR}
MoveArcade() {FR}
More like this
MoveHolonomic() {FR}
MoveHolonomic() {FR}
More like this
PrintControllerState() {FR}
PrintControllerState() {FR}
Read with this
MoveTank()
More like this
Déverminage - FAQ
Déverminage - FAQ
Read with this
MoveArcade()
More like this