子系统概述
子系统模块在Simulink中扮演着重要的角色,它能够将模块及其信号线整合为一个大型模块,将模型划分为内外两个层次。模块外部对内部细节进行了屏蔽,仅展示输入输出端口,而内部则是真正的逻辑结构所在。这种层次性设计带来了以下优势:
- 精简模型窗口中的模块数量,使模型外观结构更为清晰,显著增强了模型的可读性。
- 在简化模型外观结构图的基础上,保持了各模块之间的拓扑关系,使得特定功能的模块得以拥有一些独立的属性。
- 方便创建自定义子系统,以便在内部集成特定功能,实现更高的复用性。
子系统分类
在Simulink中,子系统可分为虚拟子系统与非虚拟子系统。非虚拟子系统进一步划分为原子子系统、受外部信号触发或外部信号使能的触发子系统与使能子系统。此外,还包括与流控制模块(如If、Switch、For、While)协同工作的动作子系统(Action Subsystem),以及同一时间仅能激活其中一个的多个子系统的可变子系统。
-
虚拟子系统
</
虚拟子系统(Virtual Subsystem)在模型中提供图形化的层级展示,有助于简化模型外观,而不影响模型执行与代码生成。在模型执行过程中,Simulink会展开所有虚拟子系统,即在仿真执行前预先展开子系统,实际效果与未建立子系统时相同,因此称为虚拟子系统。