控制器局域网CAN技术协议.pptx
《控制器局域网CAN技术协议.pptx》由会员分享,可在线阅读,更多相关《控制器局域网CAN技术协议.pptx(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章 控制器局域网CAN技术协议 5.1、CAN总线简介 5.2、CAN总线通信模式 5.3、CAN总线的性能特点 5.4、CAN总线技术规范5.15.1、CANCAN总线简介总线简介 控制器局域网络(控制器局域网络(Controller Area Network Controller Area Network 简称简称CANCAN)主要用于各种过程(设备)监测及控制。主要用于各种过程(设备)监测及控制。CANCAN最初是由德国的最初是由德国的BoschBosch公司为汽车的监测与控制设计的,但由于公司为汽车的监测与控制设计的,但由于CANCAN总线本身总线本身的突出特点,其应用领域目前已不
2、再局限于汽车行业,而向的突出特点,其应用领域目前已不再局限于汽车行业,而向过程工业、机械工业、机器人、数控机床、医疗器械及传感过程工业、机械工业、机器人、数控机床、医疗器械及传感器等领域发展。由于其高性能、高可靠性及独特的设计,器等领域发展。由于其高性能、高可靠性及独特的设计,CANCAN总线越来越受到人们的重视,国际上已经有很多大公司的产总线越来越受到人们的重视,国际上已经有很多大公司的产品采用了这一技术。品采用了这一技术。CANCAN已经形成国际标准(已经形成国际标准(ISO11898ISO11898),),并并已成为工业数据通信的主流技术之一。已成为工业数据通信的主流技术之一。5.2 C
3、AN总线的通信模式 第一,“载波监测,多主掌控/冲突避免 这就允许在总线上的任一设备有同等的机会取得总线的控制这就允许在总线上的任一设备有同等的机会取得总线的控制权来向外发送信息。如果在同一时刻有两个以上的设备欲发送信权来向外发送信息。如果在同一时刻有两个以上的设备欲发送信息,就会发生数据冲突,息,就会发生数据冲突,CANCAN总线能够实时地检测这些冲突情况总线能够实时地检测这些冲突情况并作出相应的仲裁而不会破坏待传之信息;并作出相应的仲裁而不会破坏待传之信息; 第二,信息报文在传送时不是基于目的站点地址; 这就允许不同的信息以这就允许不同的信息以“广播广播”的形式发送到所有节点并且的形式发送
4、到所有节点并且可在不改变信息格式的前提下对报文进行不同配置可在不改变信息格式的前提下对报文进行不同配置; 第三,CAN总线是一种高速的,具备复杂的错误检测和恢复能力的高可靠性强有力的网络。 5.2 CAN总线的通信模式一、一、CSMA/CDCSMA/CD载波监测,多主掌控载波监测,多主掌控/ /冲突避免冲突避免 “载波监测载波监测”的意思是指在总线上的每个节点在发送信息报的意思是指在总线上的每个节点在发送信息报文前都必须监测到总线上有一段时间的空闲状态。文前都必须监测到总线上有一段时间的空闲状态。 “ “多主掌控多主掌控”的意思是一旦此一空闲状态被监测到,那么每个的意思是一旦此一空闲状态被监测
5、到,那么每个节点都有均等的机会来发送报文。节点都有均等的机会来发送报文。 “ “冲突避免冲突避免”是指在两上节点同时发送信息时,节点本身首是指在两上节点同时发送信息时,节点本身首先会检测到出现冲突,然后采取相应的措施来解决这一冲突情况。先会检测到出现冲突,然后采取相应的措施来解决这一冲突情况。此时优先级高的报文先发送,低优先级的报文发送会暂停。在此时优先级高的报文先发送,低优先级的报文发送会暂停。在CANCAN总线协议中是通过一种非破坏性的仲裁方式来实现冲突检测。总线协议中是通过一种非破坏性的仲裁方式来实现冲突检测。这也就意味着当总线出现发送冲突时,通过仲裁后原发送信息不这也就意味着当总线出现
6、发送冲突时,通过仲裁后原发送信息不会受到任何影响。所有的仲裁判别都不会破坏优先级高的报文信会受到任何影响。所有的仲裁判别都不会破坏优先级高的报文信息内容,也不会对其发送产生任何的时延。息内容,也不会对其发送产生任何的时延。5.2 CAN总线的通信模式如何实现非破坏性的位仲裁? 为了达到这种为了达到这种“非破坏性的位仲裁方式非破坏性的位仲裁方式”,CANCAN总线协议必总线协议必须满足一些前提条件。首先,必须定义两种逻辑状态须满足一些前提条件。首先,必须定义两种逻辑状态在这在这里叫作里叫作“支配位(支配位(DOMINANTDOMINANT)” ” ( (又称又称“显性显性”电平电平) )和和“顺
7、顺从位(从位(RECESSIVERECESSIVE)”(又称又称 “ “隐性隐性”电平);然后,节点在电平);然后,节点在发送过程中必须检测刚刚发出的状态是否就是信息中所描述的发送过程中必须检测刚刚发出的状态是否就是信息中所描述的内容。在内容。在CANCAN总线的定义中,逻辑总线的定义中,逻辑0 0为支配位,逻辑为支配位,逻辑1 1为顺从位。为顺从位。 5.2 CAN总线的通信模式如何冲突仲裁? 支配位一定会在和顺从位的判别过程中获胜,换句话说,报支配位一定会在和顺从位的判别过程中获胜,换句话说,报文标记区(报文仲裁专用区域)的值越小,其优先级就越高。举文标记区(报文仲裁专用区域)的值越小,其
8、优先级就越高。举个例子,假定有两个节点在同一时刻发送一个报文,每个节点都个例子,假定有两个节点在同一时刻发送一个报文,每个节点都会监测总线以便了解欲发送的信息状态是否确实出现在总线上。会监测总线以便了解欲发送的信息状态是否确实出现在总线上。一个优先级较低的报文在某一时刻会发送一个一个优先级较低的报文在某一时刻会发送一个“顺从位顺从位”但是检但是检测回来的却是测回来的却是“支配位支配位”。此时这个节点被仲裁为发送权取消,。此时这个节点被仲裁为发送权取消,立刻停止发送报文的工作。优先级较高的报文继续发送直到完整立刻停止发送报文的工作。优先级较高的报文继续发送直到完整的报文发送完毕。在刚才冲突仲裁中
9、被取消发送权的节点将等待的报文发送完毕。在刚才冲突仲裁中被取消发送权的节点将等待总线的下一个空闲期并自动地再次尝试发送。总线的下一个空闲期并自动地再次尝试发送。5.2 CAN总线的通信模式二、基于报文的通讯 CANCAN总线是一个基于报文而不是基于站点地址的协议。也总线是一个基于报文而不是基于站点地址的协议。也就是说报文不是按照地址从一个节点传送到另一个节点。就是说报文不是按照地址从一个节点传送到另一个节点。CANCAN总总线上报文所包含的内容只有优先级标志区和欲传送的数据内容。线上报文所包含的内容只有优先级标志区和欲传送的数据内容。所有节点都会接收到在总线上传送的报文,并在正确接后发出所有节
10、点都会接收到在总线上传送的报文,并在正确接后发出应答确认。至于该报文是否要做进一步的处理或被丢弃将完全应答确认。至于该报文是否要做进一步的处理或被丢弃将完全取决于接收节点本身。同一个报文可以发送给特定的站点或许取决于接收节点本身。同一个报文可以发送给特定的站点或许多站点,就看你怎样去设计你的网络和系统。多站点,就看你怎样去设计你的网络和系统。 基于报文的这种协议另外一个好处是新的节点可以随时方便基于报文的这种协议另外一个好处是新的节点可以随时方便地加入到现有的系统中,而不需对所有节点进行重新编程以便地加入到现有的系统中,而不需对所有节点进行重新编程以便它们能识别这一新节点。一旦新节点加入到网络
11、中,它就开始它们能识别这一新节点。一旦新节点加入到网络中,它就开始接收信息,判别信息标识,然后决定是否作处理或直接丢弃。接收信息,判别信息标识,然后决定是否作处理或直接丢弃。 如何去实现?5.2 CAN总线的通信模式 CANCAN总协议另外一个有用的特性是一个节点可以主动要总协议另外一个有用的特性是一个节点可以主动要求其它节点发送信息。这种特性叫做求其它节点发送信息。这种特性叫做“远端发送请求远端发送请求”(RTRRTR)。)。 和上例不同之处在于,节点并不等待信息的到来,和上例不同之处在于,节点并不等待信息的到来,而是主动去索取。而是主动去索取。 如,汽车中的中央安全系统会频繁地更新一些象安
12、全气如,汽车中的中央安全系统会频繁地更新一些象安全气袋等关键传感器的信息。袋等关键传感器的信息。 但是有些信息如油压传感器或电池电压传感器可能不会但是有些信息如油压传感器或电池电压传感器可能不会也不需要经常收到。为了确保了解这些设备是否工作正常,也不需要经常收到。为了确保了解这些设备是否工作正常,系统必须定期地要求此类设备发送相关的信息以便检查整个系统必须定期地要求此类设备发送相关的信息以便检查整个系统的工作情况。设计人员就可以利用这一系统的工作情况。设计人员就可以利用这一“远端发送请求远端发送请求”特性来减少网络的数据通讯量,同时维持整个系统的完整性。特性来减少网络的数据通讯量,同时维持整个
13、系统的完整性。 5.2 CAN总线的通信模式 CAN总线定义了四种不同的帧,用于总线通讯。 1 1、最常用的是、最常用的是“数据帧数据帧”,用于一个节点传送信息到其它,用于一个节点传送信息到其它任一或所有节点;任一或所有节点; 2 2、“远端帧远端帧”,基本上是一个数据帧但其中的,基本上是一个数据帧但其中的RTRRTR位被置位被置1 1,表明这是一个表明这是一个“远端发送请求远端发送请求”,用于一个节点主动要求其它节,用于一个节点主动要求其它节点发送信息;点发送信息; 3 3 、“错误帧错误帧”,如果节点在接收过程中检测到任一在,如果节点在接收过程中检测到任一在CANCAN总线协议中定义了的错
14、误信息,它就会发送一个错误帧。总线协议中定义了的错误信息,它就会发送一个错误帧。 4 4、“过载帧过载帧”,当一个节点正忙于处理接收的信息,需要,当一个节点正忙于处理接收的信息,需要额外的等待时间接收下一报文时,可以发送过载帧,通知其它额外的等待时间接收下一报文时,可以发送过载帧,通知其它节点暂缓发送新报文。节点暂缓发送新报文。5.2 CAN总线的通信模式三、CAN总线是一种高速的,具备复杂的错误检测和恢复能力的高可靠性强有力的网络 (1 1)高速性:高速性: CANCAN总线一开始是为汽车工业而设计的,如果总线一开始是为汽车工业而设计的,如果要使这一市场能够接受它,一个能高效处理出错情况的通
15、讯要使这一市场能够接受它,一个能高效处理出错情况的通讯协议是至关重要的。在发布了协议是至关重要的。在发布了2.0B2.0B版的版的CANCAN总线技术规范后,总线技术规范后,其最大的通讯速率已经比其最大的通讯速率已经比1.01.0版提高了版提高了8 8倍,达倍,达1M1M位位/ /秒秒, ,在这在这种速率下,即便是对时间要求非常关键的参数也可以通过种速率下,即便是对时间要求非常关键的参数也可以通过CANCAN总线传输而不必担心其时延。总线传输而不必担心其时延。5.2 CAN总线的通信模式(2 2)CANCAN总线协议有一套完整的差错管理机制总线协议有一套完整的差错管理机制 能够自动地检测出这些
16、错误信息,由此保证了被传信能够自动地检测出这些错误信息,由此保证了被传信息的正确必性和完整性。息的正确必性和完整性。错误类型 发送错误可通过发送错误可通过“CRCCRC出错出错”检测到;检测到; 普通接收错误可通过普通接收错误可通过“应答出错应答出错”检测到;检测到; CANCAN报文格式错误可通过报文格式错误可通过“格式出错格式出错”检测到;检测到; CANCAN总线信号错误可通过总线信号错误可通过“位出错位出错”检测到;检测到; 同步和定时错误可通过同步和定时错误可通过“阻塞出错阻塞出错”检测到。检测到。 5.2 CAN总线的通信模式 每个每个CANCAN总线上的节点都有一个出错计数器用以
17、记录各种错总线上的节点都有一个出错计数器用以记录各种错误发生的次数。取决于出错的严重性,通过这些计数器就可以误发生的次数。取决于出错的严重性,通过这些计数器就可以确认这些节点是否应工作到降级模式;确认这些节点是否应工作到降级模式; 总线上的节点可以从总线上的节点可以从正常工作模式正常工作模式(正常收发数据和出错信(正常收发数据和出错信息)降级到息)降级到消极工作模式消极工作模式(只有在总线空闲时才能取得控制(只有在总线空闲时才能取得控制权),或者到权),或者到关断模式关断模式(和总线隔离)。(和总线隔离)。 CANCAN总线上各节点还有能力监测是短期的干扰还是永久性的总线上各节点还有能力监测是
18、短期的干扰还是永久性的故障,并采取相关的应对措施,这种特性被叫做故障,并采取相关的应对措施,这种特性被叫做“故障界定隔故障界定隔离离”。采取了这种故障界定隔离措施后,故障节点将会被及时。采取了这种故障界定隔离措施后,故障节点将会被及时关断,不会永久占用总线。这一点对关键信息能在总线上畅通关断,不会永久占用总线。这一点对关键信息能在总线上畅通无阻地传送是非常重要的。无阻地传送是非常重要的。 5.3 CAN5.3 CAN总线的总线的技术特点技术特点 由于其采用了许多新技术及独特的设计与一般的通信总由于其采用了许多新技术及独特的设计与一般的通信总线相比,线相比,CANCAN总线的数据通信具有突出的可
19、靠性、实时性和总线的数据通信具有突出的可靠性、实时性和灵活性。其特点可概括如下:灵活性。其特点可概括如下: 1.CAN1.CAN为多主工作方式,网络上任意以节点均可在任意时刻主为多主工作方式,网络上任意以节点均可在任意时刻主动的地向网络上其它节点发送信息,而不分主从。动的地向网络上其它节点发送信息,而不分主从。 2.CAN2.CAN网络上的节点信息分为不同的优先级,可满足不同的实网络上的节点信息分为不同的优先级,可满足不同的实时要求,高优先级的数据最多可在时要求,高优先级的数据最多可在134s134s内得到传输。内得到传输。 3.CAN3.CAN采用非破坏性总线仲裁技术,当多个节点同时向总线发
20、采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动退出发送,而最高优先送信息时,优先级较低的节点会主动退出发送,而最高优先级的节点可不受影响的继续传输数据。级的节点可不受影响的继续传输数据。 4.CAN4.CAN程序通过报文滤波即可实现点对点、一点对多点及全局程序通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据,无需专门的广播等几种方式传送接收数据,无需专门的“调度调度”。 5.3 CAN5.3 CAN总线的总线的技术特点技术特点 5.CAN5.CAN的直线通信距离最长可达的直线通信距离最长可达10km10km(速率速率5Kbps5Kbps以
21、下),通以下),通信速率最高可达信速率最高可达1Mbps1Mbps(此时通信距离最长为此时通信距离最长为40m40m)6.CAN6.CAN上的节点数主要取决于总线驱动电路,目前可达上的节点数主要取决于总线驱动电路,目前可达128128个;个;报文标识符可达报文标识符可达20322032种(种(CAN2.0ACAN2.0A),),而扩展标准而扩展标准(CAN2.0BCAN2.0B)的报文标识符几乎不受限制。的报文标识符几乎不受限制。7.7.采用短帧结构,传输时间短,受干扰概率低,具有良好的采用短帧结构,传输时间短,受干扰概率低,具有良好的检错效果。检错效果。5.3 CAN5.3 CAN总线的总线
22、的技术特点技术特点 8.CAN8.CAN的每帧信息都有的每帧信息都有CRCCRC校验及其它检错措施,保证了数校验及其它检错措施,保证了数据出错率极低。据出错率极低。9.CAN9.CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵的通信介质可为双绞线、同轴电缆或光纤,选择灵活。活。10.CAN10.CAN节点在错误严重的情况下具有自动关闭输出的功能,节点在错误严重的情况下具有自动关闭输出的功能,以使总线上其它节点的操作不受限制。以使总线上其它节点的操作不受限制。5.4 CAN总线的技术规范 随着随着CANCAN在各种领域的应用和推广,对其通信在各种领域的应用和推广,对其通信格式的标准化提出了要求
23、。为此,格式的标准化提出了要求。为此,19911991年年9 9月月Philips SemiconductorsPhilips Semiconductors制定并发布了制定并发布了CANCAN技术规技术规范(范(Version 2.0Version 2.0)。)。该技术规范包括该技术规范包括A A和和B B两部分:两部分:1.1. CANCAN技术规范技术规范2.0A2.0A给出了报文标准格式;给出了报文标准格式;2.2. CANCAN技术规范技术规范2.0B2.0B给出标准和扩展的两种报文格式。给出标准和扩展的两种报文格式。 这里主要介绍这里主要介绍CANCAN技术规范技术规范2.0B2.0
24、B 5.4 CAN总线的技术规范 5.4.1 CAN的分层结构5.4.2 CAN报文传送及总线上的位电平表示5.4.3 CAN总线报文的帧结构5.4.4 错误类型和界定5.4.5 位定时与同步5.4 CAN5.4 CAN总线的总线的技术规范技术规范 5.4.1 CAN的分层结构 为了使设计透明和执行灵活,遵循为了使设计透明和执行灵活,遵循ISO/OSIISO/OSI标准标准模型,模型,CANCAN分为数据链路层(包括逻辑链路层分为数据链路层(包括逻辑链路层LLCLLC和和媒体访问控制层媒体访问控制层MACMAC)和物理层,和物理层, 在在CANCAN技术规范技术规范2.0A2.0A的版本中,数
25、据链路层的的版本中,数据链路层的LLCLLC和和MACMAC子层的服务和功能被描述为子层的服务和功能被描述为“目标层目标层”和和“传输层传输层”。 5.4 CAN5.4 CAN总线的总线的技术规范技术规范 媒体访问控制子层媒体访问控制子层MACMAC子层的功能主要是传送子层的功能主要是传送规则,以及控制帧结构、执行仲裁、错误检测、出规则,以及控制帧结构、执行仲裁、错误检测、出错标定和故障界定。错标定和故障界定。MACMAC子层也要确定为开始一次子层也要确定为开始一次新的发送,总线是否开放或者是否马上开始接收,新的发送,总线是否开放或者是否马上开始接收,位定时也是位定时也是MACMAC子层的一部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制器 局域网 CAN 技术 协议
限制150内