控制器局域网总线CAN协议规范.ppt
《控制器局域网总线CAN协议规范.ppt》由会员分享,可在线阅读,更多相关《控制器局域网总线CAN协议规范.ppt(92页珍藏版)》请在三一办公上搜索。
1、控制器局域网总线CAN,什么是CAN?,CAN 全称为Controller Area Network 即控制器局域网,是国际上应用最广泛的现场总线之一;最初CAN 被设计作为汽车环境中的微控制器通讯在车载各电子控制装置ECU 之间交换信息形成汽车电子控制网络比如发动机管理系统变速箱控制器仪表装备电子主干系统中均嵌入CAN 控制装置;一个由CAN 总线构成的单一网络中理论上可以挂接无数个节点,实际应用中节点数目受网络硬件的电气特性所限制。例如当使用Philips P82C250 作为CAN 收发器时同一网络中允许挂接110 个节点;CAN 可提供高达1Mbit/s 的数据传输速率这使实时控制变得
2、非常容易,另外硬件的错误检定特性也增强了CAN 的抗电磁干扰能力。,CAN 是怎样发展起来的?,CAN最初出现在80年代末的汽车工业中,由德国Bosch公司最先提出。当时,由于消费者对于汽车功能的要求越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线。提出CAN总线的最初动机就是为了解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。于是,他们设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上。1993年,CAN 已成为国际标准ISO11898(高速应用)和ISO11519(低速应用)。,CAN是一种多主
3、方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。当信号传输距离达到10Km时,CAN 仍可提供高达50Kbit/s的数据传输速率。由于CAN总线具有很高的实时性能,因此,CAN已经在汽车工业、航空工业、工业控制、安全防护等领域中得到了广泛应用。,CAN总线的主要特点,它是一种多主总线,通信介质可以是双绞线、同轴电缆和光纤,通信距离最远可达10km(5kb/s),最高速率可达1Mb/s(40m).CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。CAN
4、协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成,因此可以定义211或229个不同的数据块,让各节点通过滤波的方法分别接收指定标识码的数据。这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。,CAN总线的特点,数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节不会占用总线时间过长,从而保证了通信的实时性。在每帧中都有CRC校验及其它检错措施,保证了数据通信的可靠性。CAN总线
5、采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线以及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。网络上的节点可以定义成不同的优先级,利用接口电路中线与功能,巧妙地实现无破坏性的基于优先权的仲裁网络上的节点在错误严重的情况下,具有自动关闭总线的功能,CAN 是怎样工作的?,CAN 通讯协议主要描述设备之间的信息传递方式,CAN 层的定义与开放系统互连模型OSI 一致。每一层与另一设备上相同的那一层通讯实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。CAN 的规范定义了模型的最下面
6、两层:数据链路层和物理层。应用层协议可以由CAN 用户定义成适合特别工业领域的任何方案。已在工业控制和制造业领域得到广泛应用的标准是DeviceNet,这是为PLC 和智能传感器设计的;在汽车工业许多制造商都应用他们自己的标准。,CAN的工作原理,当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。CAN总线的报
7、文发送和接收。当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线
8、上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。,CAN的一些基本概念,报文 总线上的信息以不同的固定报文格式发送,但长度受限。当总线空闲时任何连接的单元都可以开始发送新的报文。,信息路由 在CAN系统里,节点不使用任何关于系统配置的信息(比如站地址)。以下是几个重要的概念:系统灵活性:不需要改变任何节点的应用层及相关的软件或硬件,就可以在CAN网络中直接添加节点。报文路由:报文的内容由识别符命名。识别符不指出报文的目的地,但解释数据的含义。因此网络上所有节点都可以通过报文滤波确定是否应对该数据做出反应。多播:由于引入了报文滤波的概念,任何数目的节点都可以接受报文,
9、并同时对此报文做出反应。数据连贯性:在CAN网络内,可以确保报文同时被所有的节点接受(或同时不接受)。因此系统的连贯性是通过多播和错误处理的原理实现的。,报文 总线上的信息以不同的固定报文格式发送,但长度受限。当总线空闲时任何连接的单元都可以开始发送新的报文。位速率:不同的系统,CAN的速度不同。可是在一个给定系统中,位速率是唯一的,并且是固定的。优先权:在总线访问期间,识别符定义一个静态的报文优先权。,远程数据请求:通过发送远程帧,需要数据的节点可以请求另一节点发送相应的数据帧。数据帧和相应的远程帧是由相同的标识符命名的。多主机:总线空闲时,任何单元都可以开始传送报文。具有较高优先权报文的单
10、元可以获得总线访问权。,仲裁:只要总线空闲,任何单元都可以开始发送报文。如果2个或2个以上的单元同时开始传送报文,那么就会有总线访问冲突。通过使用识别符的位形式仲裁就可以解决冲突。仲裁的机制确保信息和时间均不会损失。当具有相同识别符的数据帧和远程帧同时初始化时,数据帧优先于远程帧。仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送。如果发送的是“隐性”电平而监控到“显性”电平(见总线值),那么该单元就失去了仲裁,必须退出发射状态。,安全性:为了获得最安全的数据发送,CAN的每一个节点均采取了很强的措施进行错误检测、错误标定及错误自检。,错误检
11、测:为了检测错误,必须采取以下的措施:监视(发送器对发送位的电平与被监控的总线电平进行比较)循环冗余检查 位填充 报文格式检查错误检测的执行:错误检测的机制要具有以下的属性:检测到所有的全局错误 检测到发送器所有的局部错误 可以检测到报文里多达5个的任意分布错误 检测到一个报文长度低于15位的突发性错误 检测到一个报文里奇数个的错误 对于没有被检测到的错误报文,其残余错误可能性概率低于报文错误率4.710-11。,错误标定和恢复时间:任何检测到错误的节点会标志出已损坏的报文。此报文会失效并自动开始重新传输。如果不再出现新错误的话,从检测到错误到下一报文的传送开始为止,恢复时间最多为29个位的时
12、间。故障界定:CAN节点能够把永久故障和短暂扰动区分开,永久故障的节点会被关闭。连接:CAN串行通讯链路是可以连接许多单元的总线。理论上,可连接无数多的单元。但由于实际上受延迟时间或总线线路上电气负载的影响,连接单元的数量是有限的。,单通道:总线是由单一进行双向位信号传送的通道组成。通过此通道可以获得数据的再同步信息。要使此通道实现通讯,有许多方法可以采用,如使用单芯线(加上接地)、2条差分线、光缆等。这本技术规范不限制这些实现方法的使用,即未定义物理层。总线值:总线可以具有两种互补的逻辑值之一:“显性”位和“隐性”位同时传送时,总线的结果值为“显性”。比如,在执行总线的“线与”时,逻辑0代表
13、显性等级,逻辑1代表隐性等级。本技术规范不给出这些逻辑电平的物理状态(如电压和光)。应答:所有的接收器检查报文的连贯性。对于连贯的报文,连接器应答;对于不连贯的报文,接收器做出标志。,睡眠模式/唤醒:为了减少系统电源的功率消耗。可以将CAN器件设为睡眠模式以便停止内部活动及断开与总线驱动器的连接。CAN器件可由总线激活,或系统内部状态而被唤醒。唤醒时,虽然传输层要等待一段时间使系统振荡器稳定,然后还要等待一段时间直到与总线活动同步(通过检查11个连续的隐性的位),但在总线驱动器被重新设置为“总线在线”之前,内部运行已重新开始。为了唤醒系统上正处于睡眠模式的其他节点,可以使一特殊的唤醒报文,此报
14、文具有专门的、最低等级的识别符。(rrr rrrd rrrr;r=“隐性”d=“显性”),CAN 具有以下的属性,报文的优先权保证延迟时间设置灵活时间同步的多点接收系统宽数据的连贯性多主机错误检测和标定只要总线一处于空闲就自动将破坏的报文重新传输将节点的暂时性错误和永久性错误区分开来并且可以自动关闭错误的节点,CAN总线的网络结构,CAN总线也是建立在ISO参考模型基础上的,不过只采用了其中最关键的两层,即物理层和数据链路层.,物理层的主要内容是规定通信介质的机械、电气、功能和规程特性 数据链路层的主要功能是将要发送的数据进行包装,即加上差错校验位、数据链路协议的控制信息、头尾标记等附加信息组
15、成数据帧,从物理信道上发送出去,在接收道数据帧后,再把附加信息去掉,得到通信数据 媒体访问控制子层MAC:传输规则 逻辑控制子层LLC:报文的滤波和报文的处理CAN总线的物理层和数据链路层的功能在CAN控制器中完成,CAN-bus 规范,CAN-bus 规范(Version 2.0)CAN2.0A:CAN标准报文格式 CAN2.0B:CAN标准报文格式和扩展报文格式CAN-bus 技术规范技术规范的目的 定义数据链路层 定义CAN协议在周围各层中所发挥的作用,帧格式,二种不同的CAN帧CAN规范2.0B中引入第二种报文格式标准帧和扩展帧 具有11位标识符的CAN帧称为:标准帧 具有29位标识符
16、的CAN帧称为:扩展帧规定CAN 控制器必须有一个11 位的标志符,同时在2.0B 版本中规定CAN 控制器的标志符长度可以是11 位或29 位。遵循CAN2.0B 协议的CAN 控制器可以发送和接收11 位标识符的标准格式报文或29 位标识符的扩展格式报文。如果禁止CAN2.0B,则CAN 控制器只能发送和接收11 位标识符的标准格式报文,而忽略扩展格式的报文结构但不会出现错误,帧类型,报文传输由以下4个不同的帧类型所表示和控制:数据帧:数据帧携带数据从发送器至接收器。远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧。错误帧:任何单元检测到一总线错误就发送错误帧。过载帧:过载帧用以
17、在先行的和后续的数据帧(或远程帧)之间提供一个附加的延时。数据帧(或远程帧)通过帧间空间与前述各帧分开。,1、数 据 帧,数据帧由7个不同的位场组成:帧起始仲裁场控制场数据场CRC场应答场帧结尾数据场的长度可以为0。,数据帧结构,扩展帧格式,标准帧格式:具有11位标识符扩展帧格式:具有29位标识符两种帧格式的区别通过“控制场”(ControlField)中的“识别符扩展”位(IDE bit)来实现两种帧格式可出现在同一总线上,扩展数据帧结构,帧 起 始,它标志数据帧和远程帧的起始,由一个单独的“显性”位组成。只在总线空闲(参见“总线空闲”)时,才允许站开始发送信号。所有的站必须同步于首先开始发
18、送信息的站的帧起始前沿(参见“硬同步”)。,仲 裁 场,标准格式帧与扩展格式帧的仲裁场格式不同-标准格式里仲裁场由11 位识别符和RTR 位组成识别符位由ID-28ID-18-扩展格式里仲裁场包括29 位识别符SRR 位IDE 位RTR 位其识别符由ID-28.ID-0为了区别标准格式和扩展格式前版本CAN 规范1.0-1.2 的保留位r1 现表示为IDE Bit,识别符识别符标准格式 识别符的长度为11 位,相当于扩展格式的基本ID(Base ID)。这些位按ID-28 到ID-18 的顺序发送。最低位是ID-18,7 个最高位(ID-28-ID-22)必须不能全是隐性。识别符扩展格式 和标
19、准格式形成对比扩展格式,由29 位组成。其格式包含两个部分:11 位基本ID、18 位扩展ID。基本ID:基本ID 包括11 位。它按ID-28 到ID-18 的顺序发送。它相当于标准识别符的格式。基本ID定义扩展帧的基本优先权扩展ID:扩展ID 包括18 位。它按ID-17 到ID-0 顺序发送。,RTR 位(标准格式以及扩展格式)RTR 的全称为远程发送请求位(Remote Transmission Request BIT)RTR 位在数据帧里必须为“显性”,而在远程帧里必须为“隐性”。,扩展格式里,基本ID 首先发送,其次是IDE 位和SRR 位。扩展ID 的发送位于SRR 位之后。SR
20、R 位(扩展格式)SRR 的全称是“替代远程请求位”(Substitute Remote Request BIT)SRR 是一隐性位。它在扩展格式的标准帧RTR 位位置,因此代替标准帧的RTR 位。因此,标准帧与扩展帧的冲突是通过标准帧优先于扩展帧这一途径得以解决的,扩展帧的基本ID 如同标准帧的识别符。,IDE 位(扩展格式)IDE 的全称是“识别符扩展位”(Identifier Extension Bit)IDE 位属于 扩展格式的仲裁场 标准格式的控制场标准格式里的IDE 位为“显性”,而扩展格式里的IDE 位为“隐性”。,控制场(标准格式以及扩展格式),控制场由6 个位组成。标准格式的
21、控制场格式和扩展格式的不同,标准格式里的帧包括数据长度代码、IDE 位(为显性位)及保留位r0。扩展格式里的帧包括数据长度代码和两个保留位:r1 和r0,其保留位必须发送为显性,但是接收器认可“显性”和“隐性”位的组合。,数据长度代码(标准格式以及扩展格式),数据长度代码指示了数据场里的字节数量。数据长度代码为4 个位,它在控制场里发送。数据长度代码中数据字节数的编码缩写:d 显性;r 隐性,数据帧允许的数据字节数0,1,.,7,8其他的数值不允许使用,数 据 场(标准格式以及扩展格式),数据场由数据帧中的发送数据组成。它可以为08个字节,每个字节包含了8个位,首先发送MSB。,CRC 场(标
22、准格式以及扩展格式),CRC 场包括CRC 序列CRC SEQUENCE,其后是CRC 界定符CRC DELIMITER。,应 答 场(标准格式以及扩展格式),应答场长度为2个位,包含应答间隙的应答界定符。在应答场里,发送站发送两个隐性位。当接收器正确地接受到有效的报文,接收器就会在应答间隙期间向发送器发送一显性的位以示应答。应答间隙:所有接受到匹配CRC序列的站会在应答间隙期间用一个显性的位写入发送器的隐性位来做出回答。ACK界定符:ACK界定符是ACK场的第二个位,并且是一个必须为隐性的位。因此,应答间隙被两个隐性的位所包围,也就是CRC界定符和ACK界定符,帧 结 尾(标准格式以及扩展格
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 控制器 局域网 总线 CAN 协议 规范

链接地址:https://www.31ppt.com/p-2380852.html