前言:从小到大,一直都没有写笔记的习惯,一直信奉某个东西只要能做出来第一次,就能做出来第二次。但是,岁月不饶人,年轻时候觉得很简单的东西,现在都要反复确认,所以就想着把自己做过的学过的东西记录下来,尤其是一些经验都记下来,方便以后查阅。本来想用笔记类的程序存下来,甚至自己买了nas将内容部署在自己的平台上,比较放心一些,后来一想,既然要写,闭门造车容易出问题,不如分享出来,大家一起讨论,一是给后来者参考,二是认识更多同道中人,从中学到更多知识。这是我的第一篇博客,也是汽车诊断系列的第一篇,既然工作始于诊断,那么就让我的文章也从这里开始吧。话不多说,以下正文开始,欢迎大家评论、指正。
UDS(Unified diagnostic services),是汽车行业唯一的诊断协议标准,有一系列的ISO标准作为参考,且在行业内应用多年。相信不管是作为汽车设计从业者,还是汽车售后从业者,都对诊断有所耳闻甚至也经常会使用。那么诊断到底是什么,我们通过这篇文章,对汽车诊断做一个整体的介绍,同时也对后续该系列的文章思路进行分享。
我们先来说说诊断是什么,诊断一词来源于医学,分为诊和断两部分,‘诊’为查看询问症状,‘断’为推断症状的起因,合起来就是根据症状来识别病人所患何病。汽车诊断也是的概念,通过一系列的检查来推断汽车哪里出现了问题,而诊断协议就是在这个过程中所使用的通信协议。
传统的汽车诊断,由于还不具备微控制器设备,因此主要问题仍然停留在机械故障以及简单的电路故障,如大灯开关坏了倒是线路不通,对于电气的诊断还停留在测量电路的阶段,而常用设备也仅仅是示波器和万用表。
而随着电气化技术的引入,现代汽车可以说是多个微控制器的集合体,一些高端汽车内的微控制器数量甚至能够达到三位数的数量级,每个微控制器内部都是一套大规模的集成电路,通过传统的设备已经无法判断故障原因,因此车辆的自诊断技术便应运而生。
汽车诊断分为两种,一种是法规强制要求的,也就是经常听到的OBD(On Board Diagnostic)诊断。主要用于在车辆运行阶段能够及时的通告故障信息,给驾驶员以警告或提示,通过仔细阅读车辆手册可以获取相关问题的解决措施,来有效避免更严重的后果。
另一种是UDS,也叫增强型诊断或者离线诊断(Off Board Diagnostic),除报告故障之外,还拥有者很多其他的功能。诊断仪通过UDS协议可以对车辆进行一系列的操作,通过查询数据或者控制变量的方法对车辆进行诊断,确认是否有问题或者发生了什么问题,从而指导维修。
OBD和UDS属于不同的应用协议,本身应用场景不同,在此不再过多解释,本系列重点介绍UDS,因此后续的诊断一词如无特殊说明均指UDS的功能。
那么诊断究竟能够在汽车里做哪些事情,能够给我们带来哪些好处,这里按照14229-1的分类先来大概列举一下,来帮助大家确认自己想了解的重点。
- 诊断和通信管理功能单元
- 处理诊断过程中的模式、状态跳转和保持,如控制会话模式
- 处理通信状态、内部存储状态、安全状态,如控制总线报文的收发
- 数据传输功能单元
- 处理对内部存储器的数据读取和写入,如读取和写入VIN信息
- 存储的数据传输功能单元
- 处理运行过程中所保存的故障和相关数据的读取和擦除
- 输入输出控制功能单元
- 处理对输入和输出引脚信号的控制,如控制车窗上升或下降
- 例程功能单元
- 处理内部功能的调用,如调用一些检查数据的机制
- 上传下载功能单元
- 处理控制器的软件更新或上传
最后来看看大家经常能够看见,而且经常会忘记的一张表格,借此也简单说一下诊断系列文章的计划。
这张表格是ISO14229-1里的第一张表格,表格的行按照ISO组织所制定的OSI(Open System Interconnection)分层结构来对车载的网络进行了划分,而表格的列呢则根据实际的网络类型进行划分,每一层每一种网络协议分别对应不同的ISO标准协议。
本系列文章的计划如下:
- 底下一层和二层即物理层和数据链路层,这两层基本上遵循各网络协议的相关ISO标准,是诊断的通信基础,但这部分不属于诊断协议的部分,且相关文章也比较多,本系列不会重点分享。
- ISO14229-4/ISO10681-2属于Flexray诊断,应用较少;ISO14229-6/ISO14230属于K线诊断,是比较古老的通信协议;ISO14229-8/ISO20794是新发布的CXPI总线,计划用来替代LIN,但目前应用也比较少见。因此本系列暂时先不计划对这三类协议进行分享,后续如果有新的动态,再进行更新。
- 最后是27145系列作为最新的OBD诊断标准,有望替代现行的OBD标准,而统一乘用车和商用车的OBD标准,因此在本系列的最后,我会尝试对OBD相关ISO标准进行解析和分享。
- 除以上所述情况,其他协议我会按照自己的习惯来逐一进行解析分享,预计优先分享14229,其次按照CAN/LIN/以太网的顺序分享传输层内容。
综上所述,后续我会按照表格从上到下,从左到右的顺序来逐个分享诊断的内容,欢迎大家关注点赞。