|
簡(jiǎn)單說一下PID算法的含義:對(duì)四軸而言,PID算法是用來(lái)計(jì)算馬達(dá)的動(dòng)力大小,來(lái)抵消誤差的。
1. P直接和誤差關(guān)聯(lián),比如四軸傾斜X度,P的調(diào)控效果=P*X個(gè)單位的力量。PID算法中,P是最主要最基本的參數(shù)。
2. I則和誤差的積分有關(guān)。舉個(gè)例子,如果寫一個(gè)P控,控制一個(gè)電爐加熱到400度,當(dāng)前溫度是室溫,那剛開始誤差=(設(shè)定溫度-當(dāng)前溫度)很大,電爐就嘩嘩的加熱上去了,但是到了390度,誤差才10度了,加熱功率變小了,可是呢,由于這個(gè)電爐會(huì)散熱,結(jié)果單純用P控,溫度怎么也上不到400度。這時(shí),I控就可以幫助適當(dāng)調(diào)大一些功率,直到正好400度。那怎么實(shí)現(xiàn)的呢,用誤差積分乘以I,如果老是溫度不到400度,誤差的積分就會(huì)越來(lái)越大,I調(diào)控的效果=I*誤差的積分,也就越來(lái)越大。
3.D和誤差糾正的速度有關(guān),D和P相比,就像汽車避震里的油壓阻尼和彈簧,汽車彈簧碰到一個(gè)減速帶,就會(huì)受壓,反彈,此時(shí)如果沒有阻尼,車子就會(huì)不停的上下振動(dòng)。而油壓阻尼則防止彈簧不停振動(dòng)。因此D值越大,意味著阻尼越大,四軸不容易因?yàn)镻而振動(dòng),但P的效果就會(huì)變差。D調(diào)控的效果=D*誤差的微分。
4. 把三個(gè)數(shù)值的調(diào)控效果加起來(lái),就是總的調(diào)控效果
再談一下PID調(diào)試的要點(diǎn):
1. P太小,結(jié)果是四軸的錯(cuò)誤姿態(tài)沒法糾正,P太大結(jié)果是四軸高速抖動(dòng),兩者間的數(shù)據(jù)都可以用。
2. 對(duì)于一個(gè)很標(biāo)準(zhǔn)的四軸,那請(qǐng)把I值設(shè)成大于零的最小值。如果不是,I太小結(jié)果是四軸的錯(cuò)誤姿態(tài)沒法及時(shí)糾正,如果太大,四軸則會(huì)進(jìn)入嚴(yán)重的低速振動(dòng)。
3.D值能大就大,因?yàn)镈大一些,P也能大一些,總體更穩(wěn)定。但傳感器會(huì)因?yàn)槎秳?dòng)產(chǎn)生有害數(shù)據(jù),D太大會(huì)把有害數(shù)據(jù)放大,造成四軸莫名的抖動(dòng)。 |
|
|