• <rt id="2wkqu"><small id="2wkqu"></small></rt>
  • 您當前的位置 :環(huán)球傳媒網(wǎng)>科技 > 正文
    自動駕駛中的控制PID控制是什么?
    2020-07-24 13:45:55 來源:旺材自動駕駛 編輯:

    在閱讀本文之前,我們需要知道,汽車控制如同人類駕駛員駕駛自己車輛一樣,那么當你熟悉前方道路的時候你如何控制你的車輛? 顯然,如果你不是專業(yè)的賽車手的話,你無法做到精準的控制,你需要一邊觀察車輛相對于你想要開的路線的相對偏差,一邊調(diào)整你的方向盤的角度和油門踏板的力度,這種基于環(huán)境反饋的控制我們稱為反饋控制 。反饋控制是現(xiàn)代控制理論的基礎,反饋控制的一般思路如下:

    那么我們希望無人車能夠按照我們希望的路徑行駛,我們會將環(huán)境當前給我們的反饋和參考線進行比較,得到我們當前偏離參考線的距離誤差),基于這個誤差,設計一定的算法來產(chǎn)生輸出信號,使得這個誤差不斷的變小,這樣的過程就是反饋控制的一般過程。那么我們?nèi)绾位谶@個誤差來產(chǎn)生控制指令呢?其中最直觀的感覺就是要讓誤差在我們的控制下逐漸變小直到為0:

    為了了解反饋控制,接下來先向大家介紹 PID控制,PID控制是目前利用最為廣泛的控制理論,我們以它為出發(fā)點討論控制理論。

    PID控制

    簡單來說,PID就是指 比例(proportion)、積分(integral)、導數(shù)(derivative),這三項表示如何使用誤差來產(chǎn)生控制指令,整個流程如下:

    首先是根據(jù)反饋和參考值求出誤差,這里的誤差根據(jù)具體的情況可以是各種度量,比如說控制車輛按照指定的路徑形式,那么就是車輛當前位置和參考線的距離,控制車輛的速度在設定的值,那么就是當前速度和設定速度的差值,求出誤差以后,再根據(jù)誤差求比例,積分和微分三項,其中 KpKp , KiKi , 和 KdKd 是 三 項 的 系 數(shù) , 它 們 決 定 著 這 三 項 對 最 后 輸 出 的 影 響 的 比 重 。將 P,I,DP,I,D 三項求和作為最后的輸出信號。我們分別討論這三項的意義。

    P控制

    考慮一個簡單的情況,假設我們希望無人車按照圖中綠線行駛,但是我們的車在如圖所示的位置:

    那么我們要轉(zhuǎn)多少度角呢?如果都按照固定的角度轉(zhuǎn)(如下圖),那么車的軌跡將如圖中所示:

    那么顯然坐這樣的車是不舒服的。一個直觀的解決方法就是使用比例控制。如圖所示,當偏差大的時候,我們偏轉(zhuǎn)更多的角度,當偏差小的時候,則偏轉(zhuǎn)小一點。

    那么這就是P control(比例控制)這里我們使用 CTE(Cross Track Error) 作為偏差度量,CTE就是我們到參考線的距離。那么這個時候轉(zhuǎn)角就變成了:

    steering angle=Kp⋅e(t)

    其中的 e(t)e(t) 就是在t時刻的CTE,在P控制中系數(shù) KpKp 會直接影響到實際的控制效果,在合理的數(shù)值范圍內(nèi) KpKp 越大控制的效果越好(越快速的回到參考線附近),但是,當本身位置和參考線相距很遠且 KpKp 系數(shù)較大的時候,就會出現(xiàn)車輛失去控制的情況:

    所以說,如果 KpKp 參數(shù)設計合理的話,P控制要比固定控制要更好,但是還是不能控制的很 好,因為P控制的車輛容易0值的影響。

    此時車輛雖然在參考線上,但是并不是我們希望的狀態(tài)(它在下一刻就會偏離),但是對于P控制而 言 , 這 是 理 想 狀 態(tài) , 此 時 控 制 轉(zhuǎn) 角 為 0, 因 此 , P 控 制 會 一 次 又 一 次 的 超 過 參 考 線 (overshot),為了矯正這種overshot,我們需要考慮一個額外的誤差項——CTE變化率。

    PD控制

    CTE的變化率描述了我們的無人車向著參考線方向移動的有多快,如果我們的無人車一直都完美的在參考線上運動的話,那么我們的CTE變化率就為0。那么這一項(描述誤差的變化率)就可以用導數(shù)來表示,那么,現(xiàn)在我們的控制輸出就變成了比例項和導數(shù)項求和的形式:

    steering angle=Kp⋅e+Kdd e(t)dt

    其中的 KdKd 就是導數(shù)項的系數(shù),它的大小決定了CTE變化率對于反饋控制的影響。

    此時我們的控制叫做PD控制,在PD控制中,我們有兩個系數(shù)需要調(diào)整,直觀上來看,增大 PP 系數(shù)將會增大無人車向著參考線方向運動的傾向;增大 DD 系數(shù)將會增大無人車快速向參考線方向的運動的“抵抗力”從而使得向參考線方向的運動變得更加平滑。使用過大的 PP 系數(shù),過小的 DD 系數(shù)的系統(tǒng)我們稱之為 欠阻尼的(underdamped),這種情況的無人車將沿著參考線震蕩前進,反之,如果P系數(shù)過小,D系數(shù)過大,那么我們稱之為 過阻尼的(overdamped),這將使得無人車要較長的時間才能糾正其誤差。合適地選擇 PP,DD參數(shù)可以使無人車能快速回到參考線上的同時很好的維持在參考線上運動。

    PD控制似乎已經(jīng)能夠勝任良好的反饋控制了,但其實還不夠,PD控制器可以保證正常的控制的 需求,但是當環(huán)境存在擾動的時候,比如說下面這種情況:

    車在受力發(fā)生輕微偏移以后,由于PD控制中下 PP 項傾向于向參考線方向運動,而 DD 項則嘗試抵消這種傾向,造成無人車始終都無法沿著參考線運動,這個問題叫做 steady state error 為了解決這個問題,我們再引入一項—— 積分項。

    PID控制

    我們將積分項也就如到我們的控制輸出函數(shù)中,這個時候,無人車的轉(zhuǎn)角就可以表示為:

    steering angle=Kp⋅e+Kdd e(t)dt+Ki∫0te(t)dt

    其中 KiKi 就是積分項系數(shù),積分項在我們這個例子中其實很好理解,本質(zhì)就是車的實際路線到參考線的圖形的面積,加入積分項以后,控制函數(shù)會盡可能使車輛路線的積分盡可能小(也就是使車輛路線和實際運動參考線之間形成的形狀的面積盡可能小),那么也就避免了steady state這種情況了。

    同樣的,這里的積分項系數(shù)的大小也會影響我們整個控制系統(tǒng)的穩(wěn)定性,過大的 KiKi 會使控制系統(tǒng)“震蕩”地運行,過小的 KiKi 又會使控制的車輛在遇到擾動以后(處于steady state)要很久才能回到參考線上,這在某些情況下勢必會使車輛處于一個危險的境況。

    PID控制就是由這三項共同決定的,還有其他應用于無人駕駛汽車的高級控制算法,但是他們都和我們介紹的PID控制的原理相似。

    我們發(fā)現(xiàn)其實PID實現(xiàn)確實不難,但是三個系數(shù)的選擇卻很難,我們可以在我們的控制循環(huán)中通過一定的算法不斷嘗試。

    關鍵詞: 自動駕駛

    分享到:
    版權和免責申明

    凡注有"環(huán)球傳媒網(wǎng)"或電頭為"環(huán)球傳媒網(wǎng)"的稿件,均為環(huán)球傳媒網(wǎng)獨家版權所有,未經(jīng)許可不得轉(zhuǎn)載或鏡像;授權轉(zhuǎn)載必須注明來源為"環(huán)球傳媒網(wǎng)",并保留"環(huán)球傳媒網(wǎng)"的電頭。

    Copyright ? 1999-2017 cqtimes.cn All Rights Reserved 環(huán)球傳媒網(wǎng)-重新發(fā)現(xiàn)生活版權所有 聯(lián)系郵箱:8553 591@qq.com
    久久激情五月网站,一本色道综合亚洲精品精品,午夜电影久久久久久,中文无码AV片在线 成a在线观看视频播放 婷婷色中文在线观看
  • <rt id="2wkqu"><small id="2wkqu"></small></rt>