小車倒擺模糊系統(tǒng)控制作業(yè)分析_第1頁
小車倒擺模糊系統(tǒng)控制作業(yè)分析_第2頁
小車倒擺模糊系統(tǒng)控制作業(yè)分析_第3頁
小車倒擺模糊系統(tǒng)控制作業(yè)分析_第4頁
小車倒擺模糊系統(tǒng)控制作業(yè)分析_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、模糊數(shù)學(xué)題目:小車倒擺模糊系統(tǒng)控制學(xué) 院:機(jī) 械 工 程 學(xué) 院 專 業(yè):機(jī)械電子 班 級:學(xué) 號:學(xué)生姓名:指導(dǎo)老師:提交日期: 2013年 1月 14日 小車倒擺模糊系統(tǒng)控制問題1:如何區(qū)分模糊與可能性?模糊性通常是指對概念的定義以及語言意義的理解上的不確定性。模糊性只要是人為的主觀理解上的不確定性。例如老人、溫度高、數(shù)量大的不確定性都是模糊性??赡苄允侵福菏挛锇l(fā)生的概率,是包含在事物之中并預(yù)示著事物發(fā)展趨勢的量化指標(biāo)。兩者的區(qū)別是,前者是指一件事情的程度問題,后者則是指事情發(fā)生的概率問題。問題2與問題3的解答請?jiān)斠娙缦乱弧?簡介 小車倒立擺系統(tǒng)是一個典型的非線性、不穩(wěn)定的控制對象,因此小

2、車倒立擺系統(tǒng)的控制問題被公認(rèn)為控制理論中的一個典型問題“fuzzy group”作出的。1992年J.S.Jang 提出的自適應(yīng)神經(jīng)網(wǎng)絡(luò)模糊控制的方法對于倒擺控制系統(tǒng)這個經(jīng)典問題又有了極大的發(fā)展。下面我們使用基于自適應(yīng)網(wǎng)絡(luò)的模糊推理系統(tǒng)ANFIS來研究倒擺的控制問題。二、 小車倒擺的數(shù)學(xué)模型分析圖1中給出了二維的桿和滑車系統(tǒng),滑車可以沿軌道運(yùn)動。如圖1所示。倒立擺不是穩(wěn)定的,如果沒有適當(dāng)?shù)目刂屏ψ饔迷谒厦?,它將隨時(shí)可能向任何方向傾倒。這里只考慮二維問題,即認(rèn)為倒立擺只在圖2所示平面內(nèi)運(yùn)動。控制力作用于小車上。假設(shè)擺桿的重心位于其幾何中心A。在滑車的質(zhì)量重心的控制力為,現(xiàn)設(shè)計(jì)其控制器,使桿盡可

3、能平衡,同時(shí)滑車的水平位置也得到控制,跟蹤一個指令信號。其中為滑車的質(zhì)量;為桿的質(zhì)量;為桿長的一半;為重力加速度。圖1 倒立擺系統(tǒng) 圖2 隔離體受力圖建立該系統(tǒng)的運(yùn)動方程式,首先設(shè)輸入作用力為,輸出為擺角。設(shè)擺桿,于是:擺桿圍繞中心A點(diǎn)轉(zhuǎn)動方程為:式中為擺桿圍繞重心的轉(zhuǎn)動慣量。擺桿重心沿軸的運(yùn)動方程為:桿重心沿軸方向運(yùn)動方程:小車沿軸方向運(yùn)動方程式為:此倒擺系統(tǒng)為非線性系統(tǒng)。為了運(yùn)用線性系統(tǒng)理論和模糊控制中的Takagi-Sugeno模型進(jìn)行控制器的分析和設(shè)計(jì),可考慮將其先進(jìn)行局部線性化,使之成為若干子系統(tǒng),再將這些子系統(tǒng)進(jìn)行綜合。其物理意義是:將整個四維狀態(tài)空間分為L個模糊子空間集合,對每個

4、模糊子空間,系統(tǒng)的動力學(xué)特性可用一個局部線性狀態(tài)方程來描述。整個系統(tǒng)動力學(xué)的特性則是這些局部線性模型的加權(quán)和。該模糊建模方法的本質(zhì)在于將一個整體非線性的動力學(xué)模型用多個局部線性模型進(jìn)行模糊逼近。三、 車桿系統(tǒng)的MATLAB模型MATLAB提供了函數(shù)linmod,從而可以在不同狀態(tài)點(diǎn)處對非線性系統(tǒng)進(jìn)行線性化。下面利用這個函數(shù)來對小車模型進(jìn)行線性化。首先,把車桿系統(tǒng)輸入到MATLAB,在Simulink編輯環(huán)境中創(chuàng)建如圖3所示的一個車桿系統(tǒng)模型,將其存盤為ln.mdl。圖3車棒系統(tǒng)動力學(xué)模型四、 對象模糊線性化為了對小車模糊進(jìn)行分析,可以將小車模型用開環(huán)子系統(tǒng)封裝起來。用Create Subsys

5、tem命令產(chǎn)生一個車體動力學(xué)模型子系統(tǒng)。模型如圖4所示:圖4 車棒對象系統(tǒng)封裝模型在初始化項(xiàng)中加入初始狀態(tài)設(shè)置和系統(tǒng)參數(shù)的設(shè)置:初始狀態(tài)設(shè)置為(即平衡位置);小車質(zhì)量;桿的質(zhì)量為;桿的長度的一半;重力加速度。右擊Cart&Pole Dynamics選擇Mask Parameters,彈出Function Block Parameters對話框,修改參數(shù)設(shè)置如圖5所示:圖5 參數(shù)設(shè)置在系統(tǒng)的仿真模型中采用了系統(tǒng)的,完全的,非線性的模型,但是在設(shè)計(jì)系統(tǒng)的控制器時(shí),上述非線性的模型雖然精確,但由于過于復(fù)雜,非常不利于設(shè)計(jì)出簡單、實(shí)用的的系統(tǒng)控制器。因?yàn)樵谠O(shè)計(jì)系統(tǒng)控制器時(shí),希望利用一些不那么精

6、確卻簡單的系統(tǒng)模型,例如,線性系統(tǒng)模型,這就需要把非線性模型轉(zhuǎn)化為線性模型。通常的做法是將非線性模型在系統(tǒng)的某個工作狀態(tài)進(jìn)行線性化,這時(shí)可用MATLAB的命令linmod將系統(tǒng)線性化,其調(diào)用格式為A,B,C,D=linmod(ln.mdl,0,0,0,0,0)得到的系統(tǒng)線性模型如下:系統(tǒng)狀態(tài)變量為x=,系統(tǒng)輸入為控制力u=F,系統(tǒng)輸出為系統(tǒng)狀態(tài)方程為系統(tǒng)輸出方程為這樣我們就得到了系統(tǒng)的一個線性化模型。基于這種線性模型,用線性系統(tǒng)理論很容易就能夠設(shè)計(jì)出其控制器。五、 Takagi-Sugeno型自適應(yīng)神經(jīng)網(wǎng)絡(luò)模型控制器的設(shè)計(jì)用Takagi-Sugeno模型設(shè)計(jì)的模糊控制器,對應(yīng)于其用also連接

7、的第一條模糊規(guī)則??梢詫⒃撃:刂破骺醋饕粋€線性控制器,而整體的控制器由多條模糊推理規(guī)則處理,經(jīng)過模糊綜合、清晰化等過程后,逼近一個非線性的控制器。它的物理意義是:將一個非線性系統(tǒng)在不同的若干狀態(tài)下進(jìn)行線性化,然后分別設(shè)計(jì)控制器,將分別設(shè)計(jì)的線性控制器用模糊控制的理論進(jìn)行綜合,使之成為一個非線性的控制器??梢钥闯觯绻x擇了合適的線性化狀態(tài)、模糊空間劃分、模糊隸屬度函數(shù)、局部線性控制器,其最終得到的控制系統(tǒng)將優(yōu)于一般的線性理論所得到控制器。控制器模型可直接使用Simulink中的Fuzzy controller來實(shí)現(xiàn),控制的參數(shù)和類型只需對Fuzzy controller模塊的參數(shù)Fismat

8、rix進(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)來設(shè)計(jì)(Takagi-Sugeno型控制器的輸入、輸出規(guī)則為線性函數(shù),可以設(shè)計(jì)為該點(diǎn)處的最優(yōu)控制或是用極點(diǎn)配置等方法得到線必性控制器)。車桿閉環(huán)系統(tǒng)模型結(jié)構(gòu)如圖6所示: 圖6 車桿閉環(huán)控制系統(tǒng)六、 確定輸入變量空間根據(jù)實(shí)際控制要求,可以大致確定的狀態(tài)變量和控制變量的范圍如下:設(shè)定桿平衡指標(biāo),;跟蹤目標(biāo)指標(biāo);控制位置偏差指標(biāo);跟蹤速度指標(biāo);控制力限制。七、 輸入空間數(shù)據(jù)點(diǎn)的選

9、取根據(jù)上述的范圍分析,可以劃分狀態(tài)空間。這里采用MATLAB程度來自動產(chǎn)生狀態(tài)空間中的點(diǎn)集,程序genstate.m和order.m用來產(chǎn)生狀態(tài)空間的點(diǎn)。order.m用來將輸入各個變量的分割數(shù)目的排列組合,genstate.m用來調(diào)用order.m來生成輸入變量數(shù)據(jù)點(diǎn)。函數(shù)order.m和genstate.m原代碼如下:%函數(shù)order. m function h=order(x)%x=3,2,4,5;n=length(x);%計(jì)算輸入變量個數(shù)w=prod(x,2);h=;%計(jì)算總數(shù)據(jù)點(diǎn)數(shù) Nn1 x n2 x n3 x n4for i=1:n a=w/prod(x(1:i),2); b=w

10、/x(i)/a; c=; m=; for k=1 :x(i); c=c;k*ones(a,1);endfor j=1:b; m=m;c;end h=h,m;endreturn; %函數(shù)genstate. m function h=genstate()n1=5;%輸入變量一的分割點(diǎn)數(shù)目n2=5;%輸入變量二的分割點(diǎn)數(shù)目n3=5;%輸入變量三的分割點(diǎn)數(shù)目 n4=5;%輸入變量四的分割點(diǎn)數(shù)目%上述數(shù)目不必相等 %我們在每個變量方向上都選5個點(diǎn)data=order(n1 n2 n3 n4);al =linspace(-0.3,0.3,n1);a2=linspace(-1,1,n2);a3=linspa

11、ce(-3,3,n3);a4=linspace(-3,3,n4);%上面是進(jìn)行均勻分割%如果不想使用均勻分割可以直接給定其他的分割點(diǎn) %但是個數(shù)必須與前面指定的相當(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; %上述語句將各個輸入變量組合成數(shù)據(jù) h=data; return;編寫好上述函數(shù)并存盤在MATLAB的工作目錄下,可以通過下列命令來

12、觀察這兩個函數(shù)的作用:order(3,2,4,5)genstate()八、 數(shù)據(jù)點(diǎn)輸出計(jì)算對于上面劃分的模糊BOX空間,用上述的每個離散狀態(tài)空間點(diǎn)來線性化線性車桿模型,選擇合適的控制參數(shù),設(shè)計(jì)出線性最優(yōu)控制器。根據(jù)控制要求和仿真結(jié)果選擇一組:,經(jīng)仿真發(fā)現(xiàn)閉環(huán)系統(tǒng)的系統(tǒng)動態(tài)性能比較能符合要求。在MATLAB中提供函數(shù)來針對每個空間輸入點(diǎn)來設(shè)計(jì)最優(yōu)控制器,這里是前面線性化得到的。九、 訓(xùn)練生成ANFIS模糊推理系統(tǒng)當(dāng)獲得了足夠的數(shù)據(jù),就可以用自適應(yīng)神經(jīng)網(wǎng)絡(luò)模糊系統(tǒng)來模糊這些離散狀態(tài)的和并且模糊綜合那些線性控制器,即訓(xùn)練產(chǎn)生模糊規(guī)則和隸屬度函數(shù)。下面,用模糊神經(jīng)網(wǎng)絡(luò)并根據(jù)上述的離散狀態(tài)空間采樣點(diǎn)及其

13、相應(yīng)的控制力,來訓(xùn)練產(chǎn)生模糊控制器。MATLAB中提供函數(shù)ANFIS來完成,經(jīng)過訓(xùn)練得到的模糊控制參數(shù)矩陣包括輸入的模糊隸屬度函數(shù)及輸出Sugeno型模糊控制規(guī)則。下面函數(shù)genfismat.m來完成ANFIS系統(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; %最優(yōu)控制參數(shù)Nlk=size(k);lk=lk(1);data=;for i=1:lk; a,b,c,d=linmod('ln

14、',k(i,:);%圖4所生成的對象模型 K,S,E=lqr(a,b,q,r,n); X=k(i,:)*K' R=k(i,:),-X; data=data;R;endh=data;return下面這段命令用來結(jié)合前面的所有程序和過程來完整地生成車桿系統(tǒng)的模糊控制器。在確認(rèn)前面所編寫的函數(shù)genfismat.m、genstate.m、genrulescp.mdl文件都已經(jīng)存在之后,輸入下面命令來生成該車桿系統(tǒng)的模糊控制器:state=genstate;fismatrix=genrules(state);輸出結(jié)果如下圖所示還可以通過圖形化的工具來進(jìn)一步觀察和修改結(jié)果模糊系統(tǒng),如下圖

15、所示十、 模型仿真根據(jù)上述的倒擺模型和線性化理論,用模糊神經(jīng)網(wǎng)絡(luò)訓(xùn)練產(chǎn)生模糊規(guī)則,用MATLAB設(shè)計(jì)函數(shù)genrules來產(chǎn)生控制參數(shù)矩陣fismatrix,離線生成模糊控制參數(shù)矩陣后可以存盤為cp.fis文件。以后使用前調(diào)用命令fiamatrix=readfis()就可以進(jìn)行仿真了。MATLAB中自帶了車棒系統(tǒng)的仿真模型以及一個設(shè)計(jì)好的Sugeno型模糊控制系統(tǒng)。仿真模型可以通過SLCP可以打開這個仿真模塊。如果我們希望使用剛才自己所創(chuàng)建的模糊推理系統(tǒng)CP.FIS,可以在打開模型以后,在MATLAB工作命令行環(huán)境里輸入命令fiamatrix=readfis()用我們創(chuàng)建好的模糊模型來替換系統(tǒng)

16、自帶的推理系統(tǒng)。仿真圖如下。十一、 對控制參數(shù)進(jìn)行修改已達(dá)到最優(yōu)控制1、先對R0.5進(jìn)行修改,當(dāng)R值從0.5減小到0.1時(shí),圖形變化如下:R=0.1時(shí)的仿真將上圖與R=0.5時(shí)的仿真進(jìn)行對比,可以看出,仿真結(jié)果變化不大,系統(tǒng)能達(dá)到控制的效果。當(dāng)R值從0.5逐漸增大時(shí),圖形變化如下:R=1R=2將上述兩圖與R0.5時(shí)進(jìn)行對比,可以看出,R逐漸增大時(shí),系統(tǒng)不能達(dá)到控制的效果。綜上所述:最優(yōu)控制參數(shù)R最好維持在0.1 ,1.0的區(qū)間內(nèi),系統(tǒng)才能達(dá)到控制的效果。2、對控制參數(shù)n=0 ;0 ; 0;0進(jìn)行修改,當(dāng)n=10 ;0 ; 0; 0時(shí),仿真結(jié)果如下:當(dāng)n=0 ;10 ; 0; 0時(shí),仿真結(jié)果如下

17、: 當(dāng)n=0 ;0 ; 10; 0時(shí),仿真結(jié)果會出現(xiàn)錯誤,無法仿真。當(dāng)n=0 ;0 ; 0; 10時(shí),仿真結(jié)果如下:當(dāng)n=10;0 ; 10;0時(shí),仿真結(jié)果如下:當(dāng)n=0 ;10 ; 0;10時(shí),仿真結(jié)果如下:將上述仿真結(jié)果與n=0 ;0 ; 0;0時(shí)進(jìn)行對比,可以發(fā)現(xiàn)第一項(xiàng)、第三項(xiàng)對系統(tǒng)的控制引起的變化較大,第二項(xiàng)、第四項(xiàng)對系統(tǒng)的控制引起的變化較小。3、對q=10 0 0 0; 0 5 0 0; 0 0 100 0;0 0 0 5進(jìn)行修改,當(dāng)q=1 0 0 0; 0 5 0 0; 0 0 100 0;0 0 0 5時(shí),仿真結(jié)果如下:當(dāng)q=10 0 0 0; 0 50 0 0; 0 0 100 0;0 0 0 5時(shí),仿真結(jié)果如下:當(dāng)q=10 0 0 0; 0 5 0 0; 0 0 10 0;0 0 0 5時(shí),仿真結(jié)果如下:當(dāng)q=10 0 0 0; 0 5 0 0; 0 0 100 0;0 0 0 50時(shí),仿真結(jié)果如下:通過以上仿真結(jié)果進(jìn)行對比,可以發(fā)現(xiàn)第一行、對

溫馨提示

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

最新文檔

評論

0/150

提交評論