(完整版)模型預測控制_第1頁
(完整版)模型預測控制_第2頁
(完整版)模型預測控制_第3頁
(完整版)模型預測控制_第4頁
(完整版)模型預測控制_第5頁
已閱讀5頁,還剩24頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

(完整版)模型預測控制云南大學信息學院學生實驗報告課程名稱:現代控制理論實驗題目:預測控制小組成員:李博(12018000748)金蔣彪(12018000747)專業:2018級檢測技術與自動化專業TOC\o"1-5"\h\z\o"CurrentDocument"1、實驗目的 3\o"CurrentDocument"2、實驗原理 4\o"CurrentDocument"2。1、預測控制特點 4\o"CurrentDocument"2。2、預測控制模型 5\o"CurrentDocument"在線滾動優化 6\o"CurrentDocument"反饋校正 7\o"CurrentDocument"2。5、預測控制分類 8\o"CurrentDocument"動態矩陣控制 9\o"CurrentDocument"3、MATLAB仿真實現 11\o"CurrentDocument"3.1、對比預測控制與PID控制效果 12\o"CurrentDocument"3。2、P的變化對控制效果的影響 14\o"CurrentDocument"3。3、M的變化對控制效果的影響 15\o"CurrentDocument"3.4、模型失配與未失配時的控制效果對比 16\o"CurrentDocument"4、總結 17\o"CurrentDocument"5、附錄 185.1、預測控制與PID控制對比仿真代碼 185。1。1、預測控制代碼 18\o"CurrentDocument"5.1。2、PID控制代碼 19\o"CurrentDocument"5。2、不同P值對比控制效果代碼 22\o"CurrentDocument"5.3、不同M值對比控制效果代碼 23\o"CurrentDocument"5。4、模型失配與未失配對比代碼 241、實驗目的(1)、通過對預測控制原理的學習,掌握預測控制的知識點。(2)、通過對動態矩陣控制(DMC)的MATLAB仿真,發現其對直接處理具有純滯后、大慣性的對象,有良好的跟蹤性和較強的魯棒性,輸入已知的控制模型,通過對參數的選擇,來獲得較好的控制效果。(3)、了解matlab編程。2、實驗原理模型預測控制(ModelPredictiveControl,MPC)是20世紀70年代提出的一種計算機控制算法,最早應用于工業過程控制領域。預測控制的優點是對數學模型要求不高,能直接處理具有純滯后的過程,具有良好的跟蹤性能和較強的抗干擾能力,對模型誤差具有較強的魯棒性。因此,預測控制目前已在多個行業得以應用,如煉油、石化、造紙、冶金、汽車制造、航空和食品加工等,尤其是在復雜工業過程中得到了廣泛的應用。在分類上,模型預測控制(MPC)屬于先進過程控制,其基本出發點與傳統PID控制不同。傳統PID控制,是根據過程當前的和過去的輸出測量值與設定值之間的偏差來確定當前的控制輸入,以達到所要求的性能指標。而預測控制不但利用當前時刻的和過去時刻的偏差值,而且還利用預測模型來預估過程未來的偏差值,以滾動優化確定當前的最優輸入策略。因此,從基本思想看,預測控制優于PID控制。2.1、預測控制特點首先,對于復雜的工業對象.由于辨識其最小化模型要花費很大的代價,往往給基于傳遞函數或狀態方程的控制算法帶來困難,多變量高維度復雜系統難以建立精確的數學模型工業過程的結構、參數以及環境具有不確定性、時變性、非線性、強耦合,最優控制難以實現。而預測控制所需要的模型只強調其預測功能,不苛求其結構形式,從而為系統建模帶來了方便。在許多場合下,只需測定對象的階躍或脈沖響應,便可直接得到預測模型,而不必進一步導出其傳遞函數或狀態方程,這對其工業應用無疑是有吸引力的。更重要的是,預測控制汲取了優化控制的思想,但利用滾動的有限時段優化取代一成不變的全局優化。這雖然在理想情況下不能導致全局最優,但由于實際上不可避免地存在著模型誤差和環境十擾,這種建立在實際反饋信息基礎上的反復優化,能不斷顧及不確定性的影響并及時加以校正,反而要比只依靠模型的一次優化更能適應實際過程,有更強的魯棒性.所以,預測控制是針對傳統最優控制在工業過程中的不適用性而進行修正的一種新型優化控制算法。預測控制建模方便,對模型要求不高滾動優化的策略,具有較好的動態控制效果簡單實用的反饋校正,有利于提高控制系統的魯棒性不增加理論困難,可推廣到有約束條件,大純滯后,非 最小相位及非線性等過程是一種計算機優化控制算法。2。2、預測控制模型預測算法基本工作過程分為:模型預測、滾動優化、反饋校正。預測模型旨在根據被控對象的歷史信息和未來輸入,預測系統未來響應。預測模型形式有參數模型:如微分方程、傳遞函數、差分方程等;非參數模型:如脈沖響應、階躍響應模型等.它的功能是:根據被控對象的歷史信息{口(k—j),y(k—j)|j21}和未來輸入{口(k+j—1)1j=1,o00,m},預測系統未來響應{y(k+j)|j=1,Oo.,p}o?基于模型的預測示意圖1T制策略I 3—對應于控制策略I的輸出2—控制策略n —時應于控制策略II的輸出2。3、在線滾動優化模型預測控制是一種優化控制算法,通過某一性能指標的最優來確定未來的控制作用.控制目的是通過某一性能指標的最優,確定未來的控制作用.其優化過程的特點:隨時間推移在線優化,反復進行;每一步實現的是靜態優化;全局是動態優化。因此滾動優化是按照某個目標函數確定當前和未來控制作用的大小,使這些控制作用將使未來輸出預測序列沿某個參考軌跡“最優地”達到期望輸出設定值。其優化過程不采用一成不變的全局最優化目標,而是采用滾動式的有限時域優化策略。優化過程不是一次離線進行,而是在線反復進行優化計算,滾動實施,從而使模型失配、時變、干擾等引起的不確定性能及時得到彌補,提高系統的控制效果.其作用如下圖所示:I—I—參考軌電/虛線)2—最優前測輸出必實線)3-最觸制作用"k#+1 tfl2.4、反饋校正模型預測控制是一種閉環控制算法.為了防止模型失配或環境干擾引起控制對理想狀態的偏離,預測控制通常不把這些控制作用逐一全部實施,而只是實現本時刻的控制作用。到下采樣時刻則需首先檢測對象的實際輸出,再通過實際測到的輸出信息對基于模型的預測輸出進行修正,然后再進行新的優化。不斷根據系統的實際輸出對預測輸出值作出修正使滾動優化不但基于模型,而且利用了反饋信息,構成閉環優化.反饋修正的形式有:在保持預測模型不變的基礎上,對未來的誤差做出預測并加以補償;根據在線辨識的原理直接修改預測模型。另外,反饋控制要注意模型失配問題,即實際被控過程存在非線性、時變性、不確定性等原因,使基于模型的預測不可能準確地與實際被控過程相符。其示意圖如下:?反饋校正示意圖I-A時刻的預測輸出 A&+1時刻預測誤差2—A+1時刻實際輸出 4-k+1時刻校正后的預測輸出v伏+力幻v伏+力幻Mg)打仗力)Mg)9伏+1)=上伙+1)+色伏+1)

隊k4-1)=e(k)-y(k)-ym(k)2。5、預測控制分類預測控制按照算法來分類,有基于非參數模型的預測控制算法和基于ARMA或CARIMA等輸入輸出參數化模型預測控制算法.非參數模型算法代表性的算法有模型算法控制MAC和動態矩陣控制DMC。這類算法適合處理開環穩定多變量過程約束間題的拉制。參數模型算法代表性的算法為廣義預測控制算法GPC。這類算法可用于開環不穩定、非最小相位和時變時滯等較難控制的對

象,并對系繞的時滯和階次不確定有良好的魯棒性.但對于多變量系統,算法實施較困難.此外,還有一種不屬于這兩種之一的算法:滾動時域控制。這種算法由著名的LQ或LQG算法發展而來.對于狀態空間模型,用有限時域二次性能指標再加終端約束的滾動時域控制方法來保證系統穩定性。它已拓展至跟蹤控制和輸出反饋控制.本次實驗進行的仿真,是針對難度較大DMC,即動態矩陣控制,下一節將就DMC進行原理介紹.2。6、動態矩陣控制動態矩陣控制基于系統的階躍響應,適用于穩定的系統,系統的動態特性中具有純滯后或非最小相位特性都不影響該算法的直接應用.該系統直接以對象的階躍響應離散系數為模型。動態矩陣利用有限集合來描述系統的動態特性,其集合長度N稱為建模時域.這就要求系統是漸近穩定的,保證了模型可用有限的階躍響應描述。其示意圖如下所示:?DMC的預測模型漸近穩定線性被控對象的單位階躍響應曲線系統的離散脈沖響應示意圖從被控對象的階躍響應出發,對象動態特性用一系列動態系數a1,a2,…an,即單位階躍響應在采樣時刻的值來描述,其中n為模型時域長度,an為足夠接近穩態值的系數模型時域n內,根據線性系統的比例和疊加性質,若某個k—i時刻輸入u(k—i),則Au(k—i)對輸出丫a)的貢獻為y(k)=譏△u(k-i)若在所有k—i(1WiWn)時刻同時有輸入,則根據疊加原理有■-:1-■1■:-:⑵利用式(2)得到y(k+j)的p步預測(pWn),文中取p=n:+j)=力值芯庠柒十,一,)十為利用階躍模型進行預測,把過去的輸入對未來的輸出貢獻分離出來,上式可寫為:士(&+:)=>:卬3口@+j一—+>:a+/—jO+4/(自+Jp)(j=I,2,—tp)后兩項即過去輸入對輸出預測,記為:%凌)=£珥AirO+J—f)-F*一升i口戶〃3+)—力)= 7…小)將上式寫成矩陣公式:%a2%a2Au(Jt)+I)/(上+2)1他+9J(4%…研兒Aw伏+”1)J5伏+鼻);為了增加系統的動態穩定性和控制輸入的可實現性,減少計算量,可將△口向量減少為m維(mVp),則系統輸出為:Y=A△u+y口 (3)其中Y為預測向量;A為動態矩陣;曠0為預測初值向量。動態矩陣控制以優化確定控制策略,在優化過程中,同時考慮輸出跟蹤期望值和控制量變化來選擇最優化準則。往往不希望控制增量△口變化過于劇烈,這一因素在優化性能指標中加入軟約束予以考慮。通過滾動優化,確定出未來兇個控制增量,使未來「個輸出預測值盡可能接近期望值,不同采樣時刻,優化性能指標不同,但都具有同樣的形式,且優化時域隨著時間不斷地向前推移。系統的預測模型是根據動態響應系數和控制增量來決定的,該算法的控制增量是通過使最優化準則最小化來確定的,以使系統未來每個輸出盡可能接近期望值。所以,預測控制的控制策略是在實施了4口收)之后,采集k+1時刻的輸出數據,進行新的預測、校正、優化,從而避免在等待m拍控制輸入完畢期間,由于干擾等影響造成的失控。因此,優化過程不是一次離線進行的,而是反復在線進行的,其優化目標也是隨時間推移的,即在每一時刻都提出一個立足于該時刻的局部優化目標,而不是采用不變的全局優化目標。3、MATLAB仿真實現接下來將對一個一階時滯系統進行仿真,其傳遞函數如下:e-80sGp㈤該部分的仿真共分為四個部分。第一部分對比動態矩陣控制(DMC)與PID控制的效果。第二部分對比動態矩陣控制中優化時域P的變化對控制效果的影響。第三部分對比控制時域M的

變化對控制效果的影響。由于預測控制具有對失配模型也能進行控制的特性,第四部分對比系統失配與未失配時的控制效果。□3。1、對比預測控制與PID控制效果□Figsure1文件⑥編輯⑥查看出插入(D工具CD直面?盲口也幫助回21064工aa021064工aa0圖3。1DMC在階躍響應下的輸出

Figur-e1文件團編輯⑥盤以插入(D工具CD桌面?密口也幫助回Dah|琳|冤、蟲檢要/T國|口園|■國圖3。2PID在階躍響應下的輸出PID控制需要進行參數整定,為使該過程盡量簡化步驟,這里采用試湊法進行PID參數整定,試湊法整定PID參數其步驟如下:①比例部分整定:首先將KI和KD取零,令KP由小到大,觀察系統響應。直至速度快且有一定范圍的超調為止,若響應已滿足要求則使用純比例控制即可。②積分部分整定:在純比例控制達不到要求時,加入積分作用。將KI由小逐漸增大,這時系統誤差會逐步減小直至消除,選擇合適的長匕若此時超調增大,可適量減小KP。③微分部分整定:若使用PI控制器達不到要求時,加入微分控制。將KD由小逐漸增大,觀察超調和穩定性同時相應調節KP、KI進行試湊。

Ki=0。5,Ki=0。5,Kd=140時,輸出入圖3。2所示。由于系統震蕩過大,再次減小比例系數至K=0。1,輸出效果如圖3.3所示:

p文件⑥編輯?意音M插入心ZMCD克回?商口也幫助圜D3|詩|、入踮包夔送」國|口目|口0-0.2口0200 400行仆0BOO100D-0.2口0200 400行仆0BOO100D120014001600180020OTtime⑸3642O.O.O.O.InoAcLJ圖3。3PID控制參數整定后輸出效果對比兩個仿真結果可知:動態矩陣控制下的輸出更加穩定,快速,且無超調。動態矩陣控制(DMC)的控制效果比「2要好。實際上,動態矩陣控制是改進版的PID。P的變化對控制效果的影響優化時域P表示我們對k時刻起未來多少步的輸出逼近期望值感興趣.當采樣周期T=20s,控制時域M=2,建模時域N=20,優化時域P分別為6,10和20時的階躍響應曲線如圖3。4所示.

;W;WFigwns1尸I回I1M'文件舊編輯⑥>w(y)播入山工具cd虎面?窗口也幫助回na|k庖雯/▼&n@□h0.2100 300 300 400 500 600 700 800 900 1000圖二.P0.2100 300 300 400 500 600 700 800 900 1000圖二.P不同對系毓性能的影響(time/s)21364TO,O,O.—僵圖3。4優化時域P的變化對控制效果的影響圖中曲線1為P=6時的階躍響應曲線;曲線2為P=10時的階躍響應曲線;曲線3為P=20時的階躍響應曲線.從圖中可以看出:增大P,系統的快速性變差,系統的穩定性增強;減小P,系統的快速性變好,穩定性變差。所以「的選擇應該兼顧快速性和穩定性.M的變化對控制效果的影響控制時域M表示所要確定的未來控制量的改變數目。當采樣周期T=20s,優化時域P=20,建模時域N=20,控制時域M分別取4,2和1時系統的響應曲線如圖3.5所示.i-4Figure1IZZ1文件團編輯⑥盤出插入(D工具CD受面?密口也幫助回IZZ10.2100 200 300 400 500 600 700 800 900 1000圖QMC控制動態響應曲統Uime/s)213641_O,O.O.黑一逼僵O國。0.2100 200 300 400 500 600 700 800 900 1000圖QMC控制動態響應曲統Uime/s)213641_O,O.O.黑一逼僵圖3.5控制時域M的變化對控制效果的影響圖中曲線1為M=4時的響應曲線;曲線2為M=2時的響應曲線;曲線3為M=1時的響應曲線。從圖中可以看出:減小M,系統的快速性變差,系統的穩定性增強;增大M,系統的快速性變好,穩定性變差。增大P和減小M效果類似,所以在選擇時,可以先確定M再調整P,并且M小于等于P。3。4、模型失配與未失配時的控制效果對比當模型失配時,其他控制方法很難起到理想的作用,但是預測控制卻可以應用于模型失配的情況。其仿真結果如下圖3。6所示.igur-e文件田編輯⑥盤也)插入由工具igur-e文件田編輯⑥盤也)插入由工具CD受面?密口也幫助過naa^ik,A㈠庖噌/,&n@nh0.2100 200 300 400M0600 700 800 9001WM)國四模型失配時的響應曲線(time/s)0.2100 200 300 400M0600 700 800 9001WM)國四模型失配時的響應曲線(time/s)210641o.o.a—僵O圖3。6系統模型失配與未失配時的控制效果對比圖中曲線1為未失配時的階躍響應曲線;曲線2為模型失配時的階躍響應曲線.從圖中可以看出:當模型失配時,DMC控制有一定的超調,快速性下降,但能很快進入穩定狀態,控制效果令人滿意.所以DMC在形成閉環控制時,對模型失配具有很好的魯棒性。4、總結現在對預測控制的特點進行總結。首先,對于復雜的工業對象,由于辨識其最小化模型要花費很大的代價,往往給基于傳遞函數或狀態方程的控制算法帶來困難.而預測控制所需要的模型只強調其預測功能,不苛求其結構形式,從而為系統建模帶來了方便。在許多場合下,只需測

定對象的階躍或脈沖響應,便可直接得到預測模型,而不必進一步導出其傳遞函數或狀態方程,這對其工業應用無疑是有吸引力的。更重要的是,預測控制汲取了優化控制的思想,但利用滾動的有限時段優化取代一成不變的全局優化。這雖然在理想情況下不能導致全局最優,但由于實際上不可避免地存在著模型誤差和環境十擾,這種建立在實際反饋信息基礎上的反復優化,能不斷顧及不確定性的影響并及時加以校正,反而要比只依靠模型的一次優化更能適應實際過程,有更強的魯棒性。所以,預測控制是針對傳統最優控制在工業過程中的不適用性而進行修正的一種新型優化控制算法。5、附錄5。1、預測控制與PID控制對比仿真代碼5.1。1、預測控制代碼g二poly2tfd(1,[601],0,80);%通用傳函轉換為MPC模型delt=20;%采樣周期nt=1;%輸出穩定性向量tfinal=1000;%截斷時間model=tfd2step(tfinal,delt,nt,g);%傳函轉換為階躍響應模型plant=model;%進行模型預測控制器設計p=10;m=2;ywt=[];uwt=1;%設置輸入約束和參考軌跡等控制器參數kmpc二mpccon(plant,ywt,uwt,m,p);%模型預測控制器增益矩陣計算tend=1000;r=1;%仿真時間[y,u,yrn]二mpcsim(plant,model,kmpc,tend,r);%模型預測控制仿真t=0:20:1000;%定義自變量t的取值數組plot(t,y);xlabel('DMC控制階躍響應輸出‘);ylabel(‘響應曲線’);grid;2、PID控制代碼%PIDControler不完全微分closeall;ts=20;sys=tf([1],[60,1],'inputdelay',80);dsys=c2d(sys,ts,’zoh');[num,den]=tfdata(dsys,'v’);u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;ud_1=0;y_1=0;y_2=0;y_3=0;error_1=0;ei=0;fork=1:1:100;time(k)=k*ts;rin(k)=1。0;%Linear?model?yout(k)=—den(2)*y_1+num(2)*u_5;D(k)=0。01大rands⑴;yout(k)=yout(k)+D(k);error(k)=rin(k)-yout(k);%PID?Controller?with?partly?differential?ei=ei+error(k)*ts;kc=0。1;ki=0.5;TD=140;kd=kc*TD/ts;Tf=180;Q=tf([1],[Tf,1]);%Low?Freq?Signal?Filter??M=2;%M=1不完全微分,?%M=2普通Pid控制??!ifM==1;alfa=Tf/(ts+Tf);ud(k)=kd*(1—alfa)*(error(k)-error_1)+alfa*ud_1;u(k)=kc*error(k)+ud(k)+ki*ei;ud_1=ud(k);elseifM==2;%Using?Simple?PIDu(k)=kc*error(k)+kd*(error(k)—error_1)+ki*ei;endifu(k)>=10;u(k)=10;endifu(k)>=10;u(k)=10;endu_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_3=y_2;y_2=y_1;y_1=yout(k);error_1=error(k);endfigure(1);plot(time,rin,’b’,time,yout,'r');xlabel('time(s)’);ylabel('rin,yout')5。2、不同P值對比控制效果代碼g二poly2tfd(1,[601],0,80);%通用傳函轉換為MPC模型delt=20;%采樣周期nt=1;%輸出穩定性向量tfinal=1000;%截斷時間model=tfd2step(tfinal,delt,nt,g);%傳函轉換為階躍響應模型plant=model;%進行模型預測控制器設計p1=6;p2=10;p3=20;%優化時域m=2;%控制時域ywt=[];uwt=1;%設置輸入約束和參考軌跡等控制器參數kmpc1=mpccon(plant,ywt,uwt,m,p1);%模型預測控制器增益矩陣計算kmpc2=mpccon(plant,ywt,uwt,m,p2);kmpc3=mpccon(plant,ywt,uwt,m,p3);tend=1000;r=1;%仿真時間[y1,u,yrn]二mpcsim(plant,model,kmpc1,tend,r);%模型預測控制仿真[y2,u,yrn]=mpcsim(plant,model,kmpc2,tend,r);[y3,u,yrn]=mpcsim(plant,model,kmpc3,tend,r);t二0:20:1000;%定義自變量t的取值數組plot(t,y1,t,y2,t,y3);legend('1:p=6’,'2:p=10','3:p=20');xlabel('圖二P不同對系統性能的影響(time/s)');ylabel('響應曲線’);不同M值對比控制效果代碼g二poly2tfd(1,[601],0,80);%通用傳函轉換為MPC模型delt=20;%采樣周期nt=1;%輸出穩定性向量tfinal=1000;%截斷時間model=tfd2step(tfinal,delt,nt,g);%傳函轉換為階躍響應模型plant=model;%進行模型預測控制器設計p=10;m1=4;m2=2;m3=1;ywt二口;uwt=1;%設置輸入約束和參考軌跡等控制器參數kmpcl二mpccon(plant,ywt,uwt,m1,p);%模型預測控制

溫馨提示

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

評論

0/150

提交評論