Objet de controle de la vitesse.
Plus de détails...
#include <VelocityController.h>
Est dérivée de DifferentialController.
|
| float | genRampSetpoint (float stepSetpoint, float input, float rampSetpoint, float maxAcc, float maxDec, float timestep) |
| | Calcul la vitesse à atteindre.
|
| |
| virtual void | process (float timestep) |
| | Calcul l'asservissement.
|
| |
|
virtual void | onProcessEnabling () |
| | Initialisation de l'asservissement.
|
| |
| virtual void | onProcessDisabling () |
| | Méthode exécutée à la désactivation du PeriodicProcess.
|
| |
Objet de controle de la vitesse.
VelocityController est une version améliorée de DifferentialController car il rajoute la gestion de Spin et les accélérations capées.
◆ VelocityController()
| VelocityController::VelocityController |
( |
| ) |
|
|
inline |
◆ genRampSetpoint()
| float VelocityController::genRampSetpoint |
( |
float | stepSetpoint, |
|
|
float | input, |
|
|
float | rampSetpoint, |
|
|
float | maxAcc, |
|
|
float | maxDec, |
|
|
float | timestep ) |
|
protected |
Calcul la vitesse à atteindre.
Calcul les nouvelles vitesse à atteindre pour respecter les contraites d'accélérations.
- Paramètres
-
| stepSetpoint | Vitesse demandé. |
| input | Vitesse actuel |
| rampSetpoint | Ancienne vitesse intermédiaire calculée. |
| maxAcc | Accélération max. |
| maxDec | Accélération min. |
| timestep | Temps depuis le dernier appel. |
- Renvoie
- float Nouvelle vitesse intermédiaire.
◆ getMaxAngAcc()
| float VelocityController::getMaxAngAcc |
( |
| ) |
const |
|
inline |
Retourne l'accélération max angulaire.
- Renvoie
- Accélération en rad/s².
◆ getMaxAngDec()
| float VelocityController::getMaxAngDec |
( |
| ) |
const |
|
inline |
Retourne la décélération max angulaire.
- Renvoie
- Décélération en rad/s².
◆ getMaxLinAcc()
| float VelocityController::getMaxLinAcc |
( |
| ) |
const |
|
inline |
Retourne l'accélération max linéaire.
- Renvoie
- Accélération en mm/s².
◆ getMaxLinDec()
| float VelocityController::getMaxLinDec |
( |
| ) |
const |
|
inline |
Retourne la décélération max linéaire.
- Renvoie
- Décélération en mm/s².
◆ getSpinShutdown()
| bool VelocityController::getSpinShutdown |
( |
| ) |
const |
|
inline |
Retourne l'état de spinShutDown.
- Renvoie
- true Si le robot est bloqué par un obstacle.
-
false Si le robot n'est pas bloqué.
◆ load()
| void VelocityController::load |
( |
int | address | ) |
|
Charge les paramètres.
Charge les derniers paramètres sauvegarder (les acc et dec) dans l'Arduino.
- Paramètres
-
| address | Adresse à utiliser. |
◆ process()
| void VelocityController::process |
( |
float | timestep | ) |
|
|
protectedvirtual |
Calcul l'asservissement.
- Paramètres
-
| timestep | temps depuis le dernier appel. |
Réimplémentée à partir de DifferentialController.
◆ save()
| void VelocityController::save |
( |
int | address | ) |
const |
Sauvegarde les paramètres.
Sauvegarde les paramètres actuellement chargés.
- Paramètres
-
| address | Adresse à utiliser. |
◆ setMaxAngAcc()
| void VelocityController::setMaxAngAcc |
( |
float | maxAngAcc | ) |
|
Paramètre les accélérations max.
- Paramètres
-
| maxLinAcc | Accélération linéaire en mm/s². |
| maxAngAcc | Accélération angulaire en rad/s². |
◆ setMaxLinDec()
| void VelocityController::setMaxLinDec |
( |
float | maxLinDec | ) |
|
Paramètre les décéleration max.
- Paramètres
-
| maxLinDec | Décélération linéaire en mm/s². |
| maxAngDec | Décélération angulaire en rad/s². |
◆ setSpinShutdown()
| void VelocityController::setSpinShutdown |
( |
bool | spinShutdown | ) |
|
Change l'état de l'arret d'urgence.
- Paramètres
-
| spinShutdown | Etat à appliquer à la variable spinShutdown. |
◆ m_maxAngAcc
| float VelocityController::m_maxAngAcc |
|
protected |
Décélération max linéaire en mm/s². Toujours positif.
◆ m_maxAngDec
| float VelocityController::m_maxAngDec |
|
protected |
Décélération max angulaire en rad/s². Toujours positif.
◆ m_maxLinAcc
| float VelocityController::m_maxLinAcc |
|
protected |
Accélération max linéaire en mm/s². Toujours positif.
◆ m_maxLinDec
| float VelocityController::m_maxLinDec |
|
protected |
Accélération max angulaire en rad/s². Toujours positif.
◆ m_rampAngVelSetpoint
| float VelocityController::m_rampAngVelSetpoint |
|
protected |
Vitesse angulaire intermédiaire en rad/s.
◆ m_rampLinVelSetpoint
| float VelocityController::m_rampLinVelSetpoint |
|
protected |
Vitesse linéaire intermédiaire en mm/s.
◆ m_spinShutdown
| bool VelocityController::m_spinShutdown |
|
protected |
Etat de la sécurité de patinage.
La documentation de cette classe a été générée à partir des fichiers suivants :
- C:/Users/boris/Desktop/robotique/team2024/platformIO/LIBS/ARDUINO_LIBS/VelocityController/VelocityController.h
- C:/Users/boris/Desktop/robotique/team2024/platformIO/LIBS/ARDUINO_LIBS/VelocityController/VelocityController.cpp