




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 删减版 SmartSAR SYSC-基于 Artop 的汽车 电子系统配置器 的设计与实现 (删减版) 浙江大学浙江大学 ESE 工程中心工程中心 王东东王东东 密级: 硕 士 学 位 论 文 论文题目SmartSAR SYSC-基于 Artop 的汽车 电子系统配置器的设计与实现 作者姓名 王冬冬 指导教师 杨莹春 副教授 杨国青 博士 学科(专业) 计算机应用技术 所在学院 计算机科学与技术学院 A Dissertation Submitted to Zhejiang University for the Degree of Master of Engineering TITLE: SmartSAR SYSCSystem Configurator based on Artop Author: Dongdong Wang Supervisor: Prof. Yingchun Yang Ph.D. Guoqing Yang Subject: Computer Application Technology College: Computer Science and Technology 浙江大学硕士学位论文 摘要 i 摘要摘要 随着汽车工业的发展,汽车在人们的工作和生活中扮演着越来越重要的角 色,而汽车电子技术在汽车中所占的比重也是逐年攀升。 AUTOSAR 是欧洲众多汽车生产商和汽车电子软件供应商联合提出的汽车电 子开放系统架构,具有标准的系统开发方法论,有利于提升不同工具间的互操作 性。AUTOSAR 组织致力于让不同的工具厂商在标准上相互合作,在实现上相互 竞争,进而能够集中各供应商的技术优势,开发出最好的汽车电子工具链。在通 常的 AUTOSAR 解决方案中,整条工具链包含组件设计器、系统配置器、ECU 配置器和 RTE 生成器四大工具。 本文主要研究内容是设计并实现 AUTOSAR 解决方案中基于 Artop 的系统配 置器。首先在分析 AUTOSAR 开发方法论的基础上制定设计目标,并结合实际开 发过程中常见的问题提出一些改进措施。然后设计开放性的系统配置器层次架 构。最后在此基础上设计并实现五个应用模块:DBC 文法解析模块、系统配置模 块、配置验证模块、信息提取模块和迭代开发支持模块。DBC 文法解析模块用来 解析描述 CAN 网络的通信信息;系统配置模块用来设计硬件拓扑和网络通信, 同时用来做系统映射,将软件与硬件结合起来;配置验证模块对所有配置进行实 时验证和批处理验证,尽可能地在配置阶段发现系统隐含的错误信息;信息提取 模块从整个系统配置描述中抽取单个 ECU 相关的描述信息,以利于后续的 ECU 配置;迭代开发支持模块结合实际开发经验,从系统层面支持用户迭代开发,最 大限度地提升开发效率。 本文同时结合 AUTOSAR 解决方案中的其他工具给出系统配置器的应用案 例:车身控制系统 BCM。 关键词:关键词: AUTOSAR 解决方案,系统配置器,Artop 平台,信息提取 浙江大学硕士学位论文 Abstract ii Abstract With the development of auto industry, cars are playing an increasingly important role in our life. The automotive electronics technology in automobiles is also gradually improved. At present, China is the worlds largest car producer and consumer, automotive electronic technology yet to be developed. AUTOSAR is an open system architecture jointly proposed by a large number of European automotive manufacturers and suppliers of automotive electronics software, which will help improve the interoperability between different tools provided by different vendors. Usually the AUTOSAR solution includes Component Designer, System Configurator, ECU Configurator and RTE Generator. This paper studied the design and implementation of the System Configurator of AUTOSAR solutions. Firstly, we analyzed the design goals based on the AUTOSAR development methodology, and advanced some improvements combined with the knowledge of actual development. Secondly, we put forward an open architecture on System Configurator level. Finally, on this basis, we finished five application modules: DBC Grammar Parsing module, System Configuration module, System Verification module, Information Extraction module and Iterative Development Support module. DBC Grammar Parsing module is used for parsing the information describing CAN communication network; System Configuration module for topology design and network communications etc.; System Verification module for real-time verification and batch verification; Information Extraction module extracts single ECU information to facilitate follow-up ECU configuration; Iterative Development Support module is used to support users with iterative development from the system level, to maximize development efficiency. Keywords: AUTOSAR Solution, System Configurator, Artop, Information Extract 浙江大学硕士学位论文 目录 I 目录目录 摘要 .i Abstract ii 第 1 章 绪论 1 1.1 课题背景 . 1 1.1.1 汽车电子发展状况 1 1.1.2 发展自主汽车电子技术的必要性 2 1.2 AUTOSAR 解决方案国内外现状 . 2 1.2.1 AUTOSAR Builder 2 1.2.2 SystemDesk . 3 1.2.3 Smart Configurator 4 1.3 研究目的与意义 . 4 1.4 论文组织结构 . 5 1.5 本章小结 . 6 第 2 章 研究基础 7 2.1 领域基础 . 7 2.1.1 AUTOSAR . 7 2.1.2 Artop 平台 . 10 2.2 技术基础 . 12 2.2.1 Eclipse 平台 12 2.2.2 EMF 和 GMF 14 2.2.3 XML Schema . 16 2.2.4 ANTLR 16 2.3 本章小结 . 17 第 3 章 系统配置器总体设计 18 3.1 AUTOSAR 解决方案 SmartSAR Studio . 18 3.2 系统配置器配置流程 . 19 3.2.1 系统配置器设计目标 19 3.2.2 系统配置器流程设计 20 3.3 系统配置器整体架构 . 21 3.3.1 DBC 文件解析 23 浙江大学硕士学位论文 目录 II 3.3.2 系统配置设计 24 3.3.3 验证引擎分析 25 3.3.4 信息提取设计 26 3.3.5 迭代开发支持设计 27 3.4 本章小结 . 28 第 4 章 系统配置器主要模块设计与实现 29 第 5 章 系统配置器应用 30 5.1 BCM 硬件拓扑设计 30 5.2 BCM 网络通信设计 31 5.3 BCM 系统映射 32 5.4 BCM 配置验证与信息提取 32 5.5 本章小结 . 33 第 6 章 总结展望 34 6.1 工作总结 . 34 6.2 工作展望 . 34 参考文献 35 攻读硕士学位期间主要的研究成果 38 致谢 39 浙江大学硕士学位论文 图目录 III 图目录图目录 图 1-1 中国汽车电子销售额 . 1 图 2-1 AUTOSAR 整体示意图17 8 图 2-2 AUTOSAR 方法论20 9 图 2-3 ARTOP 平台架构图24 . 11 图 2-4 Eclipse 平台框图27 . 13 图 2-5 Draw2d 框图30 15 图 3-1 系统配置示意图20 19 图 3-2 SYSC 系统配置流程 . 21 图 3-3 系统配置器 SYSC 整体框架 . 22 图 3-4 DBC 数据模型及解析过程 . 24 图 3-5 系统配置模块架构 . 25 图 3-6 SYSC 验证架构 . 26 图 3-7 信息提取架构 . 27 图 5-1 车身控制系统整体架构 . 30 图 5-2 车身控制系统硬件拓扑设计 . 31 图 5-3 BCMConnector Port . 31 图 5-4 网络通信映射 . 31 图 5-5 导入 DBC 文件 . 31 图 5-6 车身控制系统组件映射 . 32 图 5-7 车身控制系统数据映射 . 32 图 5-8 验证与导出 . 33 图 5-9 central_control 描述信息 . 33 浙江大学硕士学位论文 表目录 IV 表表目录目录 浙江大学硕士学位论文 第 1 章 绪论 1 第第1章章 绪论绪论 汽车工业经过 100 多年的发展,已经深度影响人们的工作和生活。随着电子 技术和计算技术的发展,汽车电子在汽车工业中的重要性越来越突出。目前,中 国已成为世界上最大的汽车生产国和汽车消费国,汽车电子软件市场也在逐步增 大。本文设计和实现的 AUTOSAR 系统配置器用于汽车电子软件系统配置,是汽 车电子软件开发过程中的重要环节。 1.1 课题背景课题背景 1.1.1 汽车电子发展状况汽车电子发展状况 随着社会的进步和发展,人们对汽车节能、环保的要求越来越高,同时舒适 性、安全性也显得更加重要,而汽车电子技术在上述各个方面的实现都扮演着举 足轻重的角色1。汽车电子技术早已成为汽车工业的核心技术之一,汽车中电子 装置的水平也已成为衡量汽车质量的重要标志。 目前,我国的汽车产量和销量都已是世界第一2,汽车电子市场也在逐步增 大。图 1-1 为我国 2003 年以来汽车电子销售额增长状况图3。 354.6 457.9 624.3 867.6 1215.7 1353.5 1739.1 0 200 400 600 800 1000 1200 1400 1600 1800 2000 2003200420052006200720082009 销售额 图 1-1 中国汽车电子销售额 浙江大学硕士学位论文 第 1 章 绪论 2 从图 1-1 可以看出,2003 年我国汽车电子市场销售额为 354.6 亿元,2009 年 已高达 1739.1 亿元,6 年来增长了近 5 倍。 不过,同时应该注意到我国的汽车电子技术并不发达,存在系统简单、智能 性低等弱点。 1.1.2 发展自主汽车电子技术的必要性发展自主汽车电子技术的必要性 汽车电子技术4, 5主要包括以下几种:汽车车身电子技术、汽车电控技术、汽 车车载电子技术、电动汽车技术、汽车电子网络技术及智能汽车技术等等。 汽车电子技术是提升汽车整体质量的关键技术之一,例如为了推行节能减排 而发展的混合动力汽车、新能源汽车和燃料电池汽车都离不开汽车电子技术的支 持。 近年来,我国汽车电子软件产业虽然已经得到很大的发展,但核心技术和市 场份额大部分掌握在国外汽车厂商手中。例如在 2008 年仅博世、电装和德尔福 三家公司的销售份额就达到了 380 亿元,占据中国汽车电子软件市场份额的 31.6%3。 因而,大力发展汽车电子基础软件是提升我国汽车产业核心竞争力的必 经之道。 目前,我国汽车电子技术的发展仍与欧美国家有一定的差距。美、日、欧等 国家出于各自商业利益的考虑,对最先进的汽车电子技术仍然实行严格的技术封 锁政策。为了提升我国汽车工业的核心竞争力,完全有必要发展自主的汽车电子 技术。 1.2 AUTOSAR 解决方案解决方案国内外国内外现状现状 目前,国内推出较完整 AUTOSAR 工具链的公司或机构并不多,但国外已经 有不少公司提供相应的解决方案,如 dSPACE6、Vector7、Geensoft8等都提供了 相应的工具。下面针对几个比较流行的国内外产品进行分析介绍。 1.2.1 AUTOSAR Builder AUTOSAR Builder8是 Geensoft 研发的 AUTOSAR 工具链,主要包含以下工 浙江大学硕士学位论文 第 1 章 绪论 3 具和功能: 1 AUTOSAR Authoring 工具(AAT) ,具备 ECU 信息抽取和软件组件一致 性验证器。并支持系统配置。 2 通用 ECU 配置编辑器(GCE) ,包含配置代码生成器。 3 RTE 代码生成器。 4 AUTOSAR 模拟器(ASIM) ,覆盖 VFB 层、ECU 层的模拟工具,即将支 持网络层。 5 AUTOSAR 移植器(ART) ,用来将 Simulink 中基于模型的设计描述转换 为符合 AUTOSAR 标准的模型。 AUTOSAR Builder 是新兴的 AUTOSAR 工具链, 在功能上还有很多不完善的 方面,如模拟器不支持网络层。 1.2.2 SystemDesk SystemDesk6是 dSPACE 公司推出的 AUTOSAR 工具,支持软件组件设计、 系统配置,并能够与该公司的另一款软件产品 TargetLink 进行交互9,完成内部 行为的设计和模拟仿真。 除此之外,SystemDesk 还支持系统建模。系统由软件架构、硬件拓扑和网络 通讯组成。SystemDesk 支持在同一个工程下包含多个不同的系统,并允许软件架 构的复用。 下面为 SystemDesk 系统配置模块的主要功能: 1 硬件拓扑定义:描述 ECU 之间的总线通讯,包括通信协议、通信簇、物 理信道等。 2 网络通信定义:定义网络通信相关的系统信号、IPdu 和帧。 3 系统映射定义:在整个系统创建完毕后,在系统的不同部分之间进行系 统映射,包括组件映射、总线映射、通信映射和实现选择。 1) 组件映射:将软件架构中的组件实例映射到 ECU 实例上。 2) 总线映射:将通信矩阵映射到总线,并将网络节点映射到 ECU 实例。 浙江大学硕士学位论文 第 1 章 绪论 4 这一步将硬件拓扑和网络通信映射起来。 3) ECU 间通信到网络通信的映射:将 ECU 通信映射到网络通信就是映 射数据元素和操作到网络信号。 4) 实现选择:在上述映射完毕后,用户可以为每个原子软件组件实例选 择一个内部行为,并为每个内部行为选择相应的实现。 SystemDesk 的编辑器易用性还不够好,如组件映射不易操作。各编辑器 之间偶尔会出现不一致的情况,主要存在于软件组件架构编辑器之中。 1.2.3 Smart Configurator Smart Configurator10是浙江大学嵌入式系统工程中心研发的符合 AUTOSAR 标准的系统配置工具。Smart Configurator 包括硬件拓扑设计、网络通信设计、系 统映射等功能。 Smart Configurator 可以看作本文即将介绍的系统配置器 SmartSAR SYSC 的 前身,为 SmartSAR SYSC 的研究和开发打下了良好的理论基础。 为应对软件开发和软件应用中的各种问题, SmartSAR SYSC 在框架和技术上 做了全新的设计。功能方面在优化原有系统配置模块的同时增加了 DBC 文法解 析、配置验证和信息提取模块,并研究了对大型应用开发有重大意义的迭代开发 支持模块。 1.3 研究目的研究目的与与意义意义 SmartSAR Studio 是浙江大学嵌入式系统工程中心提出的基于 Artop 的 AUTOSAR 解决方案,包含组件设计器 SWA11、系统配置器 SYSC、ECU 配置器 ECUC、RTE 生成器 RTEG 和 VFB 仿真工具 VFB Simulator 五个工具。 本文研究系统配置器 SmartSAR SYSC 的设计和实现,主要包含以下功能: DBC 文法解析、系统配置(硬件拓扑设计、网络通信设计和系统映射) 、配置验 证、信息提取和迭代开发支持。 本文的研究目的和意义主要可以概括为以下 3 条: 1 实现实现 AUTOSAR 系统配置系统配置器器核心功能核心功能 浙江大学硕士学位论文 第 1 章 绪论 5 本文研究 AUTOSAR 系统配置器所必须的核心功能,进行设计并实现。系统 配置器主要包括硬件拓扑设计、网络通信设计、系统映射、配置验证、配置描述 信息自动生成和 ECU 信息提取等功能。系统配置器 SYSC 在 Eclipse 插件开发和 Artop 平台的基础上进行实现。 2 改进改进 AUTOSAR 系统配置流程系统配置流程 本文研究 AUTOSAR 系统配置方法论, 并结合实际应用经验对 AUTOSAR 系 统配置流程进行改进。例如在 AUTOSAR 标准兴起之前,各软件厂商常用 DBC 文件来描述单个 CAN 网络的通信情况,为兼容原有的数据格式在系统配置器中 增加 DBC 文法解析器,并在系统配置流程中增加 DBC 文法解析步骤。 3 研究并实践领域驱动设计方法研究并实践领域驱动设计方法 在设计系统配置器整体架构的过程中,充分考虑各种可能碰到的技术问题, 例如领域模型不断完善带来的版本问题,以及增加功能模块时所面临的软件扩展 问题等。在此基础上研究领域驱动设计的通用方法12和软件架构的设计原则13, 最终结合 AUOTSAR 自身特点设计出易维护、可扩展的系统配置器层次架构。 1.4 论文组织结构论文组织结构 本文其余章节的内容组织如下: 第 2 章研究基础,介绍与本课题相关的领域基础和技术基础。主要介绍领域 相关的 AUTOSAR 和 Artop 平台,以及实现过程中使用的 Eclipse 平台、EMF 技 术等。 第 3 章系统配置器总体设计,首先在分析系统配置器配置流程的基础上对系 统配置器的整体框架进行设计,而后针对各个应用模块进行模块架构设计。 第 4 章系统配置器主要模块设计与实现,针对系统配置器的五大应用模块分 别介绍相应的详细设计和实现。 第 5 章系统配置器应用,设计并配置汽车电子应用软件车身控制系统 BCM。 第 6 章总结展望, 在已有工作的基础上分析系统配置器的发展趋势,并对下一 个版本的系统配置器提出一些设计意见。 浙江大学硕士学位论文 第 1 章 绪论 6 1.5 本章小结本章小结 本章首先介绍课题背景,对我国汽车产业和汽车电子产业的发展现状进行描 述,详细分析了发展汽车电子核心基础软件的必要性。而后结合系统配置器的国 内外现状和已经具备的研究基础分析本文的目的和意义。最后给出了本文结构。 浙江大学硕士学位论文 第 2 章研究基础 7 第第2章章 研究基础研究基础 2.1 领域基础领域基础 本小节介绍系统配置器 SYSC 相关的领域基础, 主要包括 AUTOSAR 方法论 和 Artop 平台。系统配置器是 AUTOSAR 解决方案中的重要一环,其实现是基于 AUTOSAR 工具平台 Artop 和 Eclipse 平台, 其设计目标是基于 AUTOSAR 系统模 板14和 AUTOSAR 软件模板15。 2.1.1 AUTOSAR AUTOSAR 概述概述 AUTOSAR16是欧洲的一些汽车厂商和软件供应商联合提出的汽车电子开放 系统架构。该标准的建立主要是为了管理复杂度日益增加的嵌入式汽车电子软 件,提升产品更新、升级的灵活性,提升产品线之间或产品线内解决方案的可扩 展性,同时保证汽车电子软件的质量和可靠性,尽可能在设计阶段监测错误。 为了应对目前汽车电子软件开发的各种挑战,AUTOSAR 提供了全面的解决 方案,主要有以下几个要点17: 挑战 1:兼容工具缺乏,开发过程不成熟,功能需求不具有可追溯性。针对 此问题,AUTOSAR 提供标准的基于 XML 的交换格式,为工具间的无缝集成奠 定了技术基础。 挑战 2:组件的实现和优化浪费了大量精力,但是并没有为客户增加过多的 价值。针对此问题,AUTOSAR 提供核心基础软件,提升了软件的质量,进而可 以使组件提供商集中精力于对客户更有价值的模块。 挑战 3:微控制器更新后,需要耗费巨大的精力改造已有的汽车电子软件。 针对此问题,AUTOSAR 提出抽象微控制器概念,从而在更换硬件时不需要改变 已存在的上层软件。 挑战 4:在 ECU 间重新配置软件时需要花费大量时间,模型不易被重用。针 浙江大学硕士学位论文 第 2 章研究基础 8 对此问题,AUTOSAR 提出了运行时环境的概念,将功能模块封装于独立于通信 技术的软件组件之中,使组件到 ECU 的映射更加灵活。 挑战 5:基础软件和模型生成的代码并没有清晰的通信接口。针对此问题, AUTOSAR 将通信接口标准化,以利于不同软件厂商提供的组件进行通信。 AUTOSAR 架构的简单框架如图 2-1 所示。 图 2-1 AUTOSAR 整体示意图17 其中软件组件SWC对应用程序进行封装并运行于AUTOSAR基础设施之上。 软件组件拥有良好定义的接口,这些接口在 AUTOSAR 中都被描述并被标准化, 软件组件通过这些接口进行通信。 SWC 描述是指符合 AUTOSAR 标准的 XML 文 件,用来描述 SWC 的结构和信息。虚拟功能总线 VFB18是 AUTOSAR 定义的所 有通信机制的抽象整合。软件组件间的通信连接建好之后,VFB 就可以在最早的 阶段对它们提供虚拟整合,跳过系统配置阶段和 ECU 配置阶段。系统约束描述 和 ECU 描述对整个系统进行描述,同时描述资源和单个 ECU 的配置信息。从软 浙江大学硕士学位论文 第 2 章研究基础 9 件组件的角度看,运行时环境 RTE19在单个 ECU 上实现了 VFB 的功能。RTE 会 尽可能地将任务中转给基础软件。基础软件在单个 ECU 上提供基础设施功能, 主要包括 OS、COM 等。 AUTOSAR 方法论方法论 AUTOSAR 组织在定义标准的同时定义了汽车电子软件开发的基本流程20, 并划分出一些重要的开发工具,从而工具提供商可以专著于解决方案中部分工具 的开发。图 2-2 显示了 AUTOSAR 方法论中设计一个系统的基本步骤。 图 2-2 AUTOSAR 方法论20 首先需要定义系统配置输入文件,这属于系统设计和架构设计的范畴,包括 软件组件和硬件拓扑的选择,同时需要指定整个系统的约束。AUTOSAR 使用了 标准的信息交换格式,从而简化初始系统的描述,定义系统配置描述只需要填写 或编辑相应的模板,主要有下述信息:1)软件组件,每一个软件组件都要有相 应的软件 API 的描述,如数据类型、接口、端口等;2)ECU 资源,每一个 ECU 都有关于处理单元、内存、外设、传感器和执行器的描述;3)系统约束,如对 总线信号的约束、对软件组件的约束。 系统配置器的主要功能是将软件组件实例映射到 ECU 实例,需要考虑资源 和时间需求的约束。系统配置的输出是系统配置描述,该描述包含所有的系统信 息:总线映射、硬件拓扑、软件组件在 ECU 上的分配等。提取 ECU 描述信息是 浙江大学硕士学位论文 第 2 章研究基础 10 指从系统配置描述中提取跟单个 ECU 实例相关的所有信息。ECU 配置添加所有 相关的实现信息,如任务调度、必需的 BSW 模块、BSW 模块的配置、将可运行 实体映射到任务等。 ECU 配置的输出放到 ECU 配置描述文件中, 该文件包含所有跟单个 ECU 相 关的信息,该 ECU 的可运行软件可以根据这些信息进行构建。最后一步生成可 运行程序包括三个步骤:代码生成、编译代码和链接所有的目标文件。其中编译 代码需要编译 ECU 配置器生成的代码和软件组件的代码,软件组件的代码由用 户来提供。软件组件的代码可以有多种获得方式,如手工编写或通过 Matlab Simulink 建模自动生成。 与上述方法论中的几个主要步骤并行的还有一些必须的额外操作,如生成组 件的 API、实现组件的功能等。软件组件的实现与 ECU 的配置是相互独立的,这 也是 AUTOSAR 方法论的一大特征。 2.1.2 Artop 平台平台 AUTOSAR 定义了汽车电子开发的系统架构和方法论,AUTOSAR 的方法论 是比较复杂的, 包括软件组件建模、 基础软件配置、 RTE 生成等步骤。 AUTOSAR 方法论中的每一步都需要特定的工具来支持。鉴于种种原因,由单个软件提供商 提供高质量的完整的 AUTOSAR 解决方案还存在一些挑战。 目前,市场上已出现不同工具厂商提供的相关工具,如 dSPACE 公司的 SystemDesk、MathWorks 公司的 Matlab Simulink 等。但是还很少有一个公司能够 开发出支持整个开发方法论的解决方案。每一个工具提供商都想提供整个工具 链,为 AUTOSAR 提供解决方案,但由于各个公司的技术背景和技术基础互有差 别,工具链中部分工具的质量很难保证。 最理想的情况是方法论中的每一步都有一个最好的工具支持,不管它来自哪 一个提供商,同时各个工具之间具备良好的互操作性21, 22。 另外一个问题是 AUTOSAR 标准正在以很快的速度发展, 不断更新自己的元 模型,发布新的版本。虽然 AUTOSAR 定义了标准的数据交换格式为工具接口的 浙江大学硕士学位论文 第 2 章研究基础 11 定义提供便利,但是仍有部分局限性:XML 是一个文件格式,并不是一个内存 存储格式。AUTOSAR 方法论中各个工具是在文件层次上进行交互23,而在实际 的开发过程中,各个工具需要一个基于内存数据结构的交换格式。然而从一个内 存数据结构转换到另一个内存数据结构是有弱点的,一方面数据容易丢失,另一 方面效率会很低,而且容易出错,对象级别的可追溯性极差,横跨工具的消息引 用很难做到。因此不同工具通过内存传输数据是一个极大的挑战。 Artop24(AUTOSAR 工具平台)是一种新的工具开发方案,能够为工具集成 提供技术基础25。它的核心思想是基于这样一种事实:所有的 AUTOSAR 工具都 需要一些共同的基础功能。没有一个工具提供商会通过提供不同的基础功能来与 对手竞争,因此与其每个工具提供商分别开发这套基础功能,不如所有厂商联合 起来开发这样一个基础框架。 因而 Artop 是由众多工具厂商联合开发的开源架构, 所有 Artop 用户组成员和 AUTOSAR 成员共享都可以使用。 Artop 平台本身是基于 Eclipse 的开发, Eclipse 已经提供了一些框架和功能用 来开发领域相关的工具。在 Artop 架构中 Eclipse 处于最低层。Eclipse 之上共有 两层与 Artop 相关,这两层提供所有创建 AUTOSAR 工具所需要的基础功能,如 AUTOSAR 模型的实现、 模型的解析、 简单编辑功能等。 Artop 平台的架构如图 2-3 所示。 图 2-3 ARTOP 平台架构图24 浙江大学硕士学位论文 第 2 章研究基础 12 最上层是AAL (Artop AUTOSAR Layer) , 包含与AUTOSAR标准相关的Artop 代码。这部分代码有知识产权保护,因而只能被 AUTOSAR 组织成员共享。下层 是 ECL (Eclipse Complementary Layer) , 仍然由 Artop 组织开发, 但与 AUTOSAR 标准并不相关。 Artop 组织有弱化 ECL 的计划, 并将所有的功能移入 Eclipse 本身。 Artop 之上是各个工具厂商的插件,各个工具厂商进行竞争,属于 CL 层 (Competitive Layer) 。所有复杂的功能都放到 CL 层次,CL 层次的插件由各个工 具厂商开发。如图 2-3 所示,Artop 主要包含以下几种组件。 1 AUTOSAR 元模型实现26。 AUTOSAR 元模型实现是 Artop 平台中最重要 的一部分。元模型采用 Java 编程语言和 EMF 框架进行实现。目前 Artop 支持 AUTOSAR2.0、2.1、3.0、3.1 和 AUTOSAR4.0。Artop 会随着 AUTOSAR 新版本 的发布更新元模型实现组件,添加对新版本的支持。Artop 同时提供通用的元模 型 API,以供其它插件对元模型进行编辑。 2 序列化组件。序列化组件为 AUTOSAR 元模型提供基于文件的持久化方 法。根据 AUTOSAR 提供的 AUTOSAR XSD 提供序列化和反序列化模型的 API. 3 工作空间管理。AUTOSAR 工作空间管理支持 AUTOSAR 模型的管理。 4 元模型编辑。元模型编辑功能用来将内存中的 AUTOSAR 数据模型显示 出来,并允许用户进行编辑。元模型编辑是基于 EMF.edit 框架的实现,并提供了 关键的内容提供类、标签提供类、属性类和一个用来创建编辑模型的非事务命令 框架。 5 验证引擎。 Artop 包含一个通用的验证引擎, 最大限度地降低为 AUTOSAR 模型添加验证约束的代价。该组件可以用来执行标准的 AUTOSAR 约束、工程相 关的约束和用户自定义的约束。约束可以很方便地通过扩展点进行添加。 2.2 技技术基础术基础 2.2.1 Eclipse 平台平台 Eclipse27是一个用来开发集成 WEB 和应用开发工具的平台。Eclipse 平台本 身并没有提供大量的功能,其价值在于它所倡导的开发方法:基于插件模型的快 浙江大学硕士学位论文 第 2 章研究基础 13 速集成开发28。Eclipse 平台提供了统一的用户界面模型。通过与底层 OS 的健壮 集成,Eclipse 可以运行于多种操作系统。 Eclipse 平台的核心是动态发现、 加载并运行插件的架构机制。 Eclipse 平台保 证在运行时找到并运行正确的代码。每一个插件只需要完成相应的小部分功能, 如编译、调试、建模等。 Eclipse 平台定义了一个开放的架构, 插件开发人员可以只集中于自己所做的 领域,在不影响其他插件的情况下集成自己的插件,开发人员通过扩展点来添加 插件。平台本身也是由分层次的插件构成。每一个插件都是对下层的扩展点进行 扩展,并定义本层次的扩展点。图 2-4 是 Eclipse 平台的整体架构图。 图 2-4 Eclipse 平台框图27 主要插件或功能部件的介绍如下: 平台运行时环境(Platform runtime) :定义扩展点和插件模型,动态发现插件 并在平台注册表中维护插件和扩展点的信息。当用户操作需要用到新的插件时, 加载并运行该插件。Runtime 使用 OSGi 框架实现。 资源管理(Resource management) :定义创建和管理资源的 API,资源包括工 程、文件和文件夹三种。 Workbench UI:定义添加界面组件的扩展点,如视图和菜单等。Eclipse 也支 浙江大学硕士学位论文 第 2 章研究基础 14 持用 JFace 和 SWT 来开发用户界面。UI 服务支持使用部分组件来构建独立于资 源管理和工作空间模型的富客户端。 2.2.2 EMF 和和 GMF EMF和GMF是构建建模环境的基础技术, 在系统配置器中被大量使用。 GMF 技术是 EMF 和 GEF 的综合,其中 EMF 偏重于模型,而 GEF 偏重于图形。本小 节概要介绍 EMF、GEF 和 GMF 的原理和框架。 EMF EMF29是一个 Java 代码框架、 代码生成工具, 多用来构建基于结构化模型的 工具或应用程序。如果已经具有面向对象设计的思想,在 EMF 的帮助下能够高 效快速地建立模型,并将模型转变为高效、正确、易维护的 Java 代码。EMF 使 用 XMI(XML 元数据交换)作为模型定义的标准格式。EMF 模型可以通过多种 方式进行创建:1)直接使用 XML 或文本编辑器来编辑 XMI 文档,这是最直接 的方式,却并不是很实用的方法,XMI 文档易读却不易写;2)从其他建模工具 导出 XMI 文档, 如 Rational Rose; 3) 使用模型属性注解 Java 接口; 4) 使用 XML Schema 描述模型的序列化表示。 在创建好 EMF 模型之后,EMF 生成器能够创建相应的 Java 类实现。用户可 以在生成的代码上进行修改,增加方法或变量。在修改模型后,可以再次生成代 码,并会保留用户自定义的代码,如果用户自定义的代码依赖自动生成的代码, 需要用户进行手动更新。EMF 代码生成对迭代开发的支持大大提高了 EMF 工具 的易用性和应用程序的开发效率。 除代码生成之外,EMF 提供了另外几种机制来提高软件开发效率:模型改变 通知机制、模型一致性,模型序列化,模型验证框架,用来操作模型的高效反射 API 等。更重要的是,EMF 提供了与其它基于 EMF 的工具进行互操作的基础。 EMF 包含两套基础框架:核心框架和 EMF.Edit。核心框架对 Java 代码的自 动生成和实时运行提供支持。EMF.Edit 是对核心框架的扩展,增加适配类以允许 模型的查看及编辑, 其中编辑基于 Command 模型, 支持撤销操作。 另外, EMF.Edit 浙江大学硕士学位论文 第 2 章研究基础 15 还包含一个基本的模型编辑器。 GEF GEF30是一种图形编辑框架,提供了构建交互式用户接口的基础。使用 Eclipse 平台原始 API 构建图形界面是比较复杂的工作, GEF 能够大大简化用户的 工作量。GEF 组件主要包含两个插件:1)Draw2d (org.eclipse.draw2d),用来在 SWT 画布上绘制和布局轻量级工具箱。Draw2d 由绘图组件 figure 构成,轻量级 意味着 figure 仅仅是一个简单的 Java 对象, 在操作系统中没有相应的资源。 Figure 可以通过父亲-孩子关系来组合,每一个 figure 都有一个边界,该 figure 及其子 figure 都在此边界中绘制。Draw2d 框图如图 2-5 所示。2)GEF (org.eclipse.gef), 一个基于 Draw2d 的交互式 MVC 架构。 LightweightSystem Figure FigureFigure FigureFigure Canvas EventDispatcher UpdateManager 图 2-5 Draw2d 框图30 Draw2d 主要用来高效地绘制和布局 figure,GEF 插件在 Draw2d 的基础上添 加编辑功能。该框架主要有以下功能:1)方便其它模型在 Draw2d figure 的基础 上以图形化的方法显示。2)支持鼠标、键盘和 Workbench 的交互操作。3)提供 与上述功能相关的通用组件。 GMF GMF31技术是一种基于EMF和GEF两种模型驱动开发方法而实现的可视化 浙江大学硕士学位论文 第 2 章研究基础 16 模型驱动方法。 GMF是一种开源的Java框架, 可以用于快速开发可视化编辑器32。 GMF 的具体流程为:设计图形编辑器的领域模型、工具模型、图像模型;对 上述三种模型进行映射得到映射模型;将映射模型转换为 GMF 生成器模型并由 该模型自动生成代码。 上述模型中最基础的模型为领域模型,表达了建模内容的 UML 关系,包括 引用、聚合、继承等。除此之外还包括各个模型的属性和方法。领域模型会生成 模型层代码和视图相关代码。模型层代码是对各模型的描述,视图相关代码则负 责属性页面内容。 2.2.3 XML Schema AUTOSAR标准规定工具之间使用符合AUTOSAR Schema标准的XML文件 进行交互。在实际开发工程中需要用到大量与 XML Schema 相关的知识和技术 33。本小节对 Schema 做概要介绍。 从抽象数据模型的角度看,Schema34, 35由一系列 Scheme 组件组成。Schema 组件共有 13 种,分为 3 大类。Primary 组件包括 4 种:简单类型定义、复杂类型 定义、属性声明、元素声明。Secondary 组件包括 4 种:属性组定义、 Identity-constraint 定义、模型组定义、Notation 声明。Helper 组件为其他组件提供 部分内容,并不能独立存在,共有 5 种:Annotations、Model groups、Particles、 Wildcards 和 Attribute Uses。Schema 可以用来对 XML 进行定义,一个 Schema 可 以对应多个 XML 实例,XML 实例可以针对相应的 Schema 进行验证。 2.2.4 ANTLR ANTLR36(ANother Tool for Language Recognition)是一种用来构建语法识 别器的工具。在 ANTLR 的帮助下,可以通过语法描述很方便地构建识别器、编 译器和翻译器的框架, 在语法描述中支持添加 Action, Action 可以使用 Java、 C#, Python 或 C+。与 YACC37相比,ANTLR 能够自动生成高可读的代码,易于维 护。 ANTLR 可以接受三种语法规范:Lexer、Parser 和 Tree-Parser。其中 Lexer 浙江大学硕士学位论文 第 2 章研究基础 17 处理字符流,Parser 处理 Token 流,Tree-Parser 处理抽象语法树 AST。在解析的 过程中主要有两种方式:1)解析完所有的内容再进行统一处理,即先将文本转 化为 AST,再对 AST 进行处理。2)边解析边处理,将 Action 加入解析的过程。 第二种方法的缺点是将处理动作加入解析过程,不易维护,而且很难对特定的语 法实现不同的处理方式。 2.3 本章小结本章小结 本章介绍了与系统配置器 SYSC 相关的领域基础和技术基础。领域基础主要 包括 AUTOSAR 方法论和 Artop 平台。技术基础主要包括开放平台 Eclipse,用于 开发建模工具的 EMF、GEF 和 GMF,用于构建语法识别器的 ANTLR 等。 浙江大学硕士学位论文 第 3 章系统配置器总体设计 18 第第3章章 系统配置器系统配置器总体设计总体设计 AUTOSAR 组织提出了汽车电子软件的开发方法论,将开发过程标准化,主 要是为了提高不同工具厂商工具间的互操作性。 同时由于 AUTOSAR 是一个新兴 的汽车工业标准,其领域模型在实际应用中不断被更新、完善。因而任何 AUTOSAR 解决方案至少应具备易兼容、易扩展的特点。本章在研究 AUTOSAR 开发方法的基础上,分析并设计系统配置流程,最后提出系统配置器 SYSC 的整 体框架,并详述各应用模块的模块架构。 3.1 AUTOSAR 解决方案解决方案 SmartSAR Studio SmartSAR Studio 是浙江大学嵌入式系统工程中心研发的 AUTOSAR 解决方 案, 致力于为汽车电子软件的开发提供一整套的工具链。 SmartSAR Studio 主要包 括组件设计器 SWA、系统配置器 SYSC、ECU 配置器 ECUC、RTE 生成器 RTEG 和 VFB 仿真工具 VFB Simulator 五个工具。 组件设计器 SWA 为软件组件提供图形化建模环境,支持组合组件、原子组 件、接口等模型,同时支持与 Matlab Simulink 进行交互,在 Simulink 中设计原子 组件的内部行为并将生成的内部行为描述文件导入到 SWA。 由于软件组件层次关 系十分复杂,单个组件的更改往往会影响其它组件,组件设计器必须解决模型一 致的问题11。 系统配置器 SYSC 为整个系统提供配置功能,支持 DBC 文法解析、硬件拓 扑设计、网络通信设计、系统映射、配置验证和配置信息提取等功能。 ECU 配置器 ECUC 与 RTE 生成器 RTEG 一起完成单个 ECU 的配置并生成 RTE 代码,可以与软件组件代码一起直接编译运行。 VFB 模拟仿真器 VFB Simulator 用来对软件组件进行模拟仿真,以软件环境 替代硬件功能,在汽车电子软件开发的早期阶段监测尽可能多的运行期错误。 本文主要研究系统配置器 SYSC 的设计和实现。 浙江大学硕士学位论文 第 3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 证券市场宏观经济指标分析考核试卷
- 船舶固废处理考核试卷
- 笔的笔身图案设计考核试卷
- 金属表面处理的工艺原理考核试卷
- 冬季常见疾病预防与保健
- 饮食健康与疾病防治
- 颈丛阻滞麻醉学
- Fosamprenavir-13C6-Amprenavir-phosphate-sup-13-sup-C-sub-6-sub-生命科学试剂-MCE
- 2025年互联网+医疗美容行业市场细分领域投资机会与风险预警报告
- 工业互联网平台NFV在工业自动化控制系统中的数据安全防护实践报告
- DB34∕T 3262.2-2018 普通公路养护预算 第二部分:定额
- 2025年政府采购代理机构考试题及答案
- 《特种设备安全管理员》考试通关题库(600题 含参考答案)
- 公安警情处置流程
- 油罐换底工程施工及方案
- 2024年贵州省黔南州事业单位历年管理单位遴选500模拟题附带答案详解
- 大型展会展台搭建管理细则(3篇)
- 《档案信息化建设》课件
- 【MOOC】工程经济-浙江工业大学 中国大学慕课MOOC答案
- 《寿险的功能与意义》课件
- 2024-2030年全球及中国锂云母行业发展动态及投资前景预测报告
评论
0/150
提交评论