主要内容

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

使用 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 行为进行建模。

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)

另请参阅

| | | | |

主题