陈鲤文,邹复民
(福建工程学院 福建省汽车电子与电驱动技术重点实验室,福建 福州 350108)
影响汽车安全行驶的因素很多,有驾驶员的行为和心理、道路状况、周边环境、天气和车况等[1]。随着汽车电子技术的发展,各远程诊断手段开始出现,但归其本质,车身状态的判断是基础和执行目标。
随着汽车总线技术的发展,各种车用传感器得到发展,本研究通过ODB诊断接口向汽车发送诊断指令,将汽车的ECU的数据参数发送到CAN数据采集模块,模块读取汽车故障码,将采集的数据发送到车载智能诊断终端,经过分析处理后,诊断终端可通过LCD本地实时显示车况信息,给驾驶员提示。同时,通过GPRS模块等方式将数据远程传输给维修人员,维修人员可以实时监控汽车行驶中的各项数据,给驾驶员以指导,真正起到实时预警,预防维修作用,切实保障行车安全。
采用OBD-II技术可以有效针对更广泛的适用车型,由于其标准化得电子协议和标准化得诊断代码,使得我们可以更方便地移植开发新的车型产品。为此OBD-II的许多标准协议均需运用起来、 例如 ISO14230(KWP2000)、ISO14229、ISO15765、SAE15031、SAEJ2012 等。 因此采用 OBD-II会大大减少我们更换车型所需编写程序的代码量以及工作量[2]。
ISO15765协议的物理层和数据链层遵循ISO11898-1标准。ISO11898即道路车辆——数字信息交换——通信用局域网控制器,第一部分规定了数据链路层和物理层。而早在1994年以前,ISO制定了ISO14230,到目前为止,ISO14230是许多汽车厂商采用的诊断通信标准,是基于K线的。由于诊断系统独立于车载CAN网络,这使得系统成本增加,内部网络变得极为复杂。为解决这个问题,2000年欧洲汽车厂商推出了一种基于CAN总线的诊断系统通信标准ISO15765,它可以满足E-BOD的系统要求。此作品采用CAN总线来对车辆进行诊断,因此ISO15765在车载智能诊断系统中运用十分广泛。随着CAN总线技术的不断革新,CAN总线技术也越来越成熟,运用越来越多。因此采用CAN总线来进行数据传输和诊断可以更广泛的适应车型的发展和需求。采用SAEJ2012是国际标准故障码的协议,使用此协议可以更好更方便的检查出大多数车型的常见故障。KWP2000是一套非常完善的车辆故障诊断协议标准,协议的分层结构使得KWP2000诊断服务并不依赖于某种特定的网络介质,其应用层可以移植到任何一种物理层和数据链层协议之上。基于CAN总线的KWP2000成为车载诊断协议的主流[3-4]。
该技术运用OBD-II诊断[5],将车辆的信息及时反馈给上位机,并将其呈献给驾驶员,其核心技术是如何运用OBD-II模块以及OBD-II的协议来实现诊断功能,然后将其收集到的信息发回给LPC1752处理器,通过协议解码数据并将数据显示。
CORTEX-M3控制模块作为核心控制部件,在UC/OSII系统下,控制存储模块、GSM的工作以用于CAN数据采集模块,主要完成对车内ECU数据采集控制命令的发送与接收,并处理获取的数据,将获取的故障码、传感器数据如胎压、发动机转速、速度、里程、油温、水温、气温、负载率等数据与GPS数据一起打包按照规定的格式通过GSM/GPRS模块发送到远程诊断服务平台,平台实时存储分析相关数据[6]。
图1 系统硬件组成框图Fig.1 Hardware architecture of System
车载故障诊断预警终端主要分为6个部分,由电源管理电路,核心控制存储电路,CAN协议转换接口电路,OBDⅡ诊断模块接口电路,LCD显示及预警和外界通信电路组成。
2.1.1 核心处理器
OBD-Ⅱ诊断使用的主芯片是LPC1752,LPC1700系列芯片采用高性能的ARM Cortex-M3 V2版本内核,工作频率最高可达100 M。采用3级流水线和哈佛结构,带独立的指令和数据以及外设总线,使得代码执行速度高达1.25 MIPS/MHz。LPC1752内置64 k字节的FLASH和16 k字节的SRAM,同时具备丰富的增强I/O端口和外设:包含6通道12位的ADC,4个通用16位定时器、电机控制PWM接口、2个I2C、2个SPI/SSP、4个 UART、1个 USB Device、1路 CAN 总线接口等。
LPC1700系列工作于-40~+85°C的温度范围,供电电压为2.4~3.6 V。同时具备低功耗的特点。使得LPC1700微控制器适合于多种应用领域:电子测量、工业控制、汽车电子、医疗和手持设备、白色家电和电机控制等。
2.1.2 电源管理电路
电源管理模块电路如图2所示。
2.1.3 OBDⅡ诊断模块协议转换接口电路
在设计接口电路时,首先考虑了以控制芯片为核心设计网络接口单元,由于需要实现网络中信号格式的转换、报文的拆解帧、差错控制等数据链路层操作,程序比较复杂,由于时间关系,本文采用了协议转换OBDⅡ诊断模块,它完成了大部分数据链路层的工作,使接口的设计变得更加简单,并以其为核心进行接口单元的设计。OBDⅡ诊断模块的最大优点莫过于支持7种标准OBD-II通信协议。
图2 电源管理模块电路Fig.2 Power management model circuit
2.1.4 CAN协议转换接口电路
由于的芯片内部集成了CAN控制器,因此只需要在外部搭配一个CAN收发器,便可以正常进行CAN报文的收发。在本设计中采用的CAN收发器是MCP2551。CAN通信接口电路图如图4所示。
在软件编写上,采用实时监控的方式,在未发送命令的时候时刻扫描车辆的基本信息。可以及时有效的返回当前汽车的状态信息,以使驾驶员做出最快的判断,帮助驾驶员安全的驾驶车辆。但由于这样占用内存量十分巨大,因此如何控制好实时扫描时间以及什么时候进行实时扫面变成了关键的问题所在。除此之外,在发送命令后,此系统将先行处理完毕当前发送的命令,并将其返回命令获取到并输出之后,才会去继续扫描未扫描完的信息。这优点是命令的处理不会再有更长的等待延迟时间,而是可以尽快的进行处理。通过显示屏显示可以更好地将信息直观的反映出来,进行信息交互,同时可以让驾驶员在行车途中实现对整个车辆更好地控制,也可以用来判断车辆的几项控制器是否出现故障或损坏。
图3 OBD-Ⅱ模块的接口电路图Fig.3 OBD-Ⅱmodel interface circuit
图4 CAN通信接口电路图Fig.4 CAN communicational interface circuit
将该系统运用于车上可以更好地利于驾驶员观察自己当前车辆的各种数据情况,使驾驶员及时发现自己车辆的问题所在,以利于驾驶员及时判断车辆的状态,达到提高安全的目的。同时驾驶员通过对车辆各项数据诊断结果的判断,可以将车辆送修,以保障车辆得到及时的安全维修,提高安全系数。实验终端通过串口调试助手实测数据如图6所示。
以上车型为丰田,从实时剪切的数据可以看出,基于Cortex-M3内核的CPU上实现了此协议,波特率为9 600,数据无乱码现象。设备成功读取了车辆的OBD-II系统数据,能实时检查汽车故障码与汽车传感器数据。数据包括发动机负荷计算值、发动机冷却液温度、发动机转速、里程、车速、温度、长期燃油修正值、气缸提前点火角度、进气岐管绝对压力、瞬时油耗、车辆装配的ODB类型、空气流量、节气门绝对位置、车辆电瓶电压、环境温度、前后左右门的开关状态、尾箱门、ACC开关、档位、TPMS/ABS/SRS和发动机的开关状态等。
图5 OBD-II主程序流程图Fig.5 OBD-II flow-process diagram
图6 车载诊断数据实时截图Fig.6 Real-time data of vehicle diagnosis information
本方案采用基于uc/os II操作系统的嵌入式技术,应用ISO15765协议设计了与汽车OBD-II接口的软硬件,同时在硬件结构基础上设计了基于嵌入式实时操作系统的OBD-II诊断协议框架,并在基于Cortex-M3内核的CPU上实现了协议机制,成功读取了车辆的OBD-II系统数据。车载诊断数据的采集是远程汽车故障诊断、驾驶员行为分析等的基础条件,本方案具备成本低、稳定、鲁棒性强、灵活可移植的优势。
[1]黄爱蓉,向郑涛,张涛,等.车辆信息实时监视系统的设计和实现[J].计算机工程与设计.2010.31(8):1839-1847.HUANG Ai-rong,XIANG Zheng-tao,ZHANG Tao,et al.Design and implementation of vehicle information real-time monitoring system[J].Computer Engineering and Design,2010,31(8):1839-1847.
[2]王建海,方茂东,高继东.汽油车车载诊断系统(OBD)基本原理及其应用[J].汽车工程,2006,5(28):491-494.WANG Jian-hai,FANG Mao-dong,GAO Ji-dong.Basic principle and application of on-board diagnostics for gasoline fuelled vehicles[J].Automotive Engineering,2010,31(8):1839-1847.
[3]张丽,方成,李建秋,等.基于ISO 15765的柴油机故障诊断接口开发[J].车用发动机,2009,4(183):16-19.ZHANG Li,FANG Cheng,LI Jian-qiu.Development of fault diagnosis interface for diesel engine based on ISO15765[J].Vehicle Engine,2009,4(183):16-19.
[4]于世涛,赵燕,王骞,等.发动机电控系统EU5+诊断系统开发[J].汽车技术,2011(12):36-39,47.YU Shi-tao,ZHAO Yan,WANG Qian,et al.EU5+diagnosis system development for engine electronic control system[J].Automobile Technology,2011(12):36-39,47.
[5]王东亮,黄开胜.汽油车OBD在用核心技术及其发展方向[J].汽车技术,2011(11):1-10 WANG Dong-liang,HUANG Kai-sheng.Core technology and development trend of on-board diagnostics system for gasoline vehicles[J].Automobile Technology,2011(11):1-10.
[6]胡杰,颜伏伍,邹斌.基于OBD系统故障模拟装置的开发与研究[J].内燃机工程,2010,31(2):6-10 HU Jie,YAN Fu-wu,ZOU Bin.Development and research of malfunction simulation device based on OBD system[J].Chinese Internal Combustion Engine Engineering,2010,31(2):6-10.