2nd Library

Committer:
altb2
Date:
Thu Mar 07 07:03:56 2019 +0000
Revision:
0:a201a6cd4c0c
Child:
1:b54eb3e24d2d
New Library

Who changed what in which revision?

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