基于ARM的OBD-Ⅱ型通用车载诊断系统的设计
作者单位:成都理工大学
学位级别:硕士
导师姓名:周冬梅
授予年度:2017年
学科分类:082304[工学-载运工具运用工程] 08[工学] 080401[工学-精密仪器及机械] 0804[工学-仪器科学与技术] 080402[工学-测试计量技术及仪器] 0838[工学-公安技术] 0823[工学-交通运输工程]
摘 要:随着人们生活质量的不断提升、运输业的高速发展,越来越多的人能享受到汽车带来的方便,但汽车同时也引起了很多问题。车辆的增多造成环境污染越来越严重,并且交通事故也越发频繁。尽管有关部门采取了单双号限行、优化出行路线等方式,但是解决这些问题更好的办法是人们了解汽车的运行状况后,养成良好的驾驶习惯,并及时检修汽车。本文设计了一种采用OBD-II诊断协议为标准的车载故障诊断系统,可以帮助驾驶员了解车辆自身的情况。此诊断设备集成了重型汽车和小型轿车的诊断协议,并且可以在两种汽车之间通用;采用Android手机作为显示界面,通过蓝牙完成它们之间的通信。本文对车载诊断技术做了研究和分析,根据当前使用的总线技术选择了CAN总线诊断协议、K线诊断协议作为研究对象,分别介绍它们的应用格式及一些关键技术,最后对几种诊断协议做了技术对比。包括它们检测原理,数据通信的格式,同时也说明了车辆诊断故障码的表示含义和诊断接口标准。车载诊断终端是基于嵌入式技术,并选用STM32F407VGT6作处理器。在本设计中采用两种方法采集汽车ECU的数据。第一种是针对使用SAEJ1939诊断协议和ISO15765诊断协议的汽车CAN线获取数据,这种方式主要由MCU控制器和TJA1050收发器与汽车的OBD诊断接口相连接,实现两部分数据处理功能;一个是收发器与汽车通讯,接收的是汽车响应上位机服务请求的消息,请求的服务类型由手机终端决定,使用手机蓝牙告知主控模块服务消息;另一个是CAN控制器对CAN总线上传输的数据进行抓取处理。第二种方式是针对汽车K线KWP2000诊断协议的数据获取,设计电平转换电路与汽车ECU建立通信连接,实现总线电平与MCU电平的兼容。采集到的数据根据相应的诊断协议帧格式进行层级式解析。设计中还使用了GPS和GSM模块与用户通信,一旦发生故障,通过短信的方式通知用户。数据显示界面采用Android手机系统,设计了数据显示的简易界面,首页由行车实时数据、故障诊断、行车习惯和行车预警四个部分组成;进入到相应的界面就可以查看采集的数据。其中使用了手机蓝牙和车载诊断设备的蓝牙进行配对建立连接,设计程序实现数据的传输和处理。最后论文对设计的各个模块做了多次实验,采用OBD模拟器模拟各项数据,发送的数据与手机端显示的数据进行对比,表明系统能满足设计要求。