我有一个样本模型(如下所示),它包含一个from workspace块。它包含工作空间变量variable1(时间序列信号)。我在模拟期间更改了variable1的数据,但模型没有更新variable1的当前值。它仅在我停止并重新启动模拟时更新,但我希望它仅在运行时更新。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
这并不是Simulink的设计工作方式,因此没有简单的方法可以做到这一点。 Simulink仅检查仅在模拟开始时的模型初始化期间检查工作空间的值。最好的办法是使用set_param
,如:
set_param('untitled/From Workspace',' VariableName','variable1'); % put the correct path to your block
这不会改变块的参数化方式,但会强制Simulink使用variable1
的新值对块进行参数化。由于variable1
是一个timeseries
对象,我不确定它的效果如何,但值得一试。
有关详细信息,请参阅this discussion on MATLAB Central。