CAN 全称为“ControllerAreaNetwork”,简称 CAN,是国际上应用最广泛的现场总线之一。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发出来。出于这些系统之间通信所用的数据类型及对可靠性要求不尽相同,且因多条总线构成的情况复杂、线束数量增加。为了适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信”的需求,1986 年德国电气商博世公司开发出面向汽车的 CAN 通信协议。此后,CAN 通过 IS011898 及 IS0 11519 进行了标准化,在欧洲已是汽车网络的标准协议,CAN 的高性能和可靠性已被认同,并广泛应用于工业自动化、船舶、医疗设备、工业设备等方面。


CAN 总线的特点

 

 

1、CAN 是一种多主总线,即每个节点机均可成为主机,他们之间都可进行通信。
2、硬件方面,通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达 1mb/s。
3、CAN 总线通信接口中集成了 CAN 协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余校验、优先级判别等项工作。
4、CAN 协议的一个最大特点是废除了传统的站地址编码,改为从通信数据块进行编码。采用这种方法的优点是可使网络内的节点个数在理论上不受限制,数据块的标识码可由 11 位或 29 位二进制数组成,因此可以定义 211 或 229 个不同的数据块,这种数据块编码方式,还可使不同的节点同时接收到相同的数据,这一点在分步式控制中非常重要。
5、数据段长度最多为 8 个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8 个字节不会占用总线时间过长,从而保证了通信的实时性。
6、CAN 协议采用了 crc 检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN 总线所具有的极高的可靠性和独特设计,特别适合工业设各测控单元互连。工业界的地位不可小觑,并已公认为最有前途的现场总线之一。

 

CAN 总线的工作原理
CAN 总线使用串行数据传输方式,可以 1Mb/s 的速率在 40m 的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。CAN 与 I2C 总线的许多细节很类似,但也有一些明显的区别。

 

当 CAN 总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,所有数据均进行了接收。每组报文开头的 11 位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。

 

当一个站要向其它站发送数据时,该站的 CPU 将要发送的数据和自己的标识符传送给本站的 CAN 芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN 芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。

 

由于 CAN 总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。所以在 CAN 总线中加进一些新站非常便利且无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。

 

CAN 总线的优点
1、高性能:具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点;
2、抗干扰:采用双线串行通信方式,纠错能力强,可在高噪声多干扰环境中工作;
3、高集成:具有优先权和仲裁功能,可实现多个控制模块通过 CAN 控制器集合到 CAN-bus 上,从而形成多主机局部网络;
4、可控性:可根据报文的 ID 决定接收或屏蔽该报文;
5、验证与纠错:可靠的错误处理和检错机制;
6、修复能力:发送的信息遭到破坏后,可自动重发;
7、智能化:节点在错误严重的情况下具有自动退出总线的功能;
8、安全性:报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。

 

CAN 总线缺点
1、可能出现的数据不一致性
2、可能出现的不可预估错误
3、信道堵塞情况

 

CAN 总线的应用
1. 楼宇自动化
在楼宇自动化中,现代的建筑安装系统(通风、照明、安全、监控)越来越多地建立在 CAN 总线系统上,通过其现实开关、按钮、传感器、照明设备、其他执行器和多控制系统之间的数据交换,实现建筑中各操作单元之间的协作,并对各单元不断变化的状态实时控制。

 

2. 安全监控
在当前的各种监控系统中,普遍存在可靠性、实时性不高,分站缺乏统一规范等缺点,不能够很好地满足实时监控的要求。CAN 总线由于具有高数据传输率、完善的规范和协议、高实时性、安全性、可靠性等,可很好解决上述各种问题。多应用如:水电站高边坡监控系统、大型远程高边坡监控网络、辊道陶瓷窖等监控系统。

 

3. 汽车工业
在汽车工业领域,CAN 被设计作为汽车环境中的微控制器通信,在车载各电子控制装置 ECU 之间进行信息交换,并形成汽车电子控制网络。如:汽车动力系统、制动控制系统、变速箱控制器、仪表、车载网络、电子主干系统中,均嵌入 CAN 控制装置。其应用使汽车的安全性、舒适性、动力性等性能更智能现代化。现在 CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面,CAN 总线在当今自动化领域成长迅速、被誉为自动化领域的计算机局域网络。它实现了分布式控制系统对象各节点之间进行实时、可靠的数据通信。