技术|聊一聊AUTOSAR方法论

汽车技术平台说 2024-03-24 21:42:52
什么是AUTOSAR方法论?

AUTOSAR为汽车电子软件系统开发定义了通用的技术方法,即AUTOSAR方法论。

AUTOSAR为符合该标准的汽车电子软件系统开发过程定义了一套通用的技术方法,这种方法即被称为AUTOSAR方法论。

AUTOSAR方法论是基于现有的软件基础内容,总结出的适合车辆软件开发的软件总体开发流程,并且体现了AUTOSAR整体的层次,从底层的驱动到上层的应用设计,都对应不同的开发过程。除此之外,AUTOSAR还包括了标定、存储映射和数据保护等方法,以及各步骤之间的衔接方式。

汽车OEM作为整车系统功能的规划和设计者,需要了解并掌握AUTOSAR提供的这套开发流程,才能主导和推进符合AUTOSAR标准的系统的开发过程。

AUTOSAR 方法论示意图 来源:EmbeddedKernel

AUTOSAR设计和开发流程

AUTOSAR设计和开发流程分为三个阶段:系统配置阶段、ECU设计与配置阶段、代码生成阶段。

系统配置阶段

定义系统配置文件。主要目的是生成系统配置描述文件,首先是编写系统配置输入文件,包括软件组件描述、 ECU资源描述和系统约束描述,该文件将确定需要使用的软件构件(即系统具有哪些功能)、硬件资源(ECU)以及整个系统的约束条件。基于系统配置输入描述文件,系统配置根据 ECU 资源和时序要求,将软件组件映射到对应的 ECU上,生成系统配置描述文件。系统配置描述文件包括总线映射之类的所有系统信息以及软件组件与某个 ECU 的映射关系。

ECU 配置阶段

该阶段根据系统配置描述文件提取出与各个 ECU 相关的系统配置描述信息,提取出来的信息生成 ECU 提取文件。ECU 配置生成器根据这个提取文件对 ECU 进行配置,例如操作系统任务调度,必要的BSW模块及其配置,运行实体到任务的分配等,从而生成ECU配置描述文件。ECU配置过程主要是对 RTE 和 BSW 的配置。在 RTE 配置阶段,需要将软件组件的运行实体映射到相应的操作系统任务;在 BSW 配置阶段,需要详细配置 BSW 层中所需要用到的模块,一般有操作系统、通信服务、ECU 抽象层和 MCAL 等,并将结果保存在 ECU 配置描述文件中。

代码生成阶段

该阶段的主要目的是生成可行执行代码,是基于ECU配置描述文件指定的配置来产生代码、编译代码,并把相关代码链接起来,最终生成 ECU 可执行代码。

在AUTOSAR中,所有的描述文件都是ARXML类型的文件。系统配置输入文件包含三部分内容:

(1)软件组件描述,定义每个涉及的软件组件的接口内容,如数据类型,端口,接口等。

(2)ECU资源描述,定义每个ECU的资源需求,如处理器、存储器、外围设备、传感器和执行器等。

(3)系统约束描述,定义总线信号,软件组件间的拓扑结构和映射关系。

当然,AUTOSAR方法论不仅涵盖了从VFB设计到生成代码软件集成之间的所有步骤,还包括了标定、存储映射和数据保护等方法。其不仅规定了每一个步骤的行为,还规定了各步骤之间的衔接方式。具体开发流程如下:

1.建立抽象系统描述

确定VFB中的接口、模式、数据类型和软件组件,集合软件组件约束和整个系统框架。

2.建立VFB系统描述

具体设计VFB中的接口、模式和数据类型,软件组件及其定时。

3.开发软件组件

向软件组件内填充内容、运行实体、事件、数据访问点和内部变量等。需要注意的是,在这里设计的软件组件不仅是应用软件组件,还包括ECU抽象层软件组件、复杂驱动软件组件和传感器/执行器软件组件。软件设计完成后可以通过RTE生成器来生成头文件。如果采用的是手写代码开发控制算法,这些头文件必不可少;如果采用建模的方法来建立控制算法,合同阶段也能验证VFB及软件组件内部设计的正确性。软件组件的实现独立于ECU的配置,这是AUTOSAR方法论的主要特征。

4.开发系统和子系统

了解系统的拓扑结构和ECU资源。以及ECU间的通讯形式和内容,ECU的资源、芯片引脚等信息。将软件组件映射到ECU上,并将应用层的数据映射到总线的信号上,将系统建立好。当系统建立后,可以建立系统抽象,为开发子系统提供基础。子系统都是在系统抽象的基础时构建的。最后将ECU有关的信息提取出来,为针对每个ECU的配置工作提供基础。

5.开发BSW

定义BSW内部行为,并且由于基础软件模块独立于VFB,所以可以在任一阶段开发。

6.软件集成

将开发好的软件进行集成,对每一个微控制器进行ECU配置,包括RTE配置和BSW配置,其中包括通讯栈、操作系统、系统服务、存储、诊断、MCAL等软件基础模块。最后将不同配置工具中生成的代码放在编译器中同义编译成可执行文件。

总结

AUTOSAR方法论描述了从系统底层配置到整个ECU可执行代码的产生过程的设计步骤。作为汽车电子软件平台标准化的历程中的一个巨大飞跃。建立这样一个标准化平台并贯彻标准化,将会缩短新产品的研发时间和测试时间,从而帮助企业实现快速的市场反应。目前在市场上不少工具和软件供应商都已推出了符合AUTOSAR标准的工具或软件支撑,可为AUTOSAR系统的设计和开发提供完整的无缝的解决方案。但是也必须看到,在整个汽车行内打破传统的软件开发平台需要相当长的一个过程。我们可以根据用户的需求和目标,在初期搭建AUTOSAR与传统软件的混合平台,这是是一个能够实现向AUTOSAR平滑升级的可行的方法。在这个过程里,重点不是单纯地使用,理解AUTOSAR的理念和思想才最重要,因为它对汽车电子软件开发的工作流程和商业模式都将带来意义深远的变革。

0 阅读:0

汽车技术平台说

简介:感谢大家的关注