5.8 CAN总线

•CAN总线就是一种现场总线。
•现场总线定义为应用在生产现场、在微机化测量控制设备之间实现双向串行数字通信的系统,具有开放式、数字化、多点通信技术,可被广泛应用于制造业、流程工业、楼宇、交通等处的自动化系统中。
•CAN(Controller Area Network)通常可译为“控制器局域网络”,是BOSCH 公司开发的,以多主方式工作,网络上任意一个节点均可以在任意时刻主动 地向网络上的其它节点发送信息,当多个节点同时向网上传送信息时只有具有最高优先权的节点可不受影响地继续传输数据。
•通过CAN总线,传感器、控制器和执行器由串行数据线连接起来。它不仅仅是将电缆按树形结构连接起来,其通信协议相当于ISO/OSI参考模型中的数据链路层,网络可根据协议探测和纠正数据传输过程中因电磁干扰而产生的数据错误。

CAN的基本特点

•1)   高速串行数据接口功能。CAN支持从几千到一兆bit·s-1的数据传输速率。
•2)   使用廉价物理介质,CAN可以使用屏蔽或非屏蔽的双绞线、同轴电缆以及光纤作为网线。
•3)   数据帧短,短数据帧有利于减小延时,提高实时性;但降低了有效数据传输率。
•4)   反应速度快,发送时不需等待令牌,对请求反应迅速。
•5)   多站同时发送,优先数据获取总线。
•6)   错误检测和校正能力强,保证系统的可靠性。
•7)   无破坏基于优先权的仲裁。
•8)   通过接受滤波的方式实现多地址帧传送。
•9)   具有远程数据请求功能 。
•10)  具有全系统数据兼容性。
•11)  具有丢失仲裁或出错的帧自动重发功能。
•12)  能判别暂时错误和永久性错误节点,具有故障节点自动脱离功能。
•13)  基于事件触发的发送方式,信息传送延时离散度高,有出现长延时的可能。
图CAN2.0的分层结构

CAN2.0的数据链路层和物理层

•CAN定义了ISO/OSI网络开放系统模型的最低两层,即数据链路层和物理层,主要是数据链路层。
•CAN2.0的数据链路层又分为逻辑链路控制(LLC,Logical Link Control)和媒体访问控制(MAC, Medium Access Control)两个子层。
•LLC层完成下列功能:为数据发送以及远程数据请求传送服务;判定是否接受接收到的信息;提供恢复管理和超载处理。
•CAN2.0的MAC层是CAN的核心,主要定义了传输协议,包括信息帧格式、仲裁方式、应答信号、错误检测、错误信令和故障限制等。
•MAC层的约定是固定的。LLC层(对应CAN1.2 OL 层)的设计有很大的自由度。
• 物理层定义了物理数据在总线上各节点间的传输过程,主要是连接介质、线路电气特性、数据传输的编码/解码、定时以及同步的实施标准。