標題: PID運算的輸出結果與執(zhí)行器PWM占空比之間的關聯(lián) [打印本頁]

作者: UpByUp    時間: 2018-10-20 00:01
標題: PID運算的輸出結果與執(zhí)行器PWM占空比之間的關聯(lián)
本帖最后由 UpByUp 于 2018-10-20 00:04 編輯

PID的運算結果怎樣和PWM占空比取得換算,例如用PWM來控溫或轉速等目標時,
通過PID公式得知的 PID計算函數(shù)結果  PID_Calc();,以及PWM輸出占空比函數(shù) PWM(Duty);,

其中占空比函數(shù)的參數(shù)為占空比 Duty, PID的輸出結果如何轉換為占空比 Duty ?


是直接將PID的輸出結果賦值給 Duty ?

作者: zxjfm    時間: 2018-10-20 08:38
一般PWM的輸出參數(shù)為整數(shù),他和PID輸出值之間會有一個線性關系,也就是缺少一個K 值,還有一種就是這個PWM的控制盒PID的輸出值是反的需要用0xFF-輸出值
作者: le51    時間: 2018-10-20 19:58
pid的結果和占空比是兩個不同的量值,這之間你需要制定一個線性換算關系,找出你想要的K值。當pid輸出某值時,duty換算為某值。以stm32單片機為例:
pid=PID_Calc();
duty =k*pid;
TIM_SetCompare(TIM3,duty);

作者: UpByUp    時間: 2018-10-22 02:00
le51 發(fā)表于 2018-10-20 19:58
pid的結果和占空比是兩個不同的量值,這之間你需要制定一個線性換算關系,找出你想要的K值。當pid輸出某值 ...

請問一下,k值的選取依據(jù)是什么?
需要先已知PID的輸出結果范圍嗎?這個輸出范圍怎么好確定。
作者: cjm82    時間: 2018-10-23 10:18
K值取值與實際元件參數(shù)和實際應用環(huán)境有關,(即PID算法的三個常數(shù)系數(shù)).要想在整個控制過程中通過計算來實現(xiàn)與PWM占空比精確匹配,需要很大的計算量和大量的調(diào)試.這也是PID算法的難點所在.
簡單的做法可以嘗試將整個控制分成若干小區(qū)間,在某個小區(qū)間,被控對象的變化基本上PWM占空比與呈現(xiàn)用一個比較簡單的函數(shù)能夠表達的關系.
比如要想某個物體到200度,我可以從室溫到150度直接100%功率加熱,然后從150度到180度,設置一個K值用來計算PWM的占空比,180度到200度設置另外一個K值.調(diào)試的時候只要更改區(qū)間長度和與之對應的K值就行.
當然這樣做的缺點就是靈活性比較差.




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