论文导读::本文通过对Modbus的研究,利用LabView平台实现了客户端程序,完成了对网络上支持该协议的设备的访问。以研华公司提供的ADAM-6050为例,实现了对其的实时远程监控,以及灵活配置。
论文关键词:Modbus,LabView,远程监控
0引言
随着工业的飞速发展,工业现场设备的增多且分散,我们需要从各类设备中读取实时信息,并根据这些信息发送相关命令去控制设备的运作。网络的出现给这种控制方式带来了极大的便利,让人们可以在任何一台主机上访问到网络上的各类设备,实现远程监控LabView,而Modbus作为工业控制协议的一种,产生于这样的大环境中,自然也具备了与网络相通的性能,并具有很强的开放性和可扩充性,通过它,控制器之间,控制器经由网络可以和其它设备进行通信,因而不同厂商生产的控制设备可以简单可靠地连成网络,进行系统的集中监控。
1 Modbus通信协议
Modbus是Modicon公司为其PLC设计的一种串行通信协议,此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录论文怎么写。下图所示是简单的Modbus传输模型。
从图上可以看出通信使用主—从技术LabView,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。而当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus协议发出。在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。

所发送的消息帧包括地址域,功能代码,数据域,错误代码,其中地址域唯一标识了网络上的一台控制器,功能代码指明了所要询问的内容,数据域的长度与内容会随着功能代码的不同而变化LabView,在协议中都有详细的说明论文怎么写。
Modbus分为两种传输模式,ASCII和RTU模式,其帧结构分别如下图所示:


ASCII模式中,每8bit作为2个ASCII字符发磅,以冒号字符为起始位,控制器不断侦测冒号字符,并解码地址域,判断是否发给自己的,如果是,则接收其它域直到回车换行。消息帧使用LRC进行错误检测。
RTU模式中,每8bit包含两个4bit的十六进制字符,相比上种模式LabView,能在相同的波特率下传送更多的数据,在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束。一个新的消息可在此停顿后开始,并且它采用的是CRC检验。
2 LabView网络编程
随着网络的迅速发展,通过网络进行数据共享是各种软件和仪器的发展趋势,与传统仪器相比,LabView设计的虚拟仪器的优势是具有强大的网络通信功能,实现的技术有以下几种:使用网络通信协议编程实现,可现成使用的协议有TCP、IP、串口通信协议、均线网络协议等;使用DataSocket技术;使用客户端远程控制服务端发布的程序,包括远程面板和浏览器访问;利用发布共享变量进行网络通信。本文将采用共享变量实现网络通信,下面将介绍实现通信的步骤。
1.创建Modbus IO server
LabView中提供了可以直接创建ModbusIO server的express VI,如下所示,我们只需要配置其相应参数即可LabView,如下所示,下图中,所选择的是ModbusEthernet IO server。
 
其中,Processname指的是所要创建的server属于哪一个共享变量包中,IPAddress指的是它的地址,这些数据都可以通过配置文件来灵活配置论文怎么写。
2.创建共享变量
共享变量是LabView8为简化网络编程迈出的巨大一步,它可以设定其与网络中的哪台控制器的哪个变量连接,也可以与Modbus server 和OPC server相连接,用户不用了解任何网络协议,就可以轻松实现数据交换。
在工程中创建一个共享变量,它必须存在于一个lvlib之中,进行相关的设置LabView,为了方便,本文将共享变量和server放在同一个lvlib中,如图五所示,图中红框部分指的是该共享变量绑定了刚才用express VI所创建的Modbusserver,并指向了一个确定的地址。在程序之中,LabView也提供了相应的工具让用户实现动态绑定,通过共享变量的属性节点中的url属性,则可以随时改变该共享变量的绑定地址,可以读出创建好的Modbus IO server的I/O server url,再加上所要绑定的地址,即可组成图五红框中的path,如图六所示,

3结束语
本文利用LabView提供的便捷平台LabView,实现了对支持Modbus协议的设备的网络访问,程序可以访问设备上的各个端口值,并可以适应设备的变化,不管外接的是什么设备,只要其支持Modbus,只需要修改相应的配置文件即可,程序可以导入它进行动态的绑定和属性设置,可移植性较高,可以适应工业现场中设备种类多的环境。
当然,还有很多可以深入研究的地方,本文只是创建了Modbus Server,接下去还可以创建OPCserver等,用同样的手段也可以获得更多的兼容性。
参考文献:
[1]邹红利.简化的MODBUS通讯协议在实时通讯控制中的应用 武汉工业学院学报2009 /28 /04
[2]孙璐.Modbus/TCP协议在远程监测中的应用, 计算机软件及应用, 2009 /28 /04
[3]侯国屏,王珅等LabView7.1编程与虚拟仪器设计 清华大学出版社 2005.2 ISBN 7-302-10284-1
[4]ModiconModbus Protocol Reference Guide
MODICON, Inc., IndustrialAutomation Systems One High Street North Andover, Massachusetts 01845
|