前饋-改進(jìn)PID算法在智能車控制上的應(yīng)用
1 引言
智能車系統(tǒng)是一個(gè)時(shí)變且非線性的系統(tǒng),采用傳統(tǒng)PID算法的單一的反饋控制會(huì)使系統(tǒng)存在不同程度的超調(diào)和振蕩現(xiàn)象,無法得到理想的控制效果。本文將前饋控制引入到了智能車系統(tǒng)的控制中,有效地改善了系統(tǒng)的實(shí)時(shí)性,提高了系統(tǒng)的反應(yīng)速度[1];并且根據(jù)智能車系統(tǒng)的特點(diǎn),對數(shù)字PID算法進(jìn)行了改進(jìn),引入了微分先行和不完全微分環(huán)節(jié),改善了系統(tǒng)的動(dòng)態(tài)特性;同時(shí),利用模糊控制具有對參數(shù)變化不敏感和魯棒性強(qiáng)的特點(diǎn)[2],本文將模糊算法與PID算法相結(jié)合,有效地提高了智能車的適應(yīng)性和魯棒性,改善了系統(tǒng)的控制性能。
2 改進(jìn)PID算法
智能車的控制是由飛思卡爾公司的S12芯片完成,所以對智能車的控制要采用計(jì)算機(jī)控制方法。本文針對智能車控制的特殊性,對傳統(tǒng)數(shù)字PID算法做了一些改進(jìn),這樣可以更好地滿足智能車控制的需要。
2.1不完全微分PID
將微分環(huán)節(jié)引入智能車的方向和速度控制,明顯地改善了系統(tǒng)的動(dòng)態(tài)性能,但對于誤差干擾突變也特別敏感,對系統(tǒng)的穩(wěn)定性有一定的不良影響。為了克服上述缺點(diǎn),本文在PID算法中加入了一階慣性環(huán)節(jié)[3] ,不完全微分PID算法結(jié)構(gòu)如圖1所示。
圖1 不完全微分PID算法機(jī)構(gòu)圖
將一階慣性環(huán)節(jié)直接加到微分環(huán)節(jié)上,可得到系統(tǒng)的傳遞函數(shù)為:
(1)
將(1)式的微分項(xiàng)推導(dǎo)并整理,得到方程如下:
(2)
式中, ,由系統(tǒng)的時(shí)間常數(shù) 和一階慣性環(huán)節(jié)時(shí)間常數(shù) 決定的一個(gè)常數(shù)。
為了編程方便,可以將2-2式寫成如下形式:
(3)
式中,。
分析式(3)可知,引入不完全微分以后,微分輸出在第一個(gè)采樣周期內(nèi)被減少了,此后又按照一定比例衰減[3][4]。實(shí)驗(yàn)表明,不完全微分有效克服了智能車的偏差干擾給速度控制帶來的不良影響,具有較好的控制效果。圖2為不完全微分PID算法的程序流程圖。
2.2 微分先行PID
由于智能車在跑道上行駛時(shí),經(jīng)常會(huì)遇到轉(zhuǎn)彎的情況,所以智能車的速度設(shè)定值和方向設(shè)定值都會(huì)發(fā)生頻繁的變化,從而造成系統(tǒng)的振蕩。為了解決設(shè)定值的頻繁變化給系統(tǒng)帶來的不良影響,本文在智能車的速度和方向控制上引入了微分先行PID算法,其特點(diǎn)是只對輸出量進(jìn)行微分,即只對速度測量值和舵機(jī)偏轉(zhuǎn)量進(jìn)行微分,而不對速度和方向的設(shè)定值進(jìn)行微分。這樣,在設(shè)定值發(fā)生變化時(shí),輸出量并不會(huì)改變,而被控量的變化相對是比較緩和的,這就很好地避免了設(shè)定值的頻繁變化給系統(tǒng)造成的振蕩,明顯地改善了系統(tǒng)的動(dòng)態(tài)性能。
圖3是微分先行PID控制的結(jié)構(gòu)圖,微分先行的增量控制算式如下。
(4)
圖2 不完全微分PID算法的程序流程圖
評論