由于模型的大小和复杂性增加,您可以通过将块分组为子系统来简化它。子系统是一组块,您将群体组成单个子系统块。
使用子系统:
建立一个分层框图,其中子系统块在一层上,构成子系统的块是另一个层。
将功能相关的块保持在一起。
有助于减少模型窗口中显示的块的数量。
建立具有输入和输出的接口。
当您创建一个子系统的副本时,该副本独立于源子系统。要跨模型或跨模型重用子系统的内容,请考虑引用的子系统、引用的模型,或链接到自定义库中的块的子系统。有关更多信息,请参阅在模型组件的类型中选择。
子系统可以是虚拟或非虚拟的。一种虚拟子系统提供模型中的图形层次结构,不会影响模型的执行。一种非宽恕子系统在模型中作为单个单元执行。
小费
对于控制器和其他独立组件,通过使用非虚拟子系统或引用模型在相关块周围定义硬边界。当您希望为组件生成代码时,预先定义硬边界可以避免代价高昂的重构。
金宝app®将非Virtual子系统分类为这些类型:
子系统类型 | 描述 |
---|---|
原子子系统 | 执行作为单个单元的子系统。 |
启用子系统 | 由外部输入启用执行的子系统。 |
触发子系统 | 执行由外部输入触发其执行的子系统。 |
功能呼叫子系统 | 执行由外部功能呼叫输入控制其执行的子系统。 |
启用和触发的子系统 | 执行其执行并由外部输入触发其执行的子系统。 |
可重置的子系统 | 子系统,其块状态重置外部触发器。 |
如果动作子系统 | 执行执行的子系统如果块。 |
开关机箱动作子系统 | 其执行由a控制的子系统切换案例块。 |
而迭代器子系统 | 当逻辑条件为真时,在模拟时间步长期间重复执行的子系统。 |
对迭代器子系统 | 在指定数量的迭代次数期间重复在模拟时间步骤期间重复执行的子系统。 |
对于每个子系统 | 在输入信号的每个元素或子阵列上重复执行的子系统并连接结果。 |
要创建子系统,可以:
在Simuli金宝appnk Editor中,双击并开始输入子系统类型,然后从菜单中选择相应的块。
在“Simul金宝appink编辑器”中,拖动“选择”框以概述要创建的子系统,然后选择子系统类型。
拖子系统阻止从图书馆浏览器。
复制和粘贴一个子系统从一个模型。
从选择框中创建子系统时,选择可以为空或在模型的一个区域中包含多个块。
从操作栏中,选择您想要创建的子系统类型。
When the selection contains blocks that correspond to input and output ports, the new subsystem includes copies of those blocks.新子系统不包含对应于控制端口的块的副本。
您可以在创建后更改子系统类型。
要使子系统作为一个单元执行,请单击子系统块。在这一点子系统选项卡,选择是原子子系统。
要使子系统有条件地执行,添加一个与控制端口对应的块。
使子系统无条件地执行,删除对应于控制端口的块。
港口上子系统块对应于子系统内部的块。
例如,这子系统块有两个输入端口和一个输出端口。
该子系统包含两个轮廓尺寸块(三机一体
和In2
)和一个外港块(OUT1.
)对应的端口子系统块。
要将端口添加到子系统:
单击边缘子系统块,然后选择要创建的端口类型。
拖动一条线到子系统块。
通过双击打开子系统子系统块,然后将相应的块添加到子系统。
更改端口的位置子系统控件的任意一侧拖动端口到新位置子系统块。
默认情况下,Simuli金宝appnk标记了端口子系统块。要指定Simulink如何标记金宝app子系统的端口:
选择子系统块。
在这一点格式Simulink To金宝appolStrip的选项卡,从中选择其中一个标记选项端口标签菜单。有关更多信息,请参阅显示端口标签。
您可以更改姓名子系统块和修改块的方式,你做任何其他块。例如,您可以:
这读/写权限A.参数子系统块控制子系统允许的访问级别。
笔记
限制读或写访问并不阻止更改访问限制。要隐藏专有信息,请考虑使用受保护的模型。有关更多信息,请参阅探索受保护的模型功能。
当子系统存储在自定义库中时,可以使用读/写权限参数来控制对该块的链接实例的访问。只要库链接保持完整,受限制的访问就可以阻止人们查看或修改子系统的内容,同时仍然允许他们在模型中使用它。有关更多信息,请参阅连接块。
金宝appsimulink.blockdiagram.copyContentStosubSystem.