整车试制阶段的CAN总线故障案例分析
2023-01-06严红军
严红军
整车试制阶段的CAN总线故障案例分析
严红军
(重庆长安跨越车辆有限公司,重庆 404100)
随着控制器局域网(CAN)总线技术在汽车领域的广泛应用,解决CAN总线故障已成为汽车网络工程师的一项必备能力。文章从汽车研发的角度出发,首先阐述了处理总线故障的总体思路,然后介绍了几种常用的CAN总线诊断工具,最后从故障现象,诊断分析以及排查方法这几方面,对在实际项目工作中遇到的CAN总线故障进行了详细描述和说明。通过这些案例分享,可以为从事汽车CAN网络开发及应用的相关人员提供实践经验。
控制器局域网(CAN);诊断工具;故障现象;故障分析;排查方法;整车试制
目前汽车的电动化,网联化,智能化和共享化代表着汽车的未来发展趋势[1]。要想实现汽车的新四化,这一切都离不开汽车网络信息通信技术的发展和运用[2],其中汽车控制器局域网(Controller Area Network, CAN)总线是发展最为迅速和使用最为广泛的汽车网络通信技术。但是在实际的项目工作中,由于相关人员对CAN总线规范标准的理解不够透彻,尤其是缺乏实际维修经验或值得借鉴的经验较少,而使CAN网络系统出现故障后得不到快速解决,影响项目进度。因此,如何解决好这一问题是CAN应用中至关重要的问题。
1 CAN总线概述
CAN是一种由德国Bosch公司为汽车应用而开发的多主机局部网络,应用于汽车的监测和控制,通信介质可以是双绞线、同轴电缆或光导纤维。最初目的是解决汽车上数量众多的电子设备之间的通信问题,减少电子设备之间繁杂的信号线[3]。
CAN属于总线式串行通信网络,其数据通信具有突出的可靠性、实时性和灵活性。由于其良好的性能及独特的设计,因而得到了业界的广泛认同和运用[4],并在1993年正式成为国际标准和行业标准。
如图1所示,这是一种应用于中高端车型的网络拓扑图,动力系统和车身系统由各自独立的两个CAN总线网段构成,仪表盘(Cluster)作为网关,诊断接口(Diagnostic Link Connector, DLC)与动力系统和车身系统的CAN总线相连。
图1 某车型的网络拓扑图
2 总线故障分类
汽车CAN总线故障一般分为三大类;电源系统故障、链路故障和节点故障[5]。
2.1 电源系统故障
汽车电源系统电压超出电控模块的正常工作电压范围,引起控制器无法正常工作。由于此类故障不涉及总线系统的本质,故不做详细介绍。
2.2 链路故障
CAN总线系统通信线路短路、断路、错接、终端电阻缺失等物理层故障。一般会导致多个电控模块工作不正常,总线系统无法工作。
2.3 节点故障
节点就是CAN总线系统的电控模块,节点故障就是电控模块的软件和硬件故障。通常会造成汽车CAN总线系统通信出现混乱或无法工作。
3 总线故障处理思路
当CAN总线系统出现故障或数据传输异常时,往往会出现多种奇怪的故障现象,如组合仪表显示异常,车辆无法启动,某个电控系统功能失效等。这是因为相关的数据或信息是通过CAN总线传输的,如果传输失败,那么就会产生多种连带故障,甚至造成整个网络系统瘫痪,其中最为常见的故障症状是组合仪表的显示异常。
对于汽车CAN总线故障的分析与处理,首先应查看具体的故障症状,根据故障症状和整车网络拓扑来初步分析有可能是哪些原因造成的,然后使用相关的诊断工具进行诊断测试,根据诊断结果制订相关处理方案,做到心中有数,目标明确,接着查找具体的故障部位和原因,使用合适的排查方法,快速精准的找到故障点,从而彻底排除故障。
4 诊断工具
在汽车领域中应用最为广泛的CAN总线诊断工具有德国Vector公司和ZLG致远电子公司开发的总线设备,前者功能强大,后者性价比高。
基于Vector工具链的常用CAN总线诊断工具包括CANoe、VN1640A、PicoScope示波器等设备[6]。其中CANoe是一款上位机软件,用于CAN、局域互联网络(Local Interconnect Network,LIN)、FlexRay、汽车光纤线(Media Oriented System Transport, MOST)和以太网的开发、仿真、测试和分析。VN1640A是一款网络接口卡,共有5个D-SUB9连接器,其中CH1-CH4是用于CAN/LIN等总线设备连接并进行通信的接口,CH5为I/O接口,主要用于模拟量输入、数字量输入输出使用。PicoScope则是对CANoe功能的一个补充,是一种USB接口的CAN/LIN数字示波器,可以对总线信号的物理波形进行记录和分析。
ZLG致远电子拥有ZCANPRO、USBCAN接口卡、ZDS系列示波器等多种同类型总线产品,其中ZCANPRO是CAN/CANFD系列产品的配套软件,可进行原始数据收发、数据回放、高层协议分析等操作,可以胜任完成大部分CAN网络测试、分析的工作。
5 故障案例分析
5.1 节点CAN_L与CAN_H导线接反
故障现象:一款动力升级的轻卡试制样车批量出现组合仪表制动防抱死系统(Antilock Brake System, ABS)故障指示灯常亮,行驶时车速表不动作,使用专用诊断仪对ABS进行诊断,提示无法通信。
故障分析:根据组合仪表的功能规范得知,ABS故障指示灯亮起有两个条件,一是ABS报文0x330中故障信号ABS_Fault值为0x1(故障激活),二是ABS报文0x330丢失,组合仪表进行主动报警。结合诊断仪无法访问ABS控制器的故障现象,初步怀疑ABS故障。
排查方法:根据分析,按照图2流程对ABS总线故障进行排查。
图2 单节点总线故障排查流程
(1)读取整车CAN数据流。使用VN1640A或USBCAN接口卡连接整车车载自动诊断系统(On-Board Diagnostics, OBD)诊断接口。
(2)观察ABS报文发送情况。在CAN数据流中,未发现ABS相关报文,从而确定ABS故障灯亮的原因是节点报文丢失。
(3)采用电阻法检查线束连接,确定故障类型。测量电阻前应先关闭点火开关,等待几分钟让CAN总线上的所有节点控制器的电容完全放电。使用万用表测量ABS端的线束插头中CAN_H与OBD诊断接口引脚“6”之间的电阻值,如果ABS节点的CAN线连接正常,那么两者之间的阻值应为0欧姆,如果两者之间存在60欧姆的阻值,就表明ABS的总线接反(如图3所示),测量CAN_L同理。OBD诊断接口的引脚定义应符合ISO 15031-3的相关规定。
图3 ABS节点总线接反示意图
经测量,ABS的CAN_H与OBD诊断接口引脚“6”存在60欧姆的阻值,说明ABS的线束插头CAN_L与CAN_H导线接反,属于链路故障。
(1)根据诊断结果,分析出故障产生的具体原因。通过校核线束实物与设计图纸,确定是由于线束供应商生产工艺文件错误导致的批量问题。
(2)处理线束问题,排除故障。对换ABS线束插头中CAN_L与CAN_H导线位置后,ABS总线通信恢复正常,故障消失。
5.2 波特率不同的设备接入同一条总线
故障现象:一个柴油车项目的杂合车组合仪表转速、车速、水温、发动机故障指示灯(Malfun- ction Indicator Lamp, MIL)、ABS和电动助力转向系统(Electric Power Steering, EPS)指示灯显示异常,使用专用诊断仪分别对发动机电子控制单元(Electronic Control Unit, ECU)、ABS、EPS等系统进行诊断,全都提示通信错误。
故障分析:观察组合仪表可以发现多个系统的CAN信号显示不正常,专用诊断仪也无法进行访问,初步怀疑是链路故障导致总线Bus-Off。
排查方法:根据分析,按照图4所示流程进行总线故障排查。
(1)使用CAN接口卡读取整车CAN数据流。
(2)观察整车总线通信情况,判断故障属于链路故障还是节点故障。车辆上电后,从上位机软件中可以看到发动机节点EMS在很短的时间内发送了几帧报文,然后总线上出现大量错误帧(格式错误和填充错误),整个总线进入Bus-Off状态。从以上现象可以分析出,车辆上电后发动机ECU是第一个完成初始化并发送报文的节点,在ECU成功完成几帧报文的发送之后,干扰源才出现,造成了整个总线的Bus-Off。由此可见,前期的判断错误,该故障应属于节点故障。
图4 总线Bus-Off故障排查流程
(3)采用排除法,逐一拔掉各节点电源保险丝,直到总线通信恢复正常。根据整车网络拓扑图,列出网络系统中的全部节点,并通过整车电气原理图找到各节点电源保险丝在中央保险盒上的位置。逐一拔掉组合仪表、ABS、远程信息处理器(Telematics-BOX, TBOX)、EPS的电源保险丝,当拔掉EPS电源保险丝时,总线通信恢复了正常,且无错误帧产生。重新恢复前面被拔掉保险丝的节点,总线通信仍然保持正常,到此故障节点锁定。
(4)对故障节点进行网络测试,分析出故障产生的具体原因。拆下EPS控制器进行测试后发现,其波特率为500 kbaud,报文为标准帧格式,与柴油车总线波特率250 kbaud的设计要求不符。该故障的发生是由于EPS工程师的疏忽,把汽油车用的零件装到了柴油车上,导致波特率不同的设备接入到了同一条CAN总线上,造成整个CAN总线无法通信。
(5)更换零件总成,排除故障。
5.3 CAN控制器芯片配置错误
故障现象:一款柴油断气刹试制样车行驶时组合仪表不显示车速,CANoe读取的数据流中,ABS车速信号发送正常,且解析出的车速值也与实际车速一致。
故障分析:根据故障现象,我们首先排除了整车网络链路故障,怀疑组合仪表失效。然后对仪表进行单独测试验证,使用CANoe的Simulation Setup接口中的CAN Interactive Generator(交互式生成器)模拟仿真ABS车速报文0x18FEBF0B,观察仪表的工作情况,最后根据诊断结果验证前期的判断。
排查方法:使用CANoe模拟发出ABS车速信号,观察发现组合仪表可以正常接受并显示车速,从而否定了前期的分析判断。鉴于使用不同设备发出相同的车速报文,仪表作出了不同的回应。此类故障可以采用对比法,使用PicoScope示波器采集ABS和CANoe发出的车速报文,通过逐位对比两者的物理波形[7],我们发现ABS发出的车速报文SRR位为显性“0”(如图5所示),而CANoe模拟发出的车速报文SRR(Substitute Remote Request Bit)位为隐性“1”。
图5 ABS车速报文的SRR位
按照BOSCH CAN Specification Version 2.0协议规定,扩展帧里SRR位和IDE位都必须为隐性位“1”,用于解决标准帧与扩展帧的冲突,实现标准帧优先于扩展帧。由此可见,正是由于ABS供应商未按协议规范配置CAN控制器芯片,才导致组合仪表不接受ABS的车速信号。
6 结语
随着汽车新四化的发展,汽车网络系统越来越复杂,疑难杂症也逐渐增多,对于汽车CAN总线系统的诊断维修也越发重要。本文以整车试制阶段的CAN总线故障为例,对其进行了详细的诊断分析以及排查方法讲解。希望能对从事汽车CAN网络开发及应用的相关人员提供有益的思路和参考。
[1] 罗先进.“新四化”背景下汽车服务与营销专业建设研究[J].学理论,2019(6):146-147.
[2] 吴晨晓.汽车网络通信总线现状及发展[J].汽车实用技术,2019,44(2):203-204.
[3] 牛跃听,周立功,王彬,等.CAN总线应用层协议J1939轻松入门[M].北京:北京航空航天大学出版社,2021.
[4] 季丽华.CAN总线技术在汽车电控系统中的应用及检测分析[J].电子世界,2021(18):178-179.
[5] 何莹.浅析高速CAN总线系统故障诊断[J].汽车维修,2020(3):14-16.
[6] 董庆大,杜威,吴明瞭,等.一种基于VECTOR CAN工具的整车CAN总线故障正向诊断方法[J].汽车电器, 2021(3):35-38.
[7] 甘守武,陈志军,张传华.CAN通信总线故障诊断方法与实例应用[J].公路与汽运,2019(1):13-16.
CAN Bus Fault Case Analysis in Vehicle Trial Production Stage
YAN Hongjun
( Chongqing Chang’an Kuayue Automobile Company Limited, Chongqing 404100, China )
With the wide application of controller area network(CAN) bus technology in automotive field, solving CAN bus fault has become a necessary ability for automotive network engineers.From the perspective of automobile research and development, this paper first expounds the general idea of dealing with bus faults, then introduces several common CAN bus diagnostic tools, and finally describes the CAN bus faults encountered by the author in the actual project work in detail from the aspects of fault phenomena, diagnosis analysis and troubleshooting methods.It is hoped that the sharing of these cases can provide some practical experience and help for relevant personnel engaged in the development and application of automotive CAN network.
Controller area network(CAN);Diagnostic tools;Fault phenomenon;Fault analysis;Troubleshooting methods;Vchicle trial production
U472
B
1671-7988(2022)24-200-05
U472
B
1671-7988(2022)24-200-05
10.16638/j.cnki.1671-7988.2022.024.037
严红军(1986—),男,工程师,研究方向为车载网络技术,E-mail:289243218@qq.com。