標題: PID算法控制電機轉(zhuǎn)速 Proteus仿真+單片機代碼 升級版 [打印本頁]

作者: pkintel    時間: 2018-12-29 17:55
標題: PID算法控制電機轉(zhuǎn)速 Proteus仿真+單片機代碼 升級版
PID算法控制電機轉(zhuǎn)速仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. //=== C文件 ==========
  2. /*
  3. * PID管理程序,PID manager
  4. */

  5. #include "PID_Mgr.h"

  6. /*-----------------------------------------
  7. * 位置式PID
  8. ------------------------------------------*/
  9. float PID_Deal(PID_STR *pid)
  10. {
  11.     float re_val;

  12.     pid->offset_sum += (pid->set - pid->now);   //更新“累計偏差”(在原來的基礎上加“當前偏差”)

  13.     //位置式PID公式
  14.     re_val = pid->kp*(pid->set - pid->now)  +                   /* 比例系數(shù)*當前偏差 */     \   
  15.              pid->ki*(pid->offset_sum)      +                   /* 積分系數(shù)*累計偏差 */     \   
  16.              pid->kd*((pid->set - pid->now) - pid->offset_b);   /* 微分系數(shù)*偏差變化率 */

  17.     pid->offset_b = pid->set - pid->now;


  18.     return re_val;
  19. }




  20. //=== H文件 ======
  21. #ifndef _PID_MGR_H_
  22. #define _PID_MGR_H_

  23. #include "system.h"

  24. //=== 位置式PID結(jié)構(gòu)體 =============
  25. typedef struct
  26. {
  27.     float kp;
  28.     float ki;
  29.     float kd;

  30.     float set;          //設定值
  31.     float now;          //當前值   (注:設定值-當前值 = 當前偏差)
  32.     float offset_b;     //上次偏差
  33.     float offset_sum;   //累計偏差
  34. }
  35. PID_STR;

  36. /*---------------------------------
  37. * 函數(shù)聲明
  38. ---------------------------------*/
  39. float PID_Deal(PID_STR *pid);


  40. #endif
復制代碼


所有資料51hei提供下載:
PID算法控制電機轉(zhuǎn)速 proteus仿真 v2.0.rar (95.59 KB, 下載次數(shù): 227)



作者: 客22    時間: 2019-1-1 22:43
樓主的資料很有用
作者: pkintel    時間: 2019-1-2 14:17
優(yōu)化按鍵掃描: PID算法控制電機轉(zhuǎn)速 proteus仿真 v2.2.rar (99.67 KB, 下載次數(shù): 27)
作者: pkintel    時間: 2019-1-2 22:53
本帖最后由 pkintel 于 2019-1-3 08:51 編輯

推導有誤,刪除。

PID算法控制電機轉(zhuǎn)速 proteus仿真 v3.0.rar

112.48 KB, 下載次數(shù): 73, 下載積分: 黑幣 -5

增量式PID及其推導


作者: 八寶飯    時間: 2019-1-6 19:25
很贊,很有用,非常不錯
作者: AllenShielder    時間: 2019-9-30 17:06
謝謝分享
作者: 惆悵東欄    時間: 2020-4-27 09:19
謝謝分享




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1