王茂勵(lì),段 杰,唐勇偉,趙景波,姜 巖
我國是一個(gè)農(nóng)業(yè)大國,農(nóng)業(yè)人口眾多,但農(nóng)業(yè)發(fā)展水平與西方的一些發(fā)達(dá)國家還有著很大差距。隨著科學(xué)技術(shù)的迅速發(fā)展,現(xiàn)代農(nóng)業(yè)的發(fā)展也在日益興起,農(nóng)業(yè)機(jī)械化程度對(duì)農(nóng)業(yè)發(fā)展水平的影響正在日益加深。
發(fā)展精準(zhǔn)農(nóng)業(yè)是實(shí)現(xiàn)現(xiàn)代農(nóng)業(yè)的前提,農(nóng)機(jī)的自動(dòng)導(dǎo)航系統(tǒng)又是精準(zhǔn)農(nóng)業(yè)的重要一步,自動(dòng)轉(zhuǎn)向控制系統(tǒng)又是自動(dòng)導(dǎo)航系統(tǒng)中的關(guān)鍵一環(huán)。在自動(dòng)轉(zhuǎn)向控制系統(tǒng)中,控制算法的選擇、設(shè)計(jì)及優(yōu)化的好壞,直接影響農(nóng)機(jī)的作業(yè)精度[1-3]。PID控制算法是一種最為常用的控制算法,可以從根本上擺脫系統(tǒng)建模,只需要依據(jù)被控對(duì)象的一些響應(yīng)特征來組合控制模塊,控制過程簡單且穩(wěn)態(tài)性好[4-6]。模糊控制亦不依賴于控制模型,而是根據(jù)人們的工作經(jīng)驗(yàn),對(duì)于被控對(duì)象進(jìn)行簡單的模糊處理,但與此同時(shí)影響了控制精度[7-8]。
在此基礎(chǔ)上,將PID算法與模糊控制巧妙地結(jié)合起來,能夠互補(bǔ)利弊,會(huì)使整個(gè)控制系統(tǒng)獲得更加良好的性能,增加系統(tǒng)的靈活性和精確性,可在播種或者收割等工作中加以應(yīng)用[9]。
農(nóng)機(jī)的自動(dòng)轉(zhuǎn)向控制系統(tǒng)由導(dǎo)航控制器、轉(zhuǎn)向控制器、轉(zhuǎn)向驅(qū)動(dòng)器、農(nóng)機(jī)轉(zhuǎn)向系統(tǒng)以及轉(zhuǎn)角測(cè)量模塊幾部分組成,如圖1所示。其工作原理為:在農(nóng)機(jī)的導(dǎo)航控制系統(tǒng)中計(jì)算出農(nóng)機(jī)的目標(biāo)轉(zhuǎn)角后,通過CAN總線將目標(biāo)轉(zhuǎn)角的值傳遞給下位機(jī);轉(zhuǎn)向控制器通過目標(biāo)轉(zhuǎn)向角和目前車輪的轉(zhuǎn)角差值及轉(zhuǎn)角差值變化率的不同,結(jié)合轉(zhuǎn)向控制算法,控制液壓驅(qū)動(dòng)器來實(shí)時(shí)調(diào)節(jié)比例閥的方向和開度,驅(qū)動(dòng)農(nóng)機(jī)轉(zhuǎn)向系統(tǒng)工作,最終完成農(nóng)機(jī)的自動(dòng)轉(zhuǎn)向功能[10]。將農(nóng)機(jī)自動(dòng)轉(zhuǎn)向系統(tǒng)的控制過程用二階傳遞函數(shù)表示為
(1)
其中,R(s)即目標(biāo)轉(zhuǎn)角,Y(s)即轉(zhuǎn)向角,e、c、d均為待定參數(shù)。
PID控制算法的表達(dá)式為
(2)
u(k)=
其中,k為采樣次數(shù);u(k)為第k次采樣時(shí)輸出的值;e(k)為第k次采樣時(shí)輸入的偏差值。由式(3)可以推出
Δu(k)=u(k)-u(k-1)=
KP[e(k)-e(k-1)]+KIe(k)-
KD[e(k)-2e(k-1)+e(k-2)]=
KPΔe(k)+KIe(k)+KD[Δe(k)-Δe(k-1)]
(4)
此時(shí)得到的Δu(k)就是增量型PID控制算法的表達(dá)式。在采樣中,只要確定了ΔKP、ΔKI、ΔKD這3個(gè)參數(shù)的值,使用3次的測(cè)量偏差從而求出控制量的增量。
圖1 自動(dòng)轉(zhuǎn)向控制系統(tǒng)結(jié)構(gòu)圖Fig.1 Automatic steering control system
模糊PID控制系統(tǒng)的原理就是運(yùn)用模糊數(shù)學(xué)的理論和方法,把模糊控制規(guī)則以模糊集的形式表示出來,根據(jù)被控對(duì)象的實(shí)際響應(yīng)情況運(yùn)用模糊推理,實(shí)現(xiàn)對(duì)PID參數(shù)在不同時(shí)間不同狀態(tài)下的最佳調(diào)整,實(shí)現(xiàn)最優(yōu)控制。系統(tǒng)的結(jié)構(gòu)圖如圖2所示。
圖 2 模糊PID控制系統(tǒng)結(jié)構(gòu)圖Fig.3 Fuzzy PID control system structure diagram
此設(shè)計(jì)將模糊PID控制器的輸入定為轉(zhuǎn)向角偏差e(t)和偏差變化率ec(t),輸出則為模糊控制器經(jīng)過模糊規(guī)則推理得到的ΔKP、ΔKI、ΔKD。系統(tǒng)在線實(shí)時(shí)改變的參數(shù)的值為KP+ΔKP、KI+ΔKI、KD+ΔKD,實(shí)現(xiàn)了PID控制算法中參數(shù)的自整定環(huán)節(jié)。此時(shí),參數(shù)模糊自整定PID控制的計(jì)算量非常小,并且被控對(duì)象的動(dòng)、靜態(tài)性能也有所提高。
PID參數(shù)自整定的主要思路就是找出PID算法當(dāng)中的3個(gè)參數(shù)與轉(zhuǎn)向角偏差e(t)和偏差變化率ec(t)之間的模糊聯(lián)系。當(dāng)農(nóng)機(jī)在田間行走時(shí),控制器會(huì)不斷地檢測(cè)e(t)和ec(t)的值,且不斷地對(duì)檢測(cè)到的值和PID的3個(gè)參數(shù)進(jìn)行在線修改,從而滿足在不同環(huán)境中的e(t)和ec(t)對(duì)PID控制器的不同要求。農(nóng)機(jī)的自動(dòng)轉(zhuǎn)向控制系統(tǒng)的響應(yīng)輸出曲線如圖3所示。
圖 3 系統(tǒng)輸出響應(yīng)曲線Fig.3 The system outputs the response curve
分析圖3中的響應(yīng)曲線,可以總結(jié)出PID控制算法的3個(gè)參數(shù)與轉(zhuǎn)向角偏差e(t)和偏差變化率ec(t)的之間聯(lián)系:
1)當(dāng)輸出響應(yīng)處于圖中曲線的第 I 階段時(shí),|e(t)|的值較大,為了不讓開始時(shí)|e(t)|的值瞬間變大,從而導(dǎo)致微分溢出,應(yīng)該取較大的KP和較小的KD。這樣還可以提高轉(zhuǎn)向控制系統(tǒng)的響應(yīng)速度,還應(yīng)取KI=0以此來防止積分飽和。
2)當(dāng)輸出響應(yīng)處于圖中曲線的第 II 階段時(shí),|e(t)|和|ec(t)|的值都是中等大小,為了減小轉(zhuǎn)向控制系統(tǒng)的超調(diào),保證步進(jìn)電機(jī)的響應(yīng)速度,KP、KI和KD的值都不能取得太大,KP的值要取得較小,KI和KD的值要大小適中。
3)當(dāng)輸出響應(yīng)處于圖中曲線的第 III 階段時(shí),|e(t)|的值較小,為了使自動(dòng)轉(zhuǎn)向系統(tǒng)具有良好的穩(wěn)態(tài)性能,應(yīng)該增大KP和KI的數(shù)值。同時(shí),應(yīng)該適當(dāng)?shù)倪x取KD的值,以此來提高系統(tǒng)的抗干擾能力,其原則是:當(dāng)|Δe(t)|的值較小時(shí),KD的取值要大一些;當(dāng)|Δe(t)|值較大時(shí),KD取較小的數(shù)值。通常KD和KI的值都要取為中等大小。
根據(jù)上述分析可以得出:不確定的系統(tǒng)在常規(guī)控制作用下,誤差和誤差變化率e(t)和ec(t)的值越大,系統(tǒng)中的不確定量就越大。那么如果誤差e(t)和誤差變化率ec(t)越小,系統(tǒng)中的不確定量就越小。利用這個(gè)e(t)和ec(t)對(duì)系統(tǒng)不確定量的估計(jì),進(jìn)行對(duì)PID3個(gè)參數(shù)KP、KI和KD的調(diào)整計(jì)算。
在模糊PID控制器的設(shè)計(jì)過程中,每個(gè)輸入輸出量e(t)、ec(t)、KP、KI和KD都需進(jìn)行相應(yīng)模糊化的處理。其模糊子集為{NB(負(fù)大),NM(負(fù)中),NS(負(fù)小),ZO(零),PS(正小),PB(正大)},根據(jù)農(nóng)機(jī)自動(dòng)轉(zhuǎn)向控制系統(tǒng)的特點(diǎn),各個(gè)子集的隸屬函數(shù)均選取為高斯型隸屬函數(shù),其中心點(diǎn)分別為{-6,-4,-2,0,2,4,6},如圖4所示。
圖4 輸入輸出變量的隸屬度函數(shù)Fig.4 The membership function of the input and output variables
根據(jù)KP、KI和KD3個(gè)參數(shù)各自的作用以及它們之間的相互影響,建立KP、KI和KD的模糊控制規(guī)則表,如表1~表3所示。
根據(jù)KP、KI和KD這3個(gè)參數(shù)的模糊規(guī)則表以及每個(gè)模糊子集的隸屬度賦值表,應(yīng)用模糊規(guī)則來推理設(shè)計(jì)出的PID參數(shù)模糊矩陣表,將修正后的參數(shù)帶入式(5)~式(7),來完成對(duì)PID參數(shù)的在線自矯正。
(5)
(6)
(7)
通過模糊推理得到的輸出是一個(gè)模糊的集合,模糊的量是不可以直接控制對(duì)象的。解模糊化的過程就是把通過模糊化得到的模糊集轉(zhuǎn)化為確定的控制量的過程[9]。運(yùn)用合理的轉(zhuǎn)化方法,才能得到準(zhǔn)確的控制量去控制被控對(duì)象,這里我們采用了重心法,具體方法是先找到模糊隸屬函數(shù)曲線與坐標(biāo)軸的橫軸所圍成面積的重心,然后將這個(gè)重心看作成代表點(diǎn),最后計(jì)算出輸出范圍內(nèi)幾個(gè)連續(xù)點(diǎn)的重心,即
當(dāng)輸出變量為離散集時(shí),則為
表1 ΔKP模糊控制規(guī)則表Table 1 ΔKP fuzzy control rule Table
表2 ΔKI模糊控制規(guī)則表Table 2 ΔKI fuzzy control rul Table
表3 ΔKD模糊控制規(guī)則表Table 3 ΔKD fuzzy control rule Table
系統(tǒng)試驗(yàn)在山東省臨沂市郯城縣育新合作農(nóng)場中進(jìn)行,試驗(yàn)平臺(tái)為東方紅LX1204型拖拉機(jī),如圖5所示。試驗(yàn)將自動(dòng)導(dǎo)航控制系統(tǒng)安裝在東方紅拖拉機(jī)上,為了在拖拉機(jī)轉(zhuǎn)向時(shí)得到精確的數(shù)據(jù),將拖拉機(jī)的前輪支起騰空,這樣便消除了轉(zhuǎn)向時(shí)與地面產(chǎn)生的摩擦力,從而會(huì)更加直觀準(zhǔn)確的觀察其特征。
圖5 東方紅LX1204型拖拉機(jī)Fig.5 Oriental red LX1204 tractor
由圖6可以看出:采用模糊PID的控制方法控制農(nóng)機(jī)的轉(zhuǎn)向會(huì)使轉(zhuǎn)向系統(tǒng)的整個(gè)動(dòng)態(tài)性能得到顯著的改善。
圖6 系統(tǒng)仿真響應(yīng)曲線Fig.6 System simulation response curve
根據(jù)表4可以看出系統(tǒng)的響應(yīng)時(shí)間明顯縮短一倍以上,另外還對(duì)轉(zhuǎn)角進(jìn)行了實(shí)驗(yàn)。通過上位機(jī)向轉(zhuǎn)向控制器輸入不同的目標(biāo)轉(zhuǎn)向角控制指令,可以看出模糊PID控制算法能夠更快的控制拖拉機(jī)的自動(dòng)轉(zhuǎn)向,能夠更加精確的保證目標(biāo)角度在±1°以內(nèi)。
表4 轉(zhuǎn)角實(shí)驗(yàn)結(jié)果Table 4 Corner test results
設(shè)計(jì)了一種基于PID控制算法的模糊PID控制器,并且將其運(yùn)用到農(nóng)機(jī)的自動(dòng)轉(zhuǎn)向控制系統(tǒng)上,較好地結(jié)合了兩種算法的優(yōu)勢(shì)使轉(zhuǎn)向控制系統(tǒng)更加穩(wěn)定。在實(shí)物試驗(yàn)時(shí),運(yùn)用東方紅拖拉機(jī)進(jìn)行實(shí)物的演示,在MarLab的仿真過程中,分別將在PID控制下和在模糊PID控制下的相應(yīng)曲線進(jìn)行對(duì)比,在轉(zhuǎn)角試驗(yàn)中輸入不同的目標(biāo)值對(duì)農(nóng)機(jī)的轉(zhuǎn)角及響應(yīng)時(shí)間進(jìn)行記錄和分析。結(jié)果表明:此控制方法能夠在滿足農(nóng)機(jī)控制要求的基礎(chǔ)上將其優(yōu)化,具有更好的快速性和準(zhǔn)確性,響應(yīng)時(shí)間更短,穩(wěn)態(tài)誤差更小,是一種可靠且優(yōu)良的控制方法。