PAMI_2024/Commande_vitesse.c
2024-04-28 22:12:47 +02:00

27 lines
848 B
C

#include "Asser_Moteurs.h"
#include "Geometrie_robot.h"
#include "Commande_vitesse.h"
/// @brief Commande de la vitesse dans le référentiel du robot
/// @param avance_mm_s : Vitesse d'avance
/// @param orientation_radian_s : Rotation en radian/s
void commande_vitesse(float avance_mm_s, float orientation_radian_s){
float vitesse_roue_gauche, vitesse_roue_droite;
vitesse_roue_gauche = avance_mm_s - (orientation_radian_s * DISTANCE_ROUES_CENTRE_MM);
vitesse_roue_droite = avance_mm_s + (orientation_radian_s * DISTANCE_ROUES_CENTRE_MM);
AsserMoteur_setConsigne_mm_s(MOTEUR_A, vitesse_roue_droite);
AsserMoteur_setConsigne_mm_s(MOTEUR_B, vitesse_roue_gauche);
}
/// @brief Arrête le robot.
void commande_vitesse_stop(){
AsserMoteur_setConsigne_mm_s(MOTEUR_A, 0);
AsserMoteur_setConsigne_mm_s(MOTEUR_B, 0);
}