基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)_第1頁(yè)
基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)_第2頁(yè)
基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)_第3頁(yè)
基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)_第4頁(yè)
基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)摘要:闡述了一種基于自適應(yīng)模糊控制的拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng)。由PLC、電控開(kāi)關(guān)液壓閥和比例方向液壓閥組成自動(dòng)轉(zhuǎn)向控制系統(tǒng),設(shè)計(jì)了PD轉(zhuǎn)向控制算法;為提高拖拉機(jī)自動(dòng)導(dǎo)航的精度和穩(wěn)定性,提出了一種基于遺傳算法的自適應(yīng)模糊控制方法,采用遺傳算法在線(xiàn)優(yōu)化模糊控制規(guī)則以及輸出比例因子,既保留了傳統(tǒng)模糊控制的優(yōu)點(diǎn),又有效了改善了系統(tǒng)的控制品質(zhì);仿真和田間實(shí)驗(yàn)結(jié)果表明,該方法可以迅速消除跟蹤誤差,相應(yīng)速度快,超調(diào)小,系統(tǒng)工作穩(wěn)定,穩(wěn)態(tài)跟蹤誤差不超過(guò)10cm。關(guān)鍵詞:拖拉機(jī);模糊控制;遺傳算法;自動(dòng)導(dǎo)航;自適應(yīng)控制引言為提高農(nóng)用車(chē)輛自動(dòng)導(dǎo)航的精度和穩(wěn)定性,許多學(xué)者對(duì)其導(dǎo)航方法

2、進(jìn)行了研究。文獻(xiàn)111分別對(duì)線(xiàn)性模糊控制方法、模糊控制方法、最優(yōu)控制方法、神經(jīng)網(wǎng)絡(luò)控制方法以及純追蹤算法進(jìn)行了研究??傮w來(lái)說(shuō),目前對(duì)于自適應(yīng)導(dǎo)航控制方法研究較少。 模糊控制具有不依賴(lài)精確的數(shù)學(xué)模型、魯棒性好等特點(diǎn)。對(duì)于一個(gè)確定的模糊控制器,當(dāng)被控對(duì)象受到參數(shù)攝動(dòng)和外部干擾等不確定因素影響時(shí),仍可以保證系統(tǒng)最終趨于穩(wěn)定,但是會(huì)降低系統(tǒng)的控制品質(zhì),出現(xiàn)諸如振蕩加劇、過(guò)渡時(shí)間過(guò)長(zhǎng)等缺點(diǎn)。因此有必要研究自適應(yīng)模糊控制方法,在控制過(guò)程中的不同階段,對(duì)模糊控制器進(jìn)行自動(dòng)調(diào)整。拖拉機(jī)本身是一個(gè)具有大延遲、高度非線(xiàn)性以及時(shí)變性和不確定性的復(fù)雜系統(tǒng),而且農(nóng)田地況較差,輪胎和地面作用過(guò)程復(fù)雜,難以建立精確的數(shù)學(xué)模

3、型,因此應(yīng)避免運(yùn)用車(chē)輛模型進(jìn)行控制,但是也應(yīng)該充分挖掘車(chē)輛模型所蘊(yùn)含的車(chē)輛狀態(tài)信息,以改善導(dǎo)航系統(tǒng)性能。 本文提出一種基于遺傳算法的自適應(yīng)模糊控制算法,以RTK-DGPS為導(dǎo)航傳感器,構(gòu)建拖拉機(jī)自動(dòng)導(dǎo)航系統(tǒng),并進(jìn)行拖拉機(jī)田間自動(dòng)導(dǎo)航實(shí)驗(yàn)。1 拖拉機(jī)自動(dòng)導(dǎo)航控制系統(tǒng)研究平臺(tái)為福田雷沃FT704拖拉機(jī),前輪轉(zhuǎn)向,后輪驅(qū)動(dòng)。自動(dòng)導(dǎo)航控制系統(tǒng)如圖1所示。 圖1 導(dǎo)航控制系統(tǒng)系統(tǒng)采用分層控制策略,兩層之間通過(guò)CAN總線(xiàn)(ISO11783協(xié)議標(biāo)準(zhǔn))同信。PPC-3710GS型工控機(jī)作為上層控制器,通過(guò)串口接受RTK-DGPS輸出的GGA和VTG兩種數(shù)據(jù)格式(輸出頻率5Hz),獲取車(chē)輛的位置、航向和速度信息

4、,經(jīng)過(guò)導(dǎo)航控制算法輸出期望前輪轉(zhuǎn)角。KSC-10PLC作為下層控制器,實(shí)時(shí)采集角度傳感器數(shù)據(jù),獲取當(dāng)前前輪轉(zhuǎn)角,與期望轉(zhuǎn)角相比較,通過(guò)轉(zhuǎn)向控制算法,輸出功率PWM信號(hào)和功率開(kāi)關(guān)信號(hào),驅(qū)動(dòng)開(kāi)關(guān)閥和比例方向閥,實(shí)現(xiàn)前輪轉(zhuǎn)向動(dòng)作,并實(shí)時(shí)檢測(cè)壓力傳感器的輸出信號(hào),實(shí)現(xiàn)自動(dòng)駕駛模式和人工駕駛模式的自動(dòng)切換。2 基于遺傳算法的自適應(yīng)模糊導(dǎo)航控制器 采用拖拉機(jī)的橫向偏差E和航向偏差作為模糊控制器的輸入,輸出量為期望前輪轉(zhuǎn)角U。橫向偏差E基本論域選擇為-30cm,30cm,量化因子為Ke=0.5,航向偏差基本論域選擇為-15°,15°,量化因子為K=1,即兩輸入變量的模糊論域均為-15,1

5、5,同時(shí)令輸出變量的模糊論域與輸入相等。模糊控制器可以用解析式概括為12 U=-(E+(1-) (0,1) (1)其中,為規(guī)則修正因子,又稱(chēng)為加權(quán)因子。通過(guò)調(diào)整值,可以調(diào)整控制規(guī)則。這種基于解析式的模糊控制器可以將變量的基本論域劃分得很細(xì),不僅有利于提高控制精度,而且易于計(jì)算機(jī)實(shí)現(xiàn),避免了常規(guī)模糊控制器規(guī)則繁瑣的缺點(diǎn)。采用模擬生物進(jìn)化過(guò)程的遺傳算法對(duì)模糊控制的修正因子以及輸出比例因子進(jìn)行在線(xiàn)整定,以達(dá)到自適應(yīng)控制。控制算法原理如圖2所示。 圖2 基于GA的導(dǎo)航控制原理圖遺傳算法具有魯棒性強(qiáng)、并行搜索和群體尋優(yōu)等優(yōu)點(diǎn),是一種有效的參數(shù)優(yōu)化手段。其基本操作主要包括編碼、解碼、選擇、交叉和變異,設(shè)計(jì)

6、如下:(1)編碼和解碼考慮到拖拉機(jī)前輪轉(zhuǎn)向范圍為-25°,30°,模糊控制器輸出比例因子大小范圍選擇為Kµ0.2,1.67。編碼方式采用搜索能力較強(qiáng)的二進(jìn)制編碼,染色體是長(zhǎng)度為10位的二進(jìn)制串,占6位,Kµ占4位。相應(yīng)的解碼方式為 (2)式中 binrep()6位字符串表示的二進(jìn)制整數(shù) binrep(Kµ)4位字符串表示的二進(jìn)制整數(shù) (2)適應(yīng)度函數(shù)的構(gòu)造適應(yīng)度函數(shù)的選取直接影響GA的收斂速度以及能否找到最優(yōu)解。由于根據(jù)ITAE指標(biāo)設(shè)計(jì)的系統(tǒng)超調(diào)量小,阻尼適中,具有良好的動(dòng)態(tài)特性,而且在農(nóng)用車(chē)輛自動(dòng)導(dǎo)航中,橫向跟蹤偏差是衡量控制效果的首要指標(biāo),

7、故選擇橫向跟蹤偏的ITAE指標(biāo)的倒數(shù)為適應(yīng)度函數(shù),即為 (3)式中 y(t)t時(shí)刻的橫向跟蹤偏差,m在實(shí)際尋優(yōu)中,為提高算法運(yùn)算速度,保證控制的實(shí)時(shí)性,改進(jìn)為 (4)式中 t分段積分區(qū)間長(zhǎng)度,為0.1s Y(k)kt時(shí)刻的橫向跟蹤偏差,m 拖拉機(jī)前進(jìn)速度,m/s round對(duì)結(jié)果取整為計(jì)算適應(yīng)度函數(shù),采用簡(jiǎn)化的兩輪車(chē)運(yùn)動(dòng)學(xué)模型推算y(k),由于不考慮車(chē)輛離心力和側(cè)滑,兩輪車(chē)模型雖然在實(shí)際過(guò)程中不能完全精確描述車(chē)輛的運(yùn)動(dòng)狀態(tài),但是在很大程度上還是能夠反映車(chē)輛真實(shí)運(yùn)動(dòng)變化趨勢(shì)的。同時(shí)將液壓轉(zhuǎn)向系統(tǒng)簡(jiǎn)化為一階慣性環(huán)節(jié)13,以預(yù)定直線(xiàn)路徑為橫軸建立跟蹤坐標(biāo)系,前進(jìn)方向?yàn)闄M軸正方向,跟蹤起點(diǎn)橫坐標(biāo)為零,

8、則可得如圖3所示的非線(xiàn)性運(yùn)動(dòng)學(xué)模型為 圖3 兩輪車(chē)運(yùn)動(dòng)學(xué)模型 (5) 式中 x跟蹤距離,m v速度,m/s y橫向跟蹤偏差,m L軸距,m 航向跟蹤偏差,rad 前輪轉(zhuǎn)向角,rad 慣性時(shí)間常數(shù),s d期望前輪轉(zhuǎn)角,rad (3)選擇策略采用按適應(yīng)度比例分配的輪盤(pán)賭選擇法,即利用個(gè)體適應(yīng)度比例的概率決定其后代留存的可能。若個(gè)體i的適應(yīng)度為fi,則其被選中的概率為 (6) (4) 遺傳算子主要包括交叉和變異兩個(gè)遺傳算子。交叉算子采用單點(diǎn)交叉方式;變異算子,以變異概率對(duì)染色體的每個(gè)二進(jìn)制位進(jìn)行邏輯取反。遺傳算法的流程如圖4所示。 、Kµ參數(shù)編碼 隨機(jī)產(chǎn)生初始群體 解碼并計(jì)算適應(yīng)度 產(chǎn)生群

9、體 滿(mǎn)足終止條件? 選擇、交叉、變異 輸出、Kµ 圖4 基于GA的、Kµ參數(shù)優(yōu)化流程3 前輪轉(zhuǎn)向控制器由于KSC-10型PLC支持多任務(wù)運(yùn)行模式,所以將下層控制器的任務(wù)劃分為:任務(wù)1,按照ISO11783規(guī)定的時(shí)間周期向?qū)Ш娇刂破鲌?bào)告前輪轉(zhuǎn)角;任務(wù)2,負(fù)責(zé)前輪轉(zhuǎn)向控制以及駕駛模式的切換和上報(bào)。任務(wù)1的優(yōu)先級(jí)高于任務(wù)2。前輪自動(dòng)轉(zhuǎn)向控制是通過(guò)轉(zhuǎn)向控制算法輸出一定的功率型號(hào),控制比例閥門(mén)的開(kāi)度,通過(guò)調(diào)節(jié)流量來(lái)調(diào)節(jié)前輪的轉(zhuǎn)向速度,從而實(shí)現(xiàn)轉(zhuǎn)角的控制。本文采用位置式數(shù)字PD控制器實(shí)現(xiàn)前輪轉(zhuǎn)角控制,期望轉(zhuǎn)角與當(dāng)前轉(zhuǎn)角之差作為控制器輸入。轉(zhuǎn)向控制原理如圖5所示。 圖5 轉(zhuǎn)向控制結(jié)構(gòu)考慮

10、到比例方向閥有兩路PWM輸入,而且有700mA的電流死區(qū),控制算法改進(jìn)為 (7)式中 IpdPD算法輸出值 Kp比例系數(shù) ek當(dāng)前角度誤差 KD微分系數(shù) ek-1前一次角度誤差 Iout控制器最終輸出值Iout的正負(fù)極性分別代表左路和右路PWM輸入,相應(yīng)代表前輪的兩個(gè)轉(zhuǎn)動(dòng)方向。在轉(zhuǎn)向過(guò)程中的某一時(shí)刻,必然有一路PWM輸入需要置為0。4 算法與系統(tǒng)實(shí)驗(yàn)4.1 前輪轉(zhuǎn)向控制實(shí)驗(yàn)為盡可能考慮農(nóng)田地面狀況對(duì)前輪轉(zhuǎn)向控制的影響,找了一塊剛秋收后的玉米地進(jìn)行轉(zhuǎn)向控制實(shí)驗(yàn)。選擇頻率為0.2Hz,幅值為15°方波指令曲線(xiàn)和正弦指令曲線(xiàn)對(duì)轉(zhuǎn)向控制器進(jìn)行測(cè)試。經(jīng)過(guò)多次調(diào)試,當(dāng)Kp=250,KD=20時(shí),

11、轉(zhuǎn)向控制效果較佳。測(cè)試結(jié)果如圖6所示。 圖 6 指令曲線(xiàn)跟蹤 (a) 方波曲線(xiàn)跟蹤 (b) 正弦曲線(xiàn)跟蹤可見(jiàn),轉(zhuǎn)向控制系統(tǒng)可以較好地完成信號(hào)跟蹤任務(wù)。對(duì)于方波信號(hào),跟蹤一個(gè)30°的階躍信號(hào)(從-15°到15°或反之)大約需要1.21.4s,對(duì)于正弦波,跟蹤延遲約為0.20.4s,可滿(mǎn)足實(shí)際自動(dòng)導(dǎo)航需求。另外,在正負(fù)峰值處,跟蹤曲線(xiàn)并不完全對(duì)稱(chēng),這是由于左右轉(zhuǎn)向時(shí)執(zhí)行機(jī)構(gòu)參數(shù)不同造成的。4.2 導(dǎo)航控制算法仿真首先在Matlab環(huán)境下,采用式(5)所描述的兩輪車(chē)模型,對(duì)設(shè)計(jì)的自適應(yīng)導(dǎo)航控制算法進(jìn)行仿真驗(yàn)證,仿真程序采用M語(yǔ)言編寫(xiě)。運(yùn)動(dòng)學(xué)參數(shù)為:=2m/s,L=2.3

12、m,=0.1s。遺傳算法的種群大小為40,進(jìn)化代數(shù)為40代,交叉概率為0.6,變異概率為0.02.拖拉機(jī)初始狀態(tài)為3.5m,0.4rad,0.2rad,分別代表橫向偏差、航向偏差和前輪轉(zhuǎn)向偏差,導(dǎo)航控制周期為200ms。與之對(duì)比,常規(guī)模糊控制的規(guī)則因子選擇為0.6,輸出比例因子為1。仿真結(jié)果如圖7所示。 圖7 直線(xiàn)跟蹤仿真由圖可見(jiàn),基于GA的自適應(yīng)模糊控制與常規(guī)模糊控制相比,消除誤差的速度更快,幾乎沒(méi)有超調(diào)和振蕩,具有良好的動(dòng)態(tài)性能,在理論上是可行的。通過(guò)大量仿真發(fā)現(xiàn),在GA每步進(jìn)化中,基本不超過(guò)10代即可尋找到最優(yōu)解,其中一步的進(jìn)化過(guò)程如圖8所示 圖8 適應(yīng)度曲線(xiàn)另外,在拖拉機(jī)自動(dòng)導(dǎo)航過(guò)程中

13、,導(dǎo)航控制算法的實(shí)時(shí)性問(wèn)題也是必須考慮的問(wèn)題。將上述自適應(yīng)控制方法在工控機(jī)的Visual C +6.0環(huán)境下進(jìn)行驗(yàn)證,進(jìn)化代數(shù)設(shè)置為10代,經(jīng)統(tǒng)計(jì)發(fā)現(xiàn),美不優(yōu)化平均耗時(shí)10ms左右,與200ms的導(dǎo)航控制周期相比,其算法延時(shí)造成的影響可以忽略不計(jì)。4.3 田間自動(dòng)導(dǎo)航試驗(yàn)試驗(yàn)地點(diǎn)選擇在一塊秋收后的玉米地,地面顛簸不平。轉(zhuǎn)向控制器采用上述設(shè)計(jì)的數(shù)字PD控制器,拖拉機(jī)速度為2m/s左右,分別對(duì)常規(guī)模糊控制方法和基于GA的自適應(yīng)模糊控制方法進(jìn)行試驗(yàn),實(shí)驗(yàn)結(jié)果如圖9所示。 (a) (b) 圖9 自動(dòng)導(dǎo)航系統(tǒng)跟蹤(a)常規(guī)模糊控制 (b)基于GA的自適應(yīng)模糊控制由圖可見(jiàn),基礎(chǔ)常規(guī)模糊控制的直線(xiàn)跟蹤,存在

14、一定的超調(diào)和振蕩,穩(wěn)態(tài)時(shí)最大偏差為20cm左右,而基于自適應(yīng)模糊控制的直線(xiàn)跟蹤可以迅速消除橫向偏差,超調(diào)較小,振蕩也較小,穩(wěn)態(tài)時(shí)最大橫向偏差為10cm左右,跟蹤曲線(xiàn)變化相對(duì)平緩,具有良好的動(dòng)態(tài)特性。考慮到地面顛簸不平對(duì)GPS天線(xiàn)造成一定定位誤差情況下,這個(gè)跟蹤精度是可以接受的。5 結(jié)論(1)對(duì)電控液壓轉(zhuǎn)向機(jī)構(gòu)進(jìn)行了研究,設(shè)計(jì)的位置數(shù)字PD轉(zhuǎn)向控制器,具有良好的動(dòng)態(tài)性能,可以滿(mǎn)足農(nóng)業(yè)機(jī)械自動(dòng)導(dǎo)航的需求。(2)對(duì)拖拉機(jī)自動(dòng)導(dǎo)航控制算法進(jìn)行了研究,設(shè)計(jì)的基于遺傳算法的自適應(yīng)模糊控制器,可以顯著提高拖拉機(jī)自動(dòng)導(dǎo)航時(shí)的跟蹤精度,改善系統(tǒng)的控制品質(zhì)。 參考文獻(xiàn)1 Noguchi N,Will J,Reid

15、 J,et al. Development of a master-slave robot system for farm operationsJ. Computer and Electronics in Agriculture,2004,44(1):119.2 Kaizu Y,Yokoyama S,Imou K,et al. Vision-based navigation of a rice transplanter C/2004 CIGR International Confenrence,Vol.2,Beijing,2004:III 147.3周建軍,張漫.基于模糊控制的農(nóng)用車(chē)輛路線(xiàn)跟蹤

16、J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2009,40(4):151156.4周俊,姬長(zhǎng)英.視覺(jué)導(dǎo)航輪式移動(dòng)機(jī)器人橫向預(yù)測(cè)模糊控制J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2002,33(6):7679.5呂安濤,毛恩榮,宋正河,等.一種拖拉機(jī)自動(dòng)駕駛復(fù)合模糊控制方法J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2006,37(4): 1720.6呂安濤,宋正河,毛恩榮.拖拉機(jī)自動(dòng)轉(zhuǎn)向最優(yōu)控制方法的研究J.農(nóng)業(yè)工程學(xué)報(bào),2006,22(8):116 119.7朱忠祥,宋正河,謝斌,等.拖拉機(jī)隊(duì)列自動(dòng)控制系統(tǒng)J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2009,40(8):149154.8陳軍,朱忠祥,鳥(niǎo)巢諒,等.拖拉機(jī)沿曲線(xiàn)路徑的跟蹤控制J.農(nóng)業(yè)工程學(xué)報(bào),2006,22(11):108111

17、.9周俊,姬長(zhǎng)英,劉成良.農(nóng)用輪式移動(dòng)機(jī)器人視覺(jué)導(dǎo)航系統(tǒng)J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2005,36(3):9094.10陳軍,朱忠祥,鳥(niǎo)巢諒,等.基于神經(jīng)網(wǎng)絡(luò)的農(nóng)用車(chē)輛自動(dòng)跟蹤控制J.農(nóng)業(yè)機(jī)械學(xué)報(bào),2007,38(5): 131133.11張智剛,羅錫文.基于Kalman濾波和純追蹤模型的農(nóng)業(yè)機(jī)械導(dǎo)航控制J.農(nóng)業(yè)機(jī)械學(xué) 報(bào),2009,40(增 刊):612.12李士勇.模糊控制、神經(jīng)控制和智能控制論M.哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1998.13呂安濤.基于GPS/IMU的拖拉機(jī)自動(dòng)駕駛方法的研究D.北京:中國(guó)農(nóng)業(yè)大學(xué),2006. Matlab仿真代碼%fuzzy tunning PID control

18、clear all;clear all; a=newfis('fuzzpid'); a=addvar(a,'input','e',-3,3); %parameter ea=addmf(a,'input',1,'NB','zmf',-3,-1);a=addmf(a,'input',1,'NM','trimf',-3,-2,0);a=addmf(a,'input',1,'NS','trimf',-3,-1,1

19、);a=addmf(a,'input',1,'Z','trimf',-2,0,2);a=addmf(a,'input',1,'PS','trimf',-1,1,3);a=addmf(a,'input',1,'PM','trimf',0,2,3);a=addmf(a,'input',1,'PB','smf',1,3); a=addvar(a,'input','ec',-3,3

20、); %parameter eca=addmf(a,'input',2,'NB','zmf',-3,-1);a=addmf(a,'input',2,'NM','trimf',-3,-2,0);a=addmf(a,'input',2,'NS','trimf',-3,-1,1);a=addmf(a,'input',2,'Z','trimf',-2,0,2);a=addmf(a,'input',

21、2,'PS','trimf',-1,1,3);a=addmf(a,'input',2,'PM','trimf',0,2,3);a=addmf(a,'input',2,'PB','smf',1,3); a=addvar(a,'output','kp',-0.3,0.3); %parameter kpa=addmf(a,'output',1,'NB','zmf',-0.3,-0.1);a=ad

22、dmf(a,'output',1,'NM','trimf',-0.3,-0.2,0);a=addmf(a,'output',1,'NS','trimf',-0.3,-0.1,0.1);a=addmf(a,'output',1,'Z','trimf',-0.2,0,0.2);a=addmf(a,'output',1,'PS','trimf',-0.1,0.1,0.3);a=addmf(a,'outp

23、ut',1,'PM','trimf',0,0.2,0.3);a=addmf(a,'output',1,'PB','smf',0.1,0.3); a=addvar(a,'output','ki',-0.06,0.06); %parameter kia=addmf(a,'output',2,'NB','zmf',-0.06,-0.02);a=addmf(a,'output',2,'NM','t

24、rimf',-0.06,-0.04,0);a=addmf(a,'output',2,'NS','trimf',-0.06,-0.02,0.02);a=addmf(a,'output',2,'Z','trimf',-0.04,0,0.04);a=addmf(a,'output',2,'PS','trimf',-0.02,0.02,0.06);a=addmf(a,'output',2,'PM','trimf&

25、#39;,0,0.04,0.06);a=addmf(a,'output',2,'PB','smf',0.02,0.06); a=addvar(a,'output','kd',-3,3); %parameter kda=addmf(a,'output',3,'NB','zmf',-3,-1);a=addmf(a,'output',3,'NM','trimf',-3,-2,0);a=addmf(a,'output&#

26、39;,3,'NS','trimf',-3,-1,1);a=addmf(a,'output',3,'Z','trimf',-2,0,2);a=addmf(a,'output',3,'PS','trimf',-1,1,3);a=addmf(a,'output',3,'PM','trimf',0,2,3);a=addmf(a,'output',3,'PB','smf',1,3)

27、; rulelist=1 1 7 1 5 1 1; 1 2 7 1 3 1 1; 1 3 6 2 1 1 1; 1 4 6 2 1 1 1; 1 5 5 3 1 1 1; 1 6 4 4 2 1 1; 1 7 4 4 5 1 1; 2 1 7 1 5 1 1; 2 2 7 1 3 1 1; 2 3 6 2 1 1 1; 2 4 5 3 2 1 1; 2 5 5 3 2 1 1; 2 6 4 4 3 1 1; 2 7 3 4 4 1 1; 3 1 6 1 4 1 1; 3 2 6 2 3 1 1; 3 3 6 3 2 1 1; 3 4 5 3 2 1 1; 3 5 4 4 3 1 1; 3 6

28、3 5 3 1 1; 3 7 3 5 4 1 1; 4 1 6 2 4 1 1; 4 2 6 2 3 1 1; 4 3 5 3 3 1 1; 4 4 4 4 3 1 1; 4 5 3 5 3 1 1; 4 6 2 6 3 1 1; 4 7 2 6 4 1 1; 5 1 5 2 4 1 1; 5 2 5 3 4 1 1; 5 3 4 4 4 1 1; 5 4 3 5 4 1 1; 5 5 3 5 4 1 1; 5 6 2 6 4 1 1; 5 7 2 7 4 1 1; 6 1 5 4 7 1 1; 6 2 4 4 5 1 1; 6 3 3 5 5 1 1; 6 4 2 5 5 1 1; 6 5

29、2 6 5 1 1; 6 6 2 7 5 1 1; 6 7 1 7 7 1 1; 7 1 4 4 7 1 1; 7 2 4 4 6 1 1; 7 3 2 5 6 1 1; 7 4 2 6 6 1 1; 7 5 2 6 5 1 1; 7 6 1 7 5 1 1; 7 7 1 7 7 1 1; a=addrule(a,rulelist);a=setfis(a,'DefuzzMethod','mom');writefis(a,'fuzzpid'); a=readfis('fuzzpid'); %PID controllerts=0.00

30、1;sys=tf(5.235e005,1,87.35,1.047e004,0);dsys=c2d(sys,ts,'tustin');num,den=tfdata(dsys,'v'); u_1=0.0;u_2=0.0;u_3=0.0; y_1=0;y_2=0;y_3=0; x=0,0,0' error_1=0;e_1=0.0;ec_1=0.0; kp0=0.40;kd0=1.0;ki0=0.0; for k=1:1:500time(k)=k*ts; rin(k)=1; %using fuzzy inference to tunning PIDk_pid=e

31、valfis(e_1,ec_1,a);kp(k)=kp0+k_pid(1);ki(k)=ki0+k_pid(2);kd(k)=kd0+k_pid(3); u(k)=kp(k)*x(1)+kd(k)*x(2)+ki(k)*x(3); if k=300 %adding disturbance(1.0v at time 0.3s) u(k)=u(k)+1.0;endif u(k)>=10 u(k)=10;endif u(k)<=-10 u(k)=-10;end yout(k)=-den(2)*y_1-den(3)*y_2-den(4)*y_3+num(1)*u(k)+num(2)*u_1+num(3)*u_2+num(4)*u_3;error(k)=r

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論