4、CAN网络设计:终端电阻匹配、总线长度与波特率关系、节点数量限制、线束设计要点

好,咱们进入CAN网络设计的核心环节。这部分内容,说白了就是决定你的CAN网络能不能稳定工作的关键。我见过太多项目,原理图画得漂漂亮亮,一上车实测就各种丢帧、错误帧,最后查下来,基本都是这几个基础参数没搞对。

4.1 终端电阻匹配:为什么是120Ω?

终端电阻,这是CAN网络里最容易被忽视,但又最重要的元件。为什么非要120Ω?

其实道理很简单。CAN总线用的是差分信号,两根线(CAN_H和CAN_L)需要有一个确定的阻抗环境。标准规定,CAN总线的特征阻抗是120Ω。我们在总线两端各挂一个120Ω电阻,并联起来就是60Ω。这个60Ω,就是CAN收发器正常工作时需要的负载阻抗。

关键点:终端电阻必须放在总线的物理两端,而不是任意位置。我见过有人把两个电阻都放在同一个节点上,结果总线信号反射得一塌糊涂。

我在项目中遇到过一件事。有个同事调试CAN网络,发现波特率一提高就出错。查了半天,发现他只在控制器端放了一个120Ω电阻,另一端没放。加上之后,问题立刻解决。嗯,这就是典型的阻抗不匹配导致的信号反射。

我的习惯:设计PCB时,我会在CAN收发器的CAN_H和CAN_L之间预留两个120Ω电阻的位置。一个放在板子入口,另一个留作备用。调试时可以根据实际网络拓扑决定是否焊接。

4.2 总线长度与波特率的关系

这个关系,说白了就是:总线越长,波特率就得越低。为什么会这样?

CAN总线是事件触发的,节点发送数据时,需要检测总线是否空闲。如果总线太长,信号传输就有延迟。波特率越高,一个位的时间就越短。当延迟时间接近或超过位时间的一半时,仲裁和应答机制就会出问题。

标准给出的参考关系是这样的:

总线长度(m) 最大波特率(kbps) 典型应用场景
≤ 40 1000(1Mbps) 车内动力总成、短距离高速通信
≤ 100 500 车身控制、舒适系统
≤ 250 250 工业控制、较长距离通信
≤ 500 125 楼宇自动化、远距离监控
≤ 1000 50 特殊长距离应用

你想想看,如果非要在1000米的总线上跑1Mbps,那基本就是自找麻烦。信号还没传到另一端,下一个位就已经发出去了,仲裁机制直接失效。

避坑指南:我曾经在一个项目中,为了省成本,用了一根很长的非屏蔽双绞线做CAN总线,长度大概200米,波特率设成了500kbps。结果就是,总线错误率高达30%,根本没法用。后来老老实实降到125kbps,问题才解决。所以,不要挑战物理极限

4.3 节点数量限制

一个CAN总线能挂多少个节点?标准答案是:理论上最多110个,实际上建议不超过32个

为什么会有这个限制?主要有两个原因:

  • 驱动能力:每个CAN收发器都有一定的输出电流能力。节点越多,总负载就越重,信号电平会被拉低。
  • 总线电容:每个节点都会给总线增加一定的电容。节点多了,总线电容变大,信号边沿变缓,影响通信质量。

我个人的经验是,在车载网络中,一个CAN网段挂20-30个节点是比较舒服的。超过40个,就要开始考虑用CAN网关或者CAN FD来分流了。

一个小技巧:如果你不确定当前网络能挂多少节点,可以用示波器看CAN_H和CAN_L的差分信号。如果显性电平(Dominant)的幅值低于1.5V,说明负载太重了,需要减少节点或者增加中继器。

4.4 线束设计要点

线束设计,说白了就是怎么把线走好。这部分看着简单,但坑最多。

第一,线缆类型。CAN总线必须用双绞线,而且最好是屏蔽双绞线。绞距越密,抗干扰能力越强。我一般推荐使用120Ω特征阻抗的专用CAN电缆,比如德驰、泰科这些品牌都有对应的产品。

第二,分支长度。这是个大坑。CAN总线是直线拓扑,每个节点通过短分支连接到主干线上。这个分支长度,绝对不能太长

  • 波特率1Mbps时,分支长度建议不超过0.3米
  • 波特率500kbps时,分支长度建议不超过1米
  • 波特率125kbps时,分支长度建议不超过5米

为什么?因为分支相当于一个短截线,会产生信号反射。分支越长,反射越严重。

我曾经在一个项目中,为了布线方便,把一个节点的CAN线拉了3米长,结果那个节点总是间歇性离线。后来把分支缩短到0.5米,问题消失。嗯,从此我对分支长度有了敬畏之心。

第三,接地处理。CAN总线需要共地。所有节点的GND必须连接在一起,否则共模电压会漂移,导致通信失败。我习惯在CAN线旁边走一根GND线,或者使用带屏蔽层的电缆,屏蔽层单端接地。

第四,远离干扰源。CAN线不要和电源线、电机线、点火线等强干扰源平行走线。如果必须交叉,尽量垂直交叉。我在一个项目中,CAN线和电机驱动线绑在一起走了2米,结果CAN通信完全瘫痪。后来分开走线,世界清净了。

最后,给你一个线束设计的检查清单:

  1. 线缆类型:双绞线,特征阻抗120Ω
  2. 终端电阻:两端各一个120Ω,精确匹配
  3. 分支长度:控制在0.3米以内(高速应用)
  4. 接地:所有节点共地,屏蔽层单端接地
  5. 布线:远离强干扰源,垂直交叉
  6. 节点数量:建议不超过32个

把这些要点落实了,你的CAN网络基本就稳了。下一章,咱们聊聊CAN FD和车载以太网的混合组网,那又是另一番天地。