多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開(kāi)源 > php教程 > 基于多個(gè)MPC的的調(diào)度控制器

基于多個(gè)MPC的的調(diào)度控制器

來(lái)源:程序員人生   發(fā)布時(shí)間:2016-09-06 15:06:04 閱讀次數(shù):3918次

1引言

本文J將對(duì)MATLAB自帶的MPC例子進(jìn)行詳細(xì)剖析
MPC:Model Predictive Control Toolbox
開(kāi)始設(shè)計(jì)工具:通過(guò)輸入MATLAB命令:‘mpctool’開(kāi)始設(shè)計(jì)工具。
下圖1中的圖形中左邊的3個(gè)欄目分別為受控對(duì)象模型(plant model)、模型預(yù)測(cè)控制器(Controllers)、仿真器(Scenarios)。
圖1.MPC工具箱
模型預(yù)測(cè)控制工具箱是1個(gè)圖形用戶(hù)界面的設(shè)計(jì)。這個(gè)GUI是控制和評(píng)估工具管理器GUI的1部份。見(jiàn)下圖
這里寫(xiě)圖片描述
這里寫(xiě)圖片描述
Mo(measured output):當(dāng)前可丈量的輸出信號(hào)
Ref(Reference signa):參考信號(hào)
Md(optional measured disturbance signa):可選的丈量干擾信號(hào)
Mv(optimal manipulated variables ):最優(yōu)操縱變量
MPC1般通過(guò)求解1個(gè)2次計(jì)劃(這里我們使用ord45)來(lái)計(jì)算最優(yōu)操縱變量
1個(gè)簡(jiǎn)單的例子以下圖所示:
這里寫(xiě)圖片描述

2.多個(gè)MPC調(diào)度控制器解決方案

2.1系統(tǒng)描寫(xiě)
如果你的對(duì)象模型是非線(xiàn)性,設(shè)計(jì)1個(gè)控制器操作在1個(gè)特定的目標(biāo)地區(qū)表現(xiàn)優(yōu)良,但可能在其他地區(qū)表現(xiàn)不佳。補(bǔ)償?shù)慕?jīng)常使用方法是設(shè)計(jì)多個(gè)控制器,每一個(gè)面向1個(gè)特定的操作條件的組合。他們之間切換實(shí)時(shí)隨著情況的變化。取得這項(xiàng)技術(shù)的調(diào)度是1個(gè)傳統(tǒng)的例子。下面的例子顯示了如何調(diào)和多個(gè)模型預(yù)測(cè)控制器
該系統(tǒng)是由兩個(gè)物體M1和M2分別連接到兩個(gè)獨(dú)立的彈簧k1和k2組成。假定當(dāng)M1和M2碰撞的時(shí)候是完全非彈性碰撞。力F對(duì)M1來(lái)講是拉力,這是可操縱變量( manipulated variable MV)。目標(biāo)是使M1的位置y1跟蹤給定參考位置r(Reference signa)。
當(dāng)M1和M2分離時(shí),M1自由地移動(dòng)。產(chǎn)生碰撞的時(shí)候,由因而完全非彈性碰撞,所以M1 + M21起移動(dòng)。我們假定只有M1的位置和接觸傳感器提供反饋。后者是用來(lái)觸發(fā)開(kāi)關(guān)MPC控制器來(lái)選擇MPC1還是MPC2。在這里,我們認(rèn)為,M2的位置和速度的不可控。這這里,我們認(rèn)為右方向?yàn)檎较?。以下圖這里寫(xiě)圖片描述所示:
2.2模型參數(shù)

clear all clc M1=1; % M1的質(zhì)量 M2=5; % M2的質(zhì)量 k1=1; % 彈簧k1常數(shù)k k2=0.1; % 彈簧k2常數(shù)k b1=0.3; % 與空氣的磨擦系數(shù),與速度成正比 b2=0.8; % 磨擦系數(shù) yeq1=10; % 剛性壁1的位置 yeq2=-10; % 剛性壁2的位置

2.3狀態(tài)空間模型
這里寫(xiě)圖片描述
states:M1的位置和速度
MV:推力F
MD:物體1由彈簧的需求的力F和實(shí)際給出的F之間的常量誤差,用來(lái)彌補(bǔ)彈簧彈力,使M在初始位置0上時(shí),彈簧對(duì)其作用力為零。
MO:M1的位置

2.3.1當(dāng)M1和M2沒(méi)有接觸時(shí)候的模型MPC1

%% 狀態(tài)空間模型 % 當(dāng)M1M2不接觸時(shí)候的狀態(tài)模型. A1=[0 1;-k1/M1 -b1/M1]; B1=[0 0;-1/M1 k1*yeq1/M1]; C1=[1 0]; D1=[0 0]; sys1=ss(A1,B1,C1,D1); %建立狀態(tài)空間表達(dá)式 sys1=setmpcsignals(sys1,'MD',2); %第2個(gè)輸入是可丈量擾動(dòng)

【注】:
1.Sys = ss(a,b,c,d):用來(lái)描寫(xiě)連續(xù)性的狀態(tài)空間模型
2.Setmpcsignals:設(shè)置MPC受控對(duì)象的的I/0信號(hào)模型。這個(gè)系統(tǒng)必須是線(xiàn)性時(shí)不變系統(tǒng),’MD’:可丈量的輸入擾動(dòng),,第2個(gè)輸入是可丈量的輸入擾動(dòng)。如果沒(méi)有指定的輸入變量是MV

這里寫(xiě)圖片描述
最后得出的結(jié)果:
這里寫(xiě)圖片描述

2.3.2當(dāng)M1和M2連接在1起時(shí)候的模型MPC2

% 當(dāng)M1和M2接觸時(shí)候的狀態(tài)模型. A2=[0 1;-(k1+k2)/(M1+M2) -(b1+b2)/(M1+M2)]; B2=[0 0;⑴/(M1+M2) (k1*yeq1+k2*yeq2)/(M1+M2)]; C2=[1 0]; D2=[0 0]; sys2=ss(A2,B2,C2,D2); sys2=setmpcsignals(sys2,'MD',2);

2.4 Multi-MPC控制設(shè)置

%% MPC仿真參數(shù)設(shè)置 Ts=0.2; % 采樣時(shí)間 p=20; % 預(yù)測(cè)時(shí)域長(zhǎng)度 m=1; % 控制時(shí)域長(zhǎng)度 %% 建立MPC模型 MPC1=mpc(sys1,Ts,p,m); % 定義M1M2分離的MPC模型 % 設(shè)置限制,F的大小不能為0,F斜率絕對(duì)值最大1000 MPC1.MV=struct('Min',0,'Max',Inf,'RateMin',-1e3,'RateMax',1e3); MPC2=mpc(sys2,Ts,p,m); %定義M1M2連接的MPC2模型 MPC2.MV=MPC1.MV; %系統(tǒng)1和系統(tǒng)2的控制限制1樣

2.5仿真參數(shù)設(shè)置

%% 仿真參數(shù)設(shè)置 Tstop=100; % 仿真時(shí)間 y1initial=0; % 物體1的初始位置 y2initial=10; % 物體2的初始位置 open_system('wc1'); % 調(diào)用wc1.MDL disp('Start simulation by switching control between MPC1 and MPC2 ...'); set_param('wc1/signals','Open','On');%設(shè)置系統(tǒng)和模型的參數(shù)值 sim('wc1',Tstop);%開(kāi)始動(dòng)態(tài)系統(tǒng)仿真

3.Simulatink實(shí)現(xiàn)

Simulation框圖以下圖所示:
這里寫(xiě)圖片描述
這里寫(xiě)圖片描述
這里寫(xiě)圖片描述
這里寫(xiě)圖片描述
這里寫(xiě)圖片描述

The total simulation diagram上面的部份摹擬兩個(gè)物體的運(yùn)動(dòng),并且這類(lèi)移動(dòng)會(huì)在在示波器中以信號(hào)的方式顯示出來(lái)。并且當(dāng)M1的位置和加速度均大于M2的位置和加速度時(shí),model輸出布爾量true或false;下半部份包括以下要素:
1.多個(gè)MPC控制器,。這有4個(gè)輸入:可丈量輸出(mo), 參考(ref),可丈量干擾(md)輸入和獨(dú)特的多個(gè)MPC控制器的功能塊switch輸入。
2.1脈沖產(chǎn)生器改變M1需要到達(dá)的位置 (控制器參考信號(hào))。此脈沖產(chǎn)生器的輸出是1個(gè)幅值為5的方波,頻率是0.015每秒。
3.摹擬傳感器的接觸。當(dāng)switch輸入1時(shí),激活第1個(gè)控制器MPC1,這個(gè)時(shí)候M1和M2是分離的。當(dāng)兩個(gè)物體有相同的位置時(shí),Compare to Constant的計(jì)算結(jié)果為1,通過(guò)Add1加法器的輸出值為2,Multiple MPC Controllers的switch端口被輸入2,自動(dòng)啟動(dòng)第2個(gè)控制器MPC2。

4.解決方案評(píng)價(jià)

下圖展現(xiàn)了仿真的進(jìn)程:
這里寫(xiě)圖片描述
4.1 MPC1與MPC2協(xié)同工作
下圖展現(xiàn)了對(duì)這個(gè)例子多個(gè)MPC控制器的仿真:
這里寫(xiě)圖片描述
?在圖上面上,青色的線(xiàn)(就是我們M1需要的到達(dá)的位置,由reference產(chǎn)生)它從⑸開(kāi)始。的M1位置(黃色)從0開(kāi)始動(dòng)身。 在MPC1的控制下, M1移動(dòng)迅速向所需的位置。M2(紅色)從10開(kāi)始開(kāi)始朝著同1個(gè)方向移動(dòng)
?大約在t = 13秒,M2與M1產(chǎn)生完全非彈性碰撞。M1與M2連在1起。第3幅圖顯示了開(kāi)關(guān)信號(hào)的變化,在這個(gè)瞬間從1到2,所以MPC2開(kāi)始起作用。。
?在M1+M2超過(guò)了從其所期望的位置時(shí)候,M2和M1仍連在1起。控制器MPC2調(diào)劑作用力F(中間的圖片)使M1+M2快速返回到所需的位置。當(dāng)r突變到5時(shí),效果1樣是非常不錯(cuò)的

4.2 單個(gè)MPC11直工作
假定我們的控制器MPC1運(yùn)行在所有條件下

%再進(jìn)行1次不管在甚么情況下只用MPC1系統(tǒng)的實(shí)驗(yàn) disp('Now repeat simulation by using only MPC1 ...'); MPC2save=MPC2; %先將MPC2保存起來(lái) MPC2=MPC1; %用MPC2來(lái)代替MPC21 sim('wc1',Tstop); %動(dòng)態(tài)系統(tǒng)仿真

下圖顯示了MPC1單獨(dú)工作的圖象
這里寫(xiě)圖片描述
如果1直是MPC1的系統(tǒng),力F不夠,當(dāng)M1和M2鏈連接在1起的時(shí)候,移動(dòng)緩慢,當(dāng)下1個(gè)轉(zhuǎn)變產(chǎn)生時(shí)還不能到達(dá)所需的位置

4.3單個(gè)MPC21直工作

%再進(jìn)行1次不管在甚么情況下只用MPC2系統(tǒng)的實(shí)驗(yàn) disp('Now repeat simulation by using only MPC2 ...'); MPC1=MPC2save; MPC2=MPC1; sim('WC1',Tstop);

假定我們的控制器MPC2運(yùn)行在所有條件下
下圖顯示了MPC1單獨(dú)工作的圖象
這里寫(xiě)圖片描述
當(dāng)M1和M2分開(kāi)的時(shí)候,MPC2也仍然使用,過(guò)度使用F,過(guò)度補(bǔ)償,致使振蕩產(chǎn)生。當(dāng)M2和M1連接在1起的時(shí)候,移動(dòng)更安穩(wěn),和預(yù)期1樣。最后過(guò)渡造成特別嚴(yán)重的振蕩。 M1和M2頻繁的碰撞,M1不能到達(dá)所需的位置。

5.參考文獻(xiàn)

[1] A. Bemporad, S. Di Cairano, I. V. Kolmanovsky, and D. Hrovat, “Hybrid
modeling and control of a multibody magnetic actuator for automotive applications,” in Proc. 46th IEEE(R) Conf. on Decision and Control, New Orleans, LA, 2007.
[2]http://cn.mathworks.com/help/mpc/gs/coordination-of-multiple-model-predictive-controllers.html#bs670e3⑻
[3]李國(guó)勇,智能預(yù)測(cè)控制及其MATLAB實(shí)現(xiàn).北京:電子工業(yè)出版社,2010.

6.附錄

%% 多個(gè)MPC的的調(diào)度控制器 % clc % clear all %% 系統(tǒng)參數(shù) clear all clc M1=1; % M1的質(zhì)量 M2=5; % M2的質(zhì)量 k1=1; % 彈簧k1常數(shù)k k2=0.1; % 彈簧k2常數(shù)k b1=0.3; % 與空氣的磨擦系數(shù),與速度成正比 b2=0.8; % 磨擦系數(shù) yeq1=10; % 剛性壁1的位置 yeq2=-10; % 剛性壁2的位置 %% 狀態(tài)空間模型 % 狀態(tài): M的速度和位置 % 被控變量:F % 可丈量的擾動(dòng):彈簧1的常熟; % 丈量輸出: M1的位置 % 當(dāng)M1和M2不接觸時(shí)候的狀態(tài)模型. A1=[0 1;-k1/M1 -b1/M1]; B1=[0 0;-1/M1 k1*yeq1/M1]; C1=[1 0]; D1=[0 0]; sys1=ss(A1,B1,C1,D1); %建立狀態(tài)空間表達(dá)式 sys1=setmpcsignals(sys1,'MD',2) ;%第2個(gè)輸入是可丈量擾動(dòng) % 當(dāng)M1和M2接觸時(shí)候的狀態(tài)模型. A2=[0 1;-(k1+k2)/(M1+M2) -(b1+b2)/(M1+M2)]; B2=[0 0;-1/(M1+M2) (k1*yeq1+k2*yeq2)/(M1+M2)]; C2=[1 0]; D2=[0 0]; sys2=ss(A2,B2,C2,D2); sys2=setmpcsignals(sys2,'MD',2); %% MPC仿真參數(shù)設(shè)置 Ts=0.2; % 采樣時(shí)間 p=20; % 預(yù)測(cè)時(shí)域長(zhǎng)度 m=1; % 控制時(shí)域長(zhǎng)度 %% 建立MPC模型 MPC1=mpc(sys1,Ts,p,m); % 定義M1和M2分離的MPC模型 MPC1.MV=struct('Min',0,'Max',Inf,'RateMin',-1e3,'RateMax',1e3); % 設(shè)置限制,F(xiàn)的大小不能為0 MPC2=mpc(sys2,Ts,p,m); %定義M1和M2連接時(shí)候的MPC模型 MPC2.MV=MPC1.MV; %系統(tǒng)1和系統(tǒng)2的控制限制1樣 %% 仿真參數(shù)設(shè)置 Tstop=100; % 仿真時(shí)間 y1initial=0; % 物體1的初始位置 y2initial=10; % 物體2的初始位置 open_system('WC1'); % 調(diào)用WC1.MDL %% 開(kāi)始3次仿真 %雙系統(tǒng)MPC1和MPC2仿真實(shí)驗(yàn) disp('Start simulation by switching control between MPC1 and MPC2 ...'); set_param('wc1/signals','Open','On');%設(shè)置系統(tǒng)和模型的參數(shù)值 sim('WC1',Tstop);%動(dòng)態(tài)系統(tǒng)仿真 %再進(jìn)行1次不管在甚么情況下只用MPC1系統(tǒng)的實(shí)驗(yàn) disp('Now repeat simulation by using only MPC1 ...'); MPC2save=MPC2; %先將MPC2保存起來(lái) MPC2=MPC1; %用MPC2來(lái)代替MPC21 sim('WC1',Tstop); %再進(jìn)行1次不管在甚么情況下只用MPC2系統(tǒng)的實(shí)驗(yàn) disp('Now repeat simulation by using only MPC2 ...'); MPC1=MPC2save; MPC2=MPC1; sim('WC1',Tstop); %% 關(guān)閉仿真窗口 % bdclose('WC1') % close(findobj('Tag','WC1_demo')) %% reference %[1] A. Bemporad, S. Di Cairano, I. V. Kolmanovsky, and D. Hrovat, "Hybrid % modeling and control of a multibody magnetic actuator for automotive % applications," in Proc. 46th IEEE(R) Conf. on Decision and Control, New % Orleans, LA, 2007. %[2]http://cn.mathworks.com/help/mpc/gs/coordination-of-multiple-model-predictive-controllers.html#bs670e3⑻ %[3]李國(guó)勇,智能預(yù)測(cè)控制及其MATLAB實(shí)現(xiàn).北京:電子工業(yè)出版社,2010.

生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線(xiàn)----------------------------
分享到:
------分隔線(xiàn)----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 国产成人亚洲精品2020 | 成人精品一区二区三区中文字幕 | 手机看片日韩在线 | v片在线免费观看 | 亚洲第一成年网 | 亚洲欧美高清视频 | 日本一本视频 | 亚洲三级在线视频 | 免费看的www视频网站视频 | 亚洲视频在线观看不卡 | 337p欧洲亚洲大胆艺术 | 宇都宫紫苑(rion)在线播放 | 2020国产精品| 一区一区三区产品乱码 | 欧美最猛黑人xxxx黑人猛交98 | 伊人动漫 | 国产美女亚洲精品久久久毛片 | 亚洲福利一区二区三区 | 性激烈的欧美三级视频中文字幕 | 亚州第一视频 | 中文字幕在线视频观看 | 国产二区三区毛片 | 最近中文字幕在线 | 精品视频在线播放 | 一级秋霞理论 | 国产video | 手机看片福利国产 | 亚洲精品国产精品乱码不97 | 天天色成人网 | 在线观看 a国v | 视频二区 调教中字 知名国产 | 69视频网址 | 久久欧美精品欧美九久欧美 | 久久精品9 | 国产在线a| 欧美一级免费看 | 性短视频在线观看免费不卡流畅 | 精品久久一区二区 | 亚洲免费网站观看视频 | 欧美乱日 | 精品福利一区二区免费视频 |