什么是PID控制?
掃描二維碼
隨時隨地手機看文章
一、前言
在智能車競賽中,有很多環(huán)節(jié)需要通過軟件進行對車模運動進行精確控制。比如,車模與引導線之間的位置,就需要進行精確控制,放置車模走失。車模通過攝像頭檢測到黑色引導線在視野中的位置,距離設(shè)定的視野中心點之間,具有一定偏差。這個偏差可以通過車模兩個前輪之間的速度差來進行修正,也可以通過修改后輪的左右旋轉(zhuǎn)來進行修正。因此這里就會引入一個重要的控制思路,那就是反饋控制。也就是利用偏差來修正車模的運動參數(shù)進而減少偏差。今天給大家介紹的一個最經(jīng)典的反饋控制方法,那就是 PID 反饋控制。通過理解它,便于大家理解給定的參考例程軟件,并進一步優(yōu)化。
二、反饋調(diào)節(jié)
以車模與引導線之間的偏差調(diào)節(jié)為例,說明PID反饋控制的概念。這里的車模,就是我們控制的對象系統(tǒng)。它有輸入和輸出信號。對于位置控制來說,兩個前輪的速度差,就是車模位置的輸入信號。?引導線在車模攝像頭視野中心的偏差,就是系統(tǒng)的輸出信號。為了確保車模始終沿著引導線前行,通常設(shè)定這個偏差為 0。利用比較圖像中測量到的偏差與設(shè)定值之間的差別,通過某種算法來修正兩個前輪的差速,進而使得偏差恢復到與設(shè)定值相同。也就是無偏差。PID 就是一種常見到的調(diào)節(jié)方法。
為了說明負反饋調(diào)節(jié)的概念,這里先舉一個乒乓控制的策略。如果發(fā)現(xiàn)車模偏差大于0,表示靠左,則提高車模左輪的轉(zhuǎn)速,降低右輪的轉(zhuǎn)速,使得差速為大于0的一個常數(shù),車模便會往右轉(zhuǎn)向。當車模往右轉(zhuǎn)向使得偏差小于0,表示偏向右方了。則將差速設(shè)定為小于 0 的 一個常數(shù)。此時車模便會往左旋轉(zhuǎn),進而減小偏差。這個乒乓控制策略比較簡單,但是最大的一個問題,就是車模在行進的過程中會左右搖擺,嚴重影響行進的速度。那么,是否可以改變控制策略能夠使得這個過程變得平滑,并且最終誤差趨于 0 嗎?這就需要引入經(jīng)典的 PID控制。
三、PID控制
關(guān)于PID 控制的說明,在網(wǎng)絡(luò)上有很多資料,大家可以通過網(wǎng)絡(luò)自行學習,?這里給出他的一些基本概念。PID實際上是比例、積分、和微分的英文首字母的縮寫詞,?它表示,對系統(tǒng)的反饋誤差信號,分別通過比例放大、 積分、以及微分運算之后,然后在通過一個加權(quán)系數(shù)將它們合并在一起,形成車模轉(zhuǎn)向的控制量,進而去消除誤差。
相比與乒乓控制,通過將誤差乘以一個比例系數(shù)作為控制量,可以避免車模左右劇烈搖擺。將誤差進行積分,可以有效消除殘存的車模偏移。微分則可以有效抑制調(diào)節(jié)的過沖,它是犧牲一部分快速響應(yīng)來獲得穩(wěn)定的效果。對于車模方向控制,由于方向本身就是對差速的積分,所以,通過左右輪進行差速控制的時候,常常只需使用比例和微分就可以了。不需要再引入積分,否則就有可能使得方向控制產(chǎn)生劇烈的過沖。
四、效果演示
為了更加直觀的展示 PID 控制規(guī)律,這里通過 CSDN 上的一個博文中的動圖來說明 PID 各個參數(shù)的作用。在這個直立的木板上,最左邊的旋鈕是一個設(shè)定位置的電位器,緊接著右邊也是一個電位器,它的位置是由上面電機的輸出軸帶動。反應(yīng)了電機的輸出軸的角度。電機的旋轉(zhuǎn)電壓是通過對比設(shè)定電位器與檢測電位器之間的電壓差值經(jīng)過 PID 調(diào)節(jié)來決定的。右邊三個電位器分別可成設(shè)定 PID 的三個加權(quán)系數(shù)的大小。由于控制電機的電壓決定了電機的轉(zhuǎn)速,對應(yīng)的位置是對轉(zhuǎn)速的積分,這一點與智能車的兩個前輪的差速,經(jīng)過積分之后,轉(zhuǎn)變成方向的偏差是一樣的?,F(xiàn)在只是進行 比例調(diào)節(jié),可以看到電機的角度跟隨設(shè)定旋鈕的變化,效果是非常良好的。
▲ 圖1.4.1 加入微分,可以消除震蕩
接下來,增加了積分部分,此時,明顯可以看到電機的輸出角度跟隨設(shè)定電位器的速度增加,但也出現(xiàn)了明顯的震蕩。這是因為誤差的積分,再疊加上電機角度對轉(zhuǎn)速的積分,使得反饋出現(xiàn)了過沖。如果此時,增加 微分系數(shù),可以看到它降低了電機角度跟隨設(shè)定電位器的速度,但是明顯抑制了震蕩現(xiàn)象,提高了控制的穩(wěn)定性。這一點,對于車模方向控制也是非常重要的。
※ 總 結(jié) ※
本文結(jié)合智能車方向控制,介紹了 PID 控制的基本概念,這個調(diào)節(jié)概念也可以應(yīng)用于速度、位置等其它運動量的控制。利用動圖演示了 PID 三個參數(shù)在具有積分特性的控制對象上所產(chǎn)生的效果?;诖耍蠹铱梢赃M一步優(yōu)化智能車控制程序。