2026-Propulsion/messages_propulsion.h

45 lines
1.1 KiB
C

#ifndef MESSAGE_PROPULSION_H
#define MESSAGE_PROPULSION_H
#include "Trajectoire.h"
#define USB_ID_PROPULSION 'P'
#define REG_PROPULSION_POSITION 0x00
#define REG_PROPULSION_POSITION_2 0x80
#define REG_PROPULSION_MODE 0x0D
#define REG_PROPULSION_PWM 0x0E
#define REG_PROPULSION_VITESSE_ROUES 0x12
#define REG_PROPULSION_VITESSE_ROBOT 0x1A
#define REG_PROPULSION_TRAJECTOIRE 0x22
#define REG_PROPULSION_CONFIG_TRAJET 0x5A
#define REG_PROPULSION_ABSCISSE 0x8C
#define REG_PROPULSION_POSITION_CONSIGNE 0x90
#define REG_PROPULSION_VITESSE_ROUES_lecture 0x98
#define REG_PROPULSION_ETAT_TRAJET 0xA0
struct msg_propulsion_position_t{
float position_x_mm, position_y_mm, orientation_rad;
};
struct msg_propulsion_pwm_t{
uint16_t pwm_gauche, pwm_droit;
};
struct msg_propulsion_vitesse_roues_t{
float vitesse_gauche_mm_s, vitesse_droite_mm_s;
};
struct msg_propulsion_vitesse_robot_t {
float avance_mm_s, rotation_rad_s;
};
struct msg_trajectoire_t {
struct trajectoire_t trajectoire;
};
struct msg_propulsion_config_trajet_t {
float vitesse_mm_s, acceleration_mm_ss;
};
#endif