在gui中用sim('model')启动simulink后,数据没存到workspace中,怎么解决?
展开全部
1、首先明确一下,Simulink模型的数据导出到工作区的主要途径:
(1)使用To Workspace模块;
(2)使用Scope并设置Save data to workpace;
(3)使用Outport模块并设置仿真参数Workspace I/O。
2、搞清楚Workspace概念包括基本(base)工作区和函数工作区。默认条件下在命令窗口中输入命令使用的是base工作区,但对于每个函数,都有自己独立的工作区。
3、GUI回调函数作为function有独立的工作区。
4、使用sim('model')命令,导出到工作区的数据,默认是在调用sim函数的宿主程序。例如,在命令窗口直接调用,产生的数据在base工作区;而在回调函数调用,则变量在相应的函数工作区。
你的问题可能就出在这里:在回调函数中调用sim('model'),但试图在base工作区找输出的变量。
5、解决的方法:
(1)如果可以,尝试在回调函数中处理和使用数据;
(2)如果确实需要把数据保存到base工作区,则调用sim函数时,采用下面的做法:
evalin('base','sim(''model'')')
这种做法强制在base工作区执行sim命令,相应产生的结果也会在base工作区中。
(1)使用To Workspace模块;
(2)使用Scope并设置Save data to workpace;
(3)使用Outport模块并设置仿真参数Workspace I/O。
2、搞清楚Workspace概念包括基本(base)工作区和函数工作区。默认条件下在命令窗口中输入命令使用的是base工作区,但对于每个函数,都有自己独立的工作区。
3、GUI回调函数作为function有独立的工作区。
4、使用sim('model')命令,导出到工作区的数据,默认是在调用sim函数的宿主程序。例如,在命令窗口直接调用,产生的数据在base工作区;而在回调函数调用,则变量在相应的函数工作区。
你的问题可能就出在这里:在回调函数中调用sim('model'),但试图在base工作区找输出的变量。
5、解决的方法:
(1)如果可以,尝试在回调函数中处理和使用数据;
(2)如果确实需要把数据保存到base工作区,则调用sim函数时,采用下面的做法:
evalin('base','sim(''model'')')
这种做法强制在base工作区执行sim命令,相应产生的结果也会在base工作区中。
VSH艾羽
2024-10-27 广告
2024-10-27 广告
ANSYS是一款功能强大的有限元分析软件,广泛应用于航空航天、汽车、电子、能源等多个领域。它能够进行结构、流体、热、电磁等多物理场的仿真分析,支持复杂的几何建模、高效的网格划分和多种求解器,帮助工程师优化产品设计,减少开发成本,提高生产效率...
点击进入详情页
本回答由VSH艾羽提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询