1 引言
智能車系統是一個時變且非線性的系統,采用傳統PID算法的單一的反饋控制會使系統存在不同程度的超調和振蕩現象,無法得到理想的控制效果。本文將前饋控制引入到了智能車系統的控制中,有效地改善了系統的實時性,提高了系統的反應速度[1];并且根據智能車系統的特點,對數字PID算法進行了改進,引入了微分先行和不完全微分環節,改善了系統的動態特性;同時,利用模糊控制具有對參數變化不敏感和魯棒性強的特點[2],本文將模糊算法與PID算法相結合,有效地提高了智能車的適應性和魯棒性,改善了系統的控制性能。
2 改進PID算法
智能車的控制是由飛思卡爾公司的S12芯片完成,所以對智能車的控制要采用計算機控制方法。本文針對智能車控制的特殊性,對傳統數字PID算法做了一些改進,這樣可以更好地滿足智能車控制的需要。
2.1不完全微分PID
將微分環節引入智能車的方向和速度控制,明顯地改善了系統的動態性能,但對于誤差干擾突變也特別敏感,對系統的穩定性有一定的不良影響。為了克服上述缺點,本文在PID算法中加入了一階慣性環節[3] ,不完全微分PID算法結構如圖1所示。
817489f313ac7cc125d4b8392d940470.jpg (7.12 KB, 下載次數: 39)
下載附件
2016-8-11 16:58 上傳
圖1 不完全微分PID算法機構圖
將一階慣性環節直接加到微分環節上,可得到系統的傳遞函數為:
4c2c1a33acee7fbd75f4e967071909e6.jpg (3.93 KB, 下載次數: 45)
下載附件
2016-8-11 16:58 上傳
(1)
將(1)式的微分項推導并整理,得到方程如下:
95c2220aa21ef252183617de4961e9d7.jpg (3.22 KB, 下載次數: 32)
下載附件
2016-8-11 16:58 上傳
(2)
式中, ,由系統的時間常數 和一階慣性環節時間常數 決定的一個常數。
為了編程方便,可以將2-2式寫成如下形式:
65f3464e329b4c936300e513f711723d.jpg (4.5 KB, 下載次數: 38)
下載附件
2016-8-11 16:58 上傳
(3)
式中,
568bdd8067736b5b3555cb6fb746200f.jpg (2.48 KB, 下載次數: 38)
下載附件
2016-8-11 16:58 上傳
。
分析式(3)可知,引入不完全微分以后,微分輸出在第一個采樣周期內被減少了,此后又按照一定比例衰減[3][4]。實驗表明,不完全微分有效克服了智能車的偏差干擾給速度控制帶來的不良影響,具有較好的控制效果。圖2為不完全微分PID算法的程序流程圖。
2.2 微分先行PID
由于智能車在跑道上行駛時,經常會遇到轉彎的情況,所以智能車的速度設定值和方向設定值都會發生頻繁的變化,從而造成系統的振蕩。為了解決設定值的頻繁變化給系統帶來的不良影響,本文在智能車的速度和方向控制上引入了微分先行PID算法,其特點是只對輸出量進行微分,即只對速度測量值和舵機偏轉量進行微分,而不對速度和方向的設定值進行微分。這樣,在設定值發生變化時,輸出量并不會改變,而被控量的變化相對是比較緩和的,這就很好地避免了設定值的頻繁變化給系統造成的振蕩,明顯地改善了系統的動態性能。
圖3是微分先行PID控制的結構圖,微分先行的增量控制算式如下。
6e7fc7c02f0f92d622ddac493dfc153e.jpg (5.26 KB, 下載次數: 42)
下載附件
2016-8-11 16:58 上傳
(4)
f4667bb8acea9c216a5ad00e934cd57d.jpg (19.48 KB, 下載次數: 33)
下載附件
2016-8-11 16:58 上傳
圖2 不完全微分PID算法的程序流程圖
378ded305407b07f91d5a675c3a5ebbd.jpg (4.75 KB, 下載次數: 51)
下載附件
2016-8-11 16:59 上傳
圖3 微分先行PID控制結構圖
3 前饋控制的應用
由于智能車的跑道寬度有限制,所以在經過急轉彎的時候,如果速度和方向控制不及時,智能車就可能沖出跑道。由于前饋控制是開環控制,所以前饋控制的響應速度很快。將前饋控制引入到智能車的控制中,能夠提高舵機和伺服電機的反應速度,改善智能車系統的動態性能。
3.1 智能車控制系統結構
智能車的控制主要體現在兩個方面:一方面是方向的控制,也就是對舵機的控制;另一方面是對速度的控制,也就是對伺服電機的控制。舵機的數學模型較為簡單,具有很好的線性特征,只采用前饋控制;智能車的速度控制相對復雜一些,速度模型無法準確建立,采用前饋-改進PID算法進行控制。智能車的控制系統結構如圖4所示。
圖4中, 和 分別是舵機和伺服電機數學模型。從圖中可以看出,智能車的方向控制和速度控制是相互獨立的,而且它們都是由路線偏差決定的。舵機轉角與路線偏差之間的對應關系是根據舵機的數學模型得到的,在速度控制回路中,既包括反饋回路,又包括前饋環節,伺服電機的控制量是在前饋補償基礎上,再由增量式PID算法計算得到。
055915489dac49834c4a4ecf18f27c1c.jpg (6.04 KB, 下載次數: 43)
下載附件
2016-8-11 16:59 上傳
圖4 智能車的控制系統結構
3.2 在方向控制中的應用
智能車對方向的控制有兩點要求:在直道上,方向保持穩定;在轉彎處,需要方向變化準確而且迅速。只有這樣,才能保證智能車在跑道上高速、穩定地運行。為了提高方向控制的魯棒性,本文還對路線偏差進行了模糊化處理。圖5是智能車方向模糊前饋控制的結構圖,圖中和分別是直道和彎道兩種情況下的前饋控制函數。
圖5 智能車方向控制系統結構圖
3.3 在速度控制中的應用
為了使智能車在直道上以較快速度運行,在轉彎時,防止智能車沖出跑道,則必須將智能車的速度降低,這就要求智能車的速度控制系統具有很好的加減速性能。當智能車經過連續轉彎的跑道時,路線偏差的頻繁變化會造成速度設定的頻繁變化,這會引起速度控制系統的振蕩,并且微分環節對誤差突變干擾很敏感,容易造成系統的不穩定。為了解決上述存在的問題,本文對數字PID算法進行了改進,將不完全微分和微分先行引入到PID算法中,大大改善了速度控制系統的動態性能。
圖6 智能車速度控制系統結構圖
圖6是智能車速度控制系統結構圖。由于賽道路況和智能車的姿態會經常變化,所以速度控制系統的模型也是不定的,為了提高系統的適應性,本文速度控制系統中采用了模糊PID算法。將速度設定和實際速度進行模糊分檔[5][6],通過調試得到不同情況下相對最優的PID參數,保證了速度控制系統在不同情況下都有較好的控制效果。
4 結論
本文提出的前饋-改進PID算法是智能車控制的有效方法,該算法使智能車系統不僅具有很好的動態性能和反應速度,而且改善了系統的適應性和魯棒性,使智能車能夠在不同的跑道上以較快的速度運行。實驗表明:本文提出的控制算法有效地提高了智能車的性能,在同樣的跑道上運行時,采用了新算法的智能車比采用傳統PID算法反饋控制的智能車的速度有所提高,運行一圈的時間平均減少了3.2秒,并且本文提出的算法也使智能車運行的穩定性得到改善,提高了智能車對跑道的適應性。該方法具有很好的應用前景。
|