主要内容

基于组件的建模指南

组件化有利于开发Simulink的组织金宝app®由许多功能部件组成的模型。使用模型组件可以实现:

  • 基于团队的开发—通过定义良好的接口,减少文件争用并独立地细化组件。

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

  • 组件重用-在一个项目内和多个项目之间重用算法和环境模型。

  • 单元测试——消除对未更改组件的重新测试,并降低验证成本。

  • 可扩展的性能优势—减少内存使用以及加载和模拟模型所需的时间。

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

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

您应该创建模型组件吗?

考虑到定义和管理组件所需的工作,只有在好处大于成本时,才应该使用基于组件的建模。

将现有的Simulink模型分离成组件类似于获金宝app取一大块代码(C、Java或MATLAB)®并将其分解为多个函数。如果设计从一开始就不是模块化的,那么转换可能需要大量的努力和广泛的修改。

预先考虑模型的可伸缩性和潜在需求,可以更容易地将Simulink模型分离为组件。预先确定组件可以帮助您避免这些困难:金宝app

  • 糟糕的组件定义——随着时间的推移而增长的子系统的范围可能无法满足组件需求。例如,它们可能包含太多或太少的功能,无法重用,无法生成与遗留功能集成的代码,或者无法支持环路中的硬件测试。金宝app

  • 合并冲突-如果其他工程师开始处理最初由单个工程师设计用于开发的模型,他们可能会遇到耗时且容易出错的合并。

  • 代数循环-如果一个工程师从下到上开发一个模型,那么随着模型复杂性的增加,他们很可能将块分组为子系统。模型中的子系统可能是不影响模型执行的可视分组。当您将这些子系统原子化,或将它们转换为引用模型时,可能会引入不需要的代数循环,这些循环很难诊断和修复。

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

  • 几千块

  • 成百上千的逻辑决策

  • 相同功能的多个变体配置

项目和源代码管理可以帮助您管理组件。有关更多信息,请参阅什么是项目?配置管理.

定义模型组件

1.在模型构件的类型中进行选择

确定与您的高级建模金宝app需求一致的Simulink组件。

2.比较模型组件的功能 调查哪些类型的模型构件满足您的低级建模需求。
3.定义模型组件的接口 在接口处配置设计属性并管理模型组件的数据。