Fertig

Dependencies:   mbed

Fork of RT2_P3_students by TeamSurface

Committer:
Kiwicjam
Date:
Mon May 07 09:06:54 2018 +0000
Revision:
13:724759951a6f
Parent:
8:8ed679044a72
fertig komentiert

Who changed what in which revision?

UserRevisionLine numberNew contents of line
altb 1:a30512c3ac73 1 #ifndef PI_CNTRL_H_
altb 1:a30512c3ac73 2 #define PI_CNTRL_H_
altb 1:a30512c3ac73 3
altb 1:a30512c3ac73 4
altb 8:8ed679044a72 5 class PI_Cntrl
altb 8:8ed679044a72 6 {
altb 8:8ed679044a72 7 public:
altb 0:78ca29b4c49e 8
altb 8:8ed679044a72 9 PI_Cntrl(float Kp, float Tn, float Ts);
altb 8:8ed679044a72 10 PI_Cntrl(float Kp, float Tn, float Ts, float uMax);
altb 8:8ed679044a72 11 PI_Cntrl(float Kp, float Tn, float Ts, float uMax, float uMin);
altb 0:78ca29b4c49e 12
altb 8:8ed679044a72 13 float operator()(float error) {
altb 8:8ed679044a72 14 return doStep((double)error);
altb 8:8ed679044a72 15 }
altb 8:8ed679044a72 16
altb 8:8ed679044a72 17 virtual ~PI_Cntrl();
altb 0:78ca29b4c49e 18
altb 8:8ed679044a72 19 void reset(float initValue);
altb 8:8ed679044a72 20 float doStep(double error);
altb 8:8ed679044a72 21
altb 8:8ed679044a72 22 private:
altb 8:8ed679044a72 23
altb 8:8ed679044a72 24 double b0;
altb 8:8ed679044a72 25 double b1;
altb 8:8ed679044a72 26 double b2;
altb 8:8ed679044a72 27 double s;
altb 8:8ed679044a72 28 double uMax;
altb 8:8ed679044a72 29 double uMin;
altb 0:78ca29b4c49e 30
altb 8:8ed679044a72 31 void setCoefficients(float Kp, float Tn, float Ts);
altb 8:8ed679044a72 32
altb 8:8ed679044a72 33 };
altb 1:a30512c3ac73 34
altb 1:a30512c3ac73 35
altb 1:a30512c3ac73 36 #endif // PI_CNTRL_H_