Six crescent shaped legs

Dependencies:   mbed

Committer:
sim642
Date:
Tue Jun 21 14:43:44 2016 +0000
Revision:
47:4f418a4b0051
Parent:
13:dc5f5f19e4e8
Byte based communication

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sim642 2:cf0147952fb9 1 #ifndef PID_CONTROLLER_H
sim642 2:cf0147952fb9 2 #define PID_CONTROLLER_H
sim642 2:cf0147952fb9 3
sim642 2:cf0147952fb9 4 #include "ErrorController.hpp"
sim642 2:cf0147952fb9 5 #include "mbed.h"
sim642 2:cf0147952fb9 6
sim642 13:dc5f5f19e4e8 7 struct PIDData
sim642 13:dc5f5f19e4e8 8 {
sim642 13:dc5f5f19e4e8 9 float Kp, Ki, Kd;
sim642 13:dc5f5f19e4e8 10 };
sim642 13:dc5f5f19e4e8 11
sim642 2:cf0147952fb9 12 class PIDController : public ErrorController
sim642 2:cf0147952fb9 13 {
sim642 2:cf0147952fb9 14 public:
sim642 13:dc5f5f19e4e8 15 PIDController(PIDData nData);
sim642 2:cf0147952fb9 16 virtual ~PIDController();
sim642 2:cf0147952fb9 17
sim642 2:cf0147952fb9 18 virtual void reset();
sim642 2:cf0147952fb9 19 virtual float step(float error);
sim642 2:cf0147952fb9 20
sim642 13:dc5f5f19e4e8 21 void set(PIDData nData);
sim642 13:dc5f5f19e4e8 22
sim642 13:dc5f5f19e4e8 23 protected:
sim642 13:dc5f5f19e4e8 24 PIDData data;
sim642 2:cf0147952fb9 25
sim642 2:cf0147952fb9 26 private:
sim642 2:cf0147952fb9 27 Timer timer;
sim642 2:cf0147952fb9 28
sim642 2:cf0147952fb9 29 float prev_error;
sim642 2:cf0147952fb9 30 float integral;
sim642 2:cf0147952fb9 31 };
sim642 2:cf0147952fb9 32
sim642 2:cf0147952fb9 33 #endif // PID_CONTROLLER_H