本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

基于组件的建模规范

组件化有利于开发由许多功能部件组成的 Simulink® 模型的组织。使用模型组件能够:

  • 实现基于团队的开发 - 通过明确定义的接口,减少文件争用并独立创建组件。

  • 降低设计复杂度 - 每个组件解决一个较小问题。

  • 支持组件重用 - 在一个工程内和跨多个工程重用算法和环境模型。

  • 支持单元测试 - 避免重复测试没有变化的组件,降低验证成本。

  • 实现规模化性能优势 - 减少内存使用以及加载和仿真模型所需的时间。

  • 支持组件变体 - 在组件的多个实现中进行选择。

  • 实现知识产权保护 - 限制您与第三方共享组件的功能和内容的可见性。

何时需要创建模型组件

考虑到定义和管理组件所需的工作,仅当收益大于成本时,才应使用基于组件的建模。

将一个现有 Simulink 模型分成几个组件类似于将一大段代码(C、Java 或 MATLAB® 代码)分解成多个函数。如果设计最初不是模块化的,转换为基于模块的设计可能需要大量工作和大量修改。

预先考虑模型的可扩展性和潜在需求,可以更轻松地将一个 Simulink 模型分成多个组件。预先确定组件可以帮助您避免下列困难:

  • 组件定义不佳 - 随着时间的推移,子系统的范围可能无法满足组件要求。例如,它们可能包含太多或太少的功能,从而无法重用,无法生成与旧功能集成的代码,也无法支持硬件在环测试。

  • 合并冲突 - 如果模型原先是针对单一工程师开发而设计的,那么后续的工程师加入开发的初期,可能会经历非常耗时且容易出错的合并过程。

  • 代数环 - 如果一个工程师自下而上地开发模型,随着模型复杂度的增加,他可能会将各个模块分组到不同子系统中。模型中的子系统可能只是图形层面的分组,对模型执行没有实质影响。当您将这些子系统作为原子子系统或将它们转换为引用模型时,可能会引入不需要的代数环,而且这些代数环难以诊断和解决。

当设计变得过于复杂以至于一个人无法管理所有细节时,组件也很有用。例如,复杂模型可以是具有以下特性的模型:

  • 数千个模块

  • 数百项逻辑决策

  • 相同功能的多种不同配置

工程和源代码管理可以帮助您管理组件。有关详细信息,请参阅什么是工程?Configuration Management

定义模型组件

1.Choose Among Types of Model Components

确定符合您的高级建模要求的 Simulink 组件。

2.比较模型组件类型的功能调查哪些类型的模型组件满足您的低级建模要求。
3.Define Interfaces of Model Components在接口上配置信号属性,并管理模型组件的数据。