模糊數(shù)學(xué)倒立擺優(yōu)化_第1頁
模糊數(shù)學(xué)倒立擺優(yōu)化_第2頁
模糊數(shù)學(xué)倒立擺優(yōu)化_第3頁
模糊數(shù)學(xué)倒立擺優(yōu)化_第4頁
模糊數(shù)學(xué)倒立擺優(yōu)化_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、小車倒擺模糊系統(tǒng)控制簡介迄今為止,相當(dāng)多的模糊神經(jīng)網(wǎng)絡(luò)都是結(jié)合控制問題,特別是倒擺控制問題提出的。作為智能控制研究中的一個(gè)經(jīng)典對(duì)象,在倒擺問題中應(yīng)用神經(jīng)網(wǎng)絡(luò)方法, 首推Widrow等人的工作。但較具代表性的結(jié)果則主要是由加州大學(xué)伯克利分校, 以L.A.Zadeh為首的“fuzzy group ”作出的。1992年J.S.Jang 提出的自適應(yīng) 神經(jīng)網(wǎng)絡(luò)模糊控制的方法對(duì)于倒擺控制系統(tǒng)這個(gè)經(jīng)典問題又有了極大的發(fā)展。下面我們使用基于自適應(yīng)網(wǎng)絡(luò)的模糊推理系統(tǒng) ANFIS來研究倒擺的控制問題。二、小車倒擺動(dòng)力學(xué)模型圖1中給出了二維的桿和滑車系統(tǒng),滑車可以沿軌道運(yùn)動(dòng)。如圖1所示。倒 立擺不是穩(wěn)定的,如果沒

2、有適當(dāng)?shù)目刂屏ψ饔迷谒厦?,它將隨時(shí)可能向任何方向傾倒。這里只考慮二維問題,即認(rèn)為倒立擺只在圖2所示平面內(nèi)運(yùn)動(dòng)??刂屏?F作用于小車上。假設(shè)擺桿白重心位于其幾何中心 Ao在滑車的質(zhì)量重心的控制力為F,現(xiàn)設(shè)計(jì)其控制器,使桿盡可能平衡,同時(shí)滑車的水平位置也得到控制, 跟蹤一個(gè)指令信號(hào)xd(t)。其中M為滑車的質(zhì)量;m為桿的質(zhì)量;l為桿長的一八c ,2半;g 9.8m/s為重力加速度圖1倒立擺系統(tǒng)圖2隔離體受力圖建立該系統(tǒng)的運(yùn)動(dòng)方程式,首先設(shè)輸入作用力為 F ,輸出為擺角o設(shè)擺桿(Xa, Ya)于是:Xax l sinYal cos擺桿圍繞中心A點(diǎn)轉(zhuǎn)動(dòng)方程為:d2J2- Vl sin Hl cosd

3、t2式中J為擺桿圍繞重心A的轉(zhuǎn)動(dòng)慣量。擺桿重心A沿x軸的運(yùn)動(dòng)方程為:mH dt2d2m2(x lsin ) H dt2桿重心A沿y軸方向運(yùn)動(dòng)方程:md yA V mg dt2d2m dt2( l cos ) V mg小車沿x軸方向運(yùn)動(dòng)方程式為:MdF FJ 1ml23ml( sincos2) VMgm(xdt2l sin )m(x l (cos sin2)(M m) x ml cosmlsin 24ml2 3lmcos xMgml cos43ml2ml cosmlsinMg此倒擺系統(tǒng)為非線性系統(tǒng)。為了運(yùn)用線性系統(tǒng)理論和模糊控制中的 Takagi-Sugeno模型進(jìn)行控制器的分析和設(shè)計(jì),可考慮將

4、其先進(jìn)行局部線性化, 使之成為若干子系統(tǒng),再將這些子系統(tǒng)進(jìn)行綜合。其物理意義是:將整個(gè)四維狀 態(tài)空間分為L個(gè)模糊子空間集合,對(duì)每個(gè)模糊子空間,系統(tǒng)的動(dòng)力學(xué)特性可用一 個(gè)局部線性狀態(tài)方程來描述。整個(gè)系統(tǒng)動(dòng)力學(xué)的特性則是這些局部線性模型的加 權(quán)和。該模糊建模方法的本質(zhì)在于將一個(gè)整體非線性的動(dòng)力學(xué)模型用多個(gè)局部線 性模型進(jìn)行模糊逼近。三、車桿系統(tǒng)的MATLA嚷型MATLA提供了函數(shù)linmod ,從而可以在不同狀態(tài)點(diǎn)處對(duì)非線性系統(tǒng)進(jìn)行線 性化。下面利用這個(gè)函數(shù)來對(duì)小車模型進(jìn)行線性化。首先,把車桿系統(tǒng)輸入到 MATLAB在Simulink編輯環(huán)境中創(chuàng)建如圖3所示 的一個(gè)車桿系統(tǒng)模型,將其存盤為In.m

5、dl o圖3車棒系統(tǒng)動(dòng)力學(xué)模型四、對(duì)象模糊線性化為了對(duì)小車模糊進(jìn)行分析,可以將小車模型用開環(huán)子系統(tǒng)封裝起來。用Create Subsystem命令產(chǎn)生一個(gè)車體動(dòng)力學(xué)*S型子系統(tǒng)。模型如圖4所示:圖4車棒對(duì)象系統(tǒng)封裝模型在初始化項(xiàng)中加入初始狀態(tài)設(shè)置和系統(tǒng)參數(shù)的設(shè)置:初始狀態(tài)設(shè)置為0,0,0,0(即平衡位置);小車質(zhì)量M 1;桿的質(zhì)量為m 0.1;桿的長度的一半l 0.5;重力加速度 g 9.8。右擊 Cart&Pole Dynamics 選擇 Mask Parameters ,彈出Function Block Parameters對(duì)話框,修改參數(shù)設(shè)置如圖 5所示:圖5參數(shù)設(shè)置在系統(tǒng)的仿真

6、模型中采用了系統(tǒng)的, 完全的,非線性的模型,但是在設(shè)計(jì)系 統(tǒng)的控制器時(shí),上述非線性的模型雖然精確,但由于過于復(fù)雜,非常不利于設(shè)計(jì) 出簡單、實(shí)用的的系統(tǒng)控制器。因?yàn)樵谠O(shè)計(jì)系統(tǒng)控制器時(shí),希望利用一些不那么 精確卻簡單的系統(tǒng)模型,例如,線性系統(tǒng)模型,這就需要把非線性模型轉(zhuǎn)化為線性模型。通常的做法是將非線性模型在系統(tǒng)的某個(gè)工作狀態(tài)進(jìn)行線性化,這時(shí)可用MATLAB勺命令linmod將系統(tǒng)線性化,其調(diào)用格式為A, B, C, D=linmod( 'In.mdl ' ,0,0,0,0, 0)得到的系統(tǒng)線性模型如下:''系統(tǒng)狀態(tài)變量為x=,系統(tǒng)輸入為控制力U=F,系統(tǒng)卒&

7、;出為y''xx系統(tǒng)狀態(tài)方程為 ' x Ax Bu系統(tǒng)輸出方程為'_ 一y Cx Du這樣我們就得到了系統(tǒng)的一個(gè)線性化模型?;谶@種線性模型,用線性系統(tǒng)理論很容易就能夠設(shè)計(jì)出其控制器。五、 Takagi-Sugeno型自適應(yīng)神經(jīng)網(wǎng)絡(luò)模型控制器的設(shè)計(jì)用Takagi-Sugeno模型設(shè)計(jì)的模糊控制器,對(duì)應(yīng)于其用 also連接的第一條 模糊規(guī)則??梢詫⒃撃:刂破骺醋饕粋€(gè)線性控制器, 而整體的控制器由多條模 糊推理規(guī)則處理,經(jīng)過模糊綜合、清晰化等過程后,逼近一個(gè)非線性的控制器。它的物理意義是:將一個(gè)非線性系統(tǒng)在不同的若干狀態(tài)下進(jìn)行線性化,然后分別設(shè)計(jì)控制器,將分別設(shè)計(jì)

8、的線性控制器用模糊控制的理論進(jìn)行綜合,使之成為一個(gè)非線性的控制器。可以看出,如果選擇了合適的線性化狀態(tài)、模糊空間劃分、 模糊隸屬度函數(shù)、局部線性控制器,其最終得到的控制系統(tǒng)將優(yōu)于一般的線性理 論所得到控制器??刂破髂P涂芍苯邮褂肧imulink中的Fuzzy controller 來實(shí)現(xiàn),控制的參 數(shù)和類型只需對(duì)Fuzzy controller模塊的參數(shù)Fismatrix進(jìn)行設(shè)置來實(shí)現(xiàn)。Takagi-Sugeno型模糊控制器的設(shè)計(jì)關(guān)鍵是得到輸入的模糊集合隸屬度函 數(shù)以及輸入、輸出規(guī)則??梢愿鶕?jù)經(jīng)驗(yàn)和習(xí)慣來確定輸入的模糊集合及其隸屬度 函數(shù),而模糊規(guī)則 可以在相應(yīng)的模糊集合隸屬度函數(shù)的最大值點(diǎn)來

9、 設(shè)計(jì) (Takagi-Sugeno型控制器的輸入、輸出規(guī)則為線性函數(shù),可以設(shè)計(jì)為該點(diǎn)處的車桿閉環(huán)系統(tǒng)模型結(jié)構(gòu)如最優(yōu)控制或是用極點(diǎn)配置等方法得到線必性控制器)圖6所示:六、確定輸入變量空間根據(jù)實(shí)際控制要求,可以大致確定的狀態(tài)變量和控制變量的范圍如下:設(shè)定桿平衡指標(biāo)0.3,0.3,1 1,1;跟蹤目標(biāo)指標(biāo)xd(t) 2.5,2.5;控制位置偏差指標(biāo)x 3,3;跟蹤速度指標(biāo)x' 3,3;控制力限制F 10,10。七、輸入空間數(shù)據(jù)點(diǎn)的選取根據(jù)上述的范圍分析,可以劃分狀態(tài)空間。這里采用MATLA卻度來自動(dòng)產(chǎn)生狀態(tài)空間中的點(diǎn)集,程序 genstate.m 和order.m用來產(chǎn)生狀態(tài)空間的點(diǎn)。

10、order.m用來將輸入各個(gè)變量的分割數(shù)目的排列組合,genstate.m 用來調(diào)用order.m 來生成輸入變量數(shù)據(jù)點(diǎn)。函數(shù) order.m 和genstate.m 原代碼如下:刷數(shù) order. mfunction h=order(x) %x=3,2,4,5;n=length(x);%計(jì)算輸入變量個(gè)數(shù)w=prod(x,2); h=;%+算總數(shù)據(jù)點(diǎn)數(shù)N = n1 x n2 x n3 x n4 for i=1:n a=w/prod(x(1:i),2); b=w/x(i)/a; c=;m=;for k=1 :x(i);c=c;k*ones(a,1);endfor j=1:b;m=m;c;endh

11、=h,m;endreturn ;%S 數(shù) genstate. mfunction h=genstate()n1=5;%輸入變量一的分割點(diǎn)數(shù)目n2=5;%輸入變量二的分割點(diǎn)數(shù)目n3=5;%輸入變量三的分割點(diǎn)數(shù)目n4=5;%輸入變量四的分割點(diǎn)數(shù)目%止述數(shù)目不必相等難們?cè)诿總€(gè)變量方向上都選5個(gè)點(diǎn)data=order(n1 n2 n3 n4);al =linspace(-0.3,0.3,n1);a2=linspace(-1,1,n2);a3=linspace(-3,3,n3);a4=linspace(-3,3,n4);%h面是進(jìn)行均勻分割呦口果不想使用均勻分割可以直接給定其他的分割點(diǎn)%且是個(gè)數(shù)必須與前

12、面指定的相當(dāng)涮如 al=-0.25 -0.15 0 0.2 0.3;for i=1:length(data);data(i,1)=al (data(i,1);data(i,2)=a2(data(i,2);data(i,3)=a3(data(i,3);data(i,4)=a4(data(i,4);end;%h述語句將各個(gè)輸入變量組合成數(shù)據(jù)h=data;return ;編寫好上述函數(shù)并存盤在MATLAB工作目錄下,可以通過下列命令來觀察這 兩個(gè)函數(shù)的作用:order(3,2,4,5) genstate()八、數(shù)據(jù)點(diǎn)輸出計(jì)算對(duì)于上面劃分的模糊BO心間,用上述的每個(gè)離散狀態(tài)空間點(diǎn) X1,X2,.,Xn

13、<線性化線性車桿模型,選擇合適的 LQR控制參數(shù)Q,R,N ,設(shè)計(jì)出線性最優(yōu)控制0000器2,心,.,(。根據(jù)控制要求和仿真結(jié)果選擇一組 Q,R,N :500 1000,R 0.5, N10 000經(jīng)仿真發(fā)現(xiàn)閉環(huán)系統(tǒng)的系統(tǒng)動(dòng)態(tài)性能比較能符合要求。在MATLAB提供函數(shù)K,S,E lqr(A,B,Q,R,N)來針對(duì)每個(gè)空間輸入點(diǎn)來設(shè)計(jì)最優(yōu)控制器Kl ,這里A,B是前面線性化得到的九、訓(xùn)練生成ANFIS模糊推理系統(tǒng)當(dāng)獲得了足夠的數(shù)據(jù),就可以用自適應(yīng)神經(jīng)網(wǎng)絡(luò)模糊系統(tǒng)來模糊這些離散狀 態(tài)的和并且模糊綜合那些線性控制器Ki, K2,,Kn ,即訓(xùn)練產(chǎn)生模糊規(guī)則和隸屬度函數(shù)。下面,用模糊神經(jīng)網(wǎng)絡(luò)并根

14、據(jù)上述的離散狀態(tài)空間采樣點(diǎn)及其相應(yīng)的控 制力Fi,F2,.Fn ,來訓(xùn)練產(chǎn)生模糊控制器。MATLA中提供函數(shù)ANFISA完成,經(jīng)過 訓(xùn)練得到的模糊控制參數(shù)矩陣包括輸入的模糊隸屬度函數(shù)及輸出Sugen那模糊控制規(guī)則。下面函數(shù)genfismat.m來完成ANFISS統(tǒng)的訓(xùn)練過程:爐中k為前面生成的輸入空間數(shù)據(jù)function h= genfismat(k) q=10 0 0 0;0 5 0 0;0 0 100 0;0 0 0 5;%最優(yōu)控制參數(shù)Qr=0.5;%最優(yōu)控制參數(shù)Rn=0 ;0 ; 0; 0;%1優(yōu)控制參數(shù)Nlk=size(k);lk=lk(1);data=;for i=1:lk;a,b,

15、c,d=linmod( 'ln' ,k(i,:); 照4所生成的對(duì)象模型K,S,E=lqr(a,b,q,r,n);X=k(i,:)*K'R=k(i,:),-X;data=data;R; end h=data;return下面這段命令用來結(jié)合前面的所有程序和過程來完整地生成車桿系統(tǒng)的模糊控制器。在確認(rèn)前面所編寫的函數(shù) genfismat.m、genstate.m、genrules.m、 order.m以及模型cp1.mdl文件都已經(jīng)存在之后,輸入下面命令來生成該車桿系統(tǒng) 的模糊控制器:state=genstate;fismatrix=genrules(state);輸出結(jié)

16、果如下圖所示firis =nan.eztype1andJletlLod: orllet?ied! defuz Method: inpffetiod:input: output :rule:'anfis1'stif eno?* prod''jitaj!,f vrt avex?'ptotTr imi3工1x4 struct1x1 s-t ruct1x16 st met 還可以通過圖形化的工具來進(jìn)一步觀察和修改結(jié)果模糊系統(tǒng),如下圖所示10 Rule- Vir'rrz arflsFile Edrt 曲ew Oprt dhs輸入命令:fuzzy(fisma

17、trix)« £ 皿如 IK百Id 匚1ifiSIMI 一 L - IH . L J I-IB L - - -1 - L=J - L B - II -LJ -"0K MUInp4l域隼ip可hpirt2L ®pduJput.15"必:邑gU心期1 MN|911皿中0|1 rsr十、模型仿真根據(jù)上述的倒擺模型和線性化理論,用模糊神經(jīng)網(wǎng)絡(luò)訓(xùn)練產(chǎn)生模糊規(guī)則,用 MATLA般計(jì)函數(shù)genrules來產(chǎn)生控制參數(shù)矩陣fismatrix ,利用命令save xz.fis fismatrix 來生成xz.fis 文件,以后可以使用前調(diào) 用命令fiamatri

18、x=readfis ( 'xz.fis ')就可以進(jìn)行仿真了。MATLA中自帶了車棒系統(tǒng)的仿真本K型以及一個(gè)設(shè)計(jì)好的Sugeno型模糊控制系統(tǒng)。仿真模型可以通過 SLCP可以打開這個(gè)仿真模塊。如果我們希望使用剛才自己所創(chuàng)建的模糊推理系統(tǒng)xz.fis ,可以在打開模型以后,在MATLAB!作命令行環(huán)境里輸入命令 fiamatrix=readfis ( 'xz.fis ') 用我們創(chuàng)建好的模糊模型來替換系統(tǒng)自帶的推理系統(tǒng)。仿真圖如下。卜一、對(duì)控制參數(shù)進(jìn)行修改已達(dá)到最優(yōu)控制1、先對(duì)R0.5進(jìn)行修改,當(dāng)Rfi從0.5減小到0.1時(shí),圖形變化如下:R=0.1時(shí)的仿真將上圖

19、與R=0.5時(shí)的仿真進(jìn)行對(duì)比,可以看出,仿真結(jié)果變化不大,系統(tǒng) 能達(dá)到控制的效果。當(dāng)Rfi從0.5逐漸增大時(shí),圖形變化如下:R=1R=2將上述兩圖與R0,5時(shí)進(jìn)行對(duì)比,可以看出,R逐漸增大時(shí),系統(tǒng)不能達(dá)到 控制的效果。綜上所述:最優(yōu)控制參數(shù)RR好維持在0.1 ,1.0的區(qū)間內(nèi),系統(tǒng)才能達(dá)到控制的效果。2、對(duì)控制參數(shù)n=0 ;0 ; 0;0 進(jìn)行修改,當(dāng)n=10 ;0 ; 0; 0 時(shí),仿真結(jié)果如 下:當(dāng)門=0 ;10 ; 0; 0時(shí),仿真結(jié)果如下:當(dāng)時(shí)0 ;0 ; 10; 0時(shí),仿真結(jié)果會(huì)出現(xiàn)錯(cuò)誤,無法仿真。當(dāng)時(shí)0 ;0 ; 0; 10時(shí),當(dāng)時(shí)10;0 ; 10;0時(shí),將上述仿真結(jié)果與n=0 ;0 ; 0;0時(shí)進(jìn)行對(duì)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論