Simulink:子系统初始化后会发生什么?

时间:2014-03-24 21:58:06

标签: matlab simulink

我在运行simulink的块回调时遇到了很多麻烦,而且文档严重不足且杂乱无章。似乎我误解了Simulink如何编译模型的多个要点,但由于StackOverflow不喜欢多部分问题,我会一次发布一个。

情况:我有一个组件库,每个组件都是一个虚拟子系统,其参数是通过掩码定义的。阻止A具有参数a,使用' assignin'}将其发送到基础工作区。命令。

接下来,块B具有参数b,该参数在掩码的“初始化”选项卡中初始化。

最后,块B的StartFcn回调运行脚本,需要引用ab来计算c。在脚本中,我将a简称为a,因为它位于' base'工作区,我使用b引用get_param(gcb,'b')

现在,当参数b是用户输入时,这最后一个命令有效(因此它是一个常量值)。但在我的情况下,使用“初始化”选项卡中的其他参数计算此b。由于某种原因,在脚本中,此参数始终为零。

我在块B中添加了一个显示,以查看这些值是什么,它们显然不为零。

有人可以解释为什么剧本似乎无法获得区域外的区域的真正价值吗?

1 个答案:

答案 0 :(得分:2)

您可以使用getworkspacevariable

获取蒙版工作空间变量