温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
PREEvision
AP
数据模型
设计
10.16638/ki.1671-7988.2023.016.004 10.16638/ki.1671-7988.2023.016.004 基于 PREEvision 的 AP 数据模型设计 高 越,周焕宇,高 健(沈阳东信创智科技有限公司,辽宁 沈阳 110000)摘要:为了解决自适应 AUTOSAR 平台(AP)产品数据模型的一致性和兼容性问题,论文介绍了如何基于德国 Vector 公司的架构开发工具 PREEvision 进行 AP 数据模型的设计方法,包括基于服务的架构(SOA)服务及服务接口设计、AP 系统 C+语言的数据类型设计、软件模块设计、进程的设计、Manifest 和 ARXML 文件的导出等,基于该方法创建的 AP 数据模型,可以无差错导入多种下游开发测试工具,对汽车 AP 系统软件的开发具有一定指导意义。关键词:AUTOSAR 平台;AP 数据;PREEvision;SOA;以太网;架构 中图分类号:U462.1 文献标识码:A 文章编号:1671-7988(2023)16-19-05 Design of AP Data Model Based on PREEvision GAO Yue,ZHOU Huanyu,GAO Jian(Shenyang DoTrust Technologies Company Limited,Shenyang 110000,China)Abstract:In order to solve the problem of consistency and compatibility of data model of adaptive AUTOSAR platform(AP)products,this paper introduces how to design AP data model based on PREEvision,an architecture development tool of Vector company in Germany,including service oriented architecture(SOA)and service interface design,data type design of AP system in C+language,software module design,process design,Manifest and ARXML file export,etc.AP data model created based on this method can be error-free into a variety of downstream development and testing tools,which has certain guiding significance for the development of automotive AP system software.Keywords:AUTOSAR platform;AP data;PREEvision;SOA;Ethernet;Architecture 随着智能互联、自动驾驶、电动汽车及共享出行的发展,软件定义汽车占据了汽车开发的主导地位,各主机厂和开发商为了实现软件的敏捷开发迭代,纷纷应用汽车开放式系统架构(Auto-motive Open System Architecture,AUTOSAR)标准开发软件。传统的经典 AUTOSAR 平台(Classic AUTOSAR Platform,CP)只能应用于嵌入式系统,AUTOSAR组织于 2018年又引入了自适应AUTO-SAR 平台(Adaptive AUTOSAR Platform,AP),应用于带有操作系统(Operation System,OS)的智能座舱域控制器,符合 AP 中间件规范的系统可实现软件的可移植性、可扩展性,有利于系统平台作者简介:高越(1982),女,硕士,工程师,研究方向为汽车电子电气架构、汽车以太网、SOA,E-mail:。20 汽 车 实 用 技 术 2023 年 性开发,缩短开发周期,提高软件开发效率。根据 AP 系统方法论,AP 数据模型文件 Manifest 是进行 AP 软件开发和硬件平台配置的输入文件,因此,如何正确地创建 AP 数据模型显得尤为重要。本文将介绍如何基于 PREEvision 工具进行基于服务的架构(Service Oriented Architecture,SOA)的AP 数据模型创建。1 AP 及 PREEvision 工具 AUTOSAR 是由宝马、大众、丰田等多家知名汽车制造商和零部件供应商共同参与制订的汽车电子系统合作开发框架和汽车控制器(Elect-ronic Control Unit,ECU)标准软件架构。其中 AP平台主要为高性能计算机提供通信机制和灵活的软件技术,如远程升级(Over The Air,OTA)技术和高等级自动驾驶技术。PREEvision 是一款汽车电子电气架构开发设计软件,支持自上而下(Top-Down)多层级正向开发,其层级结构自上而下包括需求层、逻辑架构层、软件层、通信层、硬件层及显示原理层,层与层之间相互映射,实现了数据的一致性及可追溯性。另外,PREEvision 工具支持基于模型的开发方法(Model Based Design,MBD),各层均符合统一建模语言(Unified Modeling Language,UML),可创建完整的支持 AUTOSAR 标准的汽车电子电气架构模型1。2 AP 数据建模设计 PREEVison 工具按照 AUTOSAR 的标准给出AP 数据建模的流程如图 1 所示。1)服务及服务接口的设计,并与基于网际协议(Interaction Protocol,IP)的可伸缩的面向服务中间件(Scalable service-Oriented MiddlewarE over IP,SOMEIP)协议绑定;2)软件模块(Software Component,SWC)的设计;3)ECU 硬件及以太网网络拓扑的设计;4)软件与硬件进行映射,生成进程;5)服务实例化;6)进行以太网网络通讯设计;7)导出 Manifest 和 ARXML。图 1 AP 数据建模流程 2.1 服务及服务接口设计 2.1.1 服务设计 服务设计包括服务角色和接口类型设计,服务角色分为服务的提供者和服务的消费者,在如图 2 所示的服务设计中,定义服务 OTA_UI(ID:0 x 5001)和 OTA_UA(ID:0 x5002),同时分别为两个服务定义了提供者和消费者。图 2 服务设计 2.1.2 服务接口设计 服务接口类型可分方法(Request&Respons Method、RR Method、Fire&Forget Method、FF Method)、域(Field:Get、Set、Notify)、事件(Event)三种类型,其中 RR Method 和 FF method 可用来调用指令,Get、Set、Notify 可用来调用数据,Notify和 Event 可用于调用事件2。在如图 3 所示的服务接口设计中,OTA_UI 服务定义了三个域接口,包括三个 Notify 和一个 Get,OTA_UA 服务定义了一个 R&R Method 和一个 Notify 两个接口。图 3 服务接口设计 2.1.3 数据类型设计 服务接口定义完成之后,需要定义 AP 数据类型,AP 平台绑定的是 C+语言,所以 AP 数据类型的定义除了满足 AP 标准的要求外,还要定义第 16 期 高 越,等:基于 PREEvision 的 AP 数据模型设计 21 C+语言的相关属性,包括模板声明、定位器、头文件、命名空间等。AP 数据类型只定义执行数据类型(Imple-mented Data Type,IDT),不用定义应用数据类型(Application Data Type,ADT)和基础数据类型(Base Type,BT),只有枚举类型的数据才需要定义转换关系(Computation Method,CM)3。2.1.4 SOMEIP 协议属性定义 目前AP平台可以绑定的通讯协议有SOMEIP和数据分服务(Data Distribution Service,DDS),因 SOMEIP 是专为汽车领域开发的轻量化中间件协议,应用比较广泛,也比较成熟,服务如果绑定 SOMEIP 协议,需要定义如下属性4:1)服务标识符:Service ID;2)服务接口主副版本号:Major version,Minor version;3)方法事件标识符:Method/Event ID;4)事件组及其标识符:Event Group 及 Event Group ID。因以太网数据大多是并行的结构化数据,如结构体、数组、联合体等,AUTOSAR 标准中通过转换器(Transformer)功能模块进行数据的序列化,转换成线性数据。Transformer 需要配置的参数主要是结构化数据的数据长度域长度,一般定义为 4 Byte。2.2 软件层设计 服务及服务接口是一种抽象的概念,AP 软件模块 SWC 是服务接口的软件实现。一个服务接口至少需要一对 AP SWC 来实现,一个 AP SWC 实现了服务接口的调用,承担服务客户端的角色;另一个实现了服务接口Method/Event/Field的具体功能,承担服务端的角色,如图 4 软件架构图所示。图 4 软件架构图 软件模块类型或者软件组件类型可组成单个可执行文件(Executable),Executable 是带有程序可执行入口的业务逻辑单元。可执行文件(Executable)的集合可组成自适应应用。自适应应用分为平台级别和应用级别,本文中 OTA 开发相关应用全部为应用级别,位于AP 中间件上方。2.3 硬件及网络拓扑设计 AP 平台的控制器为高性能计算机,大多为多核微处理器(Micro Processor Unit,MPU),本文中OTA 开发包括三个控制器网联模块(Telematics Box,TBOX)、网关(Ggateway,GW)、显示主机(Display Head Unit,DHU),均为双核 AP 系统,图 5 为 DHU 控制器的内部原理5。图 5 控制器内部原理示意 网络拓扑设计用于表示车内所有控制器的网络连接方式,包括控制器局域网络(Controller Area Network,CAN)总线、局域互联网路(Local Inter-connect Network,LIN)总线、以太网总线等。本设计仅涉及主干网的以太网网络拓扑,结构为星型结构,Switch 位于 GW 控制器内部,各控制器之 间 通 过 车 载 以 太 网 100base-T1 连 接,在PREEvision 工具中分别配置总线连接类型和接插件类型为以太网类型,图 6 为本设计的网络拓扑图。图 6 网络拓扑结构图 在AP方法论中,软件是运行在Machine上的,Machine 可以理解为一种计算资源,既可以是物理的 Process Unit,也可以是虚拟的 Virtual Machine。22 汽 车 实 用 技 术 2023 年 本设计中的 Machine 对应的全部为 Process Unit,需要为每个 Machine 定义 Machine State,本设计中 Machine State 的定义包括 Off、Restart、Shutdown、Start Up 四种状态,其中 Off 为初始化状态。2.4 软件与硬件映射 软件与硬件的映射即 Executable 实例化为进程(Process)的过程,同时需要定义 Process 的运行位置,即可以运行在哪个核(Core),不可以运行在哪个核。AP 中间件中定义了执行管理(Execution Management,EM)和状态管理(State Management,SM)两个软件功能模块。EM 负责启动、停止进程,在 Function Group 中定义不同的状态,所有内部功能相关联的进程启动或停止依赖于相同的Function Group,启动某一 Process,需要先启动其依赖的 Process。而状态管理 SM 负责配合 EM,把控所有 Process 的运行状态,完成生命周期和运行状态的管理。图 7 为执行依赖和启动配置的相关定义,比如调度策略和调度优先级定义。图 7 进程的执行依赖及启动配置 2.5 服务实例化 服务实例基于软件到硬件映射的信息自动合成。服务实例表示通信层上的服务接口。在PREEvision 中,它通过信号路由器自动创建,信号路由之后生成的 Service Instances 分为两类:Consumed SOMEIP Service Instance 和 Provided SOMEIP Service Instance,同时会产生自适应服务实例和端口之间的映射关系,对应于 AUTOSAR中的 Service Instance To Port Prototype Mapping,它表示服务实例与某个端口和进程之间的连接,这也有助于区分提供或消费相同服务接口的不同端口。2.6 以太网网络通信设计 创建服务实例后,配置服务实例的总线通信参数,包括服务实例的标识,服务实例的主副版本号、传输协议(Transport Protocol,TP)以及SOMEIP SD 相关时间参数6。图 8 为 PREEvision 服务实例的 TP/IP 编辑器,本设计网络层使用单播 IPv4,传输层使用 TCP 协议。图 8 服务实例的 TP/IP 定义 2.7 导出 ARXML 为了支持 AP 产品的配置,AP 方法论定义了三种 AP 模型描述文件(Manifest),包括 Machine Manifest、Execution Manifest 和 Service Instance Manifest。Machine Manifest 描述了与 Machine 部署相关的内容,比如网络配置信息,计算资源等;Execution Manifest 用于指定在 AP 上运行的应用程序部署相关的信息,比如进程启动配置,进程与 Machine 的映射等内容;Service Instance Mani-fest 包含基于服务的通信相关信息,如应用层及相应的传输层、网络层通信参数信息。此外,PREEvision 也可以生成包含以上三种Manifest 所有内容的 Adaptive Ppplication ARXML,图 9 为本设计的 AP ARXML 的层级结构。图 9 AP ARXML 层级结构 第 16 期 高 越,等:基于 PREEvision 的 AP 数据模型设计 23 3 结论 本文主要介绍了基于 PREEvision 工具进行AP 数据模型设计的方法,通过此方法创建的 AP数据模型可以用于 AP 平台产品的配置,也可以导入到符合 AUTOSAR 标准的测试软件中进行 SOA测试。此外,PREEvision 是目前应用最多的AUTOSAR 模型创建工具,其与 AUTOSAR 的高度兼容性,被越来越多的国内主机厂用来搭建电子电气架构数字化平台。参考文献 1 袁仲楠.基于 PREEvision 的电子电气架构开发研究 J.电子测试,2020(3):55-57,130.2 刘聪,陈敏.面向服务的电子电气架构研究与应用J.北京汽车,2021(6):34-36,40.3 AUTOSAR Organization.AUTOSAR TPS Manifest Specification R19-03:713S.Redmond:AUTOSAR Organization,2019:34-76.4 AUTOSAR Organization.AUTOSAR PRS SOMEIP Protocol R20-11:696S.Redmond:AUTOSAR Organ-iza tion,2020:17-67.5 刘佳熙,丁锋.面向未来汽车电子电气架构的域控制器平台J.中国集成电路,2019,28(9):82-87.6 AUTOSAR Organization.AUTOSAR TR SOMEIP Example R4.2.1:637S.Redmond:AUTOSAR Organ-ization,2014:31-97.