⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pensim_s.m

📁 FISMAT accommodates different arithmetic operators, fuzzification and defuzzification algorithm, imp
💻 M
📖 第 1 页 / 共 2 页
字号:
%     Subsystem  ['Limited ',13,'Integrator'].new_system([sys,'/',['Limited ',13,'Integrator']])set_param([sys,'/',['Limited ',13,'Integrator']],'Location',[0,0,791,233])add_block('built-in/Saturation',[sys,'/',['Limited ',13,'Integrator/Saturation']])set_param([sys,'/',['Limited ',13,'Integrator/Saturation']],...		'Lower Limit','lb',...		'Upper Limit','ub',...		'position',[630,121,675,149])add_block('built-in/Fcn',[sys,'/',['Limited ',13,'Integrator/Fcn']])set_param([sys,'/',['Limited ',13,'Integrator/Fcn']],...		'Expr','u[2]*((((u[1]>lb)+(u[2]>=0))>0) * (((u[1]<ub)+(u[2]<=0))>0))',...		'position',[150,116,520,154])add_block('built-in/Inport',[sys,'/',['Limited ',13,'Integrator/In_1']])set_param([sys,'/',['Limited ',13,'Integrator/In_1']],...		'position',[20,130,40,150])add_block('built-in/Outport',[sys,'/',['Limited ',13,'Integrator/Out_1']])set_param([sys,'/',['Limited ',13,'Integrator/Out_1']],...		'position',[720,125,740,145])add_block('built-in/Integrator',[sys,'/',['Limited ',13,'Integrator/Integrator']])set_param([sys,'/',['Limited ',13,'Integrator/Integrator']],...		'Initial','xi',...		'position',[540,126,585,144])add_block('built-in/Mux',[sys,'/',['Limited ',13,'Integrator/Mux']])set_param([sys,'/',['Limited ',13,'Integrator/Mux']],...		'inputs','2',...		'position',[85,116,115,149])add_line([sys,'/',['Limited ',13,'Integrator']],[680,135;710,135])add_line([sys,'/',['Limited ',13,'Integrator']],[45,140;75,140])add_line([sys,'/',['Limited ',13,'Integrator']],[120,135;140,135])add_line([sys,'/',['Limited ',13,'Integrator']],[525,135;530,135])add_line([sys,'/',['Limited ',13,'Integrator']],[590,135;620,135])add_line([sys,'/',['Limited ',13,'Integrator']],[600,135;600,35;55,35;55,125;75,125])set_param([sys,'/',['Limited ',13,'Integrator']],...		'Mask Display','plot(-1,-0.2,3.5,1.2,[0.05,1,2,2.9],[0,0,1,1]); 1/s    ',...		'Mask Type','Limited integrator.')set_param([sys,'/',['Limited ',13,'Integrator']],...		'Mask Dialogue','Limited integrator|Lower bound:|Upper bound:|Initial condition',...		'Mask Translate','lb = @1; ub = @2; xi = @3;')set_param([sys,'/',['Limited ',13,'Integrator']],...		'Mask Help','Implements a limited integrator with \nan expression of the form:\n\nif(x<=lb and u<0) or (x>=ub and u>0)\n\txdot=0\nelse\n\txdot=u.',...		'Mask Entries','-5\/5\/0\/')%     Finished composite block ['Limited ',13,'Integrator'].set_param([sys,'/',['Limited ',13,'Integrator']],...		'position',[250,148,285,182])add_block('built-in/Sum',[sys,'/','Sum2'])set_param([sys,'/','Sum2'],...		'hide name',0,...		'inputs','-+',...		'position',[140,155,160,175])add_block('built-in/Gain',[sys,'/',['Integral',13,'gain']])set_param([sys,'/',['Integral',13,'gain']],...		'Gain','0.06',...		'position',[185,147,230,183])%     Subsystem  'More Info'.new_system([sys,'/','More Info'])set_param([sys,'/','More Info'],'Location',[233,85,693,328])add_block('built-in/Note',[sys,'/',['More Info/This system simulates a cart carying an inverted pendulum',13,'and displays an animation.']])set_param([sys,'/',['More Info/This system simulates a cart carying an inverted pendulum',13,'and displays an animation.']],...		'position',[205,30,206,31])add_block('built-in/Note',[sys,'/',['More Info/The animation is created using Matlab''s Handle Graphics.',13,'The animation block is just a masked S-function.']])set_param([sys,'/',['More Info/The animation is created using Matlab''s Handle Graphics.',13,'The animation block is just a masked S-function.']],...		'position',[205,80,206,81])add_block('built-in/Note',[sys,'/',['More Info/For more information on what the S_function does,',13,'use type pendan.c, type pend0, and type pendsets.']])set_param([sys,'/',['More Info/For more information on what the S_function does,',13,'use type pendan.c, type pend0, and type pendsets.']],...		'position',[200,155,201,156])set_param([sys,'/','More Info'],...		'Mask Display','?')%     Finished composite block 'More Info'.set_param([sys,'/','More Info'],...		'hide name',0,...		'Drop Shadow',4,...		'position',[430,20,457,45])add_block('built-in/Gain',[sys,'/','Proportional gain'])set_param([sys,'/','Proportional gain'],...		'Gain','-9.4',...		'position',[200,92,245,128])add_block('built-in/Transfer Fcn',[sys,'/','Feedforward gain'])set_param([sys,'/','Feedforward gain'],...		'Numerator','[7.12 0]',...		'Denominator','[1 2]',...		'position',[190,217,245,253])add_block('built-in/Mux',[sys,'/','Mux'])set_param([sys,'/','Mux'],...		'inputs','3',...		'position',[550,64,580,96])add_block('built-in/To Workspace',[sys,'/','To Workspace1'])set_param([sys,'/','To Workspace1'],...		'mat-name','t',...		'position',[655,137,705,153])add_block('built-in/Clock',[sys,'/','Clock'])set_param([sys,'/','Clock'],...		'position',[600,135,620,155])add_block('built-in/To Workspace',[sys,'/','To Workspace'])set_param([sys,'/','To Workspace'],...		'mat-name','y',...		'position',[655,70,710,90])add_block('built-in/Saturation',[sys,'/','Saturation'])set_param([sys,'/','Saturation'],...		'hide name',0,...		'Lower Limit','-10',...		'Upper Limit','10',...		'position',[405,160,430,180])add_block('built-in/Sum',[sys,'/','Sum1'])set_param([sys,'/','Sum1'],...		'inputs','+++',...		'position',[305,139,325,191])add_block('built-in/Sum',[sys,'/','Sum'])set_param([sys,'/','Sum'],...		'inputs','+-',...		'position',[365,143,385,192])add_block('built-in/Note',[sys,'/',['Start simulation to simulate system .',13,'',13,'']])set_param([sys,'/',['Start simulation to simulate system .',13,'',13,'']],...		'position',[400,340,401,341])add_block('built-in/Step Fcn',[sys,'/','Step Fcn'])set_param([sys,'/','Step Fcn'],...		'Time','0',...		'After','-8',...		'position',[305,90,325,110])add_block('built-in/Derivative',[sys,'/','Derivative'])set_param([sys,'/','Derivative'],...		'position',[685,285,715,305])%     Subsystem  'Graph Scope'.new_system([sys,'/','Graph Scope'])set_param([sys,'/','Graph Scope'],'Location',[0,0,274,193])add_block('built-in/Inport',[sys,'/','Graph Scope/x'])set_param([sys,'/','Graph Scope/x'],...		'position',[65,55,85,75])add_block('built-in/S-function',[sys,'/',['Graph Scope/S-function',13,'M-file which plots',13,'lines',13,'']])set_param([sys,'/',['Graph Scope/S-function',13,'M-file which plots',13,'lines',13,'']],...		'function name','sfuny',...		'parameters','ax, color',...		'position',[130,55,180,75])add_line([sys,'/','Graph Scope'],[90,65;120,65])set_param([sys,'/','Graph Scope'],...		'Mask Display','plot(0,0,100,100,[90,10,10,10,90,90,10],[65,65,90,40,40,90,90],[90,78,69,54,40,31,25,10],[77,60,48,46,56,75,81,84])',...		'Mask Type','Graph scope.')set_param([sys,'/','Graph Scope'],...		'Mask Dialogue','Graph scope using MATLAB graph window.\nEnter plotting ranges and line type.|Time range:|y-min:|y-max:|Line type (rgbw-:*):',...		'Mask Translate','color = @4; ax = [0, @1, @2, @3];')set_param([sys,'/','Graph Scope'],...		'Mask Help','This block plots to the MATLAB graph window and can be used as an improved version of the Scope block. Look at the m-file sfuny.m to see how it works.',...		'Mask Entries','20\/-10\/10\/''y-''\/')%     Finished composite block 'Graph Scope'.set_param([sys,'/','Graph Scope'],...		'Drop Shadow',4,...		'position',[585,276,615,314])add_line(sys,[485,180;535,180;535,230;590,230])add_line(sys,[485,155;555,155;555,205;590,205])add_line(sys,[635,220;650,220])add_line(sys,[485,155;485,80;125,80;125,160;130,160])add_line(sys,[110,170;130,170])add_line(sys,[60,165;75,165])add_line(sys,[65,225;65,175;75,175])add_line(sys,[110,170;110,235;180,235])add_line(sys,[390,170;395,170])add_line(sys,[165,165;165,110;190,110])add_line(sys,[235,165;240,165])add_line(sys,[165,165;175,165])add_line(sys,[110,170;110,70;540,70])add_line(sys,[500,155;500,80;540,80])add_line(sys,[520,180;520,90;540,90])add_line(sys,[625,145;645,145])add_line(sys,[585,80;645,80])add_line(sys,[290,165;295,165])add_line(sys,[250,110;280,110;295,150])add_line(sys,[250,235;280,235;295,180])add_line(sys,[730,220;745,220;745,265;350,265;350,180;355,180])add_line(sys,[330,165;355,155])add_line(sys,[435,170;440,170])add_line(sys,[110,235;110,295;575,295])% 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);	endend

⌨️ 快捷键说明

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