添加Simulink块以设置系统范围的参数

时间:2014-05-20 22:01:54

标签: matlab simulink

我有一个Simulink模型,其中包含许多影响许多不同块的系统范围参数。我现在处理这个问题的方法是将整个模型封装在顶层的掩码子系统中并管理那里的参数。这样做可以使所有块都可以看到参数。但是,我宁愿让我的模型驻留在顶层,并在那里包含一个参数块,我可以使用它来操作系统参数。

我不知道图片在这里是否会有所帮助,但它们不会受到伤害:

Nested model

上图显示了我当前设置的示例。请注意,整个设计嵌套在名为“系统参数”的掩码子系统中

Parameters as top-level block

此图显示我将如何喜欢以显示最高级别。这似乎是一个更直观的界面。它还允许在模型之间更容易地复制我的参数块,这是我对它的主要兴趣。我真的想把它转换成一个库块,我可以在一些基于相同硬件系统的模型中使用它。但是,问题是System Parameters块中的参数对于模型中的其余块是不可见的(至少不是直接)。

是否有一种方法可以像第二张图像中的块一样使其参数可以轻松地用于模型的其余部分?

1 个答案:

答案 0 :(得分:2)

对于其他块可用的参数,它们需要位于模型工作区或基础工作区中。你可以在你的块中添加一个初始化回调,它将掩码参数复制到任一工作区,但在我看来,更好的做法是使用MATLAB脚本定义在{{{{{{{{{ 1}}模型回调。然后,您只需要为最终用户分发该MATLAB脚本以及您的模型。