1. 车载CAN总线拓扑结构
2. 高速CAN
3. 低速容错CAN
4. 高速CAN和低速容错CAN的区别
01车载CAN总线拓扑结构
从图中可以看出,CAN总线通信需要CPU CAN控制器 CAN收发器参与。从CAN收发器引出两根线CAN_H CAN_L,所有节点都挂接到这两根线上,就形成了CAN的网络结构。图中有两路CAN总线,带有终端电阻120Ω的是高速CAN,没有带终端120Ω的低速容错CAN。
02高速CAN
- 电路设计
- 高速CAN总线速率:一般是500KBps - 1MBps
- 高速CAN总线的总线设计如图所示,当前汽车领域用的最多的是CAN控制器集成到MCU中,使用外置CAN收发器,也就是图中右边这种设计。
- 总线电压
CAN总线信号由CAN_H CAN_L两根线的差分信号,也就是通过CAN_H和CAN_L的电压差来决定0 1信号。总线规定隐形电平为信号1 显性电平为信号0。其中隐形电平的时候CAN_H CAN_L都为2.5V,此时电压差就是0V,其中显性电平的时候CAN_H为3.5V CAN_L为1.5V,此时电压差就是2V。
- CAN线长度
高速CAN,总线长度最大为40m,也就是当总线长度超过40m之后,总线的速率会受到影响。支线长度(节点和总线之间的距离)最长为0.3米。节点距离长度最大也是40m。
- CAN线终端电阻
高速CAN线需要在CAN_H CAN_L加终端电阻,终端匹配电阻一般为120Ω。
- CAN线故障容错特性
对于高速CAN只有在CAN_L对GND短路时可以正常通信,其它协议中列举的故障下都不能正常通信。一般对于高速CAN关注的是当故障移除时,CAN控制器能否在规定的时间内恢复正常通信。
03低速容错CAN
- 电路设计
- 低速容错CAN总线速率:一般是40KBps - 125KBps
- 低速容错CAN总线的总线设计和高速CAN一样,使用的最多的也是CAN控制器集成到MCU中,使用外置CAN收发器。
- 总线电压
低速容错CAN总线信号也是由CAN_H CAN_L两根线的差分信号,也就是通过CAN_H和CAN_L的电压差来决定0 1信号。总线规定隐形电平为信号1 显性电平为信号0。其中隐形电平的时候CAN_H为0V CAN_L都为5V,此时电压差就是-5V,显性电平的时候CAN_H为3.5V CAN_L为1.5V,此时电压差就是2V。
- CAN线拓扑结构
- 低速容错CAN除了支持总线型还支持星型。
- CAN线故障容错特性
对于低速容错CAN,只有在CAN_H和CAN_L同时短路或者同时开路时不能正常通信,其它故障下都能够正常通信。这是由于低速容错CAN支持单线模式,当检测到一条线故障时,可以进入单线模式进行通信,此时会选定一个值作为参考电压,例如2.5V。在单线模式时,低速CAN会继续监视另外一条线,当故障排除后改用双线模式。所以称之为低速容错CAN。