主要内容

比较模型组件的功能

在您使用特定类型的模型组件实现系统的一部分之前,请考虑组件类型是否满足您的建模需求。

提示

根据高级指南和用例识别哪些组件类型需要考虑,请参阅在模型组件类型中进行选择

组成部分考虑 建模需求
发展过程
  • 单独的文件

  • 组件重用

  • 共享数据

  • 特定于编辑

  • 变体

  • 版本控制和配置管理

  • 知识产权保护

  • 单元测试

性能需求
  • 增量式模型加载

  • 构建构件重用

  • 减少大型模型的内存使用

  • 人工代数回路消去法

特征
  • 兼容的配置参数设置

  • 接口处的信号属性规范

  • 接口物理连接

  • 总线规格

  • 状态初始化

  • 有条件执行

  • 基于事件的行为

  • 独立功能

请注意

有关代码生成的注意事项,请参见:

发展过程

建模需求 子系统 关联子系统 子系统引用 模型引用
单独的文件

不支持金宝app

将子系统与其父系统保存在同一文件中。

要创建或更改子系统,必须编辑父文件,这可能导致文件争用和合并问题。

金宝app支持

将链接块的父库块保存在单独的文件中。

使用单独的文件有助于避免文件争用。

金宝app支持

将引用的子系统保存在单独的文件中。

使用单独的文件有助于避免文件争用。

金宝app支持

将引用的模型保存在单独的文件中。

使用单独的文件有助于避免文件争用。

组件重用

不支持金宝app

虽然可以复制子系统以在模型中重用它,但这些副本彼此独立。

金宝app支持

可以在多个模型中多次链接到同一父库块,而无需创建副本。

管理库链接会增加一些开销,例如管理断开、禁用或参数化的链接。

金宝app支持

您可以在多个模型中多次引用相同的子系统,而无需创建副本。

金宝app支持

您可以在多个模型中多次引用同一个模型,而无需创建副本。看到模型重用

共享数据

金宝app支持

通过在组件外部定义数据,可以在实例之间共享数据。例如,通过在公共父子系统中使用数据存储。

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

通过在模型内创建数据存储,可以在引用模型的实例之间共享数据。看见在引用的模型实例之间共享数据

特定于编辑

金宝app支持

子系统副本彼此独立。

金宝app支持

当编辑父库块时,更改将应用到库文件并传播到链接到该块的所有块。

要编辑块的实例,可以禁用库链接。

当父库块具有受限的写入访问权限时,不能禁用库链接。

不支持金宝app

编辑被引用子系统的实例时,更改将应用于子系统文件并传播到被引用子系统的所有其他实例。

不支持金宝app

当您编辑引用模型的实例时,更改将应用于模型文件并传播到引用模型的所有其他实例。

您可以为引用的模型指定特定于实例的参数值。有关更多信息,请参见参数化可重用引用模型的实例

变体

金宝app支持

将子系统变体添加到变型子系统变型块。

有关更多信息,请参见在变量子系统块中定义、配置和激活变量选项

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

将模型变体添加到变型子系统变型块。

有关更多信息,请参见在变量子系统块中定义、配置和激活变量选项

版本控制和配置管理

不支持金宝app

不能直接将子系统放置在源代码管理系统中。

要减少文件争用并为每个子系统使用单独的版本控制,请使用子系统引用。

金宝app支持

您可以将库文件放在源代码控制系统中。

要为每个库块提供单独的版本控制,请使用库中的子系统引用和模型引用。将这些块从库拖动到模型中时,它们将引用子系统文件或模型文件。

转发表允许您将旧库块映射到块的新版本。

金宝app支持

您可以将子系统文件放置在源代码管理系统中。

金宝app支持

可以将模型文件放置在源代码管理系统中。

知识产权保护

不支持金宝app

使用模型引用代替。

不支持金宝app

与子系统的行为相同。

不支持金宝app

与子系统的行为相同。

金宝app支持

受保护的模型模糊了模型内容,这在分发模型时很有用。

创建受保护的模型需要金宝app®编码员™许可证有关详细信息,请参阅保护模型以隐藏内容(金宝app仿真软件编码器)

使用受保护的模型不起作用需要金宝appSimulink编码器许可证有关详细信息,请参阅参考第三方保护的模型

单元测试

金宝app支持

子系统依赖于它们在模型中的上下文。如果子系统的上下文发生了变化,例如输入信号的数据类型发生了变化,则必须更新相关的测试装置。

对于非原子的子系统,由于虚拟边界,测试线束可能使用不同的块执行顺序。

有关支持编写、管理和执行子系统金宝app系统的、基于仿真的测试的工具,请参阅创建测试线束并选择特性(金宝app模拟链接测试)

要测量模型组件测试的彻底程度,请参见模型覆盖率(金宝appSimulink覆盖范围)

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

您可以独立测试一个引用模型,通过将其模拟为顶级模型来隔离行为。

您可以使用数据定义的测试线束和MATLAB®测试向量和直接覆盖收集。

有关支持编写、管理和执行子系统金宝app系统的、基于仿真的测试的工具,请参阅创建测试线束并选择特性(金宝app模拟链接测试)

要测量模型组件测试的彻底程度,请参见模型覆盖率(金宝appSimulink覆盖范围)

性能需求

建模需求 子系统 关联子系统 子系统引用 模型引用
增量模型加载

不支持金宝app

加载模型将加载保存在模型中的所有子系统内容。

金宝app支持

金宝app在编辑、更新图表或模拟模型期间,Simulink会在需要的时候增量地加载库。

金宝app支持

金宝appSimulink在编辑、更新图表或模拟模型过程中所需的点处增量加载参考子系统。

金宝app支持

金宝app在编辑、更新图表或模拟模型期间,Simulink会在需要的时候增量地加载一个引用模型。

构建工件重用

不支持金宝app

不会为子系统生成构建工件,例如模拟目标。

不支持金宝app

与子系统的行为相同。

不支持金宝app

与子系统的行为相同。

金宝app支持

您可以使用Simulink缓存文件共享和重用生成工件,例如模拟目标。有关详细信息,请参阅金宝app共享Simu金宝applink缓存文件以加快模拟速度

减少大型模型的内存使用

不支持金宝app

子系统不会减少用于模拟和代码生成的内存使用。

不支持金宝app

链接子系统不会减少模拟和代码生成的内存使用。

金宝appSimulink在块更新期间复制库块实例。

不支持金宝app

子系统引用不会减少模拟和代码生成的内存使用。

金宝appSimulink在块更新期间复制子系统引用实例。

金宝app支持

加速器模式中引用的模型减少了模拟和代码生成的内存使用,因为Simulink会增量加载这些模型的编译版本。金宝app

人工代数环消

金宝app支持

非原子子系统避免人工代数循环。

如果一个子系统是原子的,您可以尝试通过启用子系统块参数最小化代数循环出现次数

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

您可以尝试通过启用配置参数>模型引用>最小化代数循环出现次数

特征

建模需求 子系统 关联子系统 子系统引用 模型引用
兼容配置参数设置

金宝app支持

子系统使用包含它们的模型的配置参数设置。

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

父模型及其引用模型的配置参数设置通常可能不同。有关兼容性信息,请参阅设置模型层次结构的配置参数

接口处的信号属性规范

金宝app支持

可以在子系统接口上指定信号属性。

对于您未指定的信号属性,子系统从其上下文继承信号属性。信号属性的传播可能导致Simulink使用您未预期的信号属性。金宝app

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

您必须在引用的模型接口上指定大多数信号属性。

参考模型与上下文无关,具有定义的边界,因此它们不会继承大多数信号属性。

当被引用模型是样本时间独立时,被引用模型可以继承离散样本时间。

接口处的物理连接

金宝app支持

可以在子系统接口处指定物理连接。

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

不支持金宝app

物理连接必须完全包含在引用模型中。它们不能跨越模型接口。

总线规格

金宝app支持

你可以使用金宝app模拟总线对象指定传递到子系统的总线的数据类型。

子系统不需要使用公共汽车虚拟总线的对象。

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

你可以使用金宝app模拟总线对象指定传递到引用模型的总线的数据类型。

模型引用不需要使用公共汽车对象用于虚拟总线在公共汽车元素总线外元件阻碍。

状态初始化

金宝app支持

可以初始化子系统的状态。

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

可以使用结构格式或带时间的结构格式从顶部模型初始化状态。有关详细信息,请参阅参考模型的状态信息

有条件执行

金宝app支持

子系统支持条件执行。金宝app有关更多信息,请参见条件执行子系统概述

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

引用模型支持条件执行。有关详细信息,金宝app请参阅有条件地执行引用模型

基于事件的行为

金宝app支持

子系统支持基于事件的行金宝app为。有关更多信息,请参见使用初始化、重置和终止函数

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

引用的模型支持基于事件的行为。金宝app有关更多信息,请参见使用初始化、重置和终止函数

独立的功能

金宝app支持

您可以在子系统中定义独立的函数。有关详细信息,请参阅金宝appSimulink功能概述

金宝app支持

与子系统的行为相同。

金宝app支持

与子系统的行为相同。

金宝app支持

您可以在引用的模型中定义独立的函数。有关更多信息,请参见导出功能模型概述

相关话题

外部网站