Engee 文档

模型的层次结构

几个块可以组合成一个子系统。 在模型中块的数量如此之大以至于使用它们变得不方便的情况下,这是必要的。

创建子系统

有几种方法可以将块组合到子系统中:

  • 添加块 子系统 从块库中,用鼠标左键双击它(这将进入子系统),并以标准方式添加必要的块。

    model hierarchy 1

  • 通过按下选择要添加到子系统的块 Shift. 点击出现在矩形角落的点,然后点击图标 subsystem icon 1 1 子系统

    model hierarchy 2

在一个子系统中,您可以在不同嵌套级别创建无限数量的其他子系统。 因此,模型具有层次结构。 要浏览模型的不同级别,请使用*导航栏*。

model hierarchy 3 1

使用模型块

要使用模型层次结构,除了子系统之外,还可以使用块 模型.

与子系统不同,*Model*块的内容是一个单独的模型,可以在其他模型中重用(几个模型可以引用*Model*块)。

因此,您可以使用*Model*块将一个模型包含在另一个模型中。 每个*Model*块是对特定模型(子模型)的引用。 考虑一个例子:

要创建子模型,我们使用块 中1, 增益, 积分器输出1. 默认情况下,块参数保持不变。

example model hierarchy 1

将来,我们计划将相同的信号发送到两个输入端口,因此我们对*Inport块使用*Duplicate*函数。*:

example model hierarchy shadowinport

转换输入端口后模型的_view_

最终的子模型如下所示:

example model hierarchy 2

让我们保存子模型并设置一个名称,在我们的例子中—newmodel_12。 以后,我们将在父模型*模型*中引用此名称。

接下来,我们将创建一个模型,从中引用子模型。 我们使用块 正弦波, 模型终结者.

example model hierarchy 3

对于*正弦波*块,将`采样时间`值设置为'0.1'。 块将被修改。 然后右键单击*模型*块并选择*选项*。 这将打开设置窗口,其中我们将引用以前创建的子模型*newmodel_12*:

example model x

*模型*块将被修改,输入和输出端口将出现,信号线将连接到哪个端口。 对于来自输出端口的信号,我们将记录:

example model hierarchy 4

让我们运行模型的模拟并查看图表。 我们默认离开求解器(欧拉)。 窗口中将显示正弦信号仿真的图形 信号可视化 graphs icon 1:

example model hierarchy 5

  • 所有参考模型中求解器的步长必须与父模型(具有*Model*块)的求解器的步长相匹配。 否则,你会得到一个求解器错误。

  • 您可以选择不同的求解器,前提是步长相同。:

    • 具有可变节距的参考模型不能用于具有恒定节距的父模型。

    • 常量步长参考模型可用于父变量步长模型。

  • 链接模型不支持库块 物理建模和多维信号。

  • 链接模型支持多级嵌入 子系统和其他*模型*块。