CAN-bus现场总线基础教程【第1章】现场总线CAN-bus-CAN-bu应用层(4)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

广州致远电子有限公司文库资料©2017GuangzhouZHIYUANElectronicsStockCo.,Ltd.文章源自广州致远电子有限公司,转载或引用请注明出处1工业通讯-CANbus通信产品第1章现场总线CAN-bus1.1CAN-bus应用层物理层和数据链路层就像我们生活中完善的邮政系统,只要把信件交给他们,就能完成信息的收发和传递。而这些数据是什么用途及含义就属于应用层的工作了,就像邮递员并不关心信件内容是家书还是合同。而数据的含义只有应用层清楚,简单的说应用层就是规定设备的工作流程和数据的具体含义。相对于CAN-bus物理层与数据链路层的规范,应用层的种类就眼花缭乱了。全球许多著名厂商和协会组织针对各种应用领域制定了各具特色的应用层协议。其中在工业场合影响力较大的有CiA组织推广的CANopen协议和由ODVA组织推广的Devicenet协议。例如CANopen协议对设备上电过程、设备参数配置、I/O数据通信机制、错误处理机制,甚至连设备上LED指示灯如果工作都做了详细规定。符合协议规范的产品是可以互相替换的。用户在选择现场总线产品时,除了考虑设备功能和性能外,很重要的选择依据就是该设备符合哪种协议规范。因为一类应用系统中会存在各种功能的节点设备,而生产这些设备的厂家也很多。如果每个厂家都按自己定义的应用层标准来生产设备,那客户一旦选用A厂家的产品后就不能使用其它厂家的产品来替换了,而且要增加A厂家所没有的功能节点时将非常麻烦,甚至无法添加。例如某个用户使用了A厂家的电机驱动系统和PLC等设备组建了一条饮料灌装生产线,在使用一段时间后准备进行技术改造,想安装视频传感器等设备来提升生产效率,但是因为A厂家不生产这类视频采集设备,加上其网络的应用层通信协议不公开。该用户此时的处境就非常不妙了,他要么把整个生产线换掉,要么等A厂家研制出用户需要的产品。虽然应用层协议种类很多,但它们都有一些共性,总的来说现场总线网络中存在着以下几类数据。(1)实时数据,主要包括了设备的工作数据,例如电机驱动器中的位置数据、转矩数据等,它们具有很高的优先级,对传递时间也有要求。这类数据是现场总线应用中最主要的数据类型。为了提高通信效率,这类数据常采用无连接无应答的传输方式,发送方无需等待接收者的应答就可以发出下一条信息。(2)非实时数据,主要用于设备的参数配置和管理,以实现系统的组态(按应用要求配置各个设备的工作状态)。例如通信波特率的设定、节点ID的设定等。这类数据的优先级较低,通常是基于连接和应答机制的,发送方必需接到接收者的确认消息后才会发出下一条信息。(3)状态数据,主要用于网络管理和设备维护,例如主站要了解各个从站节点是否仍工作正常,从站节点也可以因为某些事件的出现来发送错误报文。通信过程中,节点与节点之间主要有以下两类数据传递模式。广州致远电子有限公司文库资料©2017GuangzhouZHIYUANElectronicsStockCo.,Ltd.文章源自广州致远电子有限公司,转载或引用请注明出处2工业通讯-CANbus通信产品(1)生产者消费者模式。这种模式与我们收听广播很相似,详见图1.1。广播电台无论是否有听众,它都会按预先的计划在特定频率发送节目,而听众则会根据自己的需要选择收听特定的频道,所以同一个节目可能会有很多人同时收听。这种模式具有高效的特点,上面的实时数据常采用这种模式传输。(2)客户端服务器模式。这种模式是一对一的,与我们去银行的ATM柜员机办理业务很相似,详见图1.2。ATM柜员机就相当于服务器,顾客就是客户端,柜员机在同一时刻只能为一位顾客提供服务,其他客户只能在后面排队等候。而且在服务之前他们通常需要建立联系,在业务办理结束后也通常需要断开联系,就如下面的一段操作过程。这种模式可以实现复杂的业务操作,前面的非实时数据(如设备配置)常采用这种模式。顾客:插入银行卡;ATM:请输入密码;顾客:输入密码,并确定;ATM:正确,请选择所需办理的业务;(开始进行业务操作);顾客:业务办理完成,选择退卡;ATM:退出银行卡,并提示感谢使用。应用层规范内容较多也较复杂,关于应用层的进一步学习可以参阅相关资料。在本章的后面会有一个让用户自定义应用层协议的实验,通过这个简单的应用层协议,您可以实现多个节点之间的联动控制。图1.1生产者消费者模式图1.2客户端服务器模式

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功