91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1.13MB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2023-11-06
  • 語言: Matlab
  • 標簽: DMC??程序??理論算法??

資源簡介

動態矩陣DMC算法 matlab程序實現

資源截圖

代碼片段和文件信息

function?[ADMC?A?y_step?m_nHP?m_nHM?]?=??CalcStepResponseADMC(?T0_gp?k0_gp?Ts?m_nHP?m_nHM??bFigure?nLoop?Kp2)

%?被控對象?仿真,獲取?階躍響應?向量
%?y_step?=?被控對象?到?穩態?的完整的階躍響應
%?A :?動態矩陣
%?ADMC :?deltaU?=?ADMC?*?DMC_ye
%?m_nHP :?預測時域長度
%?m_nHM :?控制時域長度

%m_nHP?=?100;
%m_nHM?=?5;
%bFigure?=?true;

%?第一部分:被控對象的仿真
%?被控對象參數
%?
%?傳遞來的缺省參數
%?T0_gp=25; k0_gp?=?10;
%?h_gp?=?T0_gp?/?50; %?被控對象?仿真?時間步長
%?Tend?=??10?*?T0_gp?/?h_gp;

%----?2013?試驗汽溫對象
%nLoop?=?1; %?內回路
%nLoop?=?2; %?外回路

n_gp=5; %?5階對象?2階在內回路,3階在外回路
%T0_gp?=?[15?15 20?????20?20];
%k0_gp?=?[8??1 1.125??1??1?];
h_gp??=?0.5; %?被控對象?仿真?時間步長

a_gp?=?exp(?-?h_gp?./?T0_gp?);
b_gp?=?k0_gp?.*?(?1?-?a_gp?);
iTimeSimuEnd?=?4500; %?仿真長度
iTimeSS?=?0; %?達到穩態?static?state

%?y_pv(:?[內回路導前區汽溫,?外回路惰性區汽溫]?)
y_pv?=?zeros(iTimeSimuEnd?2); %?存儲仿真結果以h為仿真步長
y_step?=?zeros(m_nHP1); ????%?控制器用以?Ts?為采樣周期
y_pv(11)?=?0;????????????????%?初始狀態?y1(0)=0
y_pv(12)?=?0;????????????????%?初始狀態?y2(0)=0

%%%%%%%%%%%%%%%%%%%%%%%%%%%導入采樣數據值%%%%%%%%%%%%%%%%%%%%%%%%%%%

uk?=?1;
if?(?nLoop?==1?) %?只內回路?的
yss?=?0.9999?*?k0_gp(1)?*k0_gp(2)?*?uk; %?導前汽溫穩態值
nypvCol?=?1;
elseif(?nLoop?==?2?) %?只外回路?的
yss?=?0.9999?*?k0_gp(1)?*k0_gp(2)?*?k0_gp(3)?*k0_gp(4)?*?k0_gp(5)?*?uk; %?出口惰性區汽溫
nypvCol?=?2;
elseif(?nLoop?==?3?) %?內回路?P,?外回路?DMC
Kinss?=?(?k0_gp(1)?*?k0_gp(2)?*?Kp2?);
Kinss?=?Kinss?/?(1?+?Kinss?);
%?yss?=?0.9999?*?Kinss?/?(1?+?Kinss?)?*?uk?; ?%?以?內回路的穩態值,作為?ss
yss?=?0.9999?*?Kinss?*??k0_gp(3)?*k0_gp(4)?*?k0_gp(5)?*?uk;
nypvCol?=?2;
end

x?=?zeros(n_gp+11); %?仿真中間變量?x
?x(1)?=?uk;
for?(?it?=?1?:?iTimeSimuEnd-1?)
if(?nLoop?==1?|?nLoop==?2)
x(1)?=?uk; %?內回路開環的情形
elseif(?nLoop?==?3?)
x(1)?=?Kp2?*(?uk?-?x(3)?)?; %?內回路采用P控制,KP=Kp2
end

for(?inh?=?1?:?5?)
x(inh+1)?=?a_gp(inh)?*?x(inh+1)?+?b_gp(inh)?*?x(inh);
end
y_pv(it+11)?=?x(3); y_pv(it+12)?=?x(6);

% 達到穩態,則退出仿真
% if(?y_pv(it+11)?>?yss2?)
%???????iTimeSS?=?it+1;
%????????break;
% end
if(?(y_pv(it+1nypvCol)?>?yss)??&?(iTimeSS?==?0?)?)
????????iTimeSS?=?it+1;
????????break;
end
end
y_len?=?max?(?it+1?iTimeSS)?; %?畫圖時,盡量取更多的數據

if(?bFigure?)
????t_time?=?0:?h_gp:?(y_len-1)*h_gp;
????figure();
????plot(t_time?y_pv(1:y_len1)?‘r-‘?t_time?y_pv(1:y_len?2)?‘k-‘);
%?legend(‘導前區汽溫,內回路‘?‘惰性區汽溫,外回路‘?‘Location‘?‘SouthEast‘);
grid?on;
????hold?on;
end


%?第二部分:根據控制器的采樣周期,生成?控制器用的?階躍響應
%?Ts?=?2; %?采樣周期?=2?
mulTime?=?Ts?/?h_gp;

it2?=?1; %?階躍響應的?循環?a(it2)
it??=?1+mulTime; %?4?=?Ts?/?h?
while(?it?<=?iTimeSS?)
????y_step(it2)?=?y_pv(itnypvCol);

????it?=?it?+?mulTime;
????it2?=?it2?+?1;
end
%?y_step?(?it2?)?=?y_pv(iTimeSS);?????///?是否?aN?=?ass

m_nHP?=?min(m_nHP?it2-1);

%?第三部分:計算DMC所用的?模型矩陣?A?
A=zeros(m_nHP?m_nHM); %?DMC的模型矩陣?A?
for(?it?=?1?:?m_nHM?)
A([it?:?m_nHP]?it)?=?y_step(?[1?:?m_nHP+1-it]?);
end

if(?bFigure)
????t2_time?=?Ts?:?Ts?:?(it2-1)*Ts;
plot(t2_time?y_step(1?:?length(t2_

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-12-11?23:53??DMC算法\
?????目錄???????????0??2014-05-06?14:49??DMC算法\DMC\
?????目錄???????????0??2014-05-05?19:35??DMC算法\DMC-matlab\
?????文件????????2599??2014-05-06?14:47??DMC算法\DMC-matlab\CalcStepResponseADMC.m
?????文件????????1463??2014-05-06?14:44??DMC算法\DMC-matlab\CalcStepResponseADMC.mat
?????文件????????2082??2011-08-26?10:39??DMC算法\DMC-matlab\CalcStepResponse_D.m
?????文件?????????716??2014-05-06?14:44??DMC算法\DMC-matlab\CalcStepResponse_D.mat
?????文件?????????886??2014-05-03?22:58??DMC算法\DMC-matlab\closeloop1.asv
?????文件?????????888??2014-05-03?23:01??DMC算法\DMC-matlab\closeloop1.m
?????文件????????4171??2011-08-23?23:39??DMC算法\DMC-matlab\dmc1.m
?????文件????????2035??2011-08-22?18:54??DMC算法\DMC-matlab\dmc1_p0.m
?????文件????????7520??2014-05-06?14:46??DMC算法\DMC-matlab\dmcbase.m
?????文件????????8214??2011-08-26?00:14??DMC算法\DMC-matlab\dmcbase_LRJ41.m
?????文件????????8048??2014-05-06?14:41??DMC算法\DMC-matlab\dmcbase_LRJ42.asv
?????文件????????8048??2014-05-06?14:42??DMC算法\DMC-matlab\dmcbase_LRJ42.m
?????文件????????7493??2011-08-27?22:24??DMC算法\DMC-matlab\dmcbase_o2.m
?????文件?????????600??2011-08-23?13:24??DMC算法\DMC-matlab\nostable.m
?????文件?????????432??2011-09-10?16:59??DMC算法\DMC-matlab\ref.m
?????文件???????15059??2014-05-03?22:47??DMC算法\DMC.docx
?????文件????????4488??2014-05-05?20:48??DMC算法\DMC\CalcStepResponseADMC.m
?????文件??????210980??2014-05-05?20:52??DMC算法\DMC\CalcStepResponseADMC_out.mat
?????文件????????9630??2014-05-05?20:48??DMC算法\DMC\dmcbase.m
?????目錄???????????0??2014-05-06?14:49??DMC算法\DMC\有擾動\
?????文件????????2562??2011-08-26?16:02??DMC算法\DMC\有擾動\CalcStepResponseADMC.m
?????文件????????1463??2014-05-06?14:48??DMC算法\DMC\有擾動\CalcStepResponseADMC.mat
?????文件????????8219??2013-04-15?08:51??DMC算法\DMC\有擾動\dmcbase_LRJ41.m
?????文件????????8047??2011-08-26?00:17??DMC算法\DMC\有擾動\dmcbase_LRJ42.m
?????文件???????30208??2014-04-11?11:25??DMC算法\DMC控制算法.doc
?????文件???????????0??2014-05-05?15:49??DMC算法\DMC概述.docx
?????文件??????642048??2013-04-12?15:07??DMC算法\DMC理論及MATLAB實現.ppt
?????文件???????45056??2014-04-30?16:58??DMC算法\DMC程序實現.doc
............此處省略5個文件信息

評論

共有 條評論