s3.m

来自「simulink electrical machine(2)」· M 代码 · 共 1,389 行 · 第 1/4 页

M
1,389
字号
set_param([sys,'/','qde2abc/ids^e*'],...
		'Port','2',...
		'position',[65,110,85,130])

add_block('built-in/Outport',[sys,'/','qde2abc/ias*'])
set_param([sys,'/','qde2abc/ias*'],...
		'position',[565,90,585,110])

add_block('built-in/Fcn',[sys,'/','qde2abc/iqs^s'])
set_param([sys,'/','qde2abc/iqs^s'],...
		'Expr','u[1]*u[3] + u[2]*u[4]',...
		'position',[175,96,300,124])

add_block('built-in/Fcn',[sys,'/','qde2abc/ics'])
set_param([sys,'/','qde2abc/ics'],...
		'Expr','-(u[1] -sqrt(3)*u[2])/2',...
		'position',[405,182,535,208])

add_block('built-in/Mux',[sys,'/','qde2abc/Mux1'])
set_param([sys,'/','qde2abc/Mux1'],...
		'inputs','2',...
		'position',[330,96,355,189])

add_block('built-in/Fcn',[sys,'/','qde2abc/ibs'])
set_param([sys,'/','qde2abc/ibs'],...
		'Expr','-(u[1] + sqrt(3)*u[2])/2',...
		'position',[405,131,535,159])

add_block('built-in/Fcn',[sys,'/','qde2abc/ids^s'])
set_param([sys,'/','qde2abc/ids^s'],...
		'Expr','-u[1]*u[4] + u[2]*u[3]',...
		'position',[175,161,300,189])

add_block('built-in/Fcn',[sys,'/','qde2abc/ias'])
set_param([sys,'/','qde2abc/ias'],...
		'Expr','u[1]',...
		'position',[410,86,535,114])

add_block('built-in/Mux',[sys,'/','qde2abc/Mux'])
set_param([sys,'/','qde2abc/Mux'],...
		'position',[115,62,140,218])

add_block('built-in/Inport',[sys,'/','qde2abc/iqs^e*'])
set_param([sys,'/','qde2abc/iqs^e*'],...
		'position',[65,70,85,90])

add_block('built-in/Inport',[sys,'/','qde2abc/sin_rho'])
set_param([sys,'/','qde2abc/sin_rho'],...
		'Port','4',...
		'position',[65,190,85,210])

add_block('built-in/Inport',[sys,'/','qde2abc/cos_rho'])
set_param([sys,'/','qde2abc/cos_rho'],...
		'Port','3',...
		'position',[65,150,85,170])
add_line([sys,'/','qde2abc'],[360,145;375,145;375,195;400,195])
add_line([sys,'/','qde2abc'],[360,145;400,145])
add_line([sys,'/','qde2abc'],[360,145;375,145;375,100;405,100])
add_line([sys,'/','qde2abc'],[305,175;310,175;310,165;325,165])
add_line([sys,'/','qde2abc'],[305,110;310,110;310,120;325,120])
add_line([sys,'/','qde2abc'],[145,140;150,140;150,175;170,175])
add_line([sys,'/','qde2abc'],[145,140;150,140;150,110;170,110])
add_line([sys,'/','qde2abc'],[90,80;110,80])
add_line([sys,'/','qde2abc'],[540,100;560,100])
add_line([sys,'/','qde2abc'],[90,120;110,120])
add_line([sys,'/','qde2abc'],[540,145;560,145])
add_line([sys,'/','qde2abc'],[90,160;110,160])
add_line([sys,'/','qde2abc'],[90,200;110,200])
add_line([sys,'/','qde2abc'],[540,195;560,195])


%     Finished composite block 'qde2abc'.

set_param([sys,'/','qde2abc'],...
		'position',[275,171,315,264])


%     Subsystem  'Field_Orient'.

new_system([sys,'/','Field_Orient'])
set_param([sys,'/','Field_Orient'],'Location',[337,454,1015,790])

add_block('built-in/Fcn',[sys,'/','Field_Orient/Fcn'])
set_param([sys,'/','Field_Orient/Fcn'],...
		'Expr','cos(u[1])',...
		'position',[450,193,520,217])

add_block('built-in/Sum',[sys,'/','Field_Orient/rho'])
set_param([sys,'/','Field_Orient/rho'],...
		'position',[400,237,415,273])

add_block('built-in/Integrator',[sys,'/','Field_Orient/theta2'])
set_param([sys,'/','Field_Orient/theta2'],...
		'position',[325,194,360,226])

add_block('built-in/Note',[sys,'/','Field_Orient/w2'])
set_param([sys,'/','Field_Orient/w2'],...
		'position',[295,190,300,195])

add_block('built-in/Fcn',[sys,'/','Field_Orient/we-wr'])
set_param([sys,'/','Field_Orient/we-wr'],...
		'Expr','(rpr*wb/xr)*(u[1]/u[2])',...
		'position',[105,192,275,228])

add_block('built-in/Mux',[sys,'/','Field_Orient/Mux'])
set_param([sys,'/','Field_Orient/Mux'],...
		'inputs','2',...
		'position',[135,55,160,90])

add_block('built-in/Inport',[sys,'/','Field_Orient/Tem*'])
set_param([sys,'/','Field_Orient/Tem*'],...
		'position',[35,55,55,75])

add_block('built-in/Inport',[sys,'/','Field_Orient/thetar'])
set_param([sys,'/','Field_Orient/thetar'],...
		'Port','3',...
		'position',[35,255,55,275])

add_block('built-in/Outport',[sys,'/','Field_Orient/cos_rho'])
set_param([sys,'/','Field_Orient/cos_rho'],...
		'Port','3',...
		'position',[560,195,580,215])

add_block('built-in/Fcn',[sys,'/','Field_Orient/Fcn1'])
set_param([sys,'/','Field_Orient/Fcn1'],...
		'position',[450,253,520,277])

add_block('built-in/Outport',[sys,'/','Field_Orient/sin_rho'])
set_param([sys,'/','Field_Orient/sin_rho'],...
		'Port','4',...
		'position',[560,255,580,275])

add_block('built-in/Outport',[sys,'/','Field_Orient/iqs^e*'])
set_param([sys,'/','Field_Orient/iqs^e*'],...
		'position',[560,65,580,85])

add_block('built-in/Inport',[sys,'/','Field_Orient/lambdadre'])
set_param([sys,'/','Field_Orient/lambdadre'],...
		'Port','2',...
		'position',[35,130,55,150])

add_block('built-in/Derivative',[sys,'/','Field_Orient/Derivative'])
set_param([sys,'/','Field_Orient/Derivative'],...
		'position',[110,130,140,150])

add_block('built-in/Mux',[sys,'/','Field_Orient/Mux2'])
set_param([sys,'/','Field_Orient/Mux2'],...
		'inputs','2',...
		'position',[165,111,185,149])

add_block('built-in/Outport',[sys,'/','Field_Orient/ids^e*'])
set_param([sys,'/','Field_Orient/ids^e*'],...
		'Port','2',...
		'position',[560,120,580,140])

add_block('built-in/Mux',[sys,'/','Field_Orient/Mux1'])
set_param([sys,'/','Field_Orient/Mux1'],...
		'inputs','2',...
		'position',[450,89,480,116])

add_block('built-in/Fcn',[sys,'/','Field_Orient/ids^e'])
set_param([sys,'/','Field_Orient/ids^e'],...
		'Expr','(xr*u[2]+rpr*wb*u[1])/(rpr*xm)',...
		'position',[230,111,405,149])

add_block('built-in/Fcn',[sys,'/','Field_Orient/iqs^e'])
set_param([sys,'/','Field_Orient/iqs^e'],...
		'Expr','(4/(3*P))*u[1]*xr/(xm*u[2])',...
		'position',[220,59,405,91])
add_line([sys,'/','Field_Orient'],[420,255;430,255;430,265;445,265])
add_line([sys,'/','Field_Orient'],[420,255;430,255;430,205;445,205])
add_line([sys,'/','Field_Orient'],[365,210;375,210;375,245;395,245])
add_line([sys,'/','Field_Orient'],[280,210;320,210])
add_line([sys,'/','Field_Orient'],[485,105;505,105;505,170;80,170;80,210;100,210])
add_line([sys,'/','Field_Orient'],[410,75;435,75;445,95])
add_line([sys,'/','Field_Orient'],[165,75;215,75])
add_line([sys,'/','Field_Orient'],[60,65;130,65])
add_line([sys,'/','Field_Orient'],[410,75;555,75])
add_line([sys,'/','Field_Orient'],[60,140;90,140;90,80;130,80])
add_line([sys,'/','Field_Orient'],[525,205;555,205])
add_line([sys,'/','Field_Orient'],[60,265;395,265])
add_line([sys,'/','Field_Orient'],[525,265;555,265])
add_line([sys,'/','Field_Orient'],[60,140;105,140])
add_line([sys,'/','Field_Orient'],[145,140;160,140])
add_line([sys,'/','Field_Orient'],[60,140;90,140;90,120;160,120])
add_line([sys,'/','Field_Orient'],[190,130;225,130])
add_line([sys,'/','Field_Orient'],[410,130;555,130])
add_line([sys,'/','Field_Orient'],[410,130;435,130;445,110])


%     Finished composite block 'Field_Orient'.

set_param([sys,'/','Field_Orient'],...
		'position',[180,168,220,267])

add_block('built-in/Mux',[sys,'/','Mux'])
set_param([sys,'/','Mux'],...
		'orientation',3,...
		'inputs','7',...
		'position',[123,75,717,85])

add_block('built-in/Scope',[sys,'/','Scope'])
set_param([sys,'/','Scope'],...
		'Vgain','300.000000',...
		'Hgain','2.000000',...
		'Vmax','600.000000',...
		'Hmax','4.000000',...
		'Window',[20,463,832,625])
open_system([sys,'/','Scope'])
set_param([sys,'/','Scope'],...
		'position',[465,32,485,58])

add_block('built-in/To Workspace',[sys,'/','To Workspace'])
set_param([sys,'/','To Workspace'],...
		'orientation',2,...
		'mat-name','y',...
		'buffer','40000',...
		'position',[305,37,355,53])

add_block('built-in/Note',[sys,'/','thetar_'])
set_param([sys,'/','thetar_'],...
		'position',[205,322,210,327])

add_block('built-in/Note',[sys,'/','wrm'])
set_param([sys,'/','wrm'],...
		'position',[160,355,165,360])

add_block('built-in/Fcn',[sys,'/',['Rotor flux ',13,'magnitude']])
set_param([sys,'/',['Rotor flux ',13,'magnitude']],...
		'Expr','sqrt(u[1]*u[1]+u[2]*u[2])',...
		'position',[730,382,825,408])

add_block('built-in/Sum',[sys,'/','Sum'])
set_param([sys,'/','Sum'],...
		'inputs','+++',...
		'position',[805,175,820,235])


%     Subsystem  'Tmech1'.

new_system([sys,'/','Tmech1'])
set_param([sys,'/','Tmech1'],'Location',[5,40,315,196])

add_block('built-in/Outport',[sys,'/','Tmech1/out_1'])
set_param([sys,'/','Tmech1/out_1'],...
		'position',[285,60,305,80])

add_block('built-in/Look Up Table',[sys,'/','Tmech1/Look-Up Table'])
set_param([sys,'/','Tmech1/Look-Up Table'],...
		'Input_Values','t',...
		'Output_Values','y',...
		'position',[210,58,250,82])

add_block('built-in/Fcn',[sys,'/','Tmech1/Fcn1'])
set_param([sys,'/','Tmech1/Fcn1'],...
		'Expr','rem(u[1],period)',...
		'position',[110,60,150,80])

add_block('built-in/Clock',[sys,'/','Tmech1/Clock'])
set_param([sys,'/','Tmech1/Clock'],...
		'position',[45,60,65,80])
add_line([sys,'/','Tmech1'],[255,70;280,70])
add_line([sys,'/','Tmech1'],[70,70;105,70])
add_line([sys,'/','Tmech1'],[155,70;205,70])
set_param([sys,'/','Tmech1'],...
		'Mask Display','plot([t,t+period,t+2*period],[y,y,y])',...
		'Mask Type','Repeating table',...
		'Mask Dialogue','Repeating table.\nEnter values of time and output for first cycle.|Time values:|Output values:')
set_param([sys,'/','Tmech1'],...
		'Mask Translate','period = max(@1); t = @1; y = @2;',...
		'Mask Help','Repeats cycle given in table. Time values should be monotonically increasing.',...
		'Mask Entries','time_tmech\/tmech_tmech\/')


%     Finished composite block 'Tmech1'.

set_param([sys,'/','Tmech1'],...
		'position',[490,299,530,321])


%     Subsystem  ['Speed',13,'Ref1'].

new_system([sys,'/',['Speed',13,'Ref1']])
set_param([sys,'/',['Speed',13,'Ref1']],'Location',[5,40,315,196])

add_block('built-in/Outport',[sys,'/',['Speed',13,'Ref1/out_1']])
set_param([sys,'/',['Speed',13,'Ref1/out_1']],...
		'position',[285,60,305,80])

add_block('built-in/Look Up Table',[sys,'/',['Speed',13,'Ref1/Look-Up Table']])
set_param([sys,'/',['Speed',13,'Ref1/Look-Up Table']],...
		'Input_Values','t',...
		'Output_Values','y',...
		'position',[210,58,250,82])

add_block('built-in/Fcn',[sys,'/',['Speed',13,'Ref1/Fcn1']])
set_param([sys,'/',['Speed',13,'Ref1/Fcn1']],...
		'Expr','rem(u[1],period)',...
		'position',[110,60,150,80])

add_block('built-in/Clock',[sys,'/',['Speed',13,'Ref1/Clock']])
set_param([sys,'/',['Speed',13,'Ref1/Clock']],...
		'position',[45,60,65,80])
add_line([sys,'/',['Speed',13,'Ref1']],[255,70;280,70])
add_line([sys,'/',['Speed',13,'Ref1']],[70,70;105,70])
add_line([sys,'/',['Speed',13,'Ref1']],[155,70;205,70])
set_param([sys,'/',['Speed',13,'Ref1']],...
		'Mask Display','plot([t,t+period,t+2*period],[y,y,y])',...
		'Mask Type','Repeating table')
set_param([sys,'/',['Speed',13,'Ref1']],...
		'Mask Dialogue','Repeating table.\nEnter values of time and output for first cycle.|Time values:|Output values:',...
		'Mask Translate','period = max(@1); t = @1; y = @2;')
set_param([sys,'/',['Speed',13,'Ref1']],...
		'Mask Help','Repeats cycle given in table. Time values should be monotonically increasing.',...
		'Mask Entries','time_wref\/speed_wref\/')


%     Finished composite block ['Speed',13,'Ref1'].

set_param([sys,'/',['Speed',13,'Ref1']],...
		'orientation',2,...
		'position',[80,120,120,140])

add_block('built-in/Note',[sys,'/','wref'])
set_param([sys,'/','wref'],...
		'position',[55,110,60,115])

add_block('built-in/Note',[sys,'/','iqs^e*'])
set_param([sys,'/','iqs^e*'],...
		'position',[240,160,245,165])

add_block('built-in/Note',[sys,'/','cos_rho'])
set_param([sys,'/','cos_rho'],...
		'position',[245,210,250,215])

add_block('built-in/Transfer Fcn',[sys,'/',['Torque',13,'Controller']])
set_param([sys,'/',['Torque',13,'Controller']],...
		'Numerator','[30  7]',...
		'Denominator','[1 0]',...
		'position',[90,166,145,204])

add_block('built-in/Gain',[sys,'/','vag'])
set_param([sys,'/','vag'],...
		'Gain','500*Zb',...
		'position',[410,155,430,175])

add_block('built-in/Sum',[sys,'/','Sa'])
set_param([sys,'/','Sa'],...

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?