使用 Simulink 管理系统变化

使用
基于模型的设计来设计、配置和分析变体

控制和系统工程师使用 MATLAB® 和 Simulink® 来开发可配置用于各种任务和需求的模型。工程师们通过激活一组预定义的可变性(模型设计不可或缺的部分)对模型进行修改,以满足特定的设计需求。Simulink 变体功能让您能够借助内置的可变性创建灵活的模型, 从而更加高效地管理、配置并重用您的设计。

借助 Simulink,您能够:

  • 为多个系统设计一个模型
  • 通过激活内置的可变性,配置模型来满足不同的需求组合
  • 在模型仿真和代码生成过程中控制变体激活
  • 可视化并分析变体配置
  • 在基于模型设计的所有阶段(包括仿真、测试和代码生成)利用变体
  • 通过实现变体来设计符合 AUTOSAR 标准的软件组件

“针对我们在设计阶段考虑过的所有不同变体,构建整个系统的比例模型,复杂程度则会超乎想象。我们使用 Simulink 搭建了虚拟原型,借助它来预测系统在不同海洋条件下的性能,对故障情况进行仿真,并分析负载,以便能够选择最佳设计并准确地向供应商提出组件需求。

Jonathan Fiévez, Carnegie Wave Energy

使用 Simulink 进行变体系统设计

创建包含变化的模型

将可变性引入模型的各个方面。在所有领域实现可变性,包括控制逻辑、状态机、流程图和物理被控对象。在分级或内联拓扑结构中设计变体,以将变化封装到单独的层级或在同一层级查看所有变化。

对于需要组件间存在可变 I/O 接口的设计,可使用变体创建带有灵活接口但仍保留公共系统架构的子系统。

若要实现上下文相关的系统行为,可将变体与在特定条件下执行或事件驱动的函数(例如初始化、重置和终止函数)或已触发的子系统结合使用。


定义可变性区域

通过将变体条件从上游和下游的变体模块自动传播到其他模块,将可变性控制扩展到模型的任何区域。变体条件可以通过信号线、总线和函数调用传播到受所选变体影响的模型中的模块。通过将条件的传播限制在预定义的模型区域,可以控制模型中的哪些模块会受变化影响。


了解产品

配置模型变化

使用 Variant Manager 定义、控制和可视化变体配置。将变体配置为可以通过基于名称的表达式或条件逻辑进行控制。创建可以轻松激活且可同时在多个不同可变性之间切换的预定义变体配置。为配置定义约束条件,防止无效变体组合。一旦定义好变体配置,即可将其与变体配置数据对象一起储存、分发和重用。


可视化并分析变体配置

在 Simulink 画布中直观地直接追踪变体条件,并通过表格形式比较和对比多个变体配置。在编辑过程中轻松验证变体配置以发现问题,无需仿真或更新模型。分析变体配置,确定始终处于或永远不会处于激活状态的变体,从而找到并诊断配置中的潜在错误或不一致。


控制变体激活时间

设计可在仿真前或代码编译时激活的变体。代码生成期间,选择要在生成的代码中包含的可变性,然后根据需求和目标平台在预编译时将其激活。部署模型之前,通过分析仿真或代码生成之前的所有变体选择,检查是否存在不兼容,例如数据类型和维度不一致。


部署变体模型

从一组变体配置或基于指定的变体控制值,自动生成更精简的模型。若要分发并共享模型,可以通过移除未使用的变体实现模型精简来保护知识产权。采用详细的报告形式分析精简的模型,检查是否存在被破坏的模型依赖关系并验证模型结构。


将变体设计整合到整个开发周期

在从需求到部署的整个开发周期中轻松管理模型中的变化。通过激活不同的变体,实现模型在设计、测试和实现上下文中的切换。例如,可以对模型进行修改,让其在仿真期间从文件读取数据或在将其部署到硬件时接收来自传感器的信号。在生成的代码中包含可变性,以在不同的开发阶段重用并配置生成的代码,例如测试不同的实现或将多功能代码提供给第三方。


AUTOSAR 变体建模和仿真

使用 Simulink 设计 AUTOSAR 软件组件,这些组件可以分布到多个电子控制单元 (ECU) 并与来自不同来源和 OEM 供应商的软件模块集成。利用 Simulink 变体功能实现多条车辆生产线软件中使用的可扩展 AUTOSAR 架构。

借助变化点对 AUTOSAR 软件组件建模,以基于预定义的控制条件支持 AUTOSAR 接口或实现。导入和导出包含 AUTOSAR 变体的 ARXML 文件,以将 Simulink 集成到整个 AUTOSAR 工作流程中。在 Simulink 中对 AUTOSAR 设计进行建模和测试后,从您的模型中生成高效的代码,由预处理器条件实现变化点。