CRINSA-team2024 2024
Documentation du Club Robot INSA Rennes 2024
|
Classe à implémenter pour gérer les appels dans la loop. Plus de détails...
#include <PeriodicProcess.h>
Dérivée par BrushlessMotor, DifferentialController, FullSpeedServo, Odometry, et PositionController.
Fonctions membres publiques | |
virtual | ~PeriodicProcess () |
Constructeur de PeriodicProcess. | |
void | enable () |
Active le PeriodicProcess. | |
void | disable () |
Désactive le PeriodicProcess. | |
void | setTimestep (float timestep) |
Sélectionne une nouvelle valeur pour timestep. | |
bool | update () |
Execute la méthode process. | |
bool | isEnabled () const |
Vérifie si le PeriodicProcess est activé. | |
float | getTimestep () const |
Retourne la valeur de m_timestep. | |
Fonctions membres protégées | |
virtual void | process (float timestep)=0 |
Méthode à implémenter obligatoirement pour hériter de PeriodicProcess. | |
virtual void | onProcessEnabling () |
Méthode exécutée à l'activation du PeriodicProcess. | |
virtual void | onProcessDisabling () |
Méthode exécutée à la désactivation du PeriodicProcess. | |
Classe à implémenter pour gérer les appels dans la loop.
class PeriodicProcess
est un outil permettant à l'Arduino de pouvoir appeler l'objet PeriodicProcess tout les X s. Cela permet de ne pas saturer le microcontroleur pour des tâches qui ne nécessitent pas un très gros rafraichissement. En général, on l'utilise pour toutes les tâches dans la loop.
Par exemple : faire tourner un moteur pendant un certain temps puis l'arreter en autonomie sans delay()
|
inlinevirtual |
Constructeur de PeriodicProcess.
Le constructeur est totalement vide.
void PeriodicProcess::disable | ( | ) |
Désactive le PeriodicProcess.
Passe la variable m_enable à Faux et execute onProcessDisabling.
void PeriodicProcess::enable | ( | ) |
Active le PeriodicProcess.
Passe la variable m_enable à Vrai et execute onProcessEnabling.
|
inline |
Retourne la valeur de m_timestep.
|
inline |
Vérifie si le PeriodicProcess est activé.
|
inlineprotectedvirtual |
Méthode exécutée à la désactivation du PeriodicProcess.
Méthode à implémenter si votre class nécessite des actions à sa déactivation.
|
inlineprotectedvirtual |
Méthode exécutée à l'activation du PeriodicProcess.
Méthode à implémenter si votre class nécessite des actions à son activation.
Réimplémentée dans DifferentialController, et VelocityController.
|
protectedpure virtual |
Méthode à implémenter obligatoirement pour hériter de PeriodicProcess.
Process est la méthode qui s'exécutera toutes les m_timestep. Il doit donc définir l'action répétitive voulue dans la loop de l'Arduino.
timestep | Temps écoulé depuis le dernier appel en seconde. |
Implémenté dans DifferentialController, FullSpeedServo, Odometry, et VelocityController.
|
inline |
Sélectionne une nouvelle valeur pour timestep.
Change le timestep par celui donné en paramètre.
timestep | Temps en secondes du taux de rafraichissement. |
bool PeriodicProcess::update | ( | ) |
Execute la méthode process.
Execute la méthode process si le temps passé est supérieur à timestep. Envoie à process le temps depuis le dernier appel.