主要内容

创建模型组件

当您收集系统需求时,您需要标识模型组件。尽管您可能没有完整的设定,但您可能对组件接口的位置有所了解。要将一个模型组织成若干具有灵活接口的模型组件,请创建子系统。

某些组件,例如数字控制器,应在模型中作为单个单元执行。对于这些具有已知边界的独立组件,请创建一个原子子系统。预先定义原子组件可以在您要生成独立代码时避免成本高昂的重构。要使子系统成为原子子系统,请选择一个 Subsystem 模块。在 Simulink® 工具条中的子系统模块选项卡上,选择设为原子子系统

名为 BasicModelingSubsystems 的模型包含四个常见的模型组件。

  • 被控对象 - 系统的数学模型

  • 控制器 - 控制被控对象行为的算法

  • 运算符 - 定义发送到控制器的命令的逻辑

  • 环境 - 影响被控对象的外部扰动

mdl = "BasicModelingSubsystems";
open_system(mdl)

Model with three virtual subsystems named Plant, Operator, and Environment and one atomic subsystem named Controller

名为 Controller 的 Subsystem 模块的粗边框表示对应的子系统是原子子系统。

每个 Subsystem 模块上的端口对应于子系统内的输入和输出模块。例如,名为 Plant 的 Subsystem 模块有名为 control 的端口,对应于子系统内标签为 control 的 In Bus Element 模块。

Mechanical system with two input ports and one output port

在此示例中,被控对象表示一个质量-弹簧-阻尼系统。

控制器计算将被控对象移至其目标位置所需的力。

Controller subsystem with a PID Controller block

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

Stateflow chart for operator logic

环境生成影响被控对象的扰动力。

Environment subsystem with disturbance represented by a Step block

模型组件进行交互以确定质点的位置。

在仿真期间,运算符指示控制器等待 2 秒,然后将质点上移 2 米。当质点超出目标位置时,运算符指示控制器将质点定位在比其原始位置高 1 米的位置。在 5 秒后,环境扰动对物理系统施加稳定的力,控制器作出反应以将质点稳定在目标位置。

sim(mdl);

另请参阅

主题