4. CAN通讯排查:CAN总线波形分析、终端电阻测量、节点通讯测试
好,咱们进入第四讲。EPS转向电机跟ECU之间怎么说话?靠的就是CAN总线。我见过太多人,一上来就怀疑电机坏了,结果查了半天,是CAN通讯断了。说白了,CAN线就是系统的“神经”,神经断了,肌肉再强也动不了。
这一节,我带你走一遍CAN通讯排查的三个核心动作:看波形、量电阻、测节点。这三板斧下去,90%的通讯问题都能定位。
4.1 CAN总线波形分析——用眼睛“听”数据
我个人习惯,排查通讯问题,第一件事就是上示波器。别急着读故障码,先看看CAN_H和CAN_L的波形长什么样。
4.1.1 正常波形长啥样?
正常的CAN总线,在通讯时,CAN_H和CAN_L是一对差分信号。你想想看,它们俩的电压是反着来的:
- 显性位(逻辑0):CAN_H拉到3.5V左右,CAN_L拉到1.5V左右,差分电压约2V。
- 隐性位(逻辑1):CAN_H和CAN_L都回到2.5V,差分电压接近0V。
用示波器看,波形应该方方正正,边沿陡峭。我在项目中遇到过一台车,EPS偶尔报“通讯丢失”,波形一看,边沿圆滚滚的,像被磨平了一样。这就是典型的信号反射或总线负载过重。
关键检查点:
- CAN_H隐性电压:2.5V ± 0.2V
- CAN_L隐性电压:2.5V ± 0.2V
- 显性差分电压:1.5V ~ 2.5V
- 波形边沿:干净、陡峭,无回勾
4.1.2 异常波形怎么判?
我总结了几种常见“病态波形”,你对照着看:
| 波形特征 | 可能原因 | 我的处理建议 |
|---|---|---|
| CAN_H电压被拉低到2V以下 | CAN_H对地短路,或某个节点故障 | 断开所有节点,逐段排查 |
| CAN_L电压被拉到3V以上 | CAN_L对电源短路 | 检查线束绝缘层,尤其转弯处 |
| 波形幅值只有1V左右 | 终端电阻缺失或并联过多 | 立刻测量终端电阻 |
| 波形上有明显毛刺 | 电磁干扰或接地不良 | 检查屏蔽层接地,加磁环 |
| 波形“趴着”不动,无跳变 | 总线静默,无节点发送数据 | 检查节点供电和唤醒信号 |
我的小技巧: 用示波器的“余晖”模式看波形。正常通讯时,波形会叠成一条粗亮的“带子”。如果带子忽明忽暗,说明通讯时断时续——这往往是接触不良。
4.2 终端电阻测量——CAN总线的“终结者”
嗯,这里要注意。CAN总线两端必须各有一个120Ω的终端电阻。为什么?因为要消除信号反射。没有它,波形就会像山谷里的回声一样乱跳。
4.2.1 怎么测?
关掉整车电源,用万用表电阻档,直接在CAN_H和CAN_L之间测量。记住:
- 正常值:60Ω(两个120Ω并联的结果)
- 如果测到120Ω:只有一个终端电阻,另一个丢了或没接
- 如果测到40Ω或更低:并联了太多电阻,或者有节点内部电阻异常
- 如果测到无穷大:总线断路,或者两个电阻都丢了
警告: 我曾经遇到一个案例,测出来正好60Ω,但通讯就是不稳定。后来发现,一个电阻在ECU内部,另一个在电机控制器内部,但电机控制器的电阻焊点虚焊了——冷车时接触,热车后断开。所以,测量完电阻后,最好再用手扭一扭线束接头,看阻值是否跳动。
4.2.2 终端电阻位置
EPS系统中,终端电阻通常位于:
- ECU内部:一般集成在CAN收发器旁边
- 电机控制器内部:部分设计会放在这里
- 线束上的独立电阻:老车型常见,现在少了
你想想看,如果ECU和电机控制器离得很近,那终端电阻就在它们俩内部。如果中间还有别的节点(比如网关),那就要确认总线拓扑了。
4.3 节点通讯测试——谁在“装死”?
波形和电阻都正常,但EPS还是没反应?那就要查节点了。说白了,就是看看每个CAN节点有没有在“说话”。
4.3.1 用CAN分析仪抓包
我个人习惯用CANalyzer或PCAN这类工具。接上OBD口或直接并到CAN线上,然后:
- 看ID:EPS相关的CAN ID一般在0x100~0x500之间(具体看整车厂定义)。
- 看周期:正常EPS会周期性发送状态报文,比如10ms或20ms一次。如果某个ID突然消失,那就是节点“掉线”了。
- 看数据:比如转向扭矩、电机角度等信号,数值是否在合理范围。
实战案例: 有一次,一辆车报“EPS无响应”。我抓包一看,EPS的ID还在发,但数据全是0xFF。这说明节点硬件还在工作,但传感器或软件挂了。后来查出来是角度传感器供电保险丝烧了。
4.3.2 节点“静默”排查步骤
如果某个节点完全不发报文,按这个顺序查:
- 第一步:供电 量节点电源引脚,有没有12V或5V?地线通不通?
- 第二步:唤醒 很多EPS节点需要CAN唤醒信号。用示波器看CAN总线有没有唤醒脉冲。
- 第三步:晶振 节点内部的MCU晶振起振了吗?用示波器探头点一下晶振脚,应该有正弦波。
- 第四步:收发器 CAN收发器的TXD/RXD引脚有没有波形?如果TXD有波形但CAN_H/L没反应,收发器坏了。
避坑指南: 我曾经遇到过,CAN收发器的STB(待机)引脚被拉高了,导致收发器一直处于睡眠模式。查了整整一天才发现是软件初始化顺序的问题。所以,别只盯着硬件,软件配置也要看。
4.4 知识体系总览
下面这张图,是我梳理的CAN通讯排查逻辑。你照着这个顺序走,基本不会漏。
好了,CAN通讯排查就讲到这里。记住,波形是“症状”,电阻是“体质”,节点是“病因”。三者结合,没有查不出的通讯故障。下次你遇到EPS没反应,别急着换件,先拿出示波器和万用表,按这个流程走一遍。
公众号:蓝海资料掘金营,微信deep3321