Control Library by altb
Dependents: My_Libraries IndNav_QK3_T265
PI_Cntrl.h@15:c70cad2f4e64, 2020-01-16 (annotated)
- Committer:
- pmic
- Date:
- Thu Jan 16 09:12:50 2020 +0000
- Revision:
- 15:c70cad2f4e64
- Parent:
- 0:d49418189c5c
Revisit IIR_filter.h and IIR_filter.cpp. Change internal double to float arithmetic.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
altb | 0:d49418189c5c | 1 | class PI_Cntrl |
altb | 0:d49418189c5c | 2 | { |
altb | 0:d49418189c5c | 3 | public: |
altb | 0:d49418189c5c | 4 | |
altb | 0:d49418189c5c | 5 | PI_Cntrl(float Kp, float Tn, float Ts); |
altb | 0:d49418189c5c | 6 | PI_Cntrl(float Kp, float Tn, float Ts, float uMax); |
altb | 0:d49418189c5c | 7 | PI_Cntrl(float Kp, float Tn, float Ts, float uMax, float uMin); |
altb | 0:d49418189c5c | 8 | |
altb | 0:d49418189c5c | 9 | float operator()(float error) { |
altb | 0:d49418189c5c | 10 | return doStep((double)error); |
altb | 0:d49418189c5c | 11 | } |
altb | 0:d49418189c5c | 12 | |
altb | 0:d49418189c5c | 13 | virtual ~PI_Cntrl(); |
altb | 0:d49418189c5c | 14 | |
altb | 0:d49418189c5c | 15 | void reset(float initValue); |
altb | 0:d49418189c5c | 16 | float doStep(double error); |
altb | 0:d49418189c5c | 17 | |
altb | 0:d49418189c5c | 18 | private: |
altb | 0:d49418189c5c | 19 | |
altb | 0:d49418189c5c | 20 | double b0; |
altb | 0:d49418189c5c | 21 | double b1; |
altb | 0:d49418189c5c | 22 | double b2; |
altb | 0:d49418189c5c | 23 | double s; |
altb | 0:d49418189c5c | 24 | double uMax; |
altb | 0:d49418189c5c | 25 | double uMin; |
altb | 0:d49418189c5c | 26 | |
altb | 0:d49418189c5c | 27 | void setCoefficients(float Kp, float Tn, float Ts); |
altb | 0:d49418189c5c | 28 | |
altb | 0:d49418189c5c | 29 | }; |