将Matlab的M函数引用到Simulink中.pdf
- 文档编号:3179661
- 上传时间:2022-11-19
- 格式:PDF
- 页数:4
- 大小:203.59KB
将Matlab的M函数引用到Simulink中.pdf
《将Matlab的M函数引用到Simulink中.pdf》由会员分享,可在线阅读,更多相关《将Matlab的M函数引用到Simulink中.pdf(4页珍藏版)》请在冰豆网上搜索。
将将Matlab的的M函数引用到函数引用到Simulink中中作者:
彭天邮件:
博客:
http:
/M函数:
functiony=peng(x,t)tt=0:
0.1:
2*t;y=sum(tt)*x;如果我需要在Simulink中用到这个peng函数,那么可以用下面的Simulink模型:
MATLABFcnMATLABFunctionDisplay14020Display10Constant2Clock其中MATLABFcn模块的设置如下:
也就是说x等于第一个输入,t为第二个输入。
而在我的Simulink模型中第一个输入是一个常量模块,一直为2,也就是x=2;第二个是随时间改变的量,也就是t每次仿真都等于当前的仿真时间,所以最后就是t=2;因此用peng函数计算出来的结果是4020,证明是正确的。
二、使用使用subsystem模块模块可以建立如下的模型图:
SubsystempengFunctioncreatedbyPenGDisplay11Display4020Constant1将上图保存为timpeng.mdl,并存放在当前目录中。
其中Subsystem的封装如下:
而Subsystem内部的模型如下:
Out11GainyIn11当双击Subsystem模块时,设置如下:
也就是说相当于输出peng(2,10)的值,结果自然是4020了。
如果你要循环的改变t的值,可以用如下的命令。
当然需要给timpeng.mdl增加一个输出模块,如下:
Out11SubsystempengFunctioncreatedbyPenGDisplay11Display4020Constant1然后,保存。
运行下面的程序:
open_system(timpeng);fori=1:
10set_param(timpeng/Subsystem,t,num2str(i);save_system(timpeng);t_out,x_out,y_out=sim(timpeng,010);disp(y_out(end);end也就是用open_system来打开Simulink模型文件,用set_param来设置其中Subsystem模块的t参数的值依次为1到10,然后用save_system来保存Simulink模型文件。
之后用sim函数来运行timpeng.mdl,然后用disp函数输出最后一个输出值。
可以看到会依次的输出当t为1到10时,对应的用peng函数计算的值。
最后一个是4020,代表运行完毕,即t=10.可以用close_system来关闭Simulink模型。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 函数 引用 Simulink