27 lines
848 B
C
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);
|
|
} |