CAN是英文Controller Area Network的缩写,意为控制器局域网,是一种多路复用总线,也就是每个节点机构都可成为主机,且各个节点之间也可进行通信。具有较强的纠错能力,支持差分收发,适合高干扰环境,由于其实时性、灵活性和开放性特别突出,故在帕萨特系列轿车上也采用了CAN总线技术。
一、汽车车载网络CAN数据总线系统的组成特点
由于CAN总线在诸多汽车总线中有着十分重要的地位,它己成为汽车总线的代名词,己成为汽车是否数字化的一个重要标志。
(一)CAN总线系统的基本组成
汽车车载网络CAN总线系统的组成可由图1所示的简图来表示。它是由多个电子控制单元(图1中仅画出了2个电子控制单元)与两条数据传输线、数据传递终端等组成的。
与无车载网络的车型相比,CAN总线系统中的电子控制单元,都增加了一个CAN控制器和一个CAN收发器(在网络系统中俗称为节点),用两条CAN数据总线连接到传输线上。
(二)CAN总线系统的控制器
汽车车载网络CAN控制器是在一块可编程芯片上通过逻辑电路的组合而制成的。该控制器具有与单片微处理器进行连接的接口,可以由微处理器对其进行编程,以便对它的工作方式进行设置,控制它的工作状态,进行数据的发送或接收。
1. CAN控制器的基本类型
汽车车载网络CAN控制器通常有两种类型,并且都严格遵守CAN的规范和国际标准。它们的特点分别说明如下:
(1)独立型车载网络CAN控制器
这种类型的CAN控制器具有相对独立性,使用起来十分灵活,一般以单片集成电路的方式出现,它可以与多种类型的单片机、微处理器的各类标准总线进行接口组合,在车辆上安装时是作为一个电子单元电路设置于微处理器与总线传输线路之间的。
(2)组合型车载网络CAN控制器
这种CAN控制器是与微处理器组合在一起,形成一个具有CAN控制功能接口的微处理器控制组件,如图2所示。在该电路中,80C51是一块单片微处理器,SJA 1000为CAN控制器,PCA2C250则为数据发送器。CAN控制器通过相关引脚与单片微处理器进行连接,受微处理器80C51的控制进行数据的读(RD)或写(WR)。
使用组合型CAN控制器,可以使电路得到简化和变得紧凑,效率也可得到相应的提高。
2. CAN控制器的作用
汽车车载网络CAN控制器的作用是接收控制单元中微处理器发出的数据,然后对这些数据进行相应的处理后传送给CAN收发器。同样,当接收到CAN发送器送来的数据后,也对这些数据进行处理,然后提供给微处理器。
3. CAN控制器实用电路
目前,在车载网络总线中应用较多的CAN单片控制器多数由SJA 1000集成电路组成。
由SJA 1000构成的CAN控制器典型应用电路如图3所示。
SJA 1 000集成电路采用双列28脚直插式封装,其各引脚功能说明如表1所示。
由CAN总线控制集成电路SJA1000组成的CAN控制器通信速率为250Kb/s,采用扩展帧格式(即29位标识符)每帧数据为8字节,包括标识符及帧信息传送字节数可达13字节。为了保证数据帧的实时性,传送的数据由微处理器系统定时(周期为10 ms)发送,控制器以中断方式接收。当CAN总线控制器SJA1000接收到有效信息时,产生高速输入中断,系统进入中断程序,对接收的信息进行分类处理,得到的信号提供给微处理器。发送数据的方法与接收数据的处理方法类似。
(三)CAN总线系统的收发器
汽车车载网络CAN收发器是一种将CAN数据发送器与数据接收器组合在一起的单片集成电路。
1. CAN收发器的类型
汽车车载网络CAN收发器也分为独立型与组合型两大类。由于前者应用灵活,可以与多种CAN控制器进行连接使用,故应用十分广泛。后者通常与CAN控制器组合在一起,形成一个具有CAN收发功能的CAN控制器组件。
2.汽车车载网络CAN收发器的作用
汽车车载网络CAN收发器的作用是用于将CAN控制器提供的数据转换成电信号,然后通过数据总线发送出去。同时,它也接收总线数据,并将数据传送给CAN控制器。
3.汽车车载网络CAN收发器的实用电路
单片CAN收发器集成电路型号较多,较常见的型号有82C250与PCA2C250,这两种型号的集成电路可以互换。由82C250组成的CAN收发器的典型应用电路如图4所示。在该电路中,C8051FO40是一块混合信号处理系统超级单片微处理器,具有与8051兼容的高速CIP-51处理器,该芯片内集成了数据采集和控制系统中常用的模拟、数字外设及其他功能部件,具有64路I/O(输入/输出)接口、12路12位A/D(模拟/数字)转换器、CAN总线控制器等功能器件。
82C250是一块高性能单片CAN收发器集成电路,具有降低射频干扰、热防护、抗汽车环境下的瞬间干扰等特性。采用8脚双列直插式封装方式,其各引脚功能如表2所列。
(1)电路特点
在图4所示电路中,为了增强CAN总线节点的抗干扰能力,C8051F040通过高速光电耦合器TLP113后与82C250相连接,由此可以实现总线上各个CAN节点间的电气隔离。
(2)电路元件作用
在图4所示电路中,R4与R5电阻器连接在CAN总线与82C250的CANH(⑦脚)、CANL(⑥脚)间,对输入82C250的电流进行限流,以保护集成电路不受过电流的冲击而损坏;C17与C18两只小电容器连接在总线的CANH、CANL与地线(即搭铁)间,用于滤除总线上的高频干扰,并且还具有一定的防电磁辐射的能力;VD5、VD6两只二极管连接在总线的CANH,、CANL与地线(即搭铁)间,用于作为电源极性接反保护用。当总线上的电源极性接反时,这两只二极管就会导通,以保护后级的CAN收发器不会被损坏;R13电阻器连接在82C250的⑧脚与地线之间,用于对CAN总线的通信速度进行设定,当该电阻值为 20 M时,CAN总线的通信速度被设定为500 Kb/s。
(3)数据发送过程
当需要发送数据时,微处理器C8051F040⑦脚就会有相应的信号输出,控制光电祸合器IC3内的发光二极管发出相应的光线,IC3内的光敏反相器受光并将光信号转变为电信号以后从⑤脚输出,直接加到82C250的①脚,经处理后的数据通过82C250的⑥、⑦脚,送到CAN数据传输线上。
(4)数据接收过程
当CAN数据传输线上的数据经R5,凡加到 82C250的⑥、⑦脚内后,该信号经处理以后从④脚输出,控制光电祸合器IC4内的发光二极管发出相应的光线,IC4内的光敏反相器受光并将光信号转变为电信号以后从⑤脚输出,直接加到微处理器C8051F040⑥脚,经处理后的数据就会使微处理器有相应的控制指令输出。
(四)CAN总线系统的数据传递终端
汽车车载网络CAN数据传递终端实际上就是一个电阻器,其作用就是避免数据传输终了反射回来时,产生的反射波导致数据被破坏。数据传递终端一般有两个,根据其设置的位置可以分为分开式和组合式两大类。
1.分开式数据传递终端
这种方式的数据传递终端,是将两个数据传递终端分别设置在车辆两处的两个控制单元中,如图5所示。
2.组合式数据传递终端
这种方式的数据传递终端,是将原来分布在两个控制单元中的两只电阻器以并联的形式归并到一个控制单元内,如图6所示。
(五)CAN总线系统的数据总线
CAN数据总线是一种用来传输数据的双向数据线,分为CAN高位(CAN-high)和低位(CAN-low)数据线。数据通过数据总线发送给各个控制单元,各控制单元接收后进行计算。为了防止外界电磁波干扰和向外辐射,CAN总线通常采用两条导线缠绕在一起的方式构成,如图7 (a)所示。由于缠绕在一起的两条导线上的相位是相反的,当一根线上的电压为5V时,另一根线上的电压则为0V,如图7 (b)所示。这样,这两条线上的电压和就总等于一个常数。通过这种措施,可以保护CAN总线不会受到外界电磁波的干扰,同时也可以使CAN本身产生的辐射不会向外辐射,以使这两条线保持中性。