我想将一个标量变量从Simulink Diagram导出到Matlab工作区。
虽然我知道在模拟过程中可以更改'Chemin'的值,但我只想将初始值导出到工作区;我不想要一个TimeSerie变量(比如'To Workspace'块会这样做),我只想要一个标量值。
提前感谢您的帮助!
答案 0 :(得分:2)
使用Enabled Subsystem,您可以轻松完成此操作。使用常量(= 0)和初始条件块(= 1),除t = 0外,始终使启用信号为false,如下图所示。
启用子系统内部有
将保存格式设置为Array。然后,simout变量将是标量值。
答案 1 :(得分:1)
我认为你不能做你想做的事。 Simulink中的所有内容都是基于时间的,因此您必须将整个变量作为时间函数保存到工作区。但是,您可以在StopFcn
中添加model callback,它只提取第一个值并清除工作区中与时间相关的变量,例如:
chemin_0 = chemin(1); % assuming chemin is the name of the time-dependent variable saved to workspace
clear chemin
模拟停止后执行StopFcn
回调。