CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO标准化的串行通信协议。在汽车产业中,出于对安全性、舒适性、方便性、低功耗、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应'减少线束的数量'、'通过多个LAN,进行大量数据的高速通信'的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,在欧洲已是汽车网络的标准协议。
CAN 的强性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。
CAN总线转换器中CAN总线的技术介绍2CAN总线以报文为单位进行数据传送,报文的优先级结合在11位标识符中,具有较低二进制数的标识符有较高的优先级。这种优先级一旦在系统设计时被确立后就不能再被更改。总线读取中的冲突可通过位仲裁解决。例如标识符0111111、0100100、0100111发生位仲裁时,0100100报文将会被跟踪,而其余报文会被丢弃。具体过程为:当几个站同时发送报文时,站1的报文标识符为0111111,站2的报文标识符为0100100,站3的报文标识符为0100111,所有标识符都有相同的两位01,直到第3位进行比较时,站1的报文被丢弃,因为它的第3位为高,而其它两个站的报文第3位为低。站2和站3报文的3、4、5位相同,直到第7位时,站3的报文才被丢弃。注意,总线中的信号持续跟踪后获得总线读取权的站的报文。在此例中,站2的报文被跟踪。这种非破坏性位仲裁方法的优点在于,在网络终确定哪一个站的报文被传送以前,报文的起始部分已经在网络上传送了。所有未获得总线读取权的站都成为具有较高优先权报文的接收站,并且不会在总线再次空闲前发送报文。
CAN总线转换器中CAN数据帧的组成远程帧
远程帧由6个场组成:帧起始、仲裁场、控制场、CRC场、应答场和帧结束。远程帧不存在数据场。
远程帧的RTR位必须是隐位。
DLC的数据值是独立的,它可以是0~8中的任何数值,为对应数据帧的数据长度。
错误帧
错误帧由两个不同场组成,一个场由来自各站的错误标志叠加得到,第二个场是错误界定符
错误标志具有两种形式:
活动错误标志(Active error flag),由6个连续的显位组成
认可错误标志(Passive error flag),由6个连续的隐位组成
错误界定符包括8个隐位
超载帧
超载帧包括两个位场:超载标志和超载界定符
发送超载帧的超载条件:
要求延迟下一个数据帧或远程帧
在间歇场检测到显位
超载标志由6个显位组成
超载界定符由8个隐位组成
数据错误检测
不同于其它总线,CAN协议不能使用应答信息。事实上,它可以将发生的任何错误用信号发出。CAN协议可使用五种检查错误的方法,其中前面三种为基于报文内容检查。
CAN总线转换器抗干扰解决方案4使用屏蔽线后,在屏蔽层没有良好接大地前,屏蔽线是不起作用的。所以我们要选择一种接地方式。这里有三种外壳接地法:屏蔽层单点接地,可以避免地回流(不同位置的地电位不同而导致的产生电流),如图10所示。节点信号地阻容接自身外壳,如图11所示。屏蔽层分段屏蔽法,多点接地可以加快高频干扰信号的泄放,屏蔽层单点接地可以避免地回流,所以要根据实际情况选择合适的接地方式。