Matlab求助:simulink仿真结果的使用

正常情况下使用[t,x,y]=sim('file',[]) 命令就可以启动仿真,然后我用plot(t,y)画出波形。
但是当file模型里含变量参数时,就行不通了。(比如我要通过赋值的形式设定输入电压)
在网上找了个方法说是转换下工作空间(我也不懂):options=simset('SrcWorkspace','current'); 然后sim('file',[],options)。这样确实可以,这是什么原因?
如果我想在别的函数里面使用t,y数据画图要怎么做?

你说的方法是设定simulink模型的参数,所以用simset命令,该命令是包括仿真时间、仿真步长等设置。
但是你是想改变模型里的一些参数,如果每次都到模型里去修改是比较麻烦的,特别是要根据不同参数循环运行simulink模型时,我们希望可以用命令直接改变模型里的参数,该命令就是set_param , 下面是一个例子。
set_param('WithCh_081112/V10', 'value', num2str(12.5));
说明:
WithCh_081112 我的模型文件名
V10 该模型里常数图标的名字,如果有在子模型里,可以用 / 指定具体位置。 你要在这里指定你希望修改参数的图标名字。
'value' 是在该框图中希望修改参数的标题,因为有时一个图标框图里会有几个参数要输入的。该名字和设定窗口里显示的名字不一样,要到help菜单里simulink部分的一个表里去查找。
num2str(12.5) 就是把数字12.5转换为字符串,输入给系统。

如果要在别的函数里面使用t,y数据画图,可以把仿真结果保存下来,再在别的函数打开该数据,进行画图。追问

感谢回答!
能说下怎么保存和打开么,我新手完全不会。

追答

在simulink模型里,用 to file 框图图标,保存想要的仿真结果, 在要画图的函数里,先用load命令装载保存的结果到工作空间,然后就可以画图了。

温馨提示:答案为网友推荐,仅供参考
相似回答