MATLAB模型預(yù)測控制工具箱函數(shù)_第1頁
MATLAB模型預(yù)測控制工具箱函數(shù)_第2頁
MATLAB模型預(yù)測控制工具箱函數(shù)_第3頁
MATLAB模型預(yù)測控制工具箱函數(shù)_第4頁
MATLAB模型預(yù)測控制工具箱函數(shù)_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余7頁可下載查看

下載本文檔

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

文檔簡介

1、ss2mod()mod2ss()poly2tfd()tfd2mod()mod2step()tfd2step()ss2step()mod2mod()th2mod()addmod()addmd()addumd()paramod()sermod()appmod()MATLAB模型預(yù)測控制工具箱函數(shù)8.2系統(tǒng)模型建立與轉(zhuǎn)換函數(shù)前面讀者論壇了利用系統(tǒng)輸入庫俞出數(shù)據(jù)進(jìn)行系統(tǒng)模型辨識的有關(guān)函數(shù)及使用方法,為時行模型預(yù)測控制器的設(shè)計,需要對系統(tǒng)模型進(jìn)行進(jìn)一步的處理和轉(zhuǎn)換。MATLAB的模型預(yù)測控制工具箱中提供了一系列函數(shù)完成多種模型轉(zhuǎn)換和復(fù)雜系統(tǒng)模型的建立功能。在模型預(yù)測控制工具箱中使用了兩種專用的系統(tǒng)模型格

2、式,即MPC狀態(tài)空間模型和MPC傳遞函數(shù)模型。這兩種模型格式分別是狀態(tài)空間模型和傳遞函數(shù)模型在模型預(yù)測控制工具箱中的特殊表達(dá)形式。這種模型格式化可以同時支持連續(xù)和離散系統(tǒng)模型的表達(dá),在MPC傳遞函數(shù)模型中還增加了對純時延的支持。表8-2列出了模型預(yù)測控制工具箱的模型建立與轉(zhuǎn)換函數(shù)。表8-2模型建立與轉(zhuǎn)換函數(shù)功能函數(shù)名將通用狀態(tài)空間模型轉(zhuǎn)換為MPC狀態(tài)空間模型將MPC狀態(tài)空間模型轉(zhuǎn)換為通用狀態(tài)空間模型將通用傳遞函數(shù)模型轉(zhuǎn)換為MPC傳遞函數(shù)模型將MPC傳遞函數(shù)模型轉(zhuǎn)換為MPC狀態(tài)空間模型將MPC狀態(tài)空間模型轉(zhuǎn)換為MPC階躍響應(yīng)模型將MPC傳遞函數(shù)模型轉(zhuǎn)換為MPC附躍響應(yīng)模型將通用狀態(tài)空間模型轉(zhuǎn)換為

3、MPC附躍響應(yīng)模型改變MPC狀態(tài)空間模型的采樣周期將Theta格式模型轉(zhuǎn)換為MPC狀態(tài)空間模型將兩個開環(huán)MPC模型連接構(gòu)成閉環(huán)模型,使其中一個模型輸出疊加到另一個模型輸入向MPC對象添加一個或多個測量擾動向MPC對象添加一個或多未測量擾動將兩個MPC系統(tǒng)模型并型將兩個MPC系統(tǒng)模型串聯(lián)用兩個MPC系統(tǒng)模型構(gòu)成增廣系統(tǒng)模型8.2.1 模型轉(zhuǎn)換在MATLAB模型預(yù)測工具箱中支持多種系統(tǒng)模型格式。這些模型格式包括:通用狀態(tài)空間模型;通用傳遞函數(shù)模型;MPC階躍響應(yīng)模型;MPC狀態(tài)空間模型;MPC傳遞函數(shù)模型。在上述5種模型格式中,前兩種模型格式是MATLAB通用的模型格式,在其他控制類工具箱中,如控

4、制系統(tǒng)工具箱、魯棒控制工具等都予以支持;而后三種模型格式化則是模型預(yù)測控制工具箱特有的。其中,MPC狀態(tài)空間模型和MPC傳遞函數(shù)模型是通用的狀態(tài)空間模型和傳遞函數(shù)模型在模型預(yù)測控制工具箱中采用的增廣格式。模型預(yù)測控制工具箱提供了若干函數(shù),用于完成上述模型格式間的轉(zhuǎn)換功能。下面對這些函數(shù)的用法加以介紹。1.通用狀態(tài)空間模型與MPC狀態(tài)空間模型之間的轉(zhuǎn)換MPC狀態(tài)空間模型在通用狀態(tài)空間模型的基礎(chǔ)上增加了對系統(tǒng)輸入/輸出擾動和采樣周期的描述信息,函數(shù)ss2mod()和mod2ss()用于實(shí)現(xiàn)這兩種模型格式之間的轉(zhuǎn)換。1)通用狀態(tài)空間模型轉(zhuǎn)換為MPC狀態(tài)空間模型函數(shù)ss2mod()該函數(shù)的調(diào)用格式為p

5、mod=ss2mod(A,B,C,D)pmod=ss2moe(A,B,C,D,minfo)pmod=ss2mod(A,B,C,D,minfo,x0,u0,y0,f0)式中,A,B,C,D為通用狀態(tài)空間矩陣;minfo為構(gòu)成MPC狀態(tài)空間模型的其他描述信息,為7個元素的向量,各元素分別定義為:minfo(1)=dt,系統(tǒng)采樣周期,默認(rèn)值為1;minfo(2)=n,系統(tǒng)階次,默認(rèn)值為系統(tǒng)矩陣A的階次;minfo(3)=nu,受控輸入的個數(shù),默認(rèn)值為系統(tǒng)輸入的維數(shù);minfo(4)=nd,測量擾的數(shù)目,默認(rèn)值為0;minfo(5)=nw,未測量擾動的數(shù)目,默認(rèn)值為0;minfo(6)=nym,測量輸

6、出的數(shù)目,默認(rèn)值系統(tǒng)輸出的維數(shù);minfo(7)=nyu,未測量輸出的數(shù)目,默認(rèn)值為0;注:如果在輸入?yún)?shù)中沒有指定minfo,則取默認(rèn)值。x0,u0,y0,f0為線性化條件,默認(rèn)值均為0;pmod為系統(tǒng)的MPC狀態(tài)空間模型格式。例8-5將如下以傳遞函數(shù)表示的系統(tǒng)模型轉(zhuǎn)換為MPC狀態(tài)空間模型。G(s)=s23s1s32s22s1解:MATLAB命令如下:num=131;den=1221;A,B,C,D=tf2ss(num,den);pmod=ss2mod(A,B,C,D)第2頁共10頁其輸出結(jié)果為:pmod=1310010NaN-2-2-11000100000001000001310002)M

7、PC狀態(tài)空間模型轉(zhuǎn)換為通用狀態(tài)空間模型函數(shù)mod2ss()該函數(shù)的調(diào)用格式為A,B,C,D=mod2ss(pmod)A,B,C,D,minfo=mod2ss(pmod)A,B,C,D,minfo,x0,u0,y0,f0=mod2ss(pmod)式中,pmod為系統(tǒng)的MPC狀態(tài)空間模型格式;A,B,C,D為通用狀態(tài)空間矩陣;minfo為構(gòu)成MPC狀態(tài)空間模型的其他描述彳t息,其說明參見函數(shù)ss2moc()。2.通用傳遞函數(shù)模型轉(zhuǎn)換為MPC傳遞函數(shù)模型通用傳遞函數(shù)模型與MPC傳遞函數(shù)模型的轉(zhuǎn)換函數(shù)poly2tfd()的調(diào)用格式為g=poly2tfd(num,den,delt,delay)式中,nu

8、m為通用傳遞函數(shù)模型的分子多項式系數(shù)向量;den為通用傳遞函數(shù)模型的分母多項式系數(shù)向量;delt為采樣周期,對連續(xù)系統(tǒng),該參數(shù)為0;delay為系統(tǒng)純時延,對于離散系統(tǒng),純時延為采樣時間周期的整數(shù)倍;g為被控對象的MPC傳遞函數(shù)模型。例8-6考慮如下的純時延二階對象,并將其轉(zhuǎn)換為MPC傳遞函數(shù)模型。10-5s/G(s)=e(s1)2s4s4解:MATLAB命令如下:>>num=11;den=144;>>g=poly2tfd(num,den,0,0.5)結(jié)果顯示:g=01.00001.00001.00004.00004.000000.500003. MPC傳遞函數(shù)模型轉(zhuǎn)換

9、為MPC狀態(tài)空間模型函數(shù)tfd2mod()該函數(shù)的調(diào)用格式為pmod=tfd2mod(delt,ny,g1,g2,g25)式中,delt為采樣時間;ny為輸出個數(shù);g1,g2,為SISO傳遞函數(shù),對應(yīng)多變量系統(tǒng)傳遞函數(shù)矩陣的各個元素按行向量順序排序構(gòu)成的向量,其最大個數(shù)限制為25;pmod為系統(tǒng)的MPC犬態(tài)空間模型。4. MPC階躍響應(yīng)模型與其他模型格式之間的轉(zhuǎn)換函數(shù)mod2step()、tfd2step()和ss2step)分別用于將MPC狀態(tài)空間模型、MPC傳遞函數(shù)模型和通用狀態(tài)空間模型轉(zhuǎn)換為MPC階躍響應(yīng)模型。下面對這個三函數(shù)的用法進(jìn)行說明。1) MPC狀態(tài)空間模型轉(zhuǎn)換為MPC階躍響應(yīng)模

10、型函數(shù)mod2step()plant=mod2step(pmod,tfinal)plant,dplant=mod2step(pmod,tfinal,delt,nout)式中,pmod為系統(tǒng)的MPC狀態(tài)空間模型;tfinal為階躍響應(yīng)模型的截斷時間;delt為采樣周期,默認(rèn)值由MPC狀態(tài)空間模型的參數(shù)minfo(1)決定;nout為輸出穩(wěn)定性向量,用于指定輸出的穩(wěn)定性。對于穩(wěn)定的系統(tǒng),nout等于輸出的個數(shù);對于具有一個或多個積怨分輸出的系統(tǒng),nout為一個長度等于輸出個數(shù)的向量,該向量對應(yīng)積分輸出的分量為0,其余分量為1;plant為對象在受控變量作用下的階躍響應(yīng)系數(shù)矩陣;dplant為對象在

11、擾動作用下階躍響應(yīng)矩陣。2) MPC傳遞函數(shù)模型轉(zhuǎn)換為MPC階躍響應(yīng)模型函數(shù)tfd2step()該函數(shù)的調(diào)用格式為plant=tfd2step(tfinal,delt,nout,g1)plant=tfd2step(tfinal,delt,nout,g1,g25)式中,情nal為階躍響應(yīng)的截斷時間;delt為采樣周期;nout為輸出穩(wěn)定性向量,參見函數(shù)mod2step()的有關(guān)說明;g1,g25為SISO傳遞函數(shù),對應(yīng)多變量系統(tǒng)傳遞函數(shù)矩陣的各個元素按行向量順序排列構(gòu)成的向量,其最大個數(shù)限制為25;plant為對象的階躍響應(yīng)系統(tǒng)矩陣。例8-8設(shè)系統(tǒng)傳遞函數(shù)為G(s)二2s3s1將其轉(zhuǎn)換為階躍響應(yīng)

12、模型。解:MATLAB命令如下:>>num=12;den=131;>>tf1=poly2tfd(num,den,0,0);>>plant=tfd2step(5,0.1,1,tf1);>>plotstep(plant)由階躍響應(yīng)模型繪制的系統(tǒng)階躍響應(yīng)曲線如圖8-5所示圖8-5系統(tǒng)階躍響應(yīng)曲線8.4基于階躍響應(yīng)模型的控制器設(shè)計與仿真函數(shù)基于系統(tǒng)的階躍響應(yīng)模型進(jìn)行模型預(yù)測控制器設(shè)計的方法稱為動態(tài)矩陣控制方法。該方法是采用工程上易于獲取的對象階躍響應(yīng)模型,算法較為簡單,計算量較少,魯棒性較強(qiáng),適用于純時遲、開環(huán)漸近穩(wěn)定的非最小相位系統(tǒng),在工業(yè)過程控制中得

13、到成功應(yīng)用。MATLAB的模型預(yù)測控制工具箱提供了對動態(tài)矩陣控制方法的支持,有關(guān)的函數(shù)能夠基于階躍響應(yīng)模型的模型預(yù)測控制器設(shè)計與仿真,見表8-3。表8-3動態(tài)矩陣控制設(shè)計與仿真函數(shù)函數(shù)名功能cmpc()輸入/輸出有約束的模型預(yù)測控制器設(shè)計mpccon()輸入/輸出無約束的模型預(yù)測控制器設(shè)計mpccl()計算模型預(yù)測控制系統(tǒng)的閉環(huán)模型mpcsim()模型預(yù)測控制系統(tǒng)的仿真(輸入/輸出無約束)nlcmpc()Simulink塊nlcmpc對應(yīng)的S函數(shù)nlmpcsim()Simulink塊nlmpcsim對應(yīng)的S函數(shù)例8-12考慮如下的雙輸入輸出純時延對象,其傳遞函數(shù)矩陣為一12.8e,s6.6e,

14、sI、16.7s+110.9s+1G(s)=-18.9es-19.4e*s:21.0s+114.4s+1-解:MATLAB程序如下:clc,clear;closeall%等傳遞函數(shù)模型轉(zhuǎn)換為階躍響應(yīng)模型g11=poly2tfd(12.8,16.71,0,1);g12=poly2tfd(6.6,10.91,0,7);g21=poly2tfd(-18.9,211,0,3);g22=poly2tfd(-19.4,14.41,0,3);delt=3;須樣周期ny=2;tfinal=90;model=tfd2step(tfinal,delt,ny,g11,g12,g21,g22);%進(jìn)行模型預(yù)測控制器設(shè)

15、計plant=model;%預(yù)測時域長度為6p=6;m=2;ywt=;uwt=;%設(shè)置輸入約束和參考軌跡等控制器參數(shù)r=11;tend=30;%仿真時間為30ulim=-0.1-0.10.550.50.1100;ylim=;y,u,ym=cmpc(plant,model,ywt,uwt,m,p,tend,r,ulim,ylim);plotall(y,u,delt)閉環(huán)系統(tǒng)的輸出和控制量變化曲線如圖1所示圖1閉環(huán)系統(tǒng)的輸出和控制量變化曲線8.4基于狀態(tài)空間模型的預(yù)測控制器設(shè)計函數(shù)在MATLAB模型預(yù)測控制工具箱中,除了提供基于階躍響應(yīng)模型的預(yù)測控制器設(shè)計功能外,還提供了MPC狀態(tài)空間模型的預(yù)測控

16、制器設(shè)計功能。有關(guān)的函數(shù)參見表8-4o表8-4基于MPC狀態(tài)空間模型的預(yù)測控制器設(shè)計函數(shù)功能函數(shù)名scmpc()smpccon()smpccl()smpcsim()smpcest()輸入/輸出有約束的狀態(tài)空間模型預(yù)測控制器設(shè)計輸入/輸出無約束的狀態(tài)空間模型預(yù)測控制器設(shè)計計算輸入/輸出無約束的模型預(yù)測閉環(huán)控制系統(tǒng)模型輸入有約束的模型預(yù)測閉環(huán)控制系統(tǒng)仿真狀態(tài)估計器設(shè)計8.4.1 輸入/輸出有約束的狀態(tài)空間模型預(yù)測控制器設(shè)計函數(shù)scmpc()用于進(jìn)行輸入/輸出有約束條件下的狀態(tài)空間模型預(yù)測控制器設(shè)計,該函數(shù)的調(diào)用格式為y,u,ym=scmpc(pmod,imod,ywt,uwt,M,P,tend,r

17、,ulim,ylim,kest,z,v,w,wu)式中,pmod為MPC狀態(tài)空間模型格式的對象狀態(tài)空間模型,用于仿真;imod為MPC狀態(tài)空間模型格式的對象內(nèi)部模型,用于預(yù)測控制器設(shè)計;ywt為二次型性能指標(biāo)的輸出誤差加權(quán)矩陣;uwt為二次型性能指標(biāo)的控制量加權(quán)矩陣;M為控制時域長度;P為預(yù)測時域長度;tend為仿真的結(jié)束時間;r為輸入設(shè)定值或參考軌跡;ulim=ulowuhighdelu,式中,ulow為控制變量的下界,uhigh為控制變量的上界,delu為控制變量的變化率約束;ylim=ylowyhigh,式中,ylow為輸出的下界,yhigh為輸出的上界;kest為估計器的增益矩陣;z為

18、測量噪聲;v為測量擾動;w為輸出未測量擾動;wu為施加到控制輸入的未測量擾動;y為系統(tǒng)響應(yīng);u為控制變量;ym為模型預(yù)測輸出。例8-15考慮如下的雙輸入輸出純時延對象,其傳遞函數(shù)矩陣為12.8e,s6.6eJsG(s)=16.7s110.9s1-18.9e郃-19.4e's_21.0s+114.4s1解:MATLAB程序如下:clc,clear;closeall;%等傳遞函數(shù)模型轉(zhuǎn)換為狀態(tài)空間模型g11=poly2tfd(12.8,16.71,0,1);g12=poly2tfd(6.6,10.91,0,7);g21=poly2tfd(-18.9,211,0,3);g22=poly2tfd(-19.4,14.41,0,3);delt=3;ny=2;imodel=tfd2mod(delt,ny,g11,g12,g21,g22);%進(jìn)行模型預(yù)測控

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論