您所在位置: 网站首页 / (精品word)MATLABS函数的调用实例.doc / 文档详情
(精品word)MATLABS函数的调用实例.doc 立即下载
2024-09-09
约2.1千字
约7页
0
79KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

(精品word)MATLABS函数的调用实例.doc

(精品word)MATLABS函数的调用实例.doc

预览

免费试读已结束,剩余 2 页请下载文档后查看

5 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(精品word)MATLABS函数的调用实例
(精品word)MATLABS函数的调用实例
(精品word)MATLABS函数的调用实例
期末作业
1.求解微分方程,初始条件。要求交mdl文件及仿真结果的截图.
解:用Simulink连接的仿真图如下所示:

求解出的x1,x2,x3的解如下图(a)所示的仿真结果:

2。当电源电压V时,求解表达式y(t)的波形:,其中y(0)=1。要求交mdl文件及仿真结果的截图。
解:用Simulink连接的仿真图如下所示:

仿真结果如下图(b)所示:

3。使用S函数实现y=5*x+3,建立仿真模型并得出仿真结果.要求交mdl文件,S函数及仿真结果的截图。
解:用Simulink连接的仿真图如下所示:

S函数的代码如下:
function[sys,x0,str,ts]=mysfun3(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
error([’Unhandledflag=',num2str(flag)]);
end
function[sys,x0,str,ts]=mdlInitializeSizes
sizes=simsizes;
sizes。NumContStates=0;
sizes.NumDiscStates=0;
sizes.NumOutputs=1;
sizes。NumInputs=1;
sizes。DirFeedthrough=1;
sizes。NumSampleTimes=1;
sys=simsizes(sizes);
x0=[];
str=[];
ts=[00];
functionsys=mdlDerivatives(t,x,u)
sys=[];
functionsys=mdlUpdate(t,x,u)
sys=[];
functionsys=mdlOutputs(t,x,u)
sys=5*u+3;
functionsys=mdlGetTimeOfNextVarHit(t,x,u)
sampleTime=1;
sys=t+sampleTime;
functionsys=mdlTerminate(t,x,u)
sys=[];
仿真结果如下图(c)所示:



4.已知某系统的状态方程如下:
试用S函数建立其仿真模型,并求其单位阶跃响应曲线.
解:用Simulink连接的仿真图如下所示:

S函数的代码如下:
function[sys,x0,str,ts]=mysfun4(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
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

(精品word)MATLABS函数的调用实例

文档大小:79KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用