p
NK_PID.hpp@0:5f9d8f2ef93e, 2021-08-22 (annotated)
- Committer:
- hamohamo
- Date:
- Sun Aug 22 13:01:50 2021 +0000
- Revision:
- 0:5f9d8f2ef93e
pp
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
hamohamo | 0:5f9d8f2ef93e | 1 | #ifndef NK_PID |
hamohamo | 0:5f9d8f2ef93e | 2 | #define NK_PID |
hamohamo | 0:5f9d8f2ef93e | 3 | |
hamohamo | 0:5f9d8f2ef93e | 4 | #ifndef M_PI |
hamohamo | 0:5f9d8f2ef93e | 5 | #define M_PI 3.14159265358979 |
hamohamo | 0:5f9d8f2ef93e | 6 | #endif |
hamohamo | 0:5f9d8f2ef93e | 7 | |
hamohamo | 0:5f9d8f2ef93e | 8 | class Nk_pid{ |
hamohamo | 0:5f9d8f2ef93e | 9 | public: |
hamohamo | 0:5f9d8f2ef93e | 10 | Nk_pid(double kp,double ki,double kd,double freq); |
hamohamo | 0:5f9d8f2ef93e | 11 | ~Nk_pid(); |
hamohamo | 0:5f9d8f2ef93e | 12 | void SetParam(double Value,double Target); |
hamohamo | 0:5f9d8f2ef93e | 13 | void SetLimit(double max_p,double min_p,double max_m,double min_m); |
hamohamo | 0:5f9d8f2ef93e | 14 | double GetGain(double xvalue); |
hamohamo | 0:5f9d8f2ef93e | 15 | double res; |
hamohamo | 0:5f9d8f2ef93e | 16 | double value; |
hamohamo | 0:5f9d8f2ef93e | 17 | double target; |
hamohamo | 0:5f9d8f2ef93e | 18 | double err[2]; |
hamohamo | 0:5f9d8f2ef93e | 19 | private: |
hamohamo | 0:5f9d8f2ef93e | 20 | double Max_P; |
hamohamo | 0:5f9d8f2ef93e | 21 | double Min_P; |
hamohamo | 0:5f9d8f2ef93e | 22 | double Max_M; |
hamohamo | 0:5f9d8f2ef93e | 23 | double Min_M; |
hamohamo | 0:5f9d8f2ef93e | 24 | double Kp; |
hamohamo | 0:5f9d8f2ef93e | 25 | double Ki; |
hamohamo | 0:5f9d8f2ef93e | 26 | double Kd; |
hamohamo | 0:5f9d8f2ef93e | 27 | double Freq; |
hamohamo | 0:5f9d8f2ef93e | 28 | double G_P; |
hamohamo | 0:5f9d8f2ef93e | 29 | double G_I; |
hamohamo | 0:5f9d8f2ef93e | 30 | double G_D; |
hamohamo | 0:5f9d8f2ef93e | 31 | double integral; |
hamohamo | 0:5f9d8f2ef93e | 32 | double rtn; |
hamohamo | 0:5f9d8f2ef93e | 33 | }; |
hamohamo | 0:5f9d8f2ef93e | 34 | |
hamohamo | 0:5f9d8f2ef93e | 35 | #endif |