RPiPico-Holonome2023/Trajet.h

32 lines
1.1 KiB
C

#include "pico/stdlib.h"
#include "Trajectoire.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_AVANCE_DROIT 1000, 500
// 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 500, 500
// 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();
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();