基于Modbus TCP和WEB的实时监控系统设计
2014-09-06张乾蔡昌新
张乾,蔡昌新
(长江大学 电子信息学院,荆州 434023)
基于Modbus TCP和WEB的实时监控系统设计
张乾,蔡昌新
(长江大学 电子信息学院,荆州 434023)
为了实时、便捷地了解测控现场设备运行的状况,设计了一种基于Modbus TCP和WEB的实时监控系统。该系统设计基于dsPIC30F6014单片机,实现对采集模块的控制,并通过ASP.NET创建的动态WEB浏览器和SQL强大的数据库功能完成实时监控。结果表明,该系统能快速、方便、实时地动态显示设备的各项运行指标。
Modbus TCP;PIC30F6014单片机;ASP.NET;WEB浏览器;实时
引 言
随着自动化行业和控制技术的不断发展和进步,现场设备之间的通信不再仅仅局限于设备与控制器之间,人机之间的交互也越来越普遍。现场总线作为信息传输的主干道,已经不再局限于现场的短距离通信,其应用规模日益扩大、复杂化,人们对现场设备的监控也提出了越来越高的要求。封闭的总线环境已经不能满足现代自动化控制的要求,为了降低设备的维护成本,提高企业和公司的生产效率,需要对现场设备的运行进行实时的监测和控制。
近年来,大量先进的远程监控技术开始应用于现场总线和远程客户端的交换,但Modbus协议目前还仅限于现场总线上,只有基于TCP/IP的协议才能通过以太网实现超远距离的传输,为此ModbusTCP/IP应运而生。笔者通过对ModbusTCP协议[1]的研究,将油井现场采集的数据通过以太网、WiFi等设备传送到远距离的客户端,并通过浏览器终端实时地显示现场设备的运行状况,为客户提供一种远程实时监控的解决方案。
1 监控系统的总体设计
本监控系统的设计原理:利用dsPIC30F6014A[2]单片机搭载底层的硬件电路采集数据,采用Modbus TCP/IP协议通过无线收发器传输至Internet,在此基础之上,利用C#语言编程,结合ASP.NET创建的动态WEB页面和SQL Server数据库的访问链接技术,设计了一种实时监控的WEB平台,达到了对现场设备的实时监控的目的。
实时监控系统主要由现场采集系统、数据传输、数据库系统、客户端系统4部分组成,其总体示意图如图1所示。
图1 系统总体示意图
在本监控系统中,现场采集系统主要由单片机系统和RTU组成,单片机系统采集数据并传给RTU,RTU将数据进行存储,并随时等待服务器端的数据请求命令。当收到服务器端数据请求命令时,RTU根据传输的距离选择不同的传输方式,近距离传输选用无线模块传输,远距离传输选择Internet网络传输,数据库服务器对上传的数据进行分析和判断,将符合信息帧格式的数据进行处理并存储在数据库中。同时,采用B/S模式,浏览器终端用户可通过在浏览器地址栏输入服务器IP,以动态网页的形式浏览、查询多个设备数据;享有权限的管理人员可对生产现场设备进行远程管理和控制。只要有网络的地方就能使用该系统,实现对现场设备的数据实时监控。
2 硬件原理设计
图2为下位机硬件原理框图。其核心是dsPIC30F6014A单片机,主要由数据采集模块、电路保护模块、传输模块和系统配置模块组成。传感器对现场数据进行采集,通过A/D转换送到单片机,单片机经UART串口[3]和无线模块将数据传送到嵌入式TCP/IP协议串口服务器,并通过Internet上传至数据库服务器中存储。浏览器终端可以通过WEB服务器访问数据库服务器了解现场设备的运行状态。为了保证系统的安全可靠性,在设计中添加了过流、过压、和防雷击等保护电路。硬件实物图如图3所示。
图2 下位机硬件原理框图
3 系统软件设计
系统软件的总体结构如图4所示,作为监控系统的管理人员,在浏览器终端可以实现用户管理、数据处理、浏览器实时显示当前数据和历史数据查询4个功能模块的操作。在用户管理界面,可以实现密码设置、用户添加和权限设置等功能;在数据处理中,管理人员可以对上传的数据进行存储备份,并保存到数据库服务器中,以供浏览器终端访问;在WEB平台中,可以对上传的数据进行实时的显示,对历史数据可以进行随时查询和曲线分析。
4 Modbus TCP协议
Modbus TCP 协议以一种非常简单的方式将Modbus帧[4]嵌入到TCP帧中,使其成为工业以太网应用层协议,并以其简单性、开放性、实时性及数据传输量大等特点,在工业自动化领域得到广泛的应用。
Modbus TCP 协议规定每个控制器都需要有自己的地址,按地址识别发来的消息。如果需要回应,则控制器生成反馈信息并用Modbus TCP协议帧发出,但格式必须严格遵守协议规定,其应用数据单元(ADU)由MBAP报文头、功能码和数据域3部分构成,如图5所示。
图3 硬件实物图
图4 系统软件功能图
图5 Modbus TCP/IP 帧格式
5 数据传输的实现
5.1 现场与服务器端的数据传输
当油井分布较分散,传输距离比较远且超过1 km时,可以使用GPRS网络进行传输;当油井分布比较集中,传输距离近,不超过1 km时,可选择使用无线模块进行组网传输[5]。
现场与服务器端的数据传输流程如图6所示,在系统运行时应首先启动数据库服务器、初始化套接字库。建立通信套接字后,服务器进入端口监听状态。当有现场终端向服务器发出连接请求时,服务器开一个线程建立连接,并启动数据请求定时器。当定时时间到时,服务器向已建立连接的现场终端发送ModbusTCP协议请求帧格式的数据请求。现场终端在接收到数据请求后,对信息帧格式进行分析,如果符合协议,则将数据按照ModbusTCP协议响应帧格式上传,否则不响应。
图6 现场与服务器端的数据传输流程图
5.2 浏览器端与服务器端的数据传输
B/S模式是WEB兴起后的一种网络结构模式,即浏览器/服务器,与C/S模式相比,具有可以随时随地进行查询和浏览、维护简单方便、更新简单以及共享性强等特点,符合实时网络监控系统的发展要求。浏览器端与服务器端的数据传输采用的就是B/S模式。
B/S模式的工作流程如图7所示。当客户端通过浏览器终端访问数据库服务器时,首先浏览器端通过Internet发出一个WEB请求,当WEB服务器收到请求后,将请求交给ASP.NET Framework,此时ASP.NET Framework会向数据库服务器请求合适的源代码文件。数据库服务器将源代码的内容返回给ASP.NET Framework,后者执行源代码生成HTML输出返回给WEB服务器,这时WEB服务器会将请求的文件以动态网页的方式将HTML显示在计算机浏览器页面上。
图7 服务器与浏览器端的工作流程
结 语
[1] 关学进.基于Modbus_TCP工业以太网的自动化控制系统[J].电子测试,2011,4(4).
[2] 刘和平.dsPIC通用数字信号控制器原理及应用——基于dsPIC30F系列[M].北京:北京航空航天大学出版社,2007.
[3] 刘举涛.基于Modbus通讯协议的远程测控设计[J].导弹与航天运载技术, 2012(2):50-53.
[4] 王琼玫.一种基于Modbus_TCP协议栈的远程监控系统的设计[J].长江大学学报,2013,10(7).
[5] 郑丰收.基于MODBUS和TCP_IP协议的温湿度监控系统[J].中国仪器仪表,2011(10):53-56.
[6] 陈明榜.一种基于Modbus通信的泵站监控系统[J].水电自动化与大坝监测,2006,12,30(6).
张乾(研究生),主要从事自动化检测与仪器仪表工作;蔡昌新(副教授),主要从事计算机控制和自动化检测方面的研究。
Real-time Monitoring System Based on Modbus TCP and WEB
Zhang Qian, Cai Changxin
(Electronics and Information College,Yangtze University, Jingzhou 434023,China)
For real-time and easy understanding of the control field devices running condition,the author designs a real-time monitoring system based on Modbus/TCP and WEB. The system design is based on dsPIC30F6014 microcontroller to control the collection module, and create dynamic WEB browser through ASP.NET and SQL powerful database function completes online debugging. The results shows that the system can fast, convenient, real-time dynamic display the running indexes of the equipment.
Modbus TCP; PIC30F6014 MCU;ASP.NET; WEB browser;real time
TP277
A
迪娜
2013-11-12)