|
為了更好的理解這個視頻和PID參數(shù)的作用,特意根據(jù)多軸飛行器的原理和PID理論,編寫了一個EXCEL圖表,直觀的來理解PID參數(shù)的作用。
在這個模型中:
1、假設(shè)輸出是力,作用在一個質(zhì)塊上,使用加速度、速度、位移積分計算,評估輸出對測量值產(chǎn)生的影響,跟多軸飛行器的運動模式比較接近。
2、讓速度響應(yīng)慢一個拍子,模擬電調(diào)和電機的響應(yīng)滯后。
3、加入阻尼,模擬空氣的衰減作用
4、引入偏差,用于體現(xiàn)I的作用,從中間加入,代表一個系統(tǒng)誤差或外作用力
PID的作用概述:
1、P產(chǎn)生響應(yīng)速度和力度,過小響應(yīng)慢,過大會產(chǎn)生振蕩,是I和D的基礎(chǔ)。
2、I在有系統(tǒng)誤差和外力作用時消除偏差、提高精度,同時也會增加響應(yīng)速度,產(chǎn)生過沖,過大會產(chǎn)生振蕩。
3、D抑制過沖和振蕩,過小系統(tǒng)會過沖,過大會減慢響應(yīng)速度。D的另外一個作用是抵抗外界的突發(fā)干擾,阻止系統(tǒng)的突變。
通過這個模型和圖表,一步步演示PID參數(shù)的作用和調(diào)試方法:
1、逐步增大P,看P對響應(yīng)速度和力度的影響,調(diào)到系統(tǒng)發(fā)生振蕩,再減少一點P
當(dāng)P=0.1時,響應(yīng)很慢,但不會振蕩
121558g2ti71xllbs5c2lx.jpg (44.94 KB, 下載次數(shù): 147)
下載附件
2016-6-17 12:46 上傳
粗黑線是系統(tǒng)響應(yīng),洋紅線是目標(biāo)值。
逐步增大P,P=1,有振蕩,但慢慢在衰減
121558l6qua6a60ya0uiuc.jpg (51.55 KB, 下載次數(shù): 118)
下載附件
2016-6-17 12:46 上傳
繼續(xù)增大P,P=3,振蕩會逐步加大
121559mgujeed5k9eeegug.jpg (51.05 KB, 下載次數(shù): 115)
下載附件
2016-6-17 12:46 上傳
取振蕩但會衰減的P=1繼續(xù)調(diào)整
在多軸調(diào)試時,當(dāng)振蕩發(fā)生時,再稍微減小一點P。
2、加入D,看D對振蕩的控制能力,D過小會發(fā)生過沖,D過大會遲滯,以稍微有點過沖為最佳
D=0.5,有較大的過沖和少量振蕩,衰減很快
121559xfwiynaa0j399nwh.jpg (47.07 KB, 下載次數(shù): 131)
下載附件
2016-6-17 12:46 上傳
D=1.3,基本沒過沖
121600k74sf457wbhfhg55.jpg (41.32 KB, 下載次數(shù): 114)
下載附件
2016-6-17 12:46 上傳
D=2,響應(yīng)遲滯,減慢了響應(yīng)速度
122402s1jirfxj1rv5zmqp.jpg (41.58 KB, 下載次數(shù): 128)
下載附件
2016-6-17 12:46 上傳
取以稍微有點過沖的D=1.3為最佳
在多軸調(diào)試時,用手拍一下機臂或傾斜啟動,機臂在復(fù)位時有少量過沖為宜。(不過我喜歡基本沒過沖時的參數(shù),這樣在懸停時更穩(wěn))
3、可以繼續(xù)增大P和D,讓響應(yīng)更快但過沖也不大。
P=2 D=1.8
121601vk9vwm9kmi2iiip2.jpg (42.95 KB, 下載次數(shù): 114)
下載附件
2016-6-17 12:46 上傳
在理論上可以這樣演示,但在實際多軸的調(diào)試時,這一步一般不做,這是為了更安全和穩(wěn)定。
4、加入0.2的偏差,看偏差對位移的影響
從中間加入,代表一個外作用力。
121603snj2zb1yphnz1c8m.jpg (47.79 KB, 下載次數(shù): 109)
下載附件
2016-6-17 12:46 上傳
可以看到,如果沒有I的作用,偏差將一直存在,盡管P產(chǎn)生了一個抵抗力,但只是阻止了系統(tǒng)繼續(xù)運動,但偏差一直在。
在多軸調(diào)試時,如果持續(xù)的抬起一個機臂,機臂會持續(xù)的轉(zhuǎn)動,抵抗力很小,放手后也不會回復(fù)。
5、加I,看I對偏差的修正能力,I加快了響應(yīng)速度,但也會導(dǎo)致過沖或振蕩
I=0.3 基本可以消除偏差產(chǎn)生的影響,產(chǎn)生了少量過沖,但提高了在有偏差時系統(tǒng)的精度
121556yjhe68mhuwu68jwd.jpg (50.48 KB, 下載次數(shù): 132)
下載附件
2016-6-17 12:46 上傳
I=3 進一步加快響應(yīng)速度,但產(chǎn)生了振蕩
121556mm1ps1rzriprra55.jpg (61.45 KB, 下載次數(shù): 125)
下載附件
2016-6-17 12:46 上傳
取基本能糾正偏差的I=0.3
在多軸調(diào)試時,油門開至懸停油門,用手持續(xù)的抬起一個機臂,可以感到隨著I的增加,抵抗力會逐步增大,持續(xù)時間加長。
因為多軸的長期穩(wěn)定由姿態(tài)模式的LEVEL參數(shù)來解決,所以I不用太大,取缺省參數(shù)就可以了,大概可以抵抗1-2秒左右。
6、增大一點D,減小一點I產(chǎn)生的過沖
取消偏差,因為I的加入,有一點過沖
121557oyms1mcnceecslyn.jpg (47.84 KB, 下載次數(shù): 133)
下載附件
2016-6-17 12:46 上傳
增大D,D=2.2,減小過沖
121557tmejd7gezmpmm7tr.jpg (48.56 KB, 下載次數(shù): 120)
下載附件
2016-6-17 12:46 上傳
在實際多軸調(diào)試時,這一步一般不用,但是如果有必要,可以試一下。
好了,曲線演示完了,這同時也是多軸PID參數(shù)的調(diào)試過程,結(jié)合視頻一起看,能更好的理解這一過程,希望對大家理解PID有所幫助。
附:多軸飛行器PID調(diào)試演示器.xls
另外,試了一下,下載的文件名可能有問題,自己把文件名改為"多軸飛行器PID調(diào)試演示器.xls"就可以用了
PID的代碼其實也很簡單,主要是要了解其中的原理,才能更好地調(diào)整參數(shù)。為了方便新手們理解,樓主建立了一個數(shù)學(xué)模型來讓大家了解。(只針對新手,老手就算了)
========圓點博士小四軸之PID控制模式分析=======
PID控制的P是Proportional的縮寫, 是比例的意思,I是Integral的縮寫,是積分的意思,D是Derivative的縮寫,是微分的意思。所以,PID就是我們常說的比例,積分,微分控制。
我們首先來看一個PID控制模型曲線圖:
該圖包含了比例控制,比例+積分控制,比較+積分+微分控制的電機響應(yīng)圖的對比。
1322387x9aglc8cj9kxqgx.jpg (37.76 KB, 下載次數(shù): 119)
下載附件
2016-6-17 12:46 上傳
PID模型
下面我們對曲線進行具體分析:
PID中的比例控制是最容易理解的,比例控制就是把角度的誤差乘以一個常數(shù)作為輸出驅(qū)動。假定我們有一個理想模型的電機,1V電壓的變化會帶來小四軸1度的角度改變。假定現(xiàn)在電機控制電壓是5V,小四軸在某一軸上的偏角是5度,目標(biāo)角度是100度。我們把當(dāng)前的電壓量定義為Vin,把輸出控制量定義為Vout。假定P等于0.2,那么比例控制的結(jié)果就是:
第一次:Vout=Vin+(100-5)*P=5V+19V=24V,得到電機電壓是24V,對應(yīng)的小四軸角度是24度,距離目標(biāo)角度的誤差是100-24=76度。
第二次:Vout=Vin+(100-24)*P=24V+15V=39V, 從而引起的角度是39度。
我們看到,在這么的一個比例控制系統(tǒng)下,小四軸角度在慢慢地向目標(biāo)角度靠近。
PID中的積分控制就是把把所有角度誤差相加起來,然后乘上一個常數(shù)作為輸出驅(qū)動。在上述例子中,假定I=0.2, 我們來看看比例和積分控制同時起作用下的系統(tǒng)反應(yīng)。
第一次:Vout=Vin+(100-5)*P+(100-5)*I=5V+19V+19V=43V,這時候小四軸角度為43度。
由于第一次控制前的誤差是100-5=95,第二次控制前的誤差是100-43=57,所以積分結(jié)果是152。
第二次:Vout=Vin+(100-43)*P+((100-5)+(100-43))*I=43V+11V+30V=84V, 這時候小四軸角度變?yōu)?4度。
第三次:Vout=Vin+(100-84)*P+((100-5)+(100-43)+(100-84))*I=84+3V+33V=120V。這時小四軸角度變?yōu)?20度。
我們看到,在增加了積分控制后,小四軸角度在快速向目標(biāo)角度靠近。
PID中的微分控制就是把角度的變化乘上一個常數(shù)來作為電機驅(qū)動輸出。在上述例子中,假定D=0.2, 我們來看看比例,積分和微分共同控制下的系統(tǒng)反應(yīng)。假定第一次前,電機轉(zhuǎn)速保持5轉(zhuǎn),那么第一次前的角度變化為0。
第一次:Vout=Vin+(100-5)*P+(100-5)*I-(5-5)*D=5V+19V+19V-0V=43V,這時候小四軸角度為43度。
和上一次相比,角度從5度變化到了43度,所以小四周角度變化是43-5=38度。
第二次:Vout=Vin+(100-43)*P+((100-5)+(100-43))*I-(43-5)*D=43V+11V+30V-7V=77V, 這時候小四周角度77度。
把上述的計算結(jié)果列出來,我們看到:
1323366577pxhymaza4a04.jpg (39.13 KB, 下載次數(shù): 143)
下載附件
2016-6-17 12:46 上傳
PID計算
從上面的數(shù)據(jù),我們可以看到:
1,單獨比例控制的時候,數(shù)據(jù)慢慢接近目標(biāo) (圖表中的紅色線)
2,加入積分控制之后,數(shù)據(jù)快速接近目標(biāo) (圖表中的藍(lán)色線)
3,微分控制起到抑制變化的作用。(圖表中的綠色線)
有了這些理論基礎(chǔ),就可以寫PID控制代碼拉。
PID模型說明:
1、假設(shè)輸出是力,作用在一個質(zhì)塊上,使用加速度、速度、位移積分計算,評估輸出對測量值產(chǎn)生的影響,跟多軸飛行器的作用模式比較接近。
2、讓速度響應(yīng)慢一個拍子,模擬電調(diào)和電機的響應(yīng)滯后。
3、加入阻尼,模擬空氣的衰減作用
4、偏差用于體現(xiàn)I的作用,從中間加入,代表一個系統(tǒng)誤差或外作用力
調(diào)試演示步驟:
1、把PID都?xì)w零,偏差歸零
2、逐步增大P,到位移發(fā)生振蕩,再減少一點P
3、加入D,D過小位移會發(fā)生過沖,D過大位移會遲滯,以稍微有點過沖為最佳
4、同步增大P、D,提高響應(yīng)速度,但又不會過沖太多
4、加入I看看影響,可以看到,在沒有偏差時,I的加入沒有帶來明顯好處,雖然加快了響應(yīng)速度,但也導(dǎo)致過沖或振蕩
5、I=0,加入0.2的偏差,看偏差對位移的影響
6、加I,看I對偏差的修正能力,再調(diào)整D,抑制過沖反應(yīng)
7、把偏差歸零,看看這組參數(shù)在無偏差時的響應(yīng)。
總結(jié):
1、P產(chǎn)生響應(yīng)速度,過小響應(yīng)慢,過大會產(chǎn)生振蕩,是I和D的基礎(chǔ)
2、I消除偏差、提高精度(在有系統(tǒng)誤差和外力作用時),同時增加了響應(yīng)速度
3、D抑制過沖和振蕩,抵抗外界的干擾,同時減慢了響應(yīng)速度
作者:SZHCS
PID.zip
(23.06 KB, 下載次數(shù): 208)
2016-6-17 12:46 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|