在學習pid中發現有許許多多的優化,例如抗飽和,變速積分,積分分離等,在實際工程開發中又如何去選取,如何根據問題去選擇相關的優化演算法。
該文只是記錄開發過程中的一些問題和想法,如果有錯誤的地方請多多指正。
硬體:大疆gm6020電機、stm32f4
需求:1. 速度環—實現手動控制;2.位置環—達到指定位置,電機啟停自鎖。
演算法:增量式pid;基於pid的各種優化方法。
pid控制器即比例、積分、微分控制器,該演算法以誤差作為輸入量,經過比例,積分,微分三項加權求和後得到輸出量。pid控制器不需要精確的系統模型就能使用,屬於閉環控制的一種,應用十分廣泛。
pid公式
深入淺出pid控制演算法(一)----連續控制系統的pid演算法及matlab**_若愛我菲、-csdn部落格blog.csdn.net
pid的理解和應用_氫鍵h-h-csdn部落格blog.csdn.net
之前對pid只有最基本的了解,在實際應用中總會遇到積分飽和、微分衝擊等問題,針對這些問題不少前輩對pid提出了的各種優化演算法,下面列出的只是我查閱的部分優化,也是實際中比較常見的。
pid優化演算法
整個電機控制演算法如下圖所示,後續將詳細介紹速度環,位置環中的優化和實現,其中應用到一部分上面列出的pid優化演算法。
其中位置環與速度環的區別主要是輸入的反饋不同,乙個是電機的位置,另乙個是電機的速度。
位置環:
位置式pid、速度平滑、減速過程
速度環:
增量式pid、變速積分、積分死區
thinkphp駝峰式控制器訪問
預設情況下,url位址中的控制器和操作名是不區分大小寫的,因此下面這兩種訪問方式是相同的。plain view plain copy localhost tp5 index.php index index index localhost tp5 index.php index index index...
分布式版本控制器GIT學習筆記
只在工作區修改了內容,尚未提交至暫存區和版本庫 用命令git checkout file 工作區修改了內容,並且提交到了暫存區。第一步用命令git reset head file,撤銷回工作區,然後在重複情景1的操作。已經commit提交到版本庫,還沒有推送到遠端庫。1 git reset hard...
Yaf學習之控制器
yaf中的控制器 序號方法名稱作用1 getmodulename 獲取當前所在模組的名稱 2getviewpath 獲取檢視路徑 3render string tpl,array params 渲染乙個檢視,返回乙個yaf response abstract例項 4display string tp...