1#ifndef __POSITIONCONTROLLER_H__
2#define __POSITIONCONTROLLER_H__
4#include "../lib/PeriodicProcess/PeriodicProcess.h"
5#include "Components/Odometry.h"
162 virtual void process(
float timestep);
163 virtual void onProcessEnabling();
169 float m_linVelSetpoint;
170 float m_angVelSetpoint;
177 float m_linPosThreshold;
178 float m_angPosThreshold;
282 friend class PositionController;
Interface de Stratégie de mouvement.
Definition PositionController.h:195
PositionController * m_context
Definition PositionController.h:280
float getAngVelKp() const
Retourne le coef proportionnel de vitesse angulaire.
Definition PositionController.h:248
virtual bool getPositionReached()=0
Indique si la position désirée est atteinte.
float getLinVelMax() const
Retourne vitesse linéaire max.
Definition PositionController.h:254
float getLinPosThreshold() const
Retourne la précision cartésienne à atteindre.
Definition PositionController.h:267
virtual void computeVelSetpoints(float timestep)=0
Calcul les nouvelles vitesses désirer.
float getAngVelMax() const
Retourne vitesse angulaire max.
Definition PositionController.h:260
void setVelSetpoints(float linVelSetpoint, float angVelSetpoint)
Charge une nouvelle vitesse pour le robot.
Definition PositionController.h:237
const Position & getPosSetpoint() const
Retourne la position à atteindre.
Definition PositionController.h:230
const Position & getPosInput() const
Retourne la position du robot.
Definition PositionController.h:225
float getLinVelKp() const
Retourne le coef proportionnel de vitesse linéaire.
Definition PositionController.h:242
float getAngPosThreshold() const
Retourne la précision angulaire à atteindre.
Definition PositionController.h:276
Classe à implémenter pour gérer les appels dans la loop.
Definition PeriodicProcess/PeriodicProcess.h:17
void setThetaSetpoint(float theta)
Charge l'angle à atteindre.
Definition PositionController.h:51
float getAngVelMax() const
Retourne la vitesse max angulaire.
Definition PositionController.h:133
float getLinVelMax() const
Retourne la vitesse max linéaire.
Definition PositionController.h:128
float getAngPosThreshold() const
Retourne la précision angulaire.
Definition PositionController.h:145
void setVelLimits(float linVelMax, float angVelMax)
Paramètre les vitesses max.
Definition PositionController.cpp:33
void setPosSetpoint(const Position &posSetpoint)
Charge la position à atteindre.
Definition PositionController.h:42
Position getPosSetpoint() const
Retourne la position cible du robot.
Definition PositionController.h:152
float getAngVelSetpoint() const
Retourne la vitesse angulaire à atteindre.
Definition PositionController.h:67
float getAngVelKp() const
Retourne le coef proportionnel de vitesse angulaire.
Definition PositionController.h:123
float getLinVelKp() const
Retourne le coef proportionnel de vitesse linéaire.
Definition PositionController.h:118
void setMoveStrategy(AbstractMoveStrategy &moveStrategy)
Charge une stratégie de mouvement.
Definition PositionController.cpp:4
PositionController()
Constructeur de PositionController Initialise les variables de PositionController à des valeurs neutr...
Definition PositionController.h:27
void setPosInput(const Position &posInput)
Charge les nouvelles positions du robot. Charge les nouvelles positions du robot pour les donner à un...
Definition PositionController.h:33
bool getPositionReached()
Indique si la position est atteinte.
Definition PositionController.cpp:21
float getLinVelSetpoint() const
Retourne la vitesse linéaire à atteindre.
Definition PositionController.h:59
void setPosThresholds(float linPosThreshold, float angPosThreshold)
Paramètre les précisions en position.
Definition PositionController.cpp:38
float getLinPosThreshold() const
Retourne la précision cartésienne.
Definition PositionController.h:139
void setVelTunings(float linVelKp, float angVelKp)
Paramètre les coéfficients linéaire.
Definition PositionController.cpp:28
Structure de position.
Definition Odometry.h:17