汽车CAN总线系统故障诊断技术浅析
CAN ( Controller Area Network) 总线作为一种可靠的汽车计算机网络总线已经在许多汽车上得到应用,汽车计算机控制单元之间能够通过CAN总线共享所有信息和资源,达到简化布线、减少传感器数量、避免控制功能重复、提高系统可靠性、降低成本、更好地匹配和协调各个控制系统的目的.
随着这个能将整个汽车控制系统联系起来统一管理,实现数据共享和相互之间协同工作的汽车CAN 总线系统的广泛应用,CAN 总线系统的故障诊断技术已经成为现代汽车维修技术人员必备的知识,作为现代汽车维修技术人员,必须掌握总线的结构与控制原理,与此同时还必须理解总线网络知识,才能排除汽车上的各种疑难杂症.随着汽车市场的迅猛发展,高效地培养成合格的汽修人才已成了政府职能部门和汽修院校十分关心并积极探索的一个重要课题.高职院校根据企业用人的需求,构建符合企业生产实际要求的实训场所,提高学生实践能力.使学生在进入社会后发挥出自己的职业技能优势.
汽车CAN 总线故障诊断包含了“诊”和“断”两个环节,汽车CAN 总线故障诊断过程就是由维修技术人员从汽车的故障现象出发,熟练应用各种检测设备对汽车进行全面综合的检测,完成“诊”的环节,再对故障部位和原因作出确切的判断,完成“断”的环节.
1 汽车CAN 总线系统常见故障现象
汽车CAN 总线系统发生故障时,有三种故障现象:整个网络失效或多个控制单元不工作或工作不正常.在不同的系统、不同的地方同时表现出不同的多个故障,且故障现象之间没有任何关联.个别控制单元或多个控制单元在接上专用诊断仪后无法与诊断仪通信.
当汽车总线出现故障或数据传输异常时,会出现多种奇怪的故障现象,如车辆无法起动,起动后无法熄火,仪表板显示异常,某些电控系统功能失效,蓄电池漏电等.最为常见的的故障症状是的仪表板显示异常.
2 汽车CAN 总线系统的故障分类
2.1 汽车电源系统引起的故障
汽车多路信息传输系统的核心部分是含有通信IC 芯片的电控ECU,电控ECU 工作电压在10.5~15.0 V 的范围内.如果汽车电源系统提供的工作电压低于该值,则一些对工作电压敏感的电控ECU 出现短暂的停止工作,从而使整个汽车多路系统出现短暂的无法通讯.
2.2 链路故障
当车载CAN 总线系统的链路出现故障,如通信线路的短路、断路以及线路物理性质变化引起的通信信号衰减或失真时,都会引起多个电控单元无法工作或电控系统错误动作而使控制器区域网无法正常工作.
2.3 节点故障
节点是车载CAN 总线系统的电控模块,节点故障就是电控模块ECM 的故障.它包括软件故障即传输协议或软件程序有缺陷或冲突,从而使汽车控制器区域网通信出现混乱或无法工作,这种故障一般成批出现,且无法维修.硬件故障一般由于芯片或集成电路故障,造成汽车控制器区域网无法正常工作.对于采用低版本信息的传输协议,即点到点信息传输协议的汽车控制器区域网,如果有节点故障,将出现整个汽车控制器区域网信息传输无法工作.
3 汽车CAN 总线系统常见故障检修方法
与汽车检测相比,汽车故障诊断中的第一环节“诊”应该比汽车检测的内容更深入一些,它不是一个单纯的“检测”过程,而是一个综合的“测试”过程. 测试包括参数检测和性能试验两个部分.
CAN 总线系统的独特性决定其故障检修没有普遍适用的测量或检测方法,必须具体情况具体分析.在检修过程中,根据故障症状和网络结构图来初步分析有可能是哪些原因造成的,然后使用相关的诊断仪进行诊断,根据诊断结果制定相关检修方案.常用的检修方法有:
3.1 自诊断和数据流
CAN 网络有一定的自我诊断功能,分为主动错误、被动错误、总线关闭三种错误类型. 一般来说,当CAN 总线关闭或无法收到相关数据时,控制模块通常会产生故障码.而当控制模块自身通信不良但无法自行检测出来时,就不会产生故障码,但其他控制模块有可能产生通信故障码.还有一种情况,就是控制模块无法发送某些数据,但可以正常接收CAN 总线数据,而且能够判断自身出现问题,于是产生故障码,而其他控制模块无法识别到传输故障.
故障码的诊断要结合网络传输特点和不同控制模块之间的故障码连带关系进行逻辑分析,同时结合数据流的相关信息来判断哪个控制模块有故障.
与一般电控系统数据分析一样,只是网络系统故障也会造成相关数据发生变化.
3.2 CAN 总线的电压测量法
由于CAN 网络采用多种协议,每个控制模块的端口在正常的情况下都要标准电压,因此电压测量法可用于判断线路是否有对地或电源短路、相线间短路等问题.
3.3 CAN 总线的终端电阻检测法
车系不同,终端电阻故障的表现形式也有所不同.当终端电阻短路时,CAN H 和CAN L 的两条导线短接在一起,会导致CAN 数据传输失败.而对于终端电阻断路问题,则会有不同的故障表现形式.有的车系会导致CAN 通信失败,有的车系则不会有明显的影响,车辆基本能够正常使用.
3.4 CAN 总线的控制模块替换法
逐一断开CAN 网络中的控制模块,观察CAN网络的通信状况,若通信恢复正常,则说明故障是被断开的控制模块损坏.
3.5 故障波形诊断法
通过测试CAN 总线物理层信号来确诊CAN总线的故障.故障波形诊断法是判断CAN 数据导线故障的主要手段,CAN 故障信息通常被存储在故障码存储器中,然而故障记录仅在个别情况下允许简单的诊断.绝大多数时候必须进行详细的检查.通过示波器以波形图的形式,检查CAN-H( CAN-High) 与CAN-L( CAN-Low) 的工作情况.通过示波器显示CAN 数据导线的波形情况,从而导出CAN 数据导线的故障情况.按系统可能的故障来源分类,国际标准化组织( ISO) 编制出了CAN数据导线故障列表.下面简单列举出通过示波器检测到CAN 两种工作情况的波形图,以供参考.图1 所示为驱动CAN 正常波形,图2 所示为驱动CAN-H 与CAN-L 短路波形.
图1 驱动CAN 总线的正常波形图
图2 驱动CAN-H 与CAN-L 短路波形图
3.6 控制器匹配及自适应调整
控制器匹配,自适应调整是汽车维修服务过程中常见的服务项目. 在采用CAN 控制的汽车上,许多车型更换控制模块后不能马上工作,还要对电脑进行编码、还要对控制器或执行器做自适应匹配等操作才能正常工作.
4 CAN 总线的故障诊断步骤
对于多路信息传输系统的故障诊断,一般采用以下步骤进行:
第一步: 了解故障车型的车载CAN 总线系统的特点和功能.如有无唤醒功能、休眠功能等.
第二步: 检测汽车电源系统是否存在故障,如交流发电机的输出波形是否正常( 若不正常将导致信号干扰等故障) 等.
第三步: 检测车载CAN 总线系统的链路是否存在故障.
第四步: 检查节点.如果是节点故障,只能采用替换法进行检测.
5 故障实例分析
5.1 故障实例一
一辆2009 款海马S7,车主反映车辆停几天不用后就无法启动,外接蓄电池后起动正常,车主已经更换了新的蓄电池,并且确认停放车辆时关闭了所有可能引起放电的用电设备.
首先检测了蓄电池的技术状况,蓄电池亏电,给蓄电池充电,接下来锁上车门后等待5 min,断开蓄电池负极测量车辆的静态放电量,测得电流为180 mA,S7 车型的正常静态放电电流是10 ~20 mA,用断开熔断丝的方法检查漏电处,当断开ROOM 熔断丝后静态放电电流下降到40 mA 左右,查看电路图,发现ROOM 熔断丝控制的用电设备较多.逐一断开各用电设备,当断开仪表连接线后,发现静态放电电流马上下降到40 mA 左右,更换了一块新仪表总成,故障依旧,至此,初步怀疑仪表本身无故障,而可能是仪表不能进入休眠状态.
继续查阅仪表电路图,将能够影响仪表休眠的因为做了分析,最终怀疑可能是CAN 网络原因造成仪表不能进入休眠状态.打开点火开关,从诊断插座上测量故障车CAN 总线电压,CAN-H 电压为2.62 V,CAN-L 电压为2.43 V,都正常. 关闭点火开关并锁上车门后,CAN-H 和CAN-L 电压都为2 V 左右,始终不能降到0 V,由此断定该故障车是由于CAN 不能进入休眠状态而导致车辆蓄电池漏电故障.
再次查阅资料,总结出S7 的CAN 网络图,如图3 所示,根据S7 的CAN 网络图分析,初步判断可能是CAN 网络中某个控制模块故障所致,接着断开蓄电池连接线,测量两条CAN 线对地电阻,阻值为3.6 KΩ,正常,但CAN-H 线与CAN-L 线之间电阻阻值却为40Ω 左右,正常车应为60Ω 左右,分析可能是终端电阻有故障.资料显示S7 的两个终端电阻分别在发动机控制模块ECU 与车身稳定系统ESP 中,如图3 所示.
图3 S7 的CAN 网络图
断开ESP 控制模块插头,测量诊断座上两根CAN 线间电阻,为60Ω 左右,正常值应为120Ω左右.装回ESP 控制模块插头,再断开ECU 控制模块插头进行测量,电阻也为60Ω 左右,正常值应为120Ω 左右,测量结果说明在ESP 与ECU 控制模块中确实有两个终端电阻,但测量结果显示好像此车有3 个终端电阻,3个120Ω 的终端电阻并联,刚好符合40Ω 的测量结果. 逐一断开各个控制模块,查找另一个终端电阻的位置. 当断开CD 后阻值恢复正常值,测量CD 上两根CAN 线针脚间的电阻,为120Ω 左右,而正常的CD 内部是不带终端电阻的,断开CD 机插接线后,锁门等待5 min 后,测量整车静态放电电流为10 mA 左右,测量值在正常范围内,更换CD 机后,故障排除.终端电阻的基本功能是阻止信号的反向波,因为反向波叠加在有效信号上,会造成信号失真,破坏CAN 总线数据.而数量不正确的终端电阻却会造成整个CAN 无法进入休眠状态,而且该车型的CAN 电压并不能体现多了个终端电阻的变化,诊断仪也能正常与各个控制模块正常通信,控制模块也无相关故障代码的存储.如果不测量两根CAN 线间的电阻,就无法发现故障原因,在判断CAN 总线故障时,电压、电阻都要测量,在测量电阻时一定要断开蓄电池连接线.
5.2 故障实例二
一辆2004 帕萨特B5 1.8T 轿车,行驶110 000km,出现发动机起动2 min 秒钟后就自动熄火故障.
该故障现象很象防盗报警系统起动了,但是防盗报警灯却始终没有点亮,连接诊断仪,无法重新对防盗系统进行匹配,在发动机控制单元能读到2 个故障码,分别是18056 表示动力系统数据总线通讯失败,17978 表示发动机控制单元被防盗控制单元闭锁.在中央仪表控制单元和网关控制器内也存有01312 号故障码,表示动力系统数据总线有故障或有缺陷.
由于发动机不能起动运行,因此也无法对动态数据流进行分析,根据读取故障码分析,该故障应属于CAN 总线系统链路故障. 帕萨特B5 1.8T轿车的防盗控制器便安装在仪表总成内,若仪表控制单元与发动机电控单元因链路中断而不能通讯,就会发生“发动机控制单元被防盗控制单元闭锁”的故障,发动机也不能起动运行.因此应当重点检查仪表控制单元到发动机控制单元的网络通讯链路.电路图如图4 所示.
图4 帕萨特B5 1.8T 仪表控制单元电路图
电路图中圈内所示为仪表控制单元J285 与发动机控制单元J220 相连的双绞线,是一组橙黑和橙棕的双绞线,分别连接到仪表控制单元的T32b /19 和T32b /20,与发动机控制单元的T121 /60 和T121 /58 相连. 用示波器测得CAN-H 及CAN-L 波形,如图5 所示.
图5 测得的CAN-H 及CAN-L 波形图
从波形图可以看出,CAN-H 电压值不到0.5 V,CAN-L 电压值为0 V 左右,正常情况下,当CAN总线唤醒后,CAN-H 对地电压约为2.65 V.检测结果说明CAN-H 导线发生对地断路故障,也就是仪表控制单元J285 与发动机控制单元的CAN-H 线出现对地断路故障.
沿着仪表连接线束向下查找,发现发动机仓与驾驶仓的连接防火墙线孔处,CAN-H 线表皮有磨损并与车身搭铁.修复磨损的导线,清除所有控制器内存储的故障代码,再次读取故障码,所有故障码都不再出现,发动机也能够正常起动了,故障排除.
6 结论
CAN 总线技术作为一种可靠的汽车计算机网络总线,必将在汽车自动控制技术中得到越来越广泛的应用.作为一名汽车维修技术人员,只有深入理解CAN 总线技术的结构组成、工作原理、技术特点、故障特点及检修检测方法,并在实际工作中不断总结与探索,才能快速、准确地排除采用车载CAN 总线技术的汽车故障.