当前位置:
文档之家› _控制器局域网CAN总线技术规范
_控制器局域网CAN总线技术规范
基于报文的这种协议另外一个好处是新的节点可以随时方便 地加入到现有的系统中,而不需对所有节点进行重新编程以便 它们能识别这一新节点。一旦新节点加入到网络中,它就开始 接收信息,判别信息标识,然后决定是否作处理或直接丢弃。
如何去实现?
5.2 CAN总线的通信模式
CAN总协议另外一个有用的特性是一个节点可以主动要 求其它节点发送信息。这种特性叫做“远端发送请求” (RTR )。 和上例不同之处在于,节点并不等待信息的到来, 而是主动去索取。
5.2 CAN总线的通信模式
第一,“载波监测,多主掌控 /冲突避免
这就允许在总线上的任一设备有同等的机会取得总线的控制权 来向外发送信息。如果在同一时刻有两个以上的设备欲发送信息, 就会发生数据冲突, CAN总线能够实时地检测这些冲突情况并 作出相应的仲裁而不会破坏待传之信息;
第二,信息报文在传送时不是基于目的站点地址;
第四章 控制器局域网CAN技术协议
5.1、CAN总线简介 5.2、CAN总线通信模式 5.3、CAN总线的性能特点 5.4、CAN总线技术规范
5.1、CAN总线简介
控制器局域网络( Controller Area Network 简称CAN) 主要用于各种过程(设备)监测及控制。 CAN 最初是由德国 的Bosch 公司为汽车的监测与控制设计的,但由于 CAN 总线 本身的突出特点,其应用领域目前已不再局限于汽车行业, 而向过程工业、机械工业、机器人、数控机床、医疗器械及 传感器等领域发展。由于其高性能、高可靠性及独特的设计, CAN 总线越来越受到人们的重视,国际上已经有很多大公司 的 产 品 采 用 了 这 一 技 术 。 CAN 已 经 形 成 国 际 标 准 (ISO11898 ),并已成为工业数据通信的主流技术之一。
“多主掌控”的意思是一旦此一空闲状态被监测到,那么每个 节点都有均等的机会来发送报文。
“冲突避免”是指在两上节点同时发送信息时,节点本身首先 会检测到出现冲突,然后采取相应的措施来解决这一冲突情况。 此时优先级高的报文先发送,低优先级的报文发送会暂停。在 CAN 总线协议中是通过一种非破坏性的仲裁方式来实现冲突检 测。这也就意味着当总线出现发送冲突时,通过仲裁后原发送信 息不会受到任何影响。所有的仲裁判别都不会破坏优先级高的报 文信息内容,也不会对其发送产生任何的时延。
4、“过载帧”,当一个节点正忙于处理接收的信息,需要 额外的等待时间接收下一报文时,可以发送过载帧,通知其它 节点暂缓发送新报文。
5.2 CAN总线的通信模式
三、 CAN总线是一种高速的,具备复杂的错误检测和 恢复能力的高可靠性强有力的网络
(1)高速性: CAN总线一开始是为汽车工业而设计的,如 果要使这一市场能够接受它,一个能高效处理出错情况的通 讯协议是至关重要的。在发布了 2.0B 版的CAN总线技术规范 后,其最大的通讯速率已经比 1.0 版提高了8倍,达1M 位/ 秒, 在这种速率下,即便是对时间要求非常关键的参数也可以通 过CAN 总线传输而不必担心其时延。
5.2 CAN总线的通信模式
如何冲突仲裁?
支配位一定会在和顺从位的判别过程中获胜,换句话说,报 文标记区(报文仲裁专用区域)的值越小,其优先级就越高。举 个例子,假定有两个节点在同一时刻发送一个报文,每个节点都 会监测总线以便了解欲发送的信息状态是否确实出现在总线上。 一个优先级较低的报文在某一时刻会发送一个“顺从位”但是检 测回来的却是“支配位”。此时这个节点被仲裁为发送权取消, 立刻停止发送报文的工作。优先级较高的报文继续发送直到完整 的报文发送完毕。在刚才冲突仲裁中被取消发送权的节点将等待 总线的下一个空闲期并自动地再次尝试发送。
如,汽车中的中央安全系统会频繁地更新一些象安全气袋 等关键传感器的信息。
但是有些信息如油压传感器或电池电压传感器可能不会也 不需要经常收到。为了确保了解这些设备是否工作正常,系 统必须定期地要求此类设备发送相关的信息以便检查整个系 统的工作情况。设计人员就可以利用这一“远端发送请求” 特性来减少网络的数据通讯量,同时维持整个系统的完整性。
5.2 CAN总线的通信模式
CAN总线定义了四种不同的帧,用于总线通讯。 1、最常用的是“数据帧”,用于一个节点传送信息到其它任
一或所有节点;
2、“远端帧”,基本上是一个数据帧但其中的 RTR 位被置1, 表明这是一个“远端发送请求”,用于一个节点主动要求其它节 点发送信息;
3 、“错误帧”,如果节点在接收过程中检测到任一在CAN 总线协议中定义了的错误信息,它就会发送一个错误帧。
5.2 CAN总线的通信模破坏性的位仲裁方式”, CAN 总线协议 必须满足一些前提条件。首先,必须定义两种逻辑状态 ——在这 里叫作“支配位( DOMINANT )” ( 又称“显性”电平 ) 和 “顺从位( RECESSIVE )”(又称 “隐性”电平);然后, 节点在发送过程中必须检测刚刚发出的状态是否就是信息中所 描述的内容。在 CAN 总线的定义中,逻辑 0为支配位,逻辑 1 为顺从位。
这就允许不同的信息以“广播”的形式发送到所有节点并且
可在不改变信息格式的前提下对报文进行不同配置;
第三, CAN总线是一种高速的,具备复杂的错误检测 和恢复能力的高可靠性强有力的网络。
5.2 CAN总线的通信模式
一、CSMA/CD —载波监测,多主掌控 /冲突避免
“载波监测”的意思是指在总线上的每个节点在发送信息报 文前都必须监测到总线上有一段时间的空闲状态。
5.2 CAN总线的通信模式
二、基于报文的通讯
CAN总线是一个基于报文而不是基于站点地址的协议。 也就是说报文不是按照地址从一个节点传送到另一个节点。 CAN总线上报文所包含的内容只有优先级标志区和欲传送的数 据内容。所有节点都会接收到在总线上传送的报文,并在正确 接后发出应答确认。至于该报文是否要做进一步的处理或被丢 弃将完全取决于接收节点本身。同一个报文可以发送给特定的 站点或许多站点,就看你怎样去设计你的网络和系统。