pid.h 476 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef _pid_
  2. #define _pid_
  3. #include "stm32f10x_conf.h"
  4. typedef struct
  5. {
  6. float Sv;//用户设定值
  7. float Pv;
  8. float Kp;
  9. float T; //PID计算周期--采样周期
  10. float Ti;
  11. float Td;
  12. float Ek; //本次偏差
  13. float Ek_1;//上次偏差
  14. float SEk; //历史偏差之和
  15. float Iout;
  16. float Pout;
  17. float Dout;
  18. float OUT0;
  19. float OUT;
  20. u16 C10ms;
  21. u16 pwmcycle;//pwm周期
  22. u32 times;
  23. }PID;
  24. extern PID pid; //存放PID算法所需要的数据
  25. void PID_Calc(void); //pid计算
  26. #endif