模型預(yù)測控制系統(tǒng)的計算機輔助設(shè)計PPT課件_第1頁
模型預(yù)測控制系統(tǒng)的計算機輔助設(shè)計PPT課件_第2頁
模型預(yù)測控制系統(tǒng)的計算機輔助設(shè)計PPT課件_第3頁
模型預(yù)測控制系統(tǒng)的計算機輔助設(shè)計PPT課件_第4頁
模型預(yù)測控制系統(tǒng)的計算機輔助設(shè)計PPT課件_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第7章 模型預(yù)測控制系統(tǒng)的 計算機輔助設(shè)計,7.1 模型預(yù)測控制工具箱概述 7.2 基于階躍響應(yīng)的模型預(yù)測控制 7.3 基于狀態(tài)空間模型的模型預(yù)測控制,7.1 模型預(yù)測控制工具箱概述,模型預(yù)測控制(MPC)工具箱是分析和設(shè)計模型預(yù)測控制系統(tǒng)的函數(shù)集合。 模型預(yù)測控制首先于20世紀70年代運用到工業(yè)控制中, 到80年代后期得到廣泛應(yīng)用。 現(xiàn)在, 該方法已經(jīng)廣泛應(yīng)用于化工工業(yè)和其它工業(yè)領(lǐng)域的多變量控制系統(tǒng)。 MPC方法幾乎可以適用于任何控制問題, 它主要用來解決以下類型的問題:,(1) 系統(tǒng)具有大量需要控制的變量。 (2) 被控變量具有約束。 (3) 控制目標(biāo)的改變以及控制/傳感設(shè)備的失效。 (4

2、) 具有時延的系統(tǒng)。 在實際工程中, MPC方法又經(jīng)常被分為動態(tài)矩陣控制(DMC)、 IDCOM和模型算法控制等等。,7.2 基于階躍響應(yīng)的模型預(yù)測控制,7.2.1 階躍響應(yīng)模型 對于一個線性時不變(LTI)的單輸入單輸出(SISO)系統(tǒng), 設(shè)系統(tǒng)在單位輸入變化v下的系統(tǒng)輸出變化為 0, , s1, s2, , sn, ,這里我們假設(shè)系統(tǒng)在n步以后進入穩(wěn)定狀態(tài), 這樣, 系統(tǒng)開始n步s1, s2, , sn的階躍響應(yīng)可以完全刻畫系統(tǒng)的模型, 我們可以利用這些階躍響應(yīng)計算任何輸入序列下的系統(tǒng)輸出響應(yīng):,(7.1),上述階躍響應(yīng)模型也可以用于穩(wěn)定且具有積分性質(zhì)的過程。 對于一個積分過程, 我們可以

3、假設(shè)系統(tǒng)在n步以后的響應(yīng)信號的斜率保持常數(shù), 也就是說:,(7.2),對于具有nv個輸入和ny個輸出的多輸入多輸出(MIMO)系統(tǒng), 我們可以得到一系列階躍響應(yīng)的系數(shù)矩陣,(7.3),其中, sl,m,i是第m個輸入到第l個輸出的第i個階躍響應(yīng)。 MPC工具箱將按照下面的格式存儲階躍響應(yīng)模型:,其中的delt2是系統(tǒng)采樣時間; 向量nout表示相應(yīng)的輸出是否正在進行積分: nout(i) = 0表示第i個輸出正在積分, nout(i) = 1表示第i個輸出是穩(wěn)定的。 系統(tǒng)的階躍響應(yīng)可以直接從系統(tǒng)辨識數(shù)據(jù)中獲得, 也可以由連續(xù)或離散傳遞函數(shù)和狀態(tài)空間模型產(chǎn)生。 例如, 如果某個離散系統(tǒng)的描述(采

4、樣時間假定為T = 0.1 s)為,下面的程序?qū)a(chǎn)生該系統(tǒng)的階躍響應(yīng)模型, 并且繪制階躍響應(yīng)曲線(如圖7.1所示)。 % 創(chuàng)建傳遞函數(shù)格式的模型 num = 1; den = 1 0.5; delt1 = 0.1; delay = 2; g = poly2tfd(num, den, delt1, delay);,寫成傳遞函數(shù)形式為,% 計算階躍響應(yīng)模型 tfinal = 1.6; delt2 = delt1; nout = 1; plant = tfd2step(tfinal, delt2, nout, g); % 繪制階躍響應(yīng)曲線 plotstep(plant),圖 7.1 系統(tǒng)的階躍響應(yīng)曲

5、線,我們也可以首先生成系統(tǒng)的狀態(tài)空間模型, 然后使用tf2ss函數(shù)和ss2step生成階躍響應(yīng)模型: num = 0 0 0 num; den = den 0 0; phi, gam, c, d = tf2ss(num, den); % 轉(zhuǎn)換成狀態(tài)空間形式 plant = ss2step(phi, gam, c, d, tfinal, delt1, delt2, nout); % 計算階躍響應(yīng),通過MPC工具箱中的函數(shù)mpcinfo, 可以獲取創(chuàng)建的階躍響應(yīng)模型中的信息: mpcinfo(plant) This is a matrix in MPC Step format. sampling

6、time = 0.1 number of inputs = 1 number of outputs = 1 number of step response coefficients = 16 All outputs are stable.,7.2.2 模型辨識 MATLAB中的MPC工具箱可以完成MISO系統(tǒng)模型的辨識。 基于輸入v1(k), , 和輸出yl(k)的歷史數(shù)據(jù), 有,(7.5),其中, 階躍響應(yīng)系數(shù)矩陣為,為了估計上述階躍響應(yīng)系數(shù)矩陣, 將SISO模型寫成下面的形式,其中, y(k)=y(k)-y(k-1), 脈沖響應(yīng)系數(shù)hi=si-si-1。 如果輸出端正在積分, 則,(7.6

7、),其中, (y(k)=y(k)-y(k-1), hi=hi-hi-1。,式(7.6)可以用來估計hi, 這樣, hi和si可以寫成,參數(shù)估計中通常將所有的變量縮放成相同的數(shù)量 級。 這可以通過MPC函數(shù)autosc或scal完成。 整個系統(tǒng) 數(shù)據(jù)可以寫成下面的形式,(7.7),其中, Y包含了所有的系統(tǒng)輸出信息(如果是穩(wěn)定的, 則為y(k); 如果正在積分, 則為(y(k))。 X包含了所有的輸入信息(v(k))。 包含所有被估計的參數(shù)(如果是穩(wěn)定的, 則為hi; 如果正在積分, 則為hi)。 式(7.7)可以通過函數(shù)wrtreg得到。 參數(shù)可以利用多變量最小方差回歸(mlr)或局部最小方差

8、回歸(plsr)計算得到。 下面的程序(mpctutid)演示了具體的計算步驟:,% 載入系統(tǒng)輸入和輸出數(shù)據(jù), 這些數(shù)據(jù)由下面的傳遞函數(shù)和隨機白噪聲產(chǎn)生 % 從輸入1到輸出1的傳遞函數(shù): g11=5.72exp(-14s)/ (60s+1) % 從輸入2到輸出1的傳遞函數(shù): g12=1.52exp(-15s)/ (25s+1) load mlrdat ax, mx, stdx=autosc(x);,mx=0*mx; % 將輸入數(shù)據(jù)寫成相同數(shù)量級的形式 sx=scal(x, mx, stdx); n=35; % 一共具有35個系數(shù) xreg, yreg=wrtreg(sx, y, n); % 構(gòu)

9、造標(biāo)準(zhǔn)的辨識模型(見式(7.7) ninput=2; plotopt=2; theta, yres=mlr(xreg, yreg, ninput, plotopt); % 計算脈沖響應(yīng)系數(shù) theta=scal(theta, mx, stdx);,% 將脈沖模型轉(zhuǎn)換成階躍模型, 用于MPC設(shè)計 nout=1; delt=7; model=imp2step(delt, nout, theta); plotstep(model) % 繪制階躍響應(yīng)曲線,圖 7.2 實際輸出與估計輸出的誤差分析曲線,7.2.3 無約束模型預(yù)測控制 MPC控制的基本原理可以用圖7.4表示。 對于任何假定的現(xiàn)在和將來的控

10、制輸入u(k), u(k+1), , u(k+m-1),系統(tǒng)將來的輸出y(k+1|k), y(k+2|k), , y(k+p|k)都可以在一定的時間跨度p內(nèi)進行預(yù)測。 從而可以計算m個現(xiàn)在和將來的控制輸入(mp), 使得下面的二次指標(biāo)最小,(7.8),圖 7.3 辨識后系統(tǒng)的階躍響應(yīng)曲線,圖 7.4 MPC的控制過程,在缺省情況下, MPC將獲得一個線性時不變的反饋控制規(guī)律,其中, Ep(k+1|k)是時間跨度為p的將來輸出誤差的預(yù)測向量, 它是在假定現(xiàn)在和將來的所有輸入變量不發(fā)生變化(u(k)=u(k+1)=0)的情況下計算得到的。,對于開環(huán)穩(wěn)定的系統(tǒng), 閉環(huán)系統(tǒng)的穩(wěn)定性是由KMPC決定的,

11、 而KMPC與計算的時間跨度p、 m以及加權(quán)矩陣yl和ul有關(guān)。我們一般無法知道關(guān)于這些參數(shù)保持系統(tǒng)閉環(huán)穩(wěn)定的確切條件。 但是一個定性的描述是相對于p減小m可以增加系統(tǒng)的穩(wěn)定度。 對于p=1, 閉環(huán)系統(tǒng)的穩(wěn)定性可以由某個確定的m和時不變的輸入輸出權(quán)重加以保證。 通常, 權(quán)重矩陣ul用作可調(diào)常數(shù), 因為增加ul一般可以使對系統(tǒng)的控制顯得不那么“激進”, 從而增加系統(tǒng)的穩(wěn)定性。,噪聲濾波器的時間常數(shù)tfilter(1, :)和干擾時間常數(shù)tfilter(2, :)不會影響閉環(huán)系統(tǒng)的穩(wěn)定性和對參考點變化或測量噪聲的系統(tǒng)響應(yīng), 但是這些時間常數(shù)的設(shè)置會影響到系統(tǒng)的魯棒性和對不可測干擾的響應(yīng)。 增加噪聲

12、濾波器的時間常數(shù)可以使系統(tǒng)的魯棒性增大, 使系統(tǒng)對不可測干擾的敏感度降低。 而增加干擾的時間常數(shù)會使對系統(tǒng)的控制更加“激進”。,通過MPC工具箱所設(shè)計的控制器都可以無誤差地跟蹤階躍信號(類型1), 如果系統(tǒng)擾動模型或者系統(tǒng)自身具有積分特性, 則設(shè)計的控制器還可以無誤差地跟蹤斜坡信號。 下面的程序是MATLAB中MPC工具箱中演示例子(mpctutst.M)的一部分, 其中介紹了運用MPC工具箱進行模型預(yù)測控制系統(tǒng)設(shè)計的一般步驟和方法。,% 系統(tǒng)傳遞函數(shù): g=5.72exp(-14s)/(60s+1) % 干擾的傳遞函數(shù): gd=1.52exp(-15s)/ (25s+1) % 創(chuàng)建階躍響應(yīng)模

13、型, 采樣周期指定為7秒 delt1=0; delay1=14; num1=5.72; den1=60 1; g=poly2tfd(num1, den1, delt1, delay1); tfinal=245; delt2=7; nout1=1;,plant=tfd2step(tfinal, delt2, nout1, g); delay2=15; num2=1.52; den2=25 1; gd=poly2tfd(num2, den2, delt1, delay2); delt2=7; nout2=1; dplant=tfd2step(tfinal, delt2, nout2, gd); %

14、 計算MPC控制器的增益矩陣 % 輸出權(quán)重 = 1, 輸入權(quán)重 = 0,% 輸入計算的時間跨度 = 5, 輸出計算的時間跨度 = 20 model = plant; ywt=1; uwt=0; M=5; P=20; Kmpc1=mpccon(model, ywt, uwt, M, P); % 仿真系統(tǒng)dplant對不可測干擾和測量噪聲的階躍響應(yīng) tend=245; r= ; usat= ; tfilter= ; dmodel= ; dstep=1;,y1, u1=mpcsim(plant, model, Kmpc1, tend, r, usat, tfilter, . dplant, dmod

15、el, dstep); dmodel=dplant; % 包含測量噪聲 y2, u2=mpcsim(plant, model, Kmpc1, tend, r, usat, tfilter, . dplant, dmodel, dstep); plotall(y1, y2, u1, u2, delt2); pause; % 對測量噪聲干擾的階躍響應(yīng), 暫停程序的運行, 觀察計算的仿真曲線 % 在另一組參數(shù)下重新計算MPC控制器的增益矩陣,% 輸出權(quán)重 = 1, 輸入權(quán)重 = 10 % 輸入計算的時間跨度 = 5, 輸出計算的時間跨度 = 20 model=plant; ywt=1; uwt=10

16、; M=5; P=20; mpc2=mpccon(model, ywt, uwt, M, P); % 仿真系統(tǒng)dplant對不可測干擾和測量噪聲的階躍響應(yīng) tend=245; r= ; usat= ; tfilter= ; dmodel= ;,dstep=1; y3, u3=mpcsim(plant, model, Kmpc2, tend, r, usat, tfilter, . dplant, dmodel, dstep); dmodel=dplant; % 包含測量噪聲 y4, u4=mpcsim(plant, model, Kmpc2, tend, r, usat, tfilter, .

17、 dplant, dmodel, dstep); plotall(y3, y4, u3, u4, delt2); pause; % 暫停程序, 觀察仿真結(jié)果,7.2.4 閉環(huán)回路分析 除了直接進行仿真, MPC工具箱中還包含其它用來分析閉環(huán)系統(tǒng)穩(wěn)定性和動態(tài)行為的函數(shù)和工具。 我們可以通過mpcc1函數(shù)獲得閉環(huán)系統(tǒng)的狀態(tài)空間描述, 然后可以利用smpcpole函數(shù)決定系統(tǒng)的極點位置。 下面的程序是mpctutst.M的一部分:,% 構(gòu)造無干擾的閉環(huán)系統(tǒng), uwt = 0, 確定系統(tǒng)的極點 clmod = mpccl(plant, model, Kmpc1); poles = smpcpole(c

18、lmod); maxpole = max(poles) 計算結(jié)果為: maxpole = 1.0。 如果系統(tǒng)所有的極點均位于單位圓內(nèi)或圓上, 則閉環(huán)系統(tǒng)是穩(wěn)定的, 進一步還可以分析閉環(huán)系統(tǒng)的頻率響應(yīng)。 對于多變量系統(tǒng), 還可以利用svdfrsp函數(shù)計算系統(tǒng)奇異值關(guān)于頻率的函數(shù)。,例如(mpctutst.M) % 計算靈敏函數(shù)和輔助靈敏函數(shù)的頻率響應(yīng)C freq = -3, 0, 30; ny = 1; in = 1:ny; % 輔助靈敏函數(shù)的輸入為r out = 1:ny; % 輔助靈敏函數(shù)的輸出為 yp frsp, eyefrsp = mod2frsp(clmod, freq, out, i

19、n);,plotfrsp(eyefrsp); % 計算靈敏度 pause; plotfrsp(frsp); % 計算輔助靈敏度 pause; % 收有頻率的幅值為1,7.2.5 有約束的模型預(yù)測控制 MPC工具箱可以用來計算輸入輸出存在約束的系統(tǒng)。 假設(shè)系統(tǒng)輸入變量約束,(7.9),輸入速率約束,(7.10),輸出變量約束,(7.11),如果系統(tǒng)存在上述的輸入輸出約束, 計算控制規(guī)律的每一步都需要求解二次方程, 最終所得的控制信號一般是非線性的, 這樣系統(tǒng)的分析只能通過仿真進行。 讓我們再看一下mpctutst.M程序中的相應(yīng)處理(圖7.5為計算后的仿真曲線): % 分別在無約束和有約束情況下

20、, 仿真系統(tǒng)dplant對系統(tǒng)階躍干擾的響應(yīng) % 輸出權(quán)重 = 1, 輸入權(quán)重 = 0 % 輸入計算的時間跨度 = 5, 輸出計算的時間跨度 = 20,圖 7.5 有約束系統(tǒng)的仿真曲線,% 輸入信號的下限 = -0.4 % 輸入信號的上限 = inf % 輸入的速率上限 = 0.1 model = plant; ywt = 1; uwt = 0; M = 5; P = 20; tend = 245; r = 0; ulim = ; ylim = ; tfilter = ; dmodel = ; dstep = 1;,y9, u9 = cmpc(plant, model, ywt, uwt, M

21、, P, tend, r, . ulim, ylim, tfilter, dplant, dmodel, dstep); ulim = -0.4, inf, 0.1; % 加入約束 y10, u10 = cmpc(plant, model, ywt, uwt, M, P, tend, r, . ulim, ylim, tfilter, dplant, dmodel, dstep); plotall(y9, y10, u9, u10, delt2);,7.3 基于狀態(tài)空間模型的模型預(yù)測控制,7.3.1 MPC表示的狀態(tài)空間模型 考慮圖7.6所示的系統(tǒng)對象框圖。 MPC工具箱中使用的離散線性時不變

22、(LTI)系統(tǒng)狀態(tài)方程的一般描述為,(7.12),圖 7.6 MPC被控系統(tǒng)的框圖,其中, x表示n個狀態(tài)變量的狀態(tài)向量, u表示nu個輸入變量, d代表nd個可測的但只有變化的輸入(也就是可測的干擾信號), w代表nw個不可測干擾。 y是ny個系統(tǒng)輸出, z是相應(yīng)的測量噪聲, 和u等是一定大小的常數(shù)矩陣, 變量y(k)表示沒有加入測量噪聲的系統(tǒng)輸出。 定義,在MPC工具箱中, 系統(tǒng)的狀態(tài)方程模型是以特殊的格式保存的, 稱為mod格式。它是一個包含系統(tǒng)狀態(tài)空間基本矩陣、 、 C、 D和其它一些信息的矩陣。 MPC工具箱提供了一系列函數(shù)完成其它模型向mod格式的轉(zhuǎn)換。 1) SISO連續(xù)時間傳遞

23、函數(shù)的轉(zhuǎn)換 假設(shè)連續(xù)時間傳遞函數(shù)的一般表示為,(7.13),例 7.1 考慮下面的傳遞函數(shù)模型, 創(chuàng)建該模型的MPC mod格式表示。,解: 具體的代碼如下: G = poly2tfd(-13.6 1, 54.3 113.5 1, 0, 5.3); % 創(chuàng)建傳遞函數(shù)模型 mod = tfd2mod(2.1, 1, G); % 將傳遞函數(shù)模型轉(zhuǎn)換成MPC mod格式, 采樣周期為2.1秒,2) SISO離散時間傳遞函數(shù)的轉(zhuǎn)換 假設(shè)離散時間傳遞函數(shù)的一般表示為,(7.14),其中的Td表示系統(tǒng)的時間延遲。 使用tf或poly2tfd函數(shù)可以創(chuàng)建上述模型的系統(tǒng)。 然后通過tfd2mod命令可以將傳遞

24、函數(shù)形式轉(zhuǎn)換成MPC表示的mod格式。,例 7.2 將下面的離散SISO系統(tǒng)轉(zhuǎn)換成MPC mod格式,解: 具體代碼為 G = poly2tfd(-0.1048 0.1215 0.0033, 1 -0.9882 0.0082, 2.1, 3);mod = tfd2mod(2.1, 1, G); 注意, 這里的poly2tfd和tfd2mod命令指定了相同的采樣周期(delta = 2.1)。 實際上, 也可以在兩個命令中指定不同的采樣周期。,3) MIMO傳遞函數(shù)的轉(zhuǎn)換 假定MIMO系統(tǒng)具有下面的傳遞函數(shù)矩陣描述,其中, gi,j表示第j個輸入到第i個輸出之間的傳遞函數(shù)。 如果所有ny個輸出都

25、可以測量, 所有nu個輸入都是控制變量, 則直接調(diào)用tfd2mod命令就可以得到正確的mod格式模型。 例如, 對于下面的三輸入二輸出系統(tǒng),(7.15),下面的命令將該系統(tǒng)轉(zhuǎn)換成mod格式(其中采樣周期為 T=4 s): g11 = poly2tfd(12.8, 16.7 1, 0, 1); g21 = poly2tfd(6.6, 10.9 1, 0, 7); g12 = poly2tfd(-18.9, 21.0 1, 0, 3); g22 = poly2tfd(-19.4, 14.4 1, 0, 3); g13 = poly2tfd(3.8, 14.9 1, 0, 8); g23 = pol

26、y2tfd(4.9, 13.2 1, 0, 3); pmod = tfd2mod(4, 2, g11, g21, g12, g22, g13, g23);,如果假設(shè)其中的第三個輸入是不可測的干擾, 相應(yīng)的系統(tǒng)描述變成,(7.16),在這種情況下, 需要通過分別指定控制變量、 可測干擾和不可測干擾的輸入數(shù)目來重載tfd2mod命令的缺省模式。 通常只要修改所得模型的第1行的相應(yīng)內(nèi)容即可。 其中的具體含義如下:,第1列元素T: 系統(tǒng)的采樣周期。 第2列元素n: 系統(tǒng)的狀態(tài)個數(shù)。 第3列元素nu: 控制輸入變量的數(shù)目。 第4列元素nd: 測量干擾的數(shù)目。 第5列元素nw: 不可測干擾的數(shù)目。 第6列

27、元素nym: 可測量輸出的數(shù)目。 第7列元素nyu: 不可測量輸出的數(shù)目。,4) 離散或離散狀態(tài)方程的轉(zhuǎn)換 使用c2dmp(將連續(xù)系統(tǒng)轉(zhuǎn)換成離散狀態(tài)方程形式)和ss2mod(將離散狀態(tài)方程寫成mod格式)命令可以將連續(xù)時間狀態(tài)方程模型轉(zhuǎn)換成MPC mod格式的模型。 當(dāng)然, 如果已經(jīng)得到離散狀態(tài)方程形式, 第一步就不需要了。 例如, 假定a、 b、 c和d是描述一個連續(xù)系統(tǒng)的矩陣, 為了將它轉(zhuǎn)換成采樣周期為T=1.5 s的mod格式, 可以輸入下面的命令: phi, gam = c2dmp(a, b, 1.5); mod = ss2mod(phi, gam, c, d, 1.5);,5) mo

28、d格式模型的組合 MPC工具箱中的addmod、 addumd、 appmod、 paramod和sermod等命令允許用戶將多個簡單的mod格式模型組合成更為復(fù)雜的系統(tǒng)結(jié)構(gòu)。 例如, addmod可以將多個可測擾動的影響集中到單個系統(tǒng)中, 如圖7.7所示。,圖 7.7 多個mod模型的組合,而pmod可以集中多個控制變量u(k)的影響, 也可以對輸出變量y(k)上的不可測干擾w(k)進行類似的處理。 dmod命令可以組合同一輸出變量上的多個測量干擾。 一旦完成這些信號組合的工作后, 就可以使用addmd命令產(chǎn)生組合后的最終模型: model = addmd(pmod, dmod);,6) m

29、od格式向其它類型模型的轉(zhuǎn)換 函數(shù)mod2ss可以將mod格式的模型轉(zhuǎn)換成標(biāo)準(zhǔn)的離散狀態(tài)方程形式: phi, gam, c, d, minfo = mod2ss(mod); 其中, phi、 gam、 c和d分別是下面狀態(tài)方程的系數(shù)矩陣。 x(k+1)=x(k)+u(k) y(k)=Cx(k)+Du(k) 向量minfo則包含mod模型中的第一行中的內(nèi)容。,7.3.2 基于狀態(tài)空間模型的無約束MPC設(shè)計 一旦得到被研究系統(tǒng)的mod格式描述, 就可以使用下面的命令完成系統(tǒng)設(shè)計的工作: smpccon: 計算無約束控制器的增益矩陣。 smpcest: 設(shè)計狀態(tài)觀測器(可選)。 smpcsim: 計

30、算閉環(huán)系統(tǒng)在指定輸入信號下的響應(yīng)。 plotall(ploteach): 繪制計算得到的仿真曲線。 另外, 還可以使用下面的命令分析閉環(huán)系統(tǒng)的特定屬性: smpcc1: 產(chǎn)生閉環(huán)系統(tǒng)模型(系統(tǒng)對象加上控制器)。,smpcgain: 計算閉環(huán)系統(tǒng)的增益矩陣。 smpcpole: 計算閉環(huán)系統(tǒng)的極點。 mod2frsp(plotfrsp): 計算并繪制閉環(huán)系統(tǒng)頻率響應(yīng)曲線。 svd2frsp: 計算頻率響應(yīng)的奇異值。,例 7.3 對于式(7.16)描述的MIMO系統(tǒng), 來設(shè)計該系統(tǒng)的MPC控制器。 解: 首先將系統(tǒng)定義成mod格式, 下面的程序?qū)⑼瓿蛇@一工作(采樣周期設(shè)置為2秒) delt = 2

31、; ny = 2; g11 = poly2tfd(12.8, 16.7 1, 0, 1); g21 = poly2tfd(6.6, 10.9 1, 0, 7); g12 = poly2tfd(-18.9, 21.0 1, 0, 3); g22 = poly2tfd(-19.4, 14.4 1, 0, 3);,umod = tfd2mod(delt, ny, g11, g21, g12, g22); % 定義u 輸入的效果 g13 = poly2tfd(3.8, 14.9 1, 0, 8); g23 = poly2tfd(4.9, 13.2 1, 0, 3); dmod = tfd2mod(de

32、lt, ny, g13, g23); % 定義w 輸入的效果 pmod = addumd(umod, dmod); % 將上面得到的兩個模型進行組合,接下來設(shè)計系統(tǒng)的無約束MPC控制器。 設(shè)計參數(shù)本質(zhì)上應(yīng)與基于階躍響應(yīng)模型的函數(shù)(參考前一節(jié)的內(nèi)容)相同。 在本例中, 選擇如下的設(shè)計參數(shù): imod = pmod; % 假設(shè)建立的模型是準(zhǔn)確的 ywt = ; % 兩個輸出采用缺省(單位)的權(quán)重 uwt = ; % 兩個輸入采用缺?。悖┑臋?quán)重 P = 5; % 預(yù)測時間寬度 M = P; % 控制的時間寬度 Ks = smpccon(imod, ywt, uwt, M, P);,下面通過仿真輸出

33、y1的階躍響應(yīng)檢查所設(shè)計的控制器。 圖7.8是仿真的結(jié)果。 tend=30; % 仿真的時間長度 r = 1 0; % 兩個輸出的設(shè)置點 y, u = smpcsim(pmod, imod, Ks, tend, r); plotall(y, u, delt),圖 7.8 輸出階躍響應(yīng)的仿真曲線,7.3.3 基于狀態(tài)空間模型的有約束MPC設(shè)計 函數(shù)scmpc可以處理控制變量和輸出變量上的不等式約束問題。 解決有約束狀態(tài)空間MPC問題的基本步驟是首先使用前一小節(jié)討論的函數(shù), 使用系統(tǒng)的狀態(tài)空間模型分析無約束情況下的預(yù)測時間跨度、 控制時間跨度、 系統(tǒng)的輸入輸出權(quán)重和系統(tǒng)的狀態(tài)觀測器等等。 然后再考慮有約束的情況, 并利用scmpc函數(shù)求解該問題。 下面的例子將演示求解有約束MPC問題的基本過程。,讓我們再看一看前一小

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論