#include "pico/stdlib.h" #include "Trajectoire.h" #ifndef TRAJET_H #define TRAJET_H enum etat_trajet_t{ TRAJET_EN_COURS, TRAJET_TERMINE }; // Vitesse et acceleration pour translation pure (en mm/s et mm/s²) #define TRAJECT_CONFIG_RAPIDE 300, 1200 #define TRAJECT_CONFIG_RAPIDE_ROUGE 500, 1200 // Vitesse et acceleration pour un mouvement complexe (en mm et mm/s²) #define TRAJECT_CONFIG_AVANCE_ET_TOURNE 300, 500 // Vitesse et acceleration - standard (en mm et mm/s²) #define TRAJECT_CONFIG_STD 300, 300 // Vitesse et acceleration pour une rotation (rad/s et rad/s²) #define TRAJECT_CONFIG_ROTATION_PURE 2, 2 extern const float distance_pas_obstacle; void Trajet_init(int); void Trajet_config(float _vitesse_max_trajet_mm_s, float _acceleration_mm_ss); void Trajet_debut_trajectoire(struct trajectoire_t trajectoire); enum etat_trajet_t Trajet_avance(float temps_s); struct position_t Trajet_get_consigne(void); float Trajet_get_obstacle_mm(void); void Trajet_set_obstacle_mm(float distance_mm); void Trajet_stop(float); float Trajet_get_orientation_avance(void); float Trajet_get_abscisse(); uint32_t Trajet_get_bloque(); void Trajet_inverse(); #endif