Control Library by altb

Dependents:   My_Libraries IndNav_QK3_T265

Committer:
altb
Date:
Mon Mar 04 11:03:08 2019 +0000
Revision:
0:d49418189c5c
Child:
1:1010530120ce
New Folder Lib
;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
altb 0:d49418189c5c 1 class PID_Cntrl
altb 0:d49418189c5c 2 {
altb 0:d49418189c5c 3 public:
altb 0:d49418189c5c 4
altb 0:d49418189c5c 5 PID_Cntrl(float P, float I, float D, float tau_f, float Ts, float uMin, float uMax);
altb 0:d49418189c5c 6
altb 0:d49418189c5c 7 float operator()(float error) {
altb 0:d49418189c5c 8 return doStep((double)error);
altb 0:d49418189c5c 9 }
altb 0:d49418189c5c 10
altb 0:d49418189c5c 11 virtual ~PID_Cntrl();
altb 0:d49418189c5c 12
altb 0:d49418189c5c 13 void reset(float initValue);
altb 0:d49418189c5c 14 float doStep(double error);
altb 0:d49418189c5c 15 void set_limits(double ,double );
altb 0:d49418189c5c 16 float get_ulimit(void);
altb 0:d49418189c5c 17
altb 0:d49418189c5c 18 private:
altb 0:d49418189c5c 19
altb 0:d49418189c5c 20 double Iold;
altb 0:d49418189c5c 21 double eold,yold,del;
altb 0:d49418189c5c 22 double uMax;
altb 0:d49418189c5c 23 double uMin;
altb 0:d49418189c5c 24 double Ts;
altb 0:d49418189c5c 25 double P,I,D;
altb 0:d49418189c5c 26 double p, Ka;
altb 0:d49418189c5c 27 void setCoefficients(float P, float I, float D, float tau_f, float Ts);
altb 0:d49418189c5c 28
altb 0:d49418189c5c 29 };