仿真 AUTOSAR Adaptive 软件组件并可选择生成代码(需要 Embedded Coder)
当您配置 AUTOSAR Adaptive 软件组件模型以在 Simulink® 环境中使用后,您需要对您在Configure Elements of AUTOSAR Adaptive Software Component for Simulink Modeling Environment中配置的模型 my_autosar_LaneGuidance 进行仿真。
如果尚未打开您配置的模型
my_autosar_LaneGuidance版本,请将其打开。在 Simulink Coder™ 编辑器中,点击“仿真”按钮
。
如果您有权访问 Simulink Coder 和 Embedded Coder® 软件,则可以编译 AUTOSAR Adaptive 模型。编译 AUTOSAR Adaptive 模型时,代码生成器会生成符合 Adaptive 平台 AUTOSAR 标准的 C++ 代码和 ARXML 描述。
如果尚未打开您配置的模型
my_autosar_LaneGuidance版本,请将其打开。通过按 Ctrl+B 启动代码生成。代码生成器会生成 C++ 代码和 ARXML 文件。生成的代码符合 AUTOSAR 标准,因此您可以在 AUTOSAR 运行时环境中调度这些代码。
代码生成器还生成并显示代码生成报告。
在代码生成报告中,查看生成的代码。在您的当前 MATLAB® 文件夹中,
my_autosar_LaneGuidance_autosar_adaptive文件夹包含下表中列出的主要文件。生成的代码文件
文件 描述 my_autosar_LaneGuidance.cpp包含实现模型算法的代码的入口函数。此文件包含速率调度代码。 my_autosar_LaneGuidance.h声明模型数据结构体和对接模型入口函数和数据结构体的公共接口。 my_autosar_LaneGuidance.arxml
my_autosar_LaneGuidance_ExecutionManifest.arxml
my_autosar_LaneGuidance_ServiceInstanceManifest.arxml主 ARXML 文件包含表示 AUTOSAR 软件组件、端口、接口、数据类型和包的元素和对象。清单文件提供部署相关的信息和服务配置信息。您需要将 ARXML 文件集成到 AUTOSAR 运行时环境中。您可以使用 AUTOSAR ARXML 导入器工具将 ARXML 文件导入 Simulink 环境。 main.cpp提供用于运行自适应软件组件服务代码的框架。 默认情况下,AUTOSAR Blockset 代码生成直接在生成代码中使用平台类型。如果需要支持传统实现,您可以使用数据类型替换配置参数来指定代码生成器根据 Simulink 数据类型头文件
rtwtypes.h中的类型定义通过中间层定义平台类型。 (自 R2023b 起)在 R2023b 之前的版本中: AUTOSAR Blockset 代码生成已创建并需要支持文件
rtwtypes.h。打开并查看代码接口报告。此信息捕获并存放在 ARXML 文件中。运行时环境生成器使用 ARXML 描述将代码对接到 AUTOSAR 运行时环境。
入口函数
初始化入口函数 -
void my_autosar_LaneGuidanceModelClass::initialize()。在启动时,调用一次此函数。输出入口函数 -
void my_autosar_LaneGuidanceModelClass::step()。每 0.1 秒周期性调用此函数。终止入口函数 -
void my_autosar_LaneGuidanceModelClass::terminate()。关闭时,调用一次此函数。
输入端口:
模块
leftLaneDistance- 需型端口、接口:一维实时类型的发送方-接收方模块
leftTurnIndicator- 需型端口、接口:一维实时类型的发送方-接收方模块
rightLaneDistance- 需型端口、接口:一维实时类型的发送方-接收方模块
rightTurnIndicator- 需型端口、接口:一维实时类型的发送方-接收方模块
leftCarInBlindSpot- 需型端口、接口:一维实时类型的发送方-接收方模块
rightCarInBlindSpot- 需型端口、接口:一维实时类型的发送方-接收方
输出端口:
模块
leftHazardIndicator- 外部定义的端口,类型为 real-T,维度为 1模块
rightHazardIndicator- 外部定义的端口,类型为 real-T,维度为 1
通过使用代码透视中的“代码”面板检查您所做的配置更改是否出现在生成代码中。要打开“代码”面板,请在 AUTOSAR 选项卡上,点击查看代码。“代码”面板在模型右侧打开。
在选中文件
my_autosar_LaneGuidance.cpp的情况下,在搜索字段中键入company(您为服务接口定义的命名空间值之一)。代码视图会突出显示company的实例,展示命名空间符号如何在代码中应用。
使用代码透视中的“代码”面板浏览生成代码的其他方面。例如,如果您选择文件
my_autosar_LaneGuidance.cpp,然后点击搜索字段,则会出现代码元素链接的列表。使用链接可快速导航到生成的代码的关键代码区域。