由于CAN总线在汽车上的具体应用领域(系统)和数据传输速率不同,故CAN总线有不同的类别。另外,对于功能相同或相近的CAN总线,不同的汽车公司,对其称谓也不尽相同。如大众集团的CAN总线分为驱动CAN总线、舒适CAN总线、信息/娱乐CAN总线、组合仪表CAN总线、诊断CAN总线五类;而宝马汽车集团的CAN总线分为PT-CAN总线(动力传输CAN总线)、F-CAN总线(底盘CAN总线)、K-CAN总线(车身CAN总线)三类;奔驰汽车公司的CAN总线分为CAN B总线、CAN C总线两大类等。
1.大众公司的CAN总线
目前,德国大众汽车集团公司生产的汽车中使用多种CAN数据总线。根据信号的重复率、产生的数据量和可用性(准备状态),CAN数据总线系统分为如下五类:
(1)驱动CAN数据总线 驱动CAN数据总线属于高速CAN总线,数据传输速率为5000kbit/s,用于将驱动系统中的控制单元联成网络。
(2)舒适CAN数据总线 舒适CAN数据总线属于低速CAN总线,数据传输速率为100kbit/s,用于将舒适系统中的控制单元联成网络。
(3)信息/娱乐CAN数据总线 信息/娱乐CAN数据总线属于低速CAN总线,数据传输速率为100kbit/s,用于将收音机、电话机和导航系统联成网络。
(4)组合仪表CAN总线 组合仪表CAN总线属于低速CAN总线,数据传输速率为100kbit/s。
(5)诊断CAN总线 诊断CAN总线属于高速CAN总线,数据传输速率为500kbit/s。
舒适CAN数据总线和信息CAN数据总线可以通过带网关的组合仪表与驱动CAN数据总线进行数据交换。
2.CAN导线
CAN数据总线是一种双线式数据总线,各个CAN系统的所有控制单元都并联在CAN数据总线上。CAN数据总线的两条导线分别称为CAN-High导线和CAN-Low导线。在实际使用中,CAN-High导线和CAN-Low导线是扭结在一起的,称为双绞线,如图2-27所示。
图2-27 双绞线
控制单元之间的数据交换就是通过这两条导线完成的,这些数据可以是发动机转速、冷却液温度、油箱油面高度、节气门开度、加速踏板位置、车速等,也可以是车轮转速、转向盘转角、发动机输出转矩、爆燃倾向等。
在大众车系中,CAN导线的基色为橘色。对于驱动数据总线来说,CAN-High导线上还多加了黑色作为标志色;对于舒适CAN数据总线来说,CAN-High导线上的标志色为绿色;对于信息CAN数据总线来说,CAN-High导线上的标志色为紫色,而CAN-Low导线的标志色都是棕色。大众车系CAN总线系统的颜色如图2-28所示。
图2-28 大众车系CAN总线系统的颜色
为易于识别,并与大众车系维修手册及VAS5051检测仪相适应,在本书中,CAN导线分别用黄色和绿色来表示,CAN-High导线为黄色(在黑白图中为灰色),CAN-Low导线为绿色(在黑白图中为黑色),如图2-29所示。
图2-29 CAN-High导线和CAN-Low导线
3.不同CAN总线的共性
1)不同类别的CAN总线在数据高速公路上采用同样的交通规则(数据传输协议)进行数据传输。
2)为了保证信息传输的高抗干扰性(如来自发动机舱的强烈的电磁波),所有CAN数据总线都采用双绞线(CAN-High导线和CAN-Low导线)系统,个别公司还采用三线系统(如宝马车系,其PT-CAN总线中,除了CAN-High导线和CAN-Low导线之外,还有一根唤醒导线)。
3)将要发送的信号在发送控制单元的收发器内转换成不同的信号电平,并输送到两条CAN导线上,只有在接收控制单元的差动信号放大器内才能建立两个信号电平的差值,并将其作为唯一经过校正的信号继续传至控制单元的CAN接收区。
4)信息CAN数据总线与舒适CAN数据总线的特性是一致的。
4.不同CAN总线的区别
1)驱动CAN数据总线通过15号接线柱(亦称总线端子15)切断,或经过短时无载运行后自行切断。
2)舒适CAN数据总线由30号接线柱(亦称总线端子30)供电且必须保持随时可用状态。为了尽可能降低汽车电网的负荷,在“15号接线柱关闭”后,若汽车网络系统不再需要舒适CAN数据总线工作,那么舒适CAN数据总线就进入“休眠模式”。
3)舒适CAN数据总线和信息CAN数据总线在一根导线短路或一根导线断路时,可以使用另外一根导线继续工作,这时系统会自动切换到“单线工作模式”。也就是说,舒适CAN数据总线和信息CAN数据总线可以单线工作(俗称“瘸腿”工作)。
4)驱动CAN数据总线的电信号与舒适CAN数据总线、信息CAN数据总线的电信号是不同的。驱动CAN数据总线无法与舒适/信息CAN数据总线直接进行电气连接,但可以通过网关连接在一起,构成一个更大的网络。网关可以设置在某一个控制单元(如组合仪表控制单元或供电控制单元)内,也可以独立设置,形成网关模块。
1.CAN导线上的电压
如图2-30所示,驱动CAN总线处于静止状态(即没有数据传输)时,CAN-High导线和CAN-Low导线两条导线上作用有预先设定的电压,其电压值约为2.5V。
图2-30 CAN导线上的电压
CAN总线的静止状态亦称隐性状态,静止状态下CAN-High导线和CAN-Low导线的对地电压称为静止电平(亦称隐性电平),简称静电平。当有数据传输时,驱动CAN总线处于显性状态。此时,CAN-High导线上的电压值会升高一个预定值(至少为1V),而CAN-Low导线上的电压值会降低一个同样值(至少为1V)。
于是,在驱动CAN总线上,CAN-High导线就处于激活状态(显性状态),其电压不低于3.5V(2.5V+1V=3.5V),而CAN-Low导线上的电压值最多可降至1.5V(2.5V-1V=1.5V)。
因此,在隐性状态时,CAN-High导线与CAN-Low导线上的电压差为0V,在显性状态时该差值最低为2V。
2.CAN收发器
控制单元是通过收发器连接到驱动CAN总线上的。在收发器内部的接收器一侧设有差动信号放大器。差动信号放大器用于处理来自CAN-High导线和CAN-Low导线的信号,除此以外,还负责将转换后的信号传至控制单元的CAN接收区。这个转换后的信号称为差动信号放大器的输出电压。
如图2-31所示,差动信号放大器用CAN-High导线上的电压( U CAN-High )减去CAN-Low导线上的电压( U CAN-Low ),就得出了输出电压,用这种方法可以消除静电平或其他任何重叠的电压(如外来的电磁干扰)。
图2-31 驱动CAN数据总线的差动信号放大器
收发器的差动信号放大器在处理信号时,会用CAN-High导线上作用的电压减去CAN-Low导线上作用的电压,具体的处理过程如图2-32所示。
图2-32 差动信号放大器内的信号处理
3.CAN总线干扰信号的消除
由于CAN总线线束要布置在发动机舱内,所以CAN总线难免会遭受各种电磁干扰(图2-33)。在对车辆进行维修、保养时要充分考虑线束对地短路(搭铁)和蓄电池电压、点火装置的火花放电和静态放电等因素对CAN总线的干扰。
图2-33 通过导线进行数据传输时的典型干扰源
CAN-High信号和CAN-Low信号经过差动信号放大器处理后(就是所谓的差动传输技术),可最大限度地消除干扰的影响。即使车上的供电电压有波动(如起动发动机时),也不会影响各个控制单元的数据传输,这就大大提高了数据传输的可靠性。在图2-34上可清楚地看到这种传输的效果。由于CAN-High导线和CAN-Low导线是扭绞在一起的双绞线,所以干扰脉冲信号 X 对CAN-High导线和CAN-Low导线的作用是等幅值、等相位、同频率的。
由于差动信号放大器总是用CAN-High导线上的电压(3.5V -X )减去CAN-Low导线上的电压(1.5V -X ),因此在经过处理后,差动信号中就不再有干扰脉冲了。用数学关系式表示时就是:(3.5V -X )-(1.5V -X )=2V。
图2-34 CAN总线对外界干扰信号的消除过程
4.终端电阻 (负载电阻)
收发器发送区的任务是将控制单元内的CAN控制器的较弱信号放大,使之达到CAN导线上的信号电平和控制单元输入端的信号电平。从信号传输的角度看,连接在CAN数据总线上的控制单元相当于CAN导线上的一个负载电阻(只是控制单元内部装有电子元器件),其阻抗取决于连接的控制单元数量及电阻阻值。
发动机控制单元会在驱动CAN总线的CAN-High导线和CAN-Low导线之间形成66Ω的电阻,而组合仪表和ABS控制单元则可在CAN总线上产生2.6kΩ的电阻,如图2-35所示。根据连接的控制单元数量,所有控制单元形成的总电阻为53~66Ω。如果15号接线柱(点火开关)已切断,就可以用欧姆表测量CAN-High导线和CAN-Low导线之间的电阻。
图2-35 CAN数据总线的上负载电阻
收发器将CAN信号输送到CAN总线的两条导线上,相应地在CAN-High导线上的电压就升高,而在CAN-Low导线上的电压就降低一个同样大小的值。对于驱动CAN总线来说,一条导线上的电压改变值不低于1V,对于舒适/信息CAN总线来说,这个值不低于3.6V。
与其他工业领域的CAN数据总线装在两根CAN导线末端的终端电阻不同,大众汽车集团的CAN总线系统采用分配方式配置终端电阻。即将终端电阻“散布”于各个控制单元内部,且阻值不等。如发动机控制单元内部的终端电阻阻值为66Ω,组合仪表和ABS控制单元内部的终端电阻阻值为2.6kΩ。由于汽车内部的驱动CAN总线导线长度有限(不超过5m),所以不会有什么负面作用。因此,CAN标准中有关数据总线长度的规定就不适用于大众集团的驱动CAN总线。
大众汽车集团的驱动CAN总线所连接的控制单元有发动机控制单元、ABS控制单元、ESP控制单元、变速器控制单元、安全气囊控制单元、组合仪表等,如图2-36所示。
5.驱动CAN总线上的信号变化
图2-37所示为一个真实的驱动CAN总线的实测电压波形。该总线信号由一个收发器产生并发送到CAN总线上,连接汽车诊断检测仪VAS5051之后,利用VAS5051的数字存储式示波器(DSO)接收下来并进行图像冻结,就得到了驱动CAN总线的实测电压波形。
由图2-37可见,CAN-High导线的电压和CAN-Low导线的电压是对称变化的,且变化方向相反。CAN-High导线上的显性电压约为3.5V,CAN-Low导线的显性电压约为1.5V。两个电平之间的叠加信号变化表示2.5V的隐性电平。
图2-36 驱动CAN数据总线的拓扑结构图
图2-37 驱动CAN总线的实测电压波形
1.舒适/信息CAN总线的特点
舒适/信息CAN总线用于将舒适CAN总线和信息CAN总线所控制的控制单元(如全自动空调/空调控制单元、车门控制单元、舒适控制单元、收音机和导航显示控制单元等)连成网络。
与所有CAN总线系统一样,舒适/信息CAN总线也是双线式数据总线,其数据传输速率为100kbit/s,所以也称为低速CAN总线。
控制单元通过舒适/信息CAN总线的CAN-High导线和CAN-Low导线来进行数据交换,如车门打开/关闭、车内灯点亮/熄灭、车辆导航系统(GPS)等。由于使用同样的脉冲频率,所以舒适CAN总线和信息CAN总线可以共同使用同一组导线,当然前提条件是相应的汽车上装备了这两种数据总线。
舒适/信息CAN总线的特点是:控制单元内的负载电阻不是作用于CAN-High导线和CAN-Low导线之间,而是连接在每根导线对地或对+5V电源之间。如果蓄电池电压被切断,那么电阻也就没有了,这时用欧姆表无法测出电阻。
2.舒适/信息CAN导线上的电压变化
为了使低速CAN总线抗干扰性强且电流消耗低,与动力CAN数据总线相比做了一些改动。
首先,由于使用了单独的驱动器(功率放大器),这两个CAN信号就不再有彼此依赖的关系了。与动力CAN数据总线不同,舒适/信息CAN总线的CAN-High线和CAN-Low线不是通过电阻相连的,也就是说,CAN-High线和CAN-Low线不再彼此相互影响,而是彼此独立作为电压源来工作的。
另外舒适/信息CAN总线还放弃了共同的中压,在隐性状态(静电平)时,CAN-High信号为0V,在显性状态时≥3.6V。对于CAN-Low信号来说,隐性电平为5V,显性电平≤1.4V,如图2-38所示。
图2-38 舒适/信息CAN总线的理论电压
在差动信号放大器内相减后,隐性电平为-5V,显性电平为2.2V,那么隐性电平和显性电平之间的电压变化(电压提升)就提高到≥7.2V。
为清楚起见,CAN-High信号和CAN-Low信号彼此分开了,从图2-38中所示的不同的零点即可看出这一点。
从图2-39中可清楚地看出,CAN-High信号和CAN-Low信号的静电平是不同的。还可看出,与驱动CAN总线相比,舒适/信息CAN总线的电压提升增大了(达到7.2V)。
3.舒适/信息CAN总线的CAN收发器
舒适/信息CAN总线收发器的结构如图2-40所示,其工作原理与动力CAN数据总线收发器基本是一样的,只是输出的电压电平和出现故障时切换到CAN-High线或CAN-Low线(单线工作模式)的方法不同。另外,CAN-High线和CAN-Low线之间的短路会被识别出来,并且在出现故障时会关闭CAN-Low驱动器,在这种情况下,CAN-High和CAN-Low信号是相同的。
图2-39 舒适/信息CAN总线的实测电压波形
图2-40 舒适/信息CAN总线收发器的结构
CAN-High线和CAN-Low线上的数据传递由安装在收发器内的故障逻辑电路监控,故障逻辑电路检验两条CAN导线上的信号,如果出现故障,如某条CAN导线断路,那么故障逻辑电路会识别出该故障,从而使用完好的另一条导线(单线工作模式)。在正常的工作模式下,使用的是CAN-High“减去”CAN-Low所得的信号(差动数据传递),这样就可将干扰对舒适/信息CAN数据总线的两条导线的影响降至最低(与动力CAN数据总线一样)。
4.单线工作模式下的舒适/信息CAN总线
如果因断路、短路或与蓄电池电压相连而导致两条CAN导线中的一条不工作了,那么就会切换到单线工作模式。在单线工作模式下,只使用完好的CAN导线中的信号,这样就使得舒适/信息CAN总线仍可工作。同时,控制单元记录一个故障信息:系统工作在单线模式。舒适/信息CAN总线处于单线工作模式下的实测电压波形如图2-41所示。
图2-41 舒适/信息CAN总线处于单线工作模式下的实测电压波形