主要内容

本页采用了机器翻译。点击此处可查看英文原文。

使用 Simscape 实现组件行为

自 R2021b 起

物理子系统是具有 Simscape™ 连接的 Simulink® 子系统具有 Simscape 连接的物理子系统采用物理网络方法,适合仿真具有真实物理组件的系统,代表一个数学模型。

在 System Composer™ 中对组件使用 Simscape 行为可改进物理组件系统的仿真和设计。该功能需要 Simscape 许可证。有关详细信息,请参阅Basic Principles of Modeling Physical Networks (Simscape)

您可以在 System Composer 中仿真 Simscape 组件的实现。使用仿真数据检查器查看和比较模型设计之间的仿真结果。

提示

要了解更多关于 System Composer 概念在系统工程设计中的应用,请参阅System Composer 概念

要描述 Simscape 中 System Composer 架构模型的组件行为,请按照以下步骤操作:

打开此模型,与名为 Fan 的 System Composer 架构模型进行交互,该模型在组件 DC Motor 上具有 Simscape 行为。本教程中的步骤将生成此模型。

注意

此示例使用 Simscape 模块。如果您没有 Simscape 许可证,则可以打开模型,但只能进行基本更改,例如修改模块参数。

带直流电机行为的架构模型 Simscape

此示例显示了风扇架构模型中的直流电机。直流电机使用 Simulink 子系统组件中的 Simscape 行为进行建模。

systemcomposer.openModel("Fan");

Fan model with DC motor in Simscape linked to System Composer subsystem reference.

定义组件上的物理端口

物理端口代表 Simscape 物理建模连接器端口,称为 Connection Port (Simscape)使用物理端口连接架构模型中的组件或启用 Simulink 子系统中的物理系统。

创建一个新的 System Composer 架构模型。将名为 DC Motor 的组件添加到画布。要向组件添加物理端口,请在组件边界处暂停,直到端口轮廓出现。点击端口轮廓,从选项中选择 Physical

The DC motor component with 4 physical ports

物理端口也可用于连接到 Simscape 模块。

注意

具有物理端口的组件不能保存为架构模型、模型引用、软件架构或 Stateflow® 图行为。具有物理端口的组件只能保存为子系统引用或子系统组件行为。

指定端口上的物理接口

您可以在物理端口上指定物理接口。物理接口定义流经物理端口的信息类型。可以将同一个接口分配给多个端口。物理接口是组合接口,相当于一个 Simulink.ConnectionBus 对象,该对象指定多个 Simulink.ConnectionElement 对象。使用物理接口来捆绑物理元素,以便使用至少一个物理域来描述物理模型。

物理元素描述物理接口的分解。物理元素等同于 Simulink.ConnectionElement 对象。将物理元素的 Type 定义为物理域,以便在物理模型中使用该域。

  1. 要打开接口编辑器,请导航至 建模 > 接口编辑器

  2. 要添加新的物理接口定义,请点击 add data interface 图标旁边的列表,然后选择物理接口。将物理接口命名为 ElectricalInterface

  3. 要向物理接口添加物理元素,请点击 add data element 图标。物理接口和物理元素名称必须是有效的 MATLAB® 变量名称。创建物理元素 PositiveNegative

  4. 类型列中,定义这些物理元素所属的 Simscape 域。在这种情况下,两者都属于 foundation.electrical.electrical

    Physical interfaces and elements with domains for the fan model

  5. 选择 DC Motor 组件上的 E 端口。右键点击接口编辑器上的 ElectricalInterface 物理接口,然后点击分配给选定端口

注意

新创建的端口默认具有 <inherit> 接口规范,以在架构设计的早期阶段支持未知接口。如果在另一个端口上指定了接口,则在构建架构时,<inherit> 指定将该接口传播到其他连接的端口。接口规范不会自动通过模型和子系统引用传播。

创建 Simulink 子系统组件

您可以在 System Composer 中创建一个 Simulink 子系统,以实现与 Simscape 的直接集成。有关详细信息,请参阅使用子系统组件创建 Simulink 行为

选择 DC Motor 组件。导航到 建模 > 创建 Simulink 行为,或使用组件的右键点击菜单。

Create Simulink behavior with Type Subsystem for DC Motor

点击确定

Subsystem component DC Motor

您可以将父模型 System Composer 中的子系统组件转换为子系统引用行为,然后将子系统保存并作为单独的工件重用。有关详细信息,请参阅使用子系统组件创建 Simulink 行为

使用 Simscape 描述组件行为

双击子系统组件,使用 Simscape 描述组件行为。有关此示例所基于的直流电机,请参阅评估 DC 电机的性能 (Simscape)

物理接口可以使用 Simscape 总线分解为物理元素。每个物理元素代表与 Simscape 中的域相关的守恒连接。Simscape 总线将守恒连接捆绑在一起。有关详细信息,请参阅Simscape Bus (Simscape)

E 物理端口旁边添加一个 Simscape Bus 模块。双击 Simscape Bus,然后选择连接类型 Bus: ElectricalInterface。将 E 物理端口连接到 Simscape Bus 模块。在物理元素 PositiveNegative类型下定义的域 foundation.electrical.electrical 用于这些端口的任何连接。

Simscape Bus blocks with physical elements inside

您还可以使用端口上本地定义的专属接口,在 System Composer 的 Simscape 行为模型上启用域特定行。通过属性检查器编辑端口接口。导航至 建模 > 属性检查器。在这种情况下,不需要 Simscape Bus 模块,端口可以直接连接到指定域的物理连接。将一个所属物理接口添加到物理端口 R,并将类型作为 foundation.mechanical.rotational.rotational 域。选择编辑接口编辑器中打开会将端口接口视图输入到接口编辑器中。有关详细信息,请参阅定义端口本地的专属接口

Owned interface for V+ physical port

使用库浏览器,检索以下 Simscape 模块,并使用电气和旋转机械域特定连接器构建直流电机模型。物理连接器可以表示特定物理域的非定向守恒连接。连接器也可以表示物理信号。使用物理连接器连接表示系统特征的物理组件,以实现数学仿真。

有关详细信息,请参阅域特定线型 (Simscape)

Simscape model for DC motor

物理建模使用网络方法,因此与常规的 Simulink 建模不同。有关详细信息,请参阅Modeling Best Practices (Simscape)Troubleshooting Simulation Errors (Simscape)

另请参阅

| | | | |

主题