summaryrefslogtreecommitdiff
path: root/2004/i/nono/src/motor/motor.h
diff options
context:
space:
mode:
Diffstat (limited to '2004/i/nono/src/motor/motor.h')
-rw-r--r--2004/i/nono/src/motor/motor.h48
1 files changed, 26 insertions, 22 deletions
diff --git a/2004/i/nono/src/motor/motor.h b/2004/i/nono/src/motor/motor.h
index ddc32ee..7673534 100644
--- a/2004/i/nono/src/motor/motor.h
+++ b/2004/i/nono/src/motor/motor.h
@@ -28,52 +28,56 @@
#include "tracker.h"
#include "movement.h"
+/// Gestion des moteurs principaux du robot. Cette classe gére les
+/// déplacements simples (enfin pas si simple que ça) comme aller vers un
+/// point, atteindre un angle...
class Motor : public AsservTracker
{
- // Object d'asservissement.
+ /// Object d'asservissement.
Asserv asserv_;
- // Suiveur de position.
+ /// Suiveur de position.
Tracker tracker_;
- // Pointeur vers l'instance unique.
+ /// Pointeur vers l'instance unique.
static Motor *instance_;
- // Echelles (mm/unit, mm/s.unit, mm/s^2.unit).
+ /// Echelles (mm/unit, mm/s.unit, mm/s^2.unit).
double s_, vs_, as_;
- // Mouvement en cours.
+ /// Mouvement en cours.
Movement *movement_;
- // Vitesses maximale et minimale (unit).
+ /// Vitesses maximale et minimale (unit).
int maxSpeed_, minSpeed_;
public:
- // Constructeur.
+ /// Constructeur.
Motor (void);
- // Destructeur.
+ /// Destructeur.
virtual ~Motor (void);
- // Récupère l'instance unique.
+ /// Récupère l'instance unique.
static Motor &getInstance (void) { return *instance_; }
- // Appelée lors d'une mise à jour des compteurs.
+ /// Appelée lors d'une mise à jour des compteurs.
void updateCounter (int l, int r);
- // Choisi le mouvement en cours.
+ /// Choisi le mouvement en cours.
void setMovement (Movement *m);
- // Active l'asservissement.
+ /// Active l'asservissement.
void go (bool fl = true) { asserv_.go (fl); }
- // Teste si l'émission est terminée.
+ /// Teste si l'émission est terminée.
bool ok (void) { return asserv_.ok (); }
- // Attend que toute les émissions soit terminées.
+ /// Attend que toute les émissions soit terminées.
void waitOk (void) { asserv_.waitOk (); }
- // Teste si les mouvements sont terminés.
+ /// Teste si les mouvements sont terminés.
bool end (void);
- // Attend la fin de tout les mouvements.
+ /// Attend la fin de tout les mouvements.
void waitEnd (void);
- // Teste si les moteurs sont arrétés.
+ /// Teste si les moteurs sont arrétés.
bool stopped (void);
- // Attend que les moteurs soient arrétés.
+ /// Attend que les moteurs soient arrétés.
void waitStopped (void);
- // Récupère l'object tracker.
+ /// Récupère l'object tracker.
const Tracker &getTracker (void) const { return tracker_; }
- // Paramètre la vitesse des moteurs.
+ /// Paramètre la vitesse des moteurs.
void speed (double l, double r);
- // Va vers un point, renvois faux si atteind.
+ /// Va vers un point, renvois faux si atteind.
bool goTo (double x, double y, double eps = 5.0);
- // Va vers un point, en formant un arc de cercle, renvois faux si atteind.
+ /// Va vers un point, en formant un arc de cercle, renvois faux si atteind.
+ /// \deprecated Utiliser goTo().
bool goToArc (double x, double y, double eps = 5.0);
};