1#ifndef __POSITIONCONTROLLER_H__
2#define __POSITIONCONTROLLER_H__
4#include "PeriodicProcess.h"
160 virtual void process(
float timestep);
161 virtual void onProcessEnabling();
167 float m_linVelSetpoint;
168 float m_angVelSetpoint;
175 float m_linPosThreshold;
176 float m_angPosThreshold;
274 friend class PositionController;
Interface de Stratégie de mouvement.
Definition PositionController.h:190
PositionController * m_context
Definition PositionController.h:272
float getAngVelKp() const
Retourne le coef proportionnel de vitesse angulaire.
Definition PositionController.h:240
virtual bool getPositionReached()=0
Indique si la position désirée est atteinte.
float getLinVelMax() const
Retourne vitesse linéaire max.
Definition PositionController.h:246
float getLinPosThreshold() const
Retourne la précision cartésienne à atteindre.
Definition PositionController.h:259
virtual void computeVelSetpoints(float timestep)=0
Calcul les nouvelles vitesses désirer.
float getAngVelMax() const
Retourne vitesse angulaire max.
Definition PositionController.h:252
void setVelSetpoints(float linVelSetpoint, float angVelSetpoint)
Charge une nouvelle vitesse pour le robot.
Definition PositionController.h:229
const Position & getPosSetpoint() const
Retourne la position à atteindre.
Definition PositionController.h:222
const Position & getPosInput() const
Retourne la position du robot.
Definition PositionController.h:217
float getLinVelKp() const
Retourne le coef proportionnel de vitesse linéaire.
Definition PositionController.h:234
float getAngPosThreshold() const
Retourne la précision angulaire à atteindre.
Definition PositionController.h:268
Classe à implémenter pour gérer les appels dans la loop.
Definition PeriodicProcess.h:16
void setThetaSetpoint(float theta)
Charge l'angle à atteindre.
Definition PositionController.h:49
float getAngVelMax() const
Retourne la vitesse max angulaire.
Definition PositionController.h:131
float getLinVelMax() const
Retourne la vitesse max linéaire.
Definition PositionController.h:126
float getAngPosThreshold() const
Retourne la précision angulaire.
Definition PositionController.h:143
void setVelLimits(float linVelMax, float angVelMax)
Paramètre les vitesses max.
Definition PositionController.cpp:35
void setPosSetpoint(const Position &posSetpoint)
Charge la position à atteindre.
Definition PositionController.h:40
Position getPosSetpoint() const
Retourne la position cible du robot.
Definition PositionController.h:150
float getAngVelSetpoint() const
Retourne la vitesse angulaire à atteindre.
Definition PositionController.h:65
float getAngVelKp() const
Retourne le coef proportionnel de vitesse angulaire.
Definition PositionController.h:121
float getLinVelKp() const
Retourne le coef proportionnel de vitesse linéaire.
Definition PositionController.h:116
void setMoveStrategy(AbstractMoveStrategy &moveStrategy)
Charge une stratégie de mouvement.
Definition PositionController.cpp:6
PositionController()
Constructeur de PositionController Initialise les variables de PositionController à des valeurs neutr...
Definition PositionController.h:25
void setPosInput(const Position &posInput)
Charge les nouvelles positions du robot. Charge les nouvelles positions du robot pour les donner à un...
Definition PositionController.h:31
bool getPositionReached()
Indique si la position est atteinte.
Definition PositionController.cpp:23
float getLinVelSetpoint() const
Retourne la vitesse linéaire à atteindre.
Definition PositionController.h:57
void setPosThresholds(float linPosThreshold, float angPosThreshold)
Paramètre les précisions en position.
Definition PositionController.cpp:40
float getLinPosThreshold() const
Retourne la précision cartésienne.
Definition PositionController.h:137
void setVelTunings(float linVelKp, float angVelKp)
Paramètre les coéfficients linéaire.
Definition PositionController.cpp:30
Structure de position.
Definition Odometry.h:14