北航MATLAB第六次作业.docx

上传人:b****4 文档编号:3908231 上传时间:2022-11-26 格式:DOCX 页数:17 大小:248.28KB
下载 相关 举报
北航MATLAB第六次作业.docx_第1页
第1页 / 共17页
北航MATLAB第六次作业.docx_第2页
第2页 / 共17页
北航MATLAB第六次作业.docx_第3页
第3页 / 共17页
北航MATLAB第六次作业.docx_第4页
第4页 / 共17页
北航MATLAB第六次作业.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

北航MATLAB第六次作业.docx

《北航MATLAB第六次作业.docx》由会员分享,可在线阅读,更多相关《北航MATLAB第六次作业.docx(17页珍藏版)》请在冰豆网上搜索。

北航MATLAB第六次作业.docx

北航MATLAB第六次作业

1、当电源电压

,求解表达式

的波形,且

,其中

用simulink动态仿真和S函数两种方法,建立系统仿真模型,求解

的波形。

(1)

(2)

function[sys,x0,str,ts,simStateCompliance]=sfun1(t,x,u,flag)

switchflag,

case0,

[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes;

case1,

sys=mdlDerivatives(t,x,u);

case2,

sys=mdlUpdate(t,x,u);

case3,

sys=mdlOutputs(t,x,u);

case4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

case9,

sys=mdlTerminate(t,x,u);

otherwise

DAStudio.error('Simulink:

blocks:

unhandledFlag',num2str(flag));

end

function[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes

sizes=simsizes;

sizes.NumContStates=1;

sizes.NumDiscStates=0;

sizes.NumOutputs=1;

sizes.NumInputs=1;

sizes.DirFeedthrough=1;

sizes.NumSampleTimes=1;

sys=simsizes(sizes);

x0=1;

str=[];

ts=[00];

simStateCompliance='UnknownSimState';

functionsys=mdlDerivatives(t,x,u)

sys=4*100*sin(100*pi*t+30)+1-3*x;

functionsys=mdlUpdate(t,x,u)

sys=[];

functionsys=mdlOutputs(t,x,u)

sys=x;

functionsys=mdlGetTimeOfNextVarHit(t,x,u)

sampleTime=1;

sys=t+sampleTime;

functionsys=mdlTerminate(t,x,u)

sys=[];

 

2、已知末系统的状态方程如下:

试用simulink建立仿真模型,且其输入为单位阶跃响应曲线。

(1)

(2)

function[sys,x0,str,ts]=sfun3(t,x,u,flag)

switchflag,

case0,

[sys,x0,str,ts]=mdlInitializeSizes;

case1,

sys=mdlDerivatives(t,x,u);

case2,

sys=mdlUpdate(t,x,u);

case3,

sys=mdlOutputs(t,x,u);

case4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

case9,

sys=mdlTerminate(t,x,u);

otherwise

DAStudio.error('Simulink:

blocks:

unhandledFlag',num2str(flag));

end

function[sys,x0,str,ts]=mdlInitializeSizes

sizes=simsizes;

sizes.NumContStates=3;

sizes.NumDiscStates=0;

sizes.NumOutputs=1;

sizes.NumInputs=1;

sizes.DirFeedthrough=0;

sizes.NumSampleTimes=1;

sys=simsizes(sizes);

x0=[0;0;0];

str=[];

ts=[00];

functionsys=mdlDerivatives(t,x,u)

x

(1)=1*x

(1)-1*x

(2)-2*x(3)+u;

x

(2)=2*x

(2)-1*x(3);

x(3)=3*x(3)+u;

sys=x;

functionsys=mdlUpdate(t,x,u)

sys=[];

functionsys=mdlOutputs(t,x,u)

sys=1*x

(1)-2*x

(2)+3*x(3);

functionsys=mdlGetTimeOfNextVarHit(t,x,u)

sampleTime=1

sys=t+sampleTime;

functionsys=mdlTerminate(t,x,u)

sys=[];

 

3、食饵-捕食者模型:

设食饵(如鱼,兔等)数量为

,捕食者数量为

,有

设r=1,d=0.5,a=0.1,b=0.02,

.用simulink动态仿真和S函数两种方法,建立系统仿真模型,绘制

的图形。

function[sys,x0,str,ts,simStateCompliance]=sfuntmpl2(t,x,u,flag)

switchflag,

case0,

[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes;

case1,

sys=mdlDerivatives(t,x,u);

case2,

sys=mdlUpdate(t,x,u);

case3,

sys=mdlOutputs(t,x,u);

case4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

case9,

sys=mdlTerminate(t,x,u);

otherwise

DAStudio.error('Simulink:

blocks:

unhandledFlag',num2str(flag));

end

function[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes

sizes=simsizes;

sizes.NumContStates=2;

sizes.NumDiscStates=0;

sizes.NumOutputs=2;

sizes.NumInputs=0;

sizes.DirFeedthrough=0;

sizes.NumSampleTimes=1;

sys=simsizes(sizes);

x0=[25,2];

str=[];

ts=[00];

simStateCompliance='UnknownSimState';

functionsys=mdlDerivatives(t,x,u)

dx=zeros(2,1);

dx

(1)=x*(r-a*y);

dx

(2)=y*(-b+d*x);

sys=dx;

functionsys=mdlOutputs(t,x,u)

sys=x;

 

4、已知

,求该方程的解。

用simulink动态仿真和S函数两种方法,建立系统仿真模型,绘制

的图形。

function[sys,x0,str,ts,simStateCompliance]=sfuntmpl2(t,x,u,flag)

switchflag,

case0,

[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes;

case1,

sys=mdlDerivatives(t,x,u);

case2,

sys=mdlUpdate(t,x,u);

case3,

sys=mdlOutputs(t,x,u);

case4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

case9,

sys=mdlTerminate(t,x,u);

otherwise

DAStudio.error('Simulink:

blocks:

unhandledFlag',num2str(flag));

end

function[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes

sizes=simsizes;

sizes.NumContStates=1;

sizes.NumDiscStates=0;

sizes.NumOutputs=2;

sizes.NumInputs=1;

sizes.DirFeedthrough=1;

sizes.NumSampleTimes=1;

sys=simsizes(sizes);

x0=25;

str=[];

ts=[00];

simStateCompliance='UnknownSimState';

functionsys=mdlDerivatives(t,x,u)

sys=4*100*sin(100*pi*t+30)+1-3*x;

functionsys=mdlUpdate(t,x,u)

sys=[];

functionsys=mdlOutputs(t,x,u)

sys=x;

functionsys=mdlGetTimeOfNextVarHit(t,x,u)

sampleTime=1;

sys=t+sampleTime;

functionsys=mdlTerminate(t,x,u)

sys=[];

5、已知弹簧-质量-阻尼器机械位移系统的动态方程为:

请建立此动态系统的仿真模型,然后分析系统在外力

作用下的系统响应即位移

质量块的初始位移和初始速度均为0。

(将数据传输到工作空间,然后绘制位移图形。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1