什么是PID控制?
掃描二維碼
隨時隨地手機看文章
一、前言
在智能車競賽中,有很多環(huán)節(jié)需要通過軟件進行對車模運動進行精確控制。比如,車模與引導線之間的位置,就需要進行精確控制,放置車模走失。車模通過攝像頭檢測到黑色引導線在視野中的位置,距離設定的視野中心點之間,具有一定偏差。這個偏差可以通過車模兩個前輪之間的速度差來進行修正,也可以通過修改后輪的左右旋轉來進行修正。因此這里就會引入一個重要的控制思路,那就是反饋控制。也就是利用偏差來修正車模的運動參數(shù)進而減少偏差。今天給大家介紹的一個最經(jīng)典的反饋控制方法,那就是 PID 反饋控制。通過理解它,便于大家理解給定的參考例程軟件,并進一步優(yōu)化。

二、反饋調節(jié)
以車模與引導線之間的偏差調節(jié)為例,說明PID反饋控制的概念。這里的車模,就是我們控制的對象系統(tǒng)。它有輸入和輸出信號。對于位置控制來說,兩個前輪的速度差,就是車模位置的輸入信號。?引導線在車模攝像頭視野中心的偏差,就是系統(tǒng)的輸出信號。為了確保車模始終沿著引導線前行,通常設定這個偏差為 0。利用比較圖像中測量到的偏差與設定值之間的差別,通過某種算法來修正兩個前輪的差速,進而使得偏差恢復到與設定值相同。也就是無偏差。PID 就是一種常見到的調節(jié)方法。

為了說明負反饋調節(jié)的概念,這里先舉一個乒乓控制的策略。如果發(fā)現(xiàn)車模偏差大于0,表示靠左,則提高車模左輪的轉速,降低右輪的轉速,使得差速為大于0的一個常數(shù),車模便會往右轉向。當車模往右轉向使得偏差小于0,表示偏向右方了。則將差速設定為小于 0 的 一個常數(shù)。此時車模便會往左旋轉,進而減小偏差。這個乒乓控制策略比較簡單,但是最大的一個問題,就是車模在行進的過程中會左右搖擺,嚴重影響行進的速度。那么,是否可以改變控制策略能夠使得這個過程變得平滑,并且最終誤差趨于 0 嗎?這就需要引入經(jīng)典的 PID控制。

三、PID控制
關于PID 控制的說明,在網(wǎng)絡上有很多資料,大家可以通過網(wǎng)絡自行學習,?這里給出他的一些基本概念。PID實際上是比例、積分、和微分的英文首字母的縮寫詞,?它表示,對系統(tǒng)的反饋誤差信號,分別通過比例放大、 積分、以及微分運算之后,然后在通過一個加權系數(shù)將它們合并在一起,形成車模轉向的控制量,進而去消除誤差。
相比與乒乓控制,通過將誤差乘以一個比例系數(shù)作為控制量,可以避免車模左右劇烈搖擺。將誤差進行積分,可以有效消除殘存的車模偏移。微分則可以有效抑制調節(jié)的過沖,它是犧牲一部分快速響應來獲得穩(wěn)定的效果。對于車模方向控制,由于方向本身就是對差速的積分,所以,通過左右輪進行差速控制的時候,常常只需使用比例和微分就可以了。不需要再引入積分,否則就有可能使得方向控制產(chǎn)生劇烈的過沖。

四、效果演示
為了更加直觀的展示 PID 控制規(guī)律,這里通過 CSDN 上的一個博文中的動圖來說明 PID 各個參數(shù)的作用。在這個直立的木板上,最左邊的旋鈕是一個設定位置的電位器,緊接著右邊也是一個電位器,它的位置是由上面電機的輸出軸帶動。反應了電機的輸出軸的角度。電機的旋轉電壓是通過對比設定電位器與檢測電位器之間的電壓差值經(jīng)過 PID 調節(jié)來決定的。右邊三個電位器分別可成設定 PID 的三個加權系數(shù)的大小。由于控制電機的電壓決定了電機的轉速,對應的位置是對轉速的積分,這一點與智能車的兩個前輪的差速,經(jīng)過積分之后,轉變成方向的偏差是一樣的?,F(xiàn)在只是進行 比例調節(jié),可以看到電機的角度跟隨設定旋鈕的變化,效果是非常良好的。
接下來,增加了積分部分,此時,明顯可以看到電機的輸出角度跟隨設定電位器的速度增加,但也出現(xiàn)了明顯的震蕩。這是因為誤差的積分,再疊加上電機角度對轉速的積分,使得反饋出現(xiàn)了過沖。如果此時,增加 微分系數(shù),可以看到它降低了電機角度跟隨設定電位器的速度,但是明顯抑制了震蕩現(xiàn)象,提高了控制的穩(wěn)定性。這一點,對于車模方向控制也是非常重要的。

※ 總 結 ※
本文結合智能車方向控制,介紹了 PID 控制的基本概念,這個調節(jié)概念也可以應用于速度、位置等其它運動量的控制。利用動圖演示了 PID 三個參數(shù)在具有積分特性的控制對象上所產(chǎn)生的效果。基于此,大家可以進一步優(yōu)化智能車控制程序。
