对CAN总线的认识
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
现场总线CAN原理与应用技术论文
班级:物联网工程1202班
姓名:武朋真
学号:2012234050207
目录
1、CAN的特点
2、CAN总线协议基本概念
3、CAN总线协议基本规则
4、CAN总线的工作原理
5、了解与学习SJA1000
6、SJA1000与单片机的接口
7、SJA1000与单片机图
1、CAN的特点
由于采用了许多新技术及独特的设计,CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实用性和灵活性。其特点可概括如下:
●CAN是到目前为止唯一有国际标准的现场总线。
●CAN为多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发
送信息,而不分主从。
●在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先
级高的数据最多在134μs内得到传输。
●CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先
级较低的节点会主动退出发送,而最高优先级的节点可不受影响地继续传输数据,
从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下,也不会出现
网络瘫痪的情况(以太网则可能)。
●CAN节点只需通过对报文的标识符滤波即可实现点对点、一对多点及全局广播等几
种方式传送接收数据。
●CAN的直接通信距离最远可达10km(速率在5kbps以下);通信速率最高可达
1Mbps(这时通讯距离最长为40m)。
●CAN上的节点数主要取决于总线驱动电路,目前可达110个。在标准帧报文标识符
有11位。而在扩展帧的报文标识符(29位)的个数几乎不受限制。
●报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。
●CAN的每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。
●CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。
●CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作
不受影响
●CAN总线具有较高的性能价格比。它结构简单,器件容易购置,每个节点的价格比
较低,而且开发技术容易掌握,能充分利用现有的单片机开发工具。
2、CAN总线协议基本概念
(1)什么是现场总线
顾名思义,现场总线应当是应用在生产最底层的一种总线型拓扑的网络。进一步的来说,这种总线是用作现场控制系统的、直接与所有受控(设备)节点串行相连的通信网络。工业自动化控制的现场范围可以从一台家电设备到一个车间、一个工厂。受控设备和网络所处的环境以及报文的结构都有其特殊性,对信号的干扰往往是多方面的,而要求控制必须实时性很强。这就决定了现场总线有别于一般网络的特点。
(2)报文
总线上的信息以几个不同的固定格式的报文发送,但长度受限。当总线空闲时,任何链接的单元都可以开始发送新的报文。
(3)信息路由
在CAN系统里,CAN的节点不使用任何关于系统结构的信息(比如,站地址)。以下是与此有关的几个重要的概念。
●系统灵活性:不需要应用层以及任何节点软件个硬件的任何改变,可以在CAN网
络中直接添加节点。
●报文路由:报文的寻址内容由标识符指定。标识符不指出报文的目的地,但是这个
数据的特点含义使得网络上所有的节点可以通过报文滤波来判断该数据是否与它
们相符合。
●多点传送:由于报文滤波的作用,任何数目的节点对同一条报文都可以接收并同时
对此作出反应。
●数据一致性:在CAN网络里确保报文同时被所有的节点接收(或无节点接收)。系
统的这种数据一致性是靠多点传送和错误处理的功能来实现的。
(4)位速率
在一个给定的CAN系统里位速率是唯一的,并且是固定的。
(5)优先权
报文中的数据帧和远程帧都有标识符段,在访问总线期间,标识符确定了一个静态的(固定的)报文优先权。当多个CAN单元同时传输报文发生总线冲突时,标识符码值越小的报文优先级越高。
(6)多主机
总线空闲时,任何单元都可以开始传送报文具有较高优先权的报文的单元可以获得总线的访问权。
(7)仲裁
只要总线空闲,任何单元都可以开始发送报文。如果两个或两个以上的单元同时开始传送报文,那么就会有总线访问冲突。通过使用了标识符的逐位仲裁可以解决这个冲突。
仲裁的机制确保了报文和时间均不损失。当具有相同标识符的数据帧和远程帧同时发送时,数据帧优先于远程帧。在仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送。如果发送的是一“隐性”电平而监视到的是一“显性”电平,那么这个单元就失去了仲裁,必须退出发送状态。
(8)安全性
为了获得最安全的数据发送,CAN的每一个节点均采取了强有力的措施来进行错误检测、错误标定及错误自检。
1)错误检测
要进行检测错误,必须采取以下措施
●监视(发送器对发送位的电平与被监控的总线电平进行比较);
●循环冗余检查:
●位填充;
●报文格式检查;
2)错误检测的执行
错误检测的机制具有以下的属性:
●检测到所有的全局错误;
●检测到发送器的所有的局部错误;
●可以检测到报文里多达5个任意分布的错误;
●检测到报文里长度低于15(位)的突发性错误;
●检测到报文里任一奇数个的错误。
(9)错误标定和恢复时间
任何检测到错误的节点会标志出损坏的报文。次报文会失效并将自动重新传送。如果不再出现错误,那么从检测到错误到下一报文的传送开始为止,恢复时间最多为31个位的时间。
(10)故障界定
CAN节点能够把永久故障和短暂的干扰区别开来。故障的节点会被关闭。
(11)连接