2015_robocon_bteam / MachineState
Revision:
0:3b748c4d0906
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/MachineState.h	Wed Sep 16 08:04:03 2015 +0000
@@ -0,0 +1,55 @@
+#ifndef MACHINE_STATE_H
+#define MACHINE_STATE_H
+
+/**
+ * Includes
+ */
+#include "mbed.h"
+#include "QEI.h"
+
+/**
+ * Defines
+ */
+#define PI 3.14159265359
+
+class MachineState {
+    
+public:    
+    MachineState( double wheelRadius, double halfTread, double pulsePerRev,
+           PinName rightChannelA, PinName rightChannelB, PinName leftChannelB, PinName leftChannelA, double PERIOD,
+           double originY = 0.0, double originY = 0.0, double originSita = 0.0 );
+    void reset(void);
+    double getX(void);
+    double getY(void);
+    double getSita(void);
+    double getVelocity(void);
+    void mesureState(void);
+    
+private:
+    
+    QEI EncoderRight;
+    QEI EncoderLeft;
+    
+    double PulsesRight_;
+    double PulsesLeft_;
+    double PrefPulsesRight_;
+    double PrefPulsesLeft_;
+    double dsita_;
+    double dx_;
+    double dy_;
+    double dlr_;
+    double dll_;
+    double vr_;
+    double vl_;
+    double halfTread_;
+    double PERIOD_;
+    double pulsePerRev_;
+    double wheelRadius_;
+    volatile double x_;
+    volatile double y_;
+    volatile double sita_;
+    volatile double velocity_;
+};
+
+
+#endif
\ No newline at end of file