Takeuchi Issei / Mbed 2 deprecated 4Omunisleeve3

Dependencies:   mbed Eigen

Committer:
e2011220
Date:
Wed Apr 14 07:26:19 2021 +0000
Revision:
0:ee7e9405e1c7
first

Who changed what in which revision?

UserRevisionLine numberNew contents of line
e2011220 0:ee7e9405e1c7 1 #ifndef PPID_H_
e2011220 0:ee7e9405e1c7 2 #define PPID_H_
e2011220 0:ee7e9405e1c7 3
e2011220 0:ee7e9405e1c7 4 #include "PID.h"
e2011220 0:ee7e9405e1c7 5
e2011220 0:ee7e9405e1c7 6 class PPID : public PID
e2011220 0:ee7e9405e1c7 7 {
e2011220 0:ee7e9405e1c7 8 public:
e2011220 0:ee7e9405e1c7 9 PPID(double k = 0, double Ti = 0, double Td = 0, double target = 0, double current = 0)
e2011220 0:ee7e9405e1c7 10 {
e2011220 0:ee7e9405e1c7 11 PID::set_PID(k, Ti, Td);
e2011220 0:ee7e9405e1c7 12 set_state(target, current);
e2011220 0:ee7e9405e1c7 13 }
e2011220 0:ee7e9405e1c7 14 ~PPID(){}
e2011220 0:ee7e9405e1c7 15
e2011220 0:ee7e9405e1c7 16 protected:
e2011220 0:ee7e9405e1c7 17
e2011220 0:ee7e9405e1c7 18 virtual double _get_control();
e2011220 0:ee7e9405e1c7 19 virtual void _calc_p();
e2011220 0:ee7e9405e1c7 20 virtual void _calc_i();
e2011220 0:ee7e9405e1c7 21 virtual void _calc_d();
e2011220 0:ee7e9405e1c7 22 virtual void _reset();
e2011220 0:ee7e9405e1c7 23
e2011220 0:ee7e9405e1c7 24 private:
e2011220 0:ee7e9405e1c7 25
e2011220 0:ee7e9405e1c7 26 inline void _update(double *array, double present)
e2011220 0:ee7e9405e1c7 27 {
e2011220 0:ee7e9405e1c7 28 array[0] = array[1];
e2011220 0:ee7e9405e1c7 29 array[1] = present;
e2011220 0:ee7e9405e1c7 30 }
e2011220 0:ee7e9405e1c7 31 double _p, _i, _d;
e2011220 0:ee7e9405e1c7 32 double _diff[2];
e2011220 0:ee7e9405e1c7 33 double _integral;
e2011220 0:ee7e9405e1c7 34 };
e2011220 0:ee7e9405e1c7 35
e2011220 0:ee7e9405e1c7 36 #endif