主要内容

结合和模拟AUTOSAR软件组件

当您开发多个相互连接并协同工作的AUTOSAR软件组件模型时,您可以将它们组合到一个AUTOSAR组合模型中进行仿真。合成是一个AUTOSAR软件组件,它聚合了相关的软件组件组。

创建一个Simulink®AUTOSAR合成的表示,采取以下操作之一:

  • 导入合成(Classic Platform)的AUTOSAR XML (ARXML)描述。

  • 创建一个模型并使用模型块来引用和连接AUTOSAR组件模型。

或者,如果您有System Composer™软件,您可以创建AUTOSAR体系结构模型并使用软件组成块建模AUTOSAR组成。有关更多信息,请参见软件体系结构建模

在模拟组合模型时,将模拟聚合AUTOSAR组件的组合行为。

在开发AUTOSAR组件和组合之后,可以测试系统级模拟中属于一起的组件组。例如,您可以创建一个包含组合、组件、调度程序、工厂模型以及潜在的基本软件服务组件和调用者的系统级模型。您可以配置系统级模型来执行闭环或开环系统模拟。

导入AUTOSAR合成模型(经典平台)

合成是一个AUTOSAR软件组件,它聚合了相关的软件组件组。组合支持组件伸缩,并帮助管理设计中的复杂性。

如果您正在为AUTOSAR经典平台开发软件组件,您可以通过从ARXML文件导入合成描述来创建AUTOSAR合成模型。使用AUTOSAR导入器功能createCompositionAsModel.这个函数调用创建组合模型ThrottlePositionControlComposition从示例ARXML文件ThrottlePositionControlComposition.arxml.ARXML文件位于matlabroot/ / autosarblockset /数据示例,这是默认的MATLAB®搜索路径。

基于“增大化现实”技术= arxml.importer (“ThrottlePositionControlComposition.arxml”);createCompositionAsModel(基于“增大化现实”技术,' /公司/组件/ ThrottlePositionControlComposition ');

为了模拟聚合AUTOSAR组件的组合行为,需要模拟组成模型。单击运行按钮或输入这个MATLAB命令。

simOutComposition = sim卡(“ThrottlePositionControlComposition”);

有关更多信息,请参见导入AUTOSAR合成到Simulink

为模拟AUTOSAR组件创建合成模型

要将相关的AUTOSAR软件组件组合到一个合成模型中进行仿真,请创建一个Simulink模型并使用模型块来引用和连接AUTOSAR组件模型。

这个例子创建了一个AUTOSAR合成模型。创建的模型是AUTOSAR示例模型的简化版本autosar_composition.为了加快配置并解决问题,您可以将新模型与示例模型进行比较autosar_composition.如果需要,您可以在模型之间复制诸如导入和输出的元素。有关已完成的组合模型的图表,请参见步骤4。

  1. 将您想要模拟的AUTOSAR软件组件模型一起移动到工作文件夹和cd该文件夹。此示例使用从中复制的组件模型matlabroot/ / autosarblockset /主要例子cd到文件夹).

    • autosar_swc_actuator

    • autosar_swc_controller

    • autosar_swc_pedal_sensor

    • autosar_swc_throttle_sensor

  2. 创建一个Simulink模型。将模型保存到带有名称的工作文件夹中作文

  3. 对于每个AUTOSAR组件模型:

    1. 分别打开组件模型并验证它是否进行了模拟。

    2. 作文模型中,添加一个模型块,并配置该块引用组件。在模型块参数,选择选项进度率.该选项允许在与导出函数相同的基础上调度基于速率的可运行任务。

    3. 添加组件需要的端口。

    4. 组件模型autosar_swc_throttle_sensor需要特殊的调整,因为父模型作文(不像示例模型autosar_composition)只引用组件一次。打开模型资源管理器,选择模型工作区autosar_swc_throttle_sensor,选择数据对象TPSPercent_LkupTbl,并清除论点选择。

  4. 当你创建了模型块的每个AUTOSAR组件,连接组件如图所示。

为了模拟聚合AUTOSAR组件的组合行为,需要模拟组成模型。单击运行按钮或输入这个MATLAB命令。

simOutComposition = sim卡(“作文”);

有关更多信息,请参见设计和模拟AUTOSAR组件并生成代码

AUTOSAR系统级模拟的替代方案

在开发AUTOSAR组件和组合之后,可以测试系统级模拟中属于一起的组件组。例如,您可以创建一个包含组合、组件、工厂模型以及潜在的基本软件服务组件和调用者的系统级模型。您可以配置系统级模型来执行闭环或开环系统模拟。对于系统级模型,使用Simulink模型或仿真软件测试™测试工具模型。

一个闭环仿真的例子,开放的例子模型autosar_system.该模型为AUTOSAR组合模型提供了系统级测试工具autosar_composition

目录(fullfile (matlabroot,' / / autosarblockset /主要的例子));目录(fullfile (matlabroot,' / / autosarblockset /数据的例子));open_system (“autosar_system”);

一个油门位置范围打开的模型。如果模拟系统级模型autosar_system,范围表示组合模型中油门位置控制算法的优劣autosar_composition正在追踪踏板的输入。要改进行为,可以修改组合中的组件算法或更改传感器源。

simOutSystem = sim卡(“autosar_system”);

有关更多信息,请参见设计和模拟AUTOSAR组件并生成代码

用于开环仿真的一个例子仿真软件测试,请参阅AUTOSAR成分测试(仿真软件测试).这个示例为AUTOSAR组合模型执行背靠背测试。

有关模拟AUTOSAR基本软件服务的示例,请参见模拟AUTOSAR基本软件服务和运行时环境

另请参阅

相关的例子

更多关于

Baidu
map