Simulink交互式仿真209898.6離散時間系統和混合系統
8.6.1單位延遲模塊和差分方程建模
單位延遲模塊
圖8.6-1單位延遲模塊
差分方程的標量法建模
【例8.6-1】設購房時貸款45萬,年利率為,每月(即每期)等額本息還貸2500元,)
set_param(BN{5},'Gain', '1.4')
Gv0 =
1.4
Gv =
1.11
(3)
Ci0=get_param('exm080701','InitialState')
set_param('exm080701','InitialState','[0;0;-0.5]')
Ci=get_param('exm080701','InitialState')
set_param('exm080701','InitialState',Ci0)
Ci0 =
'[0; 0;0.5]'
Ci =
[0;0;-0.5]
用Sim指令運行Simulink模型
運行塊圖模型的sim指令
(1)
[t,x, y]=sim('model',timespan,opts,ut)
利用輸入參數進行仿真,返回逐個輸出(最早格式,沿用至今)
(2)
simOut=sim('model', 'PName1',Value1,'PName2', Value2...)
采用“參數名/值設置法”運行model指定的塊圖模型
simOut=sim('model',PStruct)
采用“構架設置法”運行model指定的塊圖模型
sim指令的參數名/值設置法
【例8.7-3】采用sim指令的“參數名/值設置法”運行如圖8.7-5所示的exm080703.mdl塊圖模型(文件在隨書光盤上)。
圖 8.7-5 sim指令操作的塊圖模型exm080703
(1)關于圖8.7-5所示exm080703.mdl的說明
(2)
%exm080703m.m
YSIM=sim('exm080703','SaveOutput','on','OutputSaveName','y0','SaveFormat','Array');
%<2>
yy0=YSIM.get('y0'); %<3>
tt0=YSIM.get('tout'); %<4>
simplot(tt0,yy0)
xlabel('tt0'),ylabel('yy0')
圖8.7-6 simplot繪制出示波窗模式的響應曲線
〖說明〗
sim指令的參數構架設置法
【例8.7-4】利用sim指令的構架設置法對exm080703.mdl進行操作,以產生<Transfer Fcn>模塊取不同初始值時的系統響應曲線(參見圖8.7-7)。
(1)
[SZ,X0,SC]=exm080703;
disp([num2cell(X0),SC])
[0] 'exm080703/Transfer Fcn'
[0] 'exm080703/Transfer Fcn'
[0] 'exm080703/Integrator'
(2)
% exm080704m.m
clear
x0=[0, 1, 0;
0, 0, 0.05;
0, 0, 0];
P.LoadInitialState='on';
P.SolverType='Fixed-step'; %<7>
P.FixedStep='0.04'; %<8>
P.SaveOutput='on';
P.OutputSaveName='y0';
P.SaveFormat='Array';
for ii=1:3
xm0=x0(:,ii);
P.InitialState='xm0';
YSIM=sim('exm080803',P);
y(:,ii)=YSIM.get('y0');
end
t=YSIM.get('tout');
simplot(t,y),
legend('x0(:,1)','x0(:,2)','x0(:,3)')
hh=get
內容來自淘豆網www.canything.com轉載請標明出處.