创建模型组件
当您收集系统需求时,您需要标识模型组件。尽管您可能没有完整的设定,但您可能对组件接口的位置有所了解。要将一个模型组织成若干具有灵活接口的模型组件,请创建子系统。
某些组件,例如数字控制器,应在模型中作为单个单元执行。对于这些具有已知边界的独立组件,请创建一个原子子系统。预先定义原子组件可以在您要生成独立代码时避免成本高昂的重构。要使子系统成为原子子系统,请选择一个 Subsystem 模块。在 Simulink® 工具条中的子系统模块选项卡上,选择设为原子子系统。
名为 BasicModelingSubsystems 的模型包含四个常见的模型组件。
被控对象 - 系统的数学模型
控制器 - 控制被控对象行为的算法
运算符 - 定义发送到控制器的命令的逻辑
环境 - 影响被控对象的外部扰动
mdl = "BasicModelingSubsystems";
open_system(mdl)
名为 Controller 的 Subsystem 模块的粗边框表示对应的子系统是原子子系统。
每个 Subsystem 模块上的端口对应于子系统内的输入和输出模块。例如,名为 Plant 的 Subsystem 模块有名为 control 的端口,对应于子系统内标签为 control 的 In Bus Element 模块。

在此示例中,被控对象表示一个质量-弹簧-阻尼系统。
控制器计算将被控对象移至其目标位置所需的力。

运算符确定质点的目标位置,并使用 Stateflow® 图实现相关的过程逻辑。

环境生成影响被控对象的扰动力。
![]()
模型组件进行交互以确定质点的位置。
在仿真期间,运算符指示控制器等待 2 秒,然后将质点上移 2 米。当质点超出目标位置时,运算符指示控制器将质点定位在比其原始位置高 1 米的位置。在 5 秒后,环境扰动对物理系统施加稳定的力,控制器作出反应以将质点稳定在目标位置。
sim(mdl);
