📄 f14o.m
字号:
'position',[655,191,705,239])
add_block('built-in/Note',[sys,'/','w'])
set_param([sys,'/','w'],...
'Font Number',3,...
'position',[580,195,581,196])
add_block('built-in/Inport',[sys,'/',['alpha',13,'command']])
set_param([sys,'/',['alpha',13,'command']],...
'orientation',2,...
'Font Number',3,...
'position',[140,40,160,60])
add_block('built-in/Outport',[sys,'/','alpha (rad)'])
set_param([sys,'/','alpha (rad)'],...
'Font Number',3,...
'position',[755,205,775,225])
add_block('built-in/Sum',[sys,'/','Sum1'])
set_param([sys,'/','Sum1'],...
'orientation',1,...
'hide name',0,...
'Font Number',3,...
'position',[85,95,120,115])
add_block('built-in/Outport',[sys,'/','Nz Pilot (g)'])
set_param([sys,'/','Nz Pilot (g)'],...
'Font Number',3,...
'Port','4',...
'position',[740,120,760,140])
% Subsystem ['Command ',13,'Generator'].
new_system([sys,'/',['Command ',13,'Generator']])
set_param([sys,'/',['Command ',13,'Generator']],'Location',[86,67,533,300])
add_block('built-in/Note',[sys,'/',['Command ',13,'Generator/Second Order Command Generator Model']])
set_param([sys,'/',['Command ',13,'Generator/Second Order Command Generator Model']],...
'position',[210,180,211,181])
add_block('built-in/Gain',[sys,'/',['Command ',13,'Generator/Gain1']])
set_param([sys,'/',['Command ',13,'Generator/Gain1']],...
'hide name',0,...
'Font Number',3,...
'Gain','0.0349',...
'position',[65,21,120,79])
add_block('built-in/Sum',[sys,'/',['Command ',13,'Generator/Sum1']])
set_param([sys,'/',['Command ',13,'Generator/Sum1']],...
'hide name',0,...
'Font Number',3,...
'inputs','-+',...
'position',[295,40,320,75])
add_block('built-in/Transfer Fcn',[sys,'/',['Command ',13,'Generator/Fast Pole']])
set_param([sys,'/',['Command ',13,'Generator/Fast Pole']],...
'Font Number',3,...
'Numerator','[426.435]',...
'Denominator','[ 1 426.435]',...
'position',[170,96,250,154])
add_block('built-in/Constant',[sys,'/',['Command ',13,'Generator/Constant']])
set_param([sys,'/',['Command ',13,'Generator/Constant']],...
'Font Number',3,...
'position',[20,37,45,63])
add_block('built-in/Transfer Fcn',[sys,'/',['Command ',13,'Generator/Slow Pole']])
set_param([sys,'/',['Command ',13,'Generator/Slow Pole']],...
'Font Number',3,...
'Numerator','[0.01]',...
'Denominator','[ 1 0.01]',...
'position',[170,22,250,78])
add_block('built-in/Outport',[sys,'/',['Command ',13,'Generator/alpha',13,'command']])
set_param([sys,'/',['Command ',13,'Generator/alpha',13,'command']],...
'Font Number',3,...
'position',[375,50,395,70])
add_line([sys,'/',['Command ',13,'Generator']],[125,50;160,50])
add_line([sys,'/',['Command ',13,'Generator']],[140,50;140,125;160,125])
add_line([sys,'/',['Command ',13,'Generator']],[50,50;55,50])
add_line([sys,'/',['Command ',13,'Generator']],[255,125;265,125;265,65;285,65])
add_line([sys,'/',['Command ',13,'Generator']],[255,50;285,50])
add_line([sys,'/',['Command ',13,'Generator']],[325,60;365,60])
% Finished composite block ['Command ',13,'Generator'].
set_param([sys,'/',['Command ',13,'Generator']],...
'Font Number',3,...
'position',[35,25,65,75])
add_block('built-in/Gain',[sys,'/','Gain'])
set_param([sys,'/','Gain'],...
'hide name',0,...
'Font Number',3,...
'Gain','Zw',...
'position',[360,206,400,244])
add_block('built-in/Gain',[sys,'/','Gain2'])
set_param([sys,'/','Gain2'],...
'hide name',0,...
'Font Number',3,...
'Gain','Mw',...
'position',[360,253,400,297])
add_block('built-in/Gain',[sys,'/','Gain1'])
set_param([sys,'/','Gain1'],...
'hide name',0,...
'Font Number',3,...
'Gain','Mq',...
'position',[360,305,400,345])
% Subsystem ['Dryden Wind ',13,'Gust Models'].
new_system([sys,'/',['Dryden Wind ',13,'Gust Models']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models']],'Location',[115,54,581,332])
add_block('built-in/Inport',[sys,'/',['Dryden Wind ',13,'Gust Models/Noise',13,'Input']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models/Noise',13,'Input']],...
'Font Number',3,...
'position',[35,37,60,63])
add_block('built-in/Transfer Fcn',[sys,'/',['Dryden Wind ',13,'Gust Models/W-gust model']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models/W-gust model']],...
'Font Number',3,...
'Numerator','Swg/sqrt(a^3)*[sqrt(3)*a,1]',...
'Denominator','[1 (2/a) 1/a^2]',...
'position',[110,22,330,78])
add_block('built-in/Outport',[sys,'/',['Dryden Wind ',13,'Gust Models/qGust',13,'(rad//sec)']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models/qGust',13,'(rad//sec)']],...
'Font Number',3,...
'Port','2',...
'position',[375,172,400,198])
add_block('built-in/Outport',[sys,'/',['Dryden Wind ',13,'Gust Models/wGust',13,'(ft//sec)']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models/wGust',13,'(ft//sec)']],...
'Font Number',3,...
'position',[375,37,400,63])
add_block('built-in/Transfer Fcn',[sys,'/',['Dryden Wind ',13,'Gust Models/Q-gust model']])
set_param([sys,'/',['Dryden Wind ',13,'Gust Models/Q-gust model']],...
'Font Number',3,...
'Numerator','pi/(4*b)*[1 0]',...
'Denominator','[1 pi*Vto/(4*b)]',...
'position',[150,160,290,210])
add_line([sys,'/',['Dryden Wind ',13,'Gust Models']],[65,50;100,50])
add_line([sys,'/',['Dryden Wind ',13,'Gust Models']],[295,185;365,185])
add_line([sys,'/',['Dryden Wind ',13,'Gust Models']],[335,50;365,50])
add_line([sys,'/',['Dryden Wind ',13,'Gust Models']],[350,50;350,115;115,115;115,185;140,185])
% Finished composite block ['Dryden Wind ',13,'Gust Models'].
set_param([sys,'/',['Dryden Wind ',13,'Gust Models']],...
'Font Number',3,...
'position',[240,262,270,313])
add_block('built-in/Inport',[sys,'/',['Noise',13,'Input']])
set_param([sys,'/',['Noise',13,'Input']],...
'Font Number',3,...
'Port','3',...
'position',[180,280,200,300])
% Subsystem 'Controller'.
new_system([sys,'/','Controller'])
set_param([sys,'/','Controller'],'Location',[25,56,634,499])
add_block('built-in/Outport',[sys,'/',['Controller/Open Loop',13,'Output']])
set_param([sys,'/',['Controller/Open Loop',13,'Output']],...
'Font Number',3,...
'Port','2',...
'position',[545,217,570,243])
add_block('built-in/Gain',[sys,'/','Controller/Gain'])
set_param([sys,'/','Controller/Gain'],...
'Font Number',3,...
'Gain','Kf',...
'position',[390,15,430,55])
add_block('built-in/Transfer Fcn',[sys,'/',['Controller/Stick',13,'Prefilter']])
set_param([sys,'/',['Controller/Stick',13,'Prefilter']],...
'Font Number',3,...
'Denominator','[Ts,1]',...
'position',[100,80,170,130])
add_block('built-in/Sum',[sys,'/','Controller/Sum'])
set_param([sys,'/','Controller/Sum'],...
'Font Number',3,...
'inputs','2',...
'position',[475,75,500,115])
add_block('built-in/Inport',[sys,'/',['Controller/Stick',13,'Input (in)']])
set_param([sys,'/',['Controller/Stick',13,'Input (in)']],...
'Font Number',3,...
'position',[35,92,60,118])
add_block('built-in/Outport',[sys,'/',['Controller/Elevator',13,'Command (deg)']])
set_param([sys,'/',['Controller/Elevator',13,'Command (deg)']],...
'Font Number',3,...
'position',[540,82,565,108])
add_block('built-in/Sum',[sys,'/','Controller/Sum2'])
set_param([sys,'/','Controller/Sum2'],...
'Font Number',3,...
'inputs','++-',...
'position',[315,85,340,125])
add_block('built-in/Transfer Fcn',[sys,'/',['Controller/Proportional',13,'plus integral',13,'compensator']])
set_param([sys,'/',['Controller/Proportional',13,'plus integral',13,'compensator']],...
'Font Number',3,...
'Numerator','[Ki]',...
'Denominator','[1,0]',...
'position',[385,85,440,125])
add_block('built-in/Sum',[sys,'/','Controller/Sum1'])
set_param([sys,'/','Controller/Sum1'],...
'orientation',3,...
'Font Number',3,...
'inputs','2',...
'position',[257,190,293,210])
add_block('built-in/Gain',[sys,'/','Controller/Gain2'])
set_param([sys,'/','Controller/Gain2'],...
'Font Number',3,...
'Gain','Kq',...
'position',[205,320,245,360])
add_block('built-in/Inport',[sys,'/','Controller/q (rad//sec)'])
set_param([sys,'/','Controller/q (rad//sec)'],...
'Font Number',3,...
'Port','3',...
'position',[30,327,55,353])
add_block('built-in/Transfer Fcn',[sys,'/',['Controller/Pitch Rate',13,'Lead Filter']])
set_param([sys,'/',['Controller/Pitch Rate',13,'Lead Filter']],...
'Font Number',3,...
'Numerator','[1,W1]',...
'Denominator','[1,W2]',...
'position',[95,315,165,365])
add_block('built-in/Gain',[sys,'/','Controller/Gain3'])
set_param([sys,'/','Controller/Gain3'],...
'Font Number',3,...
'Gain','Ka',...
'position',[205,230,245,270])
add_block('built-in/Inport',[sys,'/','Controller/alpha (rad)'])
set_param([sys,'/','Controller/alpha (rad)'],...
'Font Number',3,...
'Port','2',...
'position',[30,237,55,263])
add_block('built-in/Note',[sys,'/','Controller/Controller'])
set_param([sys,'/','Controller/Controller'],...
'Font Number',3,...
'position',[435,300,436,301])
add_block('built-in/Transfer Fcn',[sys,'/',['Controller/Alpha-sensor',13,'Low-pass Filter']])
set_param([sys,'/',['Controller/Alpha-sensor',13,'Low-pass Filter']],...
'Font Number',3,...
'Denominator','[Tal,1]',...
'position',[95,225,170,275])
add_block('built-in/Inport',[sys,'/',['Controller/Open Loop',13,'Input']])
set_param([sys,'/',['Controller/Open Loop',13,'Input']],...
'Font Number',3,...
'Port','4',...
'position',[35,22,60,48])
add_line([sys,'/','Controller'],[275,185;275,160;350,160;350,230;535,230])
add_line([sys,'/','Controller'],[345,105;375,105])
add_line([sys,'/','Controller'],[360,105;360,35;380,35])
add_line([sys,'/','Controller'],[435,35;455,35;455,85;465,85])
add_line([sys,'/','Controller'],[445,105;465,105])
add_line([sys,'/','Controller'],[65,105;90,105])
add_line([sys,'/','Controller'],[505,95;530,95])
add_line([sys,'/','Controller'],[170,340;195,340])
add_line([sys,'/','Controller'],[60,340;85,340])
add_line([sys,'/','Controller'],[175,250;195,250])
add_line([sys,'/','Controller'],[60,250;85,250])
add_line([sys,'/','Controller'],[250,250;265,250;265,220])
add_line([sys,'/','Controller'],[250,340;285,340;285,220])
add_line([sys,'/','Controller'],[175,105;305,105])
add_line([sys,'/','Controller'],[65,35;275,35;275,90;305,90])
% Finished composite block 'Controller'.
set_param([sys,'/','Controller'],...
'Font Number',3,...
'position',[150,125,180,175])
add_line(sys,[340,55;360,55])
add_line(sys,[70,50;95,50;95,85])
add_line(sys,[185,165;215,165;215,195;220,195])
add_line(sys,[565,240;630,240;630,70;645,70])
add_line(sys,[630,240;630,360;105,360;105,155;140,155])
add_line(sys,[630,300;750,300])
add_line(sys,[740,300;740,355;765,355])
add_line(sys,[400,415;360,415])
add_line(sys,[205,290;230,290])
add_line(sys,[145,220;125,220;125,165;140,165])
add_line(sys,[710,215;745,215])
add_line(sys,[720,215;720,375;225,375;225,395;185,395])
add_line(sys,[150,405;85,405;85,145;140,145])
add_line(sys,[245,415;185,415])
add_line(sys,[105,120;105,135;140,135])
add_line(sys,[565,215;645,215])
add_line(sys,[610,215;610,45;645,45])
add_line(sys,[275,275;350,275])
add_line(sys,[320,275;320,225;350,225])
add_line(sys,[475,300;490,300;490,240;520,240])
add_line(sys,[185,140;275,140])
add_line(sys,[405,325;425,325;425,310;440,310])
add_line(sys,[405,275;425,275;425,290;440,290])
add_line(sys,[275,300;320,300;320,325;350,325])
add_line(sys,[405,225;520,225])
add_line(sys,[350,140;510,140;510,210;520,210])
add_line(sys,[135,50;110,50;110,85])
add_line(sys,[695,60;720,60])
add_line(sys,[705,60;705,130;730,130])
% Return any arguments.
if (nargin | nargout)
% Must use feval here to access system in memory
if (nargin > 3)
if (flag == 0)
eval(['[ret,x0,str]=',sys,'(t,x,u,flag);'])
else
eval(['ret =', sys,'(t,x,u,flag);'])
end
else
[ret,x0,str] = feval(sys);
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -