基于OBD接口和Android平台的重型汽车车载诊断系统

2019-06-05 01:42张志鹏陈博凯杜浪东马全海
汽车实用技术 2019年10期
关键词:诊断系统诊断仪车载

张志鹏,陈博凯,杜浪东,马全海



基于OBD接口和Android平台的重型汽车车载诊断系统

张志鹏,陈博凯,杜浪东,马全海

(陕西重型汽车有限公司,陕西 西安 710200)

随着物流行业的发展,重型汽车的需求量不断增长。对重型汽车运行状态的诊断也显得尤为重要。文章利用OBD接口,基于Android平台,对数据进行分析,诊断车辆故障。为车辆的维护工作,提供有利的保障。

Android;诊断;CAN;OBD接口

前言

基于OBD接口和Android平台的重型汽车车载诊断系统是目前主流车厂打造自身产品生态圈的重要一部分,更是车联网平台,大数据挖掘用户需求的重要一环。

常规诊断仪体积大、价格昂贵,通用性差,且不宜长时间连接在总线上,本诊断工具旨在通过市场上通用的OBD诊断仪,将车辆CAN总线上的数据发送至手机APP,通过APP对CAN数据的解析,提供故障诊断、车辆状态信息。手机体积小,又能随时观察车辆状态,利于排除异常,提高车辆使用寿命。

该诊断系统还能对自主开发的控制器进行应用程序更新。在线获取加密程序文件(hex文件加密),在手机中解密并通过WiFi将数据发送到CAN总线,通过Bootloader协议下载程序,完成程序功能的更新。

1 系统的分析与设计

该系统的整体架构由重型汽车,OBD诊断仪,Android智能手机3大部分组成,各部分之间的逻辑关系如图1所示。

OBD诊断仪直接通过车辆的16针诊断接头安装在汽车上,手机APP就可以通过WIFI与OBD诊断仪建立WIFI通道,从而与车辆进行数据通信。手机APP通过对接收到的数据进行分析和处理,从而获得相应的参数信息,并同时在手机端进行实时显示。

图1 系统各部分逻辑关系

1.1 系统的主要功能设计

考虑到系统实时性好,实用性强,运行流畅的设计原则,本系统由重型汽车,OBD诊断仪,Android智能手机三部分组成,如下图所示。

图2 系统组成图

主要功能点如下:

(1)数据检测功能:显示发动机,变速器,车身模块等的关键信息。

(2)故障诊断功能:显示发动机,变速器,车身模块等的故障信息。

(3)虚拟仪表功能:显示发动机转速,车速,里程等关键数据。

(4)AD检测功能:显示车身模块的故障数据触发阈值。

(5)辅助工具功能:计算百米脉冲,以及对发动机,ABS的故障闪码查询和对整车电控系统的故障码查询。

(6)数据标定功能:修改标定信息,权限解锁等。

(7)胎压检测功能:对胎压充放系统进行检测。

(8)数据流导出功能:对CAN总线上的数据进行记录导出功能。

(9)模块仪表数据在线更新功能:对相应程序升级换代。

(10)维修保养手册功能:当车辆出现故障,可自动定位到相应维修结点,指导维修保养。

2 系统实现

为实现本文所述系统及功能,开发了一款基于Android移动终端软件,并在Android6.0系统的手机上进行测试。Android端显示的数据是OBD诊断仪通过WIFI传过来的,点击界面上的连接WIFI按钮对周围可连接的设备进行扫描,并选择进行连接。

后台逻辑的搭建主要用到了Service后台和Activity活动。

(1)Service是运行在后台且不和用户交互的组件。每个Service必须在manifest中通过来声明。Service主要有两种模式:Local Service和Remote Service。Local Service主要依附在Activity的主线程上,调用起来比较方便,随着主线程的kill而销毁。Remote Service为独立的进程,不会随着Activity的主线程的kill而被销毁,调用起来比较麻烦。Service的调用方法分为:startService,bindSer -vice。startService和bindService 同时使用,每种方法启动Service之后都有对应的停止服务的方法。

(2)Activity对用户来说即是一个交互的界面,多个activity之间可以通过Intent通信,每个Activity必须在manifest中通过来声明。开发的过程中必须要注意activity的生命周期。

(3)该系统采用MVC的架构,把基于OBD接口和Android平台的重型汽车车载诊断系统分为了VIEW,MODEL,CONTROL三层,如下图所示。

图3 系统结构图

(4)VIEW层:该层是距离用户最近的一层,用于显示解析CAN报文的处理结果,提供用户和系统连接的纽带。

(5)MODEL层:该层采用特有的面向对象接口编程,根据程序的需求自己创建对象,为开发人员节省了大量的工作,实现低耦合的特点。

(6)CONTROL层:通过对sqlite进行轻量化的对象封装,开发人员使用面向对象思想来对sqlite数据库进行操作,简化对sqlite数据库的操作。

3 系统业务的应用

3.1 业务运行

本系统按照上述设计,针对重型汽车车载诊断的需求,搭建汽车,OBD诊断仪,Android智能手机组成的诊断系统,进行开发。目前,基于OBD接口和Android平台的重型汽车车载诊断系统经过大量的测试和调试,已经成功实现业务运行。

3.2 功能展示

基于OBD接口和Android平台的重型汽车车载诊断系统,在Android端实时采集和显示重型汽车的运行数据。通过实时诊断,随时监测汽车的状况,可以及时发现出现故障的部件并给出维修建议。从而确保了乘客和车辆的安全,降低了维修成本。

(1)Android端车辆数据显示模块展示:该模块的作用在于以列表的界面来直观的显示车辆运行过程中的实时信息,实时行车数据流中带有实时车速,发动机油温,变速器输出轴转速,发动机故障码等实时行车数据,如下图所示。

图4 数据显示效果图

图5 数据标定效果图

(2)Android端车辆数据标定模块展示:该模块的作用在于方便计算行车百米脉冲数,并通过WIFI发送标定值。如图5所示。

(3)Android端车辆自主控制器程序更新模块展示:该模块的作用在于手机中解析hex二进制文件并通过OBD诊断仪将解析后的数据发送到CAN总线,通过Bootloader协议下载程序,完成程序功能的更新,如下图所示。

图6 程序更新效果图

4 结论

基于OBD接口和Android平台的重型汽车车载诊断系统不仅能对汽车行驶的实时数据通过OBD诊断仪与汽车通信进行数据采集,而且能对采集到的实时数据在Android端进行实时高效的显示,通过实时诊断,随时监测汽车的状况,可以及时发现出现故障的部件并给出维修建议。从而确保了乘客和车辆的安全,降低了维修成本。对于主流车厂打造自身产品生态圈,车联网平台,和大数据挖掘用户需求有着重要意义。

[1] 张怀坤,苑红晓.汽车故障远程诊断系统的设计和研究[C].全国测控、计量、仪器仪表学术年会,2010.

[2] 胡杰,盛祥政,李洪飞,等.基于智能手机的汽车故障诊断系统研究与开发[J].汽车技术,2011(9):4-10.

[3] 曾锐利,肖云魁,周建新等.汽车远程故障诊断与维修系统研究[J].电子测量技术,2009,32(7):129-131.

[4] 鲍健.汽车故障诊断技术的现状与发展趋势[J].科技资讯,2012, 29(5):110-111.

Heavy Vehicle In-Vehicle Diagnosis System Based on OBD Interface and Android Platform

Zhang Zhipeng, Cheng Bokai, Du Langdong, Ma Quanhai

( Shaanxi Heavy Duty Automobile Co. Ltd, Shaanxi Xi'an 710200 )

With the development of the logistics industry, the demand for heavy-duty vehicles continues to grow. The diagnosis of the operating status of heavy-duty vehicles is also particularly important. The article uses the OBD interface to analyze data and diagnose vehicle faults based on the Android platform. It can provide a favorable guarantee for the mainte -nance work of the vehicle.

Android; Diagnosis; CAN; OBD interface

10.16638/j.cnki.1671-7988.2019.10.060

U472

A

1671-7988(2019)10-176-03

U472

A

1671-7988(2019)10-176-03

张志鹏(1990-),男,工程师,就职于陕西重型汽车有限公司汽车工程研究院军品研究所,从事于军用车辆产品设计开发相关研究工作。

猜你喜欢
诊断系统诊断仪车载
某车载提神香氛功效验证及应用
一种车载可折叠宿营住房
医用超声诊断仪超声源计量检定问题分析
日立EUB 8500E彩色超声诊断仪的维修与升级
迈腾B8轿车启动防盗系统故障分析
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
汽车故障的综合诊断方法
SA2型76毫米车载高炮多视图
基于故障树分析的液压挖掘机的故障诊断探索
断路器检测系统与诊断系统研究