第十二章CANbus应用层协议全解ppt课件.ppt
《第十二章CANbus应用层协议全解ppt课件.ppt》由会员分享,可在线阅读,更多相关《第十二章CANbus应用层协议全解ppt课件.ppt(53页珍藏版)》请在三一办公上搜索。
1、共52页,1,第十二章 CAN-bus应用层协议,12.1 CAN-bus应用层协议简介,12.2 常用的CAN-bus应用层协议介绍,12.3 如何购建CAN-bus应用层协议,12.4 基于CAN-bus的iCAN协议,共52页,2,12.1 CAN-bus应用层协议简介,一、基于CAN-bus的通信模型,1、CAN-bus现场总线的应用特点,用CAN-bus构造的网络功能并不复杂;网络节点多为传感器、控制器、执行器等;网络传输的数据量不大;要求较高的实时性和可靠性。,CAN-bus协议参考模型仅仅包含网络通信参考模型的物理层和数据链路层方面的协议,其本身只能保证节点之间数据的及时和可靠地
2、传输。但是各个节点之间的关系和功能则没有定义,只能由应用确定。为了同类应用开发的控制产品具有开放性和可互换性,必须根据应用特点,构造CAN-bus通信的参考模型。,2、基于CAN-bus通信的参考模型,共52页,3,根据CAN-bus总线的应用特点,CAN-bus通信参考模型一般把OSI模型中的其它层有关功能协议全部放在一层定义,这一层一般把它统称为应用层,有些协议的通信模型又把它进一步分为应用层和用户层,如图12-1所示。,总线协议由专用芯片完成,协议定义好后一般由软件完成,共52页,4,3、应用层协议及其主要功能,网络控制与管理;大于8个字节的数据块传输;数据发送的确认;不同的物理节点的编
3、址;帧报文内容及其含义的定义;网络节点的监控,节点故障的诊断和标识;,二、常用CAN-bus应用层协议介绍,1、常用的CAN-bus高层协议,应用层协议就是定义了如何实现应用层功能,满足信息传递要求的具体规范。基于CAN-bus的应用层协议其主要功能为:,DeviceNet协议 制定组织:ODVA;CAL协议 制定组织:CiA;CANOpen协议 制定组织:CiA;CANKingdom协议 制定组织:Kvaser;SDS协议 制定组织:Honeywell;J1939协议 制定组织:SAE,共52页,5,2、CAN-bus标准应用层协议的特点,一个开放的、标准化的CAN-bus高层协议;制定属于
4、特定行业的CAN-bus应用方案;支持不同厂商设备的互用性、可交换性;完善地定义标准设备模型;开放扩充自定义设备的接口;对总线仲裁、数据交换、错误处理有明确的限定。,参考资料或网站:,www.odva.org;www.can-cia.de;,共52页,6,12.3 如何购建CAN-bus应用层协议,一、CAN报文的分配,1报文ID的分配,CAN报文标识ID决定了报文相关的优先权和报文的等待时间,报文标识符分配的方法被认为是基于CAN-bus系统的主要结构元素。在一个网络中,通常只选取一种报文类型,一般情况下,扩展帧ID可以容纳较多的数据和信息。,2CAN报文数据的分配,CAN报文为短帧报文,最
5、多可以传送8个数据字节。在协议中的报文数据部分主要用于传送与功能码相关的参数,以及特定的功能数据。由于在实际应用中需要传送大于8个字节的数据,因此对于报文数据部分的分配需要考虑分段传送的方法。另外,在报文数据部分时要充分利用报文数据区的8字节长度,合理分配特殊的功能码和有效数据,尽量在每帧报文中携带尽可能多的有效数据。,共52页,7,3报文格式的定义,应用层协议的报文格式的定义,实质是对CAN报文的分配规则进行详细地描述,即CAN报文的ID和Data定义。,二、CAN上层网络数据通信的实现,1数据通信模型(数据交换规则),可用命令/响应模型以及生产者和消费者或事件触发模型,如图12-2、12-
6、3所示。,共52页,8,2、数据通信协议(数据交换的基础,规定报文识别和接收的规则),面向节点的协议,在这种协议中,两个或更多节点之间的数据交换是基于对节点寻址实现的。媒介中传输的报文包含目的节点地址,有时也包含源节点地址。另外,有些节点地址具有成组和广播功能。这种协议是连接定位和确认数据通信的基础。显然,这种协议要求所有节点都要有地址。,面向报文的协议,面向报文协议的数据传输是建立在帧或报文标识符的基础之上的。报文通过节点标识符进行传输,而报文本身带有一个唯一的特定标识符(报文标识符)。报文的目的地并不根据标识符进行定义,而是单独由节点来决定是否接收传输的报文。这样一个报文就可能不会被任何节
7、点接收,或者被一个或多个节点所接收。CAN-bus本身具有这个功能,它的上层协议也可以使用这种方法实现数据传输。,共52页,9,三、CAN网络管理,网络管理的主要任务是检测和显示网络的中各节点通信状态,通过协调服务方式控制网络上节点的工作状态。一旦网络通信出现异常,应该能采用适当的方式恢复通信。 一般网络管理可以包括以下两部分:,节点控制,初始化参加分布控制的节点,迫使这些节点处于同步工作状态。,错误控制,在应用层协议中通过规定节点在网络中启动时必须执行的状态图,详细规定各节点的状态切换的规则,通过特定的报文对节点状态进行控制。同时在协议中,采用具体措施对每个节点的通信均进行监控,保证在通信异
8、常时,通过适当的方式能够恢复通信。,共52页,10,四、CAN网络设备建模,在网络中除了定义通信以外,还要求对网络中相似设备的功能类型进行定义,以满足对设备的可交换性的需求。除了设备的功能性描述外,设备模型还必须提供关于设备的版本号、状态、诊断信息、通信和配置参数的描述。,1、设备建模内容,2、设备建模原则,设备类型特点的统一描述,即设备基本框架描述的方法,包括设备功能及标识的描述等;设备必备功能,即特定设备必须具有的功能;设备可选功能,即设备除必备功能以外,可选的功能;扩展性的考虑,即对设备功能可扩展性的考虑。,共52页,11,12.4 基于CAN-bus的iCAN协议,一、iCAN协议的通
9、信参考模型,iCAN应用协议详细地定义了CAN报文中ID以及数据的分配和应用,并定义了设备的IO资源和访问规则,iCAN协议参考模型如图12-4所示。,共52页,12,二、iCAN的报文格式,iCAN协议报文格式定义了iCAN报文的标识符以及数据部分使用原则和功能含义,见表12-1和12-2。,共52页,13,1、iCAN报文标识符的分配,(1)节点编号,在通信报文的标识符中指定了发送节点(源节点SrcMACID)和接收节点(目标节点DestMACID)的编号。源节点和目标节点各有8个ID位,但是它们的最高两位必须为0,取值范围为003F。另外,源地址0 xFF是保留地址,不用;目标地址0 x
10、FF是广播地址。,(2)ACK(C/R),ACK是应用帧类型标志位,占用CAN的ID的1位,为0的应用帧是命令帧,必须响应,假如是广播帧,则无意思;为1的应用帧是响应帧。,共52页,14,(3)FUNC ID,FUNC ID(功能码)占用CAN的ID的4位,用于指示报文所需要实现的功能,接收报文的节点根据报文中的功能码进行相应的处理,功能码的含义见表12-3。,共52页,15,(4)Source ID,Source ID(资源节点地址编号)占用CAN的ID的8位,用于表示节点内部的单元。接收报文的节点根据报文中资源地址标号对设备内部对应的单元进行操作,节点内的资源单元一般只有256个。,2iC
11、AN帧数据部分定义,在iCAN协议中报文的数据部分主要用于传送与功能码相关的参数。帧的数据区,最多可以有8个字节数据;不同位置的字节具有不同的功能,可以分为2个部分,见表12-4。,共52页,16,(1)CAN帧数据第一个字节Byte0(SegFlag),分段代码 (SegFlag)占用CAN数据帧的第一个字节Byte0,用于传输大于7个字节长度的数据,其具体含义见表12-5。SegPolo表示分段标志,占用SegFlag的最高2位;SegNum表示分段编号,占用SegFlag的最低6位,见表12-6。,共52页,17,当传送的数据长度不越过7个字节时,帧数据部分中SegFlag0 x00。当
12、报文分帧传送时,接收节点(目标节点)只在接收完报文全体的最后1帧后才做出响应。采用分段传输时,分段传送的最大报文长度为647448个字节。,共52页,18,(2)Dyte17,报文数据中的字节Bytel7通常作为功能码的参数,在某些特定的帧中, 数据字节Byte1可以具有以下功能:LengthFlag在“读端口”命令中出现,表示需要读出的字节数;ErrID(错误响应码)在错误响应报文中使用,用于说明错误响应的类型(见表12-7);,二、iCAN的报文传输协议,1、iCAN协议通信模式,(1)主从通信模式,点对点方式是主站与一个从站设备进行通信;广播方式是主站发送请求给所有的从站;,在iCAN网
13、络中,主从通信模式用于主站设备对从站设备的配置、管理等数据的传送,也可以用于向从站设备请求或者分配IO数据。,共52页,19,(2)事件触发通信模式,在iCAN协议中也采用事件触发通信模式。在该模式下,从,共52页,20,站设备可以定时循环向主站发送I/O数据,或者在特定状态下向主站上传I/0数据。但是,iCAN网络中的设备不能够同时支持这两种传送模式。,2、iCAN协议报文处理流程,当从站应答主站时,功能码域表明是一个正常的回应还是异常回应(有错误产生)。正常回应时,从站返回原样的功能码;异常回应的时候,功能码为异常功能码(0X0F),同时在响应报文中返回异常代码。,共52页,21,共52页
14、,22,3iCAN报文传输协议,(1) iCAN帧格式,“命令帧”格式:,“正常响应帧”格式:,共52页,23,“出错响应帧”格式:,错误类型代码见表12-7。,(2)iCAN分段帧格式,如果采用分段传输,则第1分段的SegFlag0 x40,最后一个分段的SegFlag0 xC0的值。当报文分帧传送时,接收节点(目标节点)只在接收完报文全体的最后1帧后才做出响应。,4、iCAN报文传输的一般规则,在iCAN通信协议中报文传输遵从“命令/响应”的模式,如图12-12。,共52页,24,(1)MAC ID检测帧,MAC ID检测帧是指命令帧中功能码(FuncID)为0 x07的报文。该报文由任何
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第十二 CANbus 应用 协议 ppt 课件
链接地址:https://www.31ppt.com/p-1419645.html