您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 4.3-如何构建CAN-bus应用层协议
如何构建CAN-bus应用层协议目录CAN应用层协议的类型构建现场总线网络CAN报文的分配CAN网络数据通信的实现构建现场总线网络构建CAN-bus应用层协议属于构建CAN-bus现场总线网络的一部分。这里先讨论构建一个现场总线网络需解决的问题:传输速率、信息容量、优先等级、节点容量高电磁干扰环境下的可靠数据传输最大距离传输时延时时间的确定网络监控和故障诊断网络的容错技术?CAN-bus的特点构建现场总线网络问题的解决,与所选用的现场总线特性密切相关。CAN-bus现场总线具有以下特性:报文短,每个报文最多传输8个字节数据引入报文滤波,可根据报文标识符决定接收或屏蔽该报文不使用源地址和目标地址,仅用报文标识符指示功能、优先级具有可靠的错误检测和处理机制,具有自动重发功能成本低多主结构,总线利用率极高传输距离最大10km,传输速率最高1Mbps节点严重错误时,具有自动退出总线功能CAN-bus特性技术问题解决在CAN-bus网络中,构建现场总线网络遇到的问题都能够得到良好的解决。总线传输信息的速率、容量、优先级、节点容量等1CAN-bus传输速率最高达1Mbps每个报文可携带8字节数据通过报文标识符指示报文优先级节点个数可达110个(采用Philips公司的收发器),使用中继器/网桥的应用,节点个数不受限制高电磁干扰环境下的可靠性传输2CAN-bus总线采用差分信号传输使用15位CRC校验,数据出错概率为4.7×10﹣11具有完善的错误检错机制技术问题解决最大距离传输时延时大小的确定3CAN-bus帧结构有严格规定,能够确定最大延时网络容错技术4CAN-bus具有可靠的错误检测和处理机制发送不成功时,具有自动重发功能节点出现严重故障时,具有自动退出总线功能网络的监控和故障诊断功能5可通过制定严谨的CAN-bus应用层协议实现CAN总线协议设计要素对于CAN-bus总线的现场网络,在总线协议的设计过程中,主要考虑以下要素:CAN网络数据通信的实现CAN报文的分配网络管理设备建模考虑要素√√目录CAN应用层协议的类型构建现场总线网络CAN报文的分配CAN网络数据通信的实现CAN报文分配CAN报文的分配是各种基于CAN-bus的应用层协议中最基础的组成部分,主要包含两个方面:仲裁段数据段ACK段帧起始控制段CRC段帧结束标准帧1ID[0:10]111114Data0~64……扩展帧111418ID[0:10]1111ID[11:29]Data0~64……1报文标识符的分配1报文数据的分配2报文标识符分配报文标识符分配的方法被认为是基于CAN-bus的系统的主要结构元素,它将影响以下几个方面:报文滤波的适用性通信结构的适用性报文相关的优先级报文发送的等待时间标识符的使用效率……CAN总线包含两种类型CAN报文,在一个网络中通常只选择一种报文类型。标准帧(11位标识符)扩展帧(29位标识符)可以容纳较多的数据和信息报文数据分配CAN报文最多可以传送8个字节数据,这8个字节数据主要用作于功能码相关的参数和特定的功能数据。其分配时主要考虑两个方面:传送大于8个字节数据时,需要分段传送,例如:Byte1Byte2...…ByteNN8发送时:CAN帧1Byte1~8CAN帧2Byte9~16CAN帧KByte(N-8)~N...…充分利用8个字节数据,使每个帧携带尽可能多的信息。...…8字节数据利用率目录CAN应用层协议的类型构建现场总线网络CAN报文的分配CAN网络数据通信的实现数据通信的实现应用层协议中数据通信的实现分为两个部分:数据通信模型和协议类型。数据通信模型决定数据交换的规则,例如命令-应答模型、生产者-消费者模型等。协议的类型它是数据交换的基础,规定报文识别、接收的规则。例如面向节点、面向报文等。命令-响应模型在一般的通信过程中,经常被采用的通信模型是命令-响应模型。主控设备受控设备命令接收执行执行结果应答优点:受控设备对服务进行确认,数据传输可靠性高缺点:通信只能由主控设备发起,总线利用率比较低生产者-消费者模型CAN报文的传输采用“生产者-消费者”模型,设备在没有被请求或定制情况下,将消息以多播/广播形式发送给其他设备。生产者消费者1消费者2消费者3消息多播/广播形式发送消息消息消息每个消费者都可选择接收或忽略消息由于CAN-bus具有以下特性:多主结构;基于优先级的总线访问;无破坏性为仲裁机制。因此,CAN-bus应用层可考虑采用“生产者-消费者”模型,另外还可采用“命令-响应”或事件触发模型。目录CAN应用层协议的类型构建现场总线网络CAN报文的分配CAN网络数据通信的实现面向节点的协议数据通信协议可以划分为“面向节点”和“面向报文”两种类型。在面向节点的协议中,两个或更多节点之间的数据交换是基于对节点进行寻址实现的。...…节点1节点2节点3节点4每个报文中包含目的或源地址,这个地址指向的是某个或一组节点节点根据报文包含的地址是否符合来决定是否接收面向报文的协议在面向报文的协议中,数据交换是建立在报文标识符的基础之上的。每个传输的报文包含一个唯一的标识符来标识它自身。...…节点1节点2节点3节点4每个报文中包含一个唯一的标识符,该标识符标识报文自身节点通过判断报文的标识符来决定是否接收在错误处理上,面向报文的协议使用“出错通知”的原则取代确认机制。CAN网络数据通信协议选择由CAN-bus特性可知,CAN报文是通过报文标识符进行识别的,因此从某种意义上说,CAN-bus协议是面向报文的协议。然而,CAN-bus的协议规范并没有规定应用层。在制定CAN-bus应用层协议时,通常综合两者优势,既能提高网络通信效率,又能保证通信的可靠实现。面向报文的协议优势:可提高网络通信效率面向节点的协议优势:可保证通信的确定性
本文标题:4.3-如何构建CAN-bus应用层协议
链接地址:https://www.777doc.com/doc-6058166 .html