BCM通信协议栈设计.pdf
《BCM通信协议栈设计.pdf》由会员分享,可在线阅读,更多相关《BCM通信协议栈设计.pdf(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、学校代号10532学号S1002W218分 类 号U469.7密级公 开工程硕士学位论文BCM 通信协议栈设计学位申请人姓名袁科培养单位机械与运载工程学院导师姓名及职称黄智 副教授卜晓宇 高工学科专业车辆工程研究方向汽车电子论 文 提 交 日 期2012 年 07 月 09 日学校代号:10532学号:S1002W218密级:公 开湖南大学硕士学位论文BCM 通信协议栈设计学位申请人姓名:袁科导师姓名及职称:黄智 副教授 卜晓宇 高工培养单位:机械与运载工程学院专业名称:车辆工程论 文 提交日期:2012 年 07 月 09 日论 文 答辩日期:2012 年 07 月 11日答辩委员会主席:张
2、桂香 教授Design of Body Control ModulesCommunication Protocol StackbyYUAN KeB.E.(Changsha University)2009A thesis submitted in partial satisfaction of theRequirements for the degree ofMaster of EngineeringinMechanical Engineeringin theGraduate SchoolofHunan UniversitySupervisorAssociate Researcher Huang
3、 ZhiSenior Engineer Pu Xiao Yu07 11,2012I湖 南 大 学学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权湖南大学可以将本学位论文
4、的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、保密,在_ _年解密后适用本授权书。2、不保密。(请在以上相应方框内打“”)作者签名:日期:年月日导师签名:日期:年月日BCM 通信协议栈设计II摘要由于电子技术的快速发展和人们对汽车安全性、舒适性要求的日益提高,使得汽车上的电子设备日趋增多和复杂。车载总线网络技术为汽车内部各种复杂的电子设备和控制单元提供了统一的数据交换通道,有效的利用了资源并实现数据共享。本文针对汽车领域的总线,在对 AUTOSAR 通讯系统协议进行深入研究之后,参照 AUTOSAR 的软件架构标准设计了基于
5、CAN 总线和 LIN 总线的通讯协议栈。该协议为汽车电控单元之间的数据传输和处理提供了方法,实现了总线网络节点间的通讯。本文设计的 BCM 通信协议栈采用层次化、模块化结构,分为通信服务层、通信硬件抽象层、通信驱动层。通信服务层位于通信抽象层和 RTE 层之间,它除了为上一层提供统一的软件接口,同时还支持底层数据的发送,接收与确认;通信硬件抽象层旨在为通信网络提供可配置的统一接口,使软件组件间建立简单可靠的通信机制;通信驱动层的主要作用是实现软件与硬件之间的链接,为上层提供统一的接口,使上层软件独立于微控制器。本文的研究重点在于,参照 AUTOSAR 软件架构标准的 BCM 通信协议栈各层和
6、各模块的设计与实现。关键词:总线网络;通信协议栈;AUTOSAR工程硕士学位论文IIIA A A AbstractbstractbstractbstractDue to the rapid development of electronic technology and peoples highrequirements of vehicle safety and comfort,it makes the electronic equipment on thecar gradually become numerous and complex.Car-bus network technology
7、foravariety of complex electronic devices and control units which exists in automotiveinterior to provide unified data exchange channel to achieve efficient use of resourcesand data sharing.For the automotive sector bus,after in-depth study on the AUTOSAR agreementsof communication system,referencin
8、g to the AUTOSAR software architecturestandard,this designed a communication protocol which based on the CAN bus andLIN bus.The stack for automotive electronic control unit to provide a standard datatransfer and process method,mades the communication of network node to achieve.This BCM communication
9、 protocol stack adopt hierarchical modular structurewhichdividedintocommunicationserviceslayer,communicationhardwareabstraction layer and the communication driver layer.Communication services layerlocated in the communication abstraction layer and RTE layer.Except for upper layerto provide a unified
10、 software interface but also supports the lower data to send,receive and confirm;Communication hardware abstraction layer provides configurableuniform interface for communication network and establishs a simple and reliablecommunication mechanism between software components;The main role of thecommu
11、nication driver layer is the link between software and hardware.It provides aunified interface for the upper layer and makes upper layer software independent ofthe microcontroller.This study focuses on the design and implementation of each module BCMcommunicationprotocolstacklayer,referencingtotheAU
12、TOSARsoftwarearchitecture standard.Keywords:Keywords:Keywords:Keywords:Bus network;Communication protocol stack;AUTOSARBCM 通信协议栈设计IV目 录学位论文原创性声明和学位论文版权使用授权书I摘要IIAbstractAbstractAbstractAbstract III第 1 章 绪论 11.1 课题背景 11.2 国内外研究现状 11.3 课题来源及意义 31.4 主要研究内容41.5 本文结构 4第 2 章 BCM 通信协议栈的架构和层次52.1 BCM 通信协议栈的
13、技术基础52.2 BCM 通信协议栈的整体架构和层次92.3 通信服务层的结构和功能92.3.1 COM 和 PDU Router 模块 92.3.2 网络管理模块 102.3.3 CAN 传输层模块102.4 通信硬件抽象层的结构和功能 102.4.1 CAN 接口层模块102.4.2 LIN 接口层模块 112.5 通信驱动层的结构和功能112.5.1 CAN 驱动层模块112.5.2 LIN 驱动层模块 112.6 本章小结11第 3 章 通信服务层的设计和实现123.1 COM 模块123.1.1 初始化123.1.2 信号交互 133.1.3 可靠性保障 153.2 网络管理模块16
14、3.2.1 网络初始化 163.2.2 网络运行监控163.2.3 网络状态管理17工程硕士学位论文V3.2.4 LIN 网络管理 183.3 CAN 传输层模块213.3.1 CAN 传输层数据收发简介213.3.2 初始化223.3.3 数据发送233.3.4 数据接收243.3.5 流量控制 243.4 本章小结 25第 4 章 通信硬件抽象层的设计和实现 264.1 CAN 接口层模块264.1.1 初始化264.1.2 发送缓冲264.1.3 数据发送274.1.4 数据接收284.1.5 数据的接收过程示例 294.1.6 网络模式控制 304.2 LIN 接口层模块304.2.1
15、 数据配置 314.2.2 任务状态机 314.2.3 应用程序接口(API)334.2.4 调度表344.3 本章小结 35第 5 章 通信驱动层的设计和实现365.1 CAN 驱动层模块365.1.1 初始化365.1.2 CAN 控制器模式设置 365.1.3 数据发送375.1.4 数据接收375.2 LIN 驱动层模块385.3 本章小结 40第 6 章 通讯系统测试416.1 测试环境简介416.1.1 硬件平台介绍 416.1.2 软件平台介绍 426.2 测试方案 42BCM 通信协议栈设计VI6.2.1 CANoe 实验与仿真426.2.2 BCM 测试436.2.3 车身电
16、器台架测试446.3 测试结果分析476.4 本章小结 47结论48总结48展望48参考文献49致谢51工程硕士学位论文1第 1 章 绪论1.1 课题背景近年来,随着电子、信息技术的迅猛发展,汽车电子化程度越来越高,汽车上电子装置成本将占汽车整车成本的 25%以上,汽车电子化是现代汽车发展的重要标志1。当前先进的汽车技术都得益于汽车电子技术的发展,如电喷发动机、电动车窗、电动座椅、电子显示屏、电控悬架等2。汽车已由单纯的机械产品向高级的机电一体化产品方向发展3。现代汽车电子技术的应用,不仅提高了汽车的经济性、动力性和安全性,同时改善了汽车行驶的稳定性和舒适性,推动了汽车产业的发展;而且还为电子
17、产品开拓了更加广阔的市场,推动了电子产业的发展4。然而日趋复杂的电路降低了汽车的可靠性,增加了维修汽车的难度,也造成电子设备间的连线越来越多5。按照传统的点对点布线方式,会造成庞大的布线系统,需要大把的线束,这不仅大大的增加了成本,也使得电路变得繁琐复杂和不易管理6。汽车总线作为一种连接智能电子设备和自动化系统的数字式、双向式传输式、分支结构的通信网络标准,为汽车内部各种复杂的电子设备和控制单元提供了统一的数据交换通道7。1.2 国内外研究现状1.2.1 总线的研究现状上世纪 90 年代初,总线技术开始在汽车中应用。如今该项技术已经成为现代汽车的标准技术,几乎所有的车都开始采用总线技术,汽车的
18、总线零部件也成为发展的主流8。CAN、LIN、Flex Ray、MOST 等为汽车上现在常用的几种总线9。1.CAN 总线CAN 即控制器局域网络,属于工业现场总线的范畴。CAN 总线与一般的总线相比,其数据通讯具有突出的实时性、可靠性和灵活性。它良好的性能和设计受到人们的广泛关注。CAN 总线的应用领域非常广泛,包括汽车行业、自动控制、过程工业、航空航天、纺织机械、机械工业、农用机械等,而在汽车领域上的应用是最为广泛的。世界上一些著名的汽车生产商如 BENZ(奔驰)、BMW(宝马)、ROLLS-ROYCE(劳斯莱斯)、PORSCHE(保时捷)等都使用 CAN 总线来实现各执行和检测机构与汽车
19、内部控制系统间的数据通信。现在 CAN 被公认为几种最有前途的现场总线之一,并已经形成国际标准。其典型的应用协议有:SAEBCM 通信协议栈设计2J1939/ISO11783、CAN Open 等10。SAE J1939 是由美国汽车工程协会 SAE 规定的一种基于 CAN 总线的高速通信网络协议,其固定速率为 250Kbps,主要用于商用车,也用于轨道车辆、农用机械和舰船等。它包括物理层、数据链路层、网络层和应用层协议11。物理层给出了屏蔽双绞线和非屏蔽双绞线时的网络物理描述、功能描述、电气规范、总线错误讨论、兼容性测试等。数据链路层定义发送 CAN 数据帧时所必需的同步、顺序控制、错误控制
20、和流控制等功能,保证了网络数据传输的可靠性。网络层不仅定义网络中各 ECU 的需求和服务,同时也定义网络中各种类型 ECU 所能提供的功能。SAEJ1939 应用层协议定义所需要用到的参数组(PNG)和可疑参数编号(SPN)。它包含了支持应用的机制和管理功能,对参数范围、报文格式、发动机参数的命名规则、传输重复率等方面做出了具体的规定和描述12。CAN Open 是一种在 CAL 基础上开发并使用 CAL 通讯和服务协议子集的高层通讯协议,包括通讯子协议和设备子协议,常用于嵌入式系统和工业控制中。它提供分布式控制系统的实现方案,实现了 OSI 模型中网络层及以上的协议,在保证网络节点互用性的同
21、时允许节点的功能随意扩展。CAN Open 支持设备监控、网络管理、及节点间的通讯等,其中包括一个简易的传输层,可处理资料的分段传送及其组合13。一般而言物理层和数据链路层会用 CAN 来实现。CAN Open是 CAN-in-Automation(CIA)定义的标准之一,被认为是在基于 CAN 的工业系统中占领导地位的标准。由于该协议的支持,可以对不同厂商的设备通过总线进行配置14。2.LIN 总线LIN 是一种相对比较新的总线系统,于 20 世纪 90 年代末被开发出来,其目的是为简单的传感器和执行器应用系统(如天窗、车门、座椅等)提供一种价格低廉的,可代替低速 CAN 的总线系统。它由一
22、些汽车制造商(如 Audi、BMW 等)和半导体制造商 Motorola 公司联合提出。LIN 也是现代汽车上使用比较普遍的一种总线,采用简单面向字符的协议,用每个 UART(通用异步接收器和传输器)来执行。它作为 CAN 总线的补充,可被自由使用。LIN 拥有更好的 EMC(电磁兼容)特性,主要用于汽车外围设备的网络连接,其应用最多的是车窗座椅、灯光照明、电动天窗等的控制传输。它提升了系统结构的灵活性,有效地降低了汽车制造成本15。3.Flex Ray 总线Flex Ray 是以未来线控系统为背景而研发出来的一种总线系统。Flex Ray 联盟(Flex Ray Consortium)推进了
23、 Flex Ray 的标准化,使之成为了新一代汽车内部网络的通讯总线。尽管它的许多要求和 CAN 一样,许多专业人士还是认为有继续研发的必要性和意义。Flex Ray 可以是星形结构也可以是线性结构,允许两工程硕士学位论文3个信道的通讯系统,这相对 CAN 的单信道通讯系统可以提高系统的安全性和可靠性。它为下一代汽车的车内控制系统提供所需的速度,目前所允许的最大比特率为 10Mbit/s,而 CAN 所允许的最大比特率为 1Mbit/s,这在车载通讯系统中对数据传输速率要求较高的场合有很好的应用前景16。经过多年的改进,FlexRay网络标准已经成熟,并成功应用在 BMWX5 中的 5 个 E
24、CU(主控悬吊系统、电控减震等)上,预计将在 BMW 下一代产品的更多 ECU 上得到应用。1.2.2 AUTOSAR 的研究现状AUTOSAR 是 Automotive Open System Architecture(汽车开放系统架构)的简称,是一个致力于制定汽车电子软件标准的联盟。该联盟首先发起并活跃于欧洲,2006 年年底发布了 2.1 版规范,并对第一阶段的发展规划作了总结。2007 年到 2009 年是 AUTOSAR 的第二阶段,这一阶段制定的规范添加了新的性能(如安全性能等)17。AUTOSAR 架构为高效管理愈来愈复杂的车辆电子、软件系统提供了一个基础,有利于车辆电子系统软件
25、的交换与更新。此外,AUTOSAR 在确保产品及服务质量的同时,提高了成本效率18。宝马集团从 2001 年开始在 BMW Standard Core 的架构下,将 AUTOSAR 标准的基础软件运用在 ECU 模块中。该基础软件基本上覆盖了车辆管理系统各个层面的功能,包括停车准备功能、系统编码功能、设定特殊条件的服务定制功能等。国内的各大汽车厂商和科研院校也越来越关注 AUTOSAR 带来的标准化的设计和开发,并进行了大量的实验和验证,这大幅提高了汽车电子的研发效率和研发质量19。浙江大学 ESE 实验中心从 2004 年开始关注 AUTOSAR,并率先加入了AUTOSAR组织。目前浙江大学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BCM 通信协议 设计
限制150内