粮食物流园区设备间温湿度监测技术IP化研究
2020-02-14阎磊马宏琳
阎磊 马宏琳
摘 要:大型粮食物流园区建设是粮食现代物流的重要发展方向,基于TCP/IP协议架构的网络综合布线是粮食物流园区建设的基础性工程,网络机房设备间是综合布线的重要组成部分,有效监测其环境运行温湿度是保障整个园区计算机网络正常运行的重要基础。文章研究了设备间温湿度检测技术的IP化方法,将传统的RS485温湿度监测手段和TCP/IP协议结合起来,发挥设备间TCP/IP协议接入的优势,构建了B/S架构的设备间温湿度监测系统,对系统的设计分析和实现过程进行了说明,给出了应用实例,效果良好。
关键词:TCP/IP;温湿度;Socket
中图分类号:TP311 文献标志码:A 文章编号:2095-2945(2020)02-0016-03
Abstract: The construction of large-scale grain logistics park is an important development direction of modern grain logistics. Network integrated wiring based on TCP/IP protocol architecture is the basic project of grain logistics park construction. Network equipment room is an important part of integrated wiring, effectively monitoring its environment. Operating temperature and humidity arean important basis for ensuring the normal operation of the entire campus computer network. In this paper, the IP method of temperature and humidity detection technology between devices is studied. The traditional RS485 temperature and humidity monitoring method and TCP/IP protocol are combined to take advantage of the TCP/IP protocol access between devices, and the B/S architecture device is constructed. The inter-temperature and humidity monitoring system explains the design analysis and implementation process of the system.
Keywords: TCP/IP; temperature and humidity; Socket
引言
国家发展改革委2007年发布的《粮食现代物流发展规划》中明确提出“发展粮食现代物流,实现粮食散储、散运、散装、散卸(即‘四散化)的变革,提高粮食流通自动化、系统化和设施现代化水平,对提高粮食流通效率,降低粮食流通成本,保障国家粮食安全具有重要意义[1]。”国务院2014年发布的《关于建立健全粮食安全省长责任制的若干意见》(“粮安工程”)中也指出要“组織实施粮食收储供应安全保障工程,将粮食仓储物流设施作为重要农业基础设施抓紧建设[2]。”大型粮食物流园区建设是实现“四散化”目标的重要载体,是推进“粮安工程”建设的有效途径。
近年来,我国各粮食物流重要节点纷纷建立了大型的粮食物流园区,在这些园区建设中,信息技术得到了广泛应用,计算机网络综合布线作为信息技术的基础工程,也得到了广泛应用。网络机房设备间是在每一幢大楼的适当地点设置电信设备和计算机网络设备、以及建筑物配线设备、进行网络管理的场所[3],为了保证数据和网络通信的畅通,设备间的设计、建设、运行管理均有严格的规范要求。国家标准《建筑与建筑群综合布线系统工程设计规范》(GB/T 50311-2000)中明确了设备间的温湿度要求:设备间室温应保持在10~30℃之间,相对湿度应保持10%~80%,并应有良好的通风[3],设备间内的各种设备也要求明确的温湿度运行环境以便保证设备的正常运行。
在大型粮食物流园区建设中,对网络核心机房的环境要求比较注重,一般都配备了较好的精密空调等环境设备,但是在大量接入设备间内,往往没有配置精密空调等环境设备,也没有温湿度的实时监控设备,常常采取维护人员到现场测量环境温湿度。对大量设备间的温湿度监控缺失,容易出现因温湿度超标引起设备运行故障,而温湿度监控不到位也使维护人员却难以预知此类故障。因此,有必要建立一套覆盖所有设备间的温湿度监测系统,实现对环境温湿度的实时监测。
1系统分析及设计
大型粮食物流园区的众多机房设备间一般分布在不同建筑物的不同楼层、不同位置,相互间距离远,需要在各个设备间安装温湿度采集设备,采集实时的温度和湿度数据,并能够通过某种途径传输至远端的数据采集中心,并进行输出显示,对于超过阈值的数据还应该能够进行报警。
通过上述分析,系统应包括前端数据采集、传输网络、后端数据存储处理、终端数据查询显示等几个层次。
其中“前端数据采集”在最底层,负责在上层程序控制下完成温湿度数据的采集,目前,常见的温湿度传感器大都采用工业控制的RS485或RS232串行通讯协议和接口形式,一般采用MUDBUS协议进行数据通信,难以进入TCP/IP网络。近年来,工业现场IP化趋势日渐明显,即采用串口转换设备将RS485或RS232接口转换为RJ45的以太网接口,实现TCP/IP协议和串口通讯协议的双向转换,从而将串口设备接入到标准的TCP/IP网络中来,常见的转换设备即串口服务器设备;
“传输网络”是进行控制指令和数据传输的链路和通道;“后端数据存储处理”负责向前端发送数据采集指令,读取接收采集的数据,对数据进行存储和处理,为终端查询显示提供服务,此外还负责系统参数配置和管理;“终端数据查询显示”负责向维护人员和管理人员提供系统使用界面,用于人机交互。
系统结构图如图1所示。
在设备间内,一般布置有网络交换设备,可以提供方便的计算机网络接入,通过TCP/IP协议进行数据传输,构建起基于TCP/IP协议的机房温湿度监测系统,从而实现远程检测。
前端采集设备考虑采用具有RS232接口的温湿度传感器,通过串口服务器设备接入计算机网络中。能够将RS-232/485/422等串口协议转换成TCP/IP以太网网络协议接口,从而实现对用户的串口与网络接口的双向数据完全透明传输。这样,串口设备也就具备了TCP/IP网络接口功能,连接以太网进行数据通信,极大延伸串口设备的通信距离。
后端数据存储处理、终端数据查询显示等采用基于B/S(Browser/Server)架构的系统设计,通过HTTP等高层协议实现数据访问。
对于采集的数据,在后端数据存储处理中采取数据库存储方式,通过对数据的分析,得到主要数据表(TF_Info)结构如表1所示。TF_Info数据表存储采集到的温度和湿度数据,由4个字段组成,TFID表示所采集的传感器ID号,Temp表示采集的温度数据,RH表示采集的湿度数据,Time表示采集温湿度数据的采集时间。
具有RS232接口的温湿度传感器可以通过16进制指令读取温湿度数据,通过串口服务器转换成TCP/IP协议接入计算机网络,再由后端数据存储处理程序应用Socket套接字编程进行数据读取。
通过上述分析,整个系统可以分为若干功能模块,分别对应各个逻辑层次,系统功能模块图如图2所示。
其中,系统管理用于管理用户信息、权限设置、密码管理等功能;参数设置用于访问地址、连接速率等;设备管理用于设备名称、设备地址、设备端口、设备状态等设备信息管理;数据查询可以按照多条件进行温湿度数据的查询;预警管理可以设置预警阈值、查看预警报警信息等;统计分析可以按照多条件进行数据的统计分析;日志管理用于记录系统日志。
2 系统实现
采集和传输过程的系统实现核心是TCP/IP协议的Socket套接字编程。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了称为套接字(Socket)的接口,区分不同应用程序进程间的网络通信和连接。美国加州大学伯克利分校发布的UNIX4.2 BSD系统首先使用了套接字Socket技术来加强网络通信功能[4],并成为事实上的网络套接字标准。
要通过互联网进行通信,至少需要一对套接字,一个运行于客户机端,称之为ClientSocket,另一个运行于服务器端,称之为ServerSocket。
Server端Listen(监听)某个端口是否有连接请求,Client端向Server 端发出Connect(连接)请求,Server端向Client端发回Accept(接受)消息。一个连接就建立起来了。Server端和Client 端都可以通过Send,Write等方法与对方通信。
对于一个功能齐全的Socket,都要包含以下基本结构,其工作过程包含以下四个基本的步骤:
●创建Socket;
●打开连接到Socket的输入/出流;
●按照一定的协议对Socket进行读/写操作;
●关闭Socket。
本文中在串口服务器上设定了工作模式为TCP Server,即服务器端(ServerSocket),在后端数据存储处理中设置为客户机端(ClientSocket)。
通过Socket连接串口服务器,由串口服务器连接前端温湿度传感器获得16进制的温湿度数据,经过转换后得到10进制的温湿度数据。
如接收到的16进制数据为:
02 92 01 0D A2
其中,“02 92”是湿度数据,“01 0D”是温度数据,“A2”是校验值,校验位计算:02+92+01+0D=A2。
则湿度:0×163+2×162+9×161+2×160=658,表示濕度为65.8%RH。
则温度:0×163+1×162+0×161+D×160=269,表示温度为26.9℃。
本文采用JAVA平台作为主开发平台,通过Socket读取温湿度数据的部分程序代码如下:
//创建Socket连接
TempRHSocket = new TempRHSocket(host,port);
//打开连接到Socket的输入/出流
TempRHSocketReader = TempRHSocket.getInputStream();
TempRHSocketWriter = TempRHSocket.getOutputStream();
//按照一定的协议对Socket进行读/写操作
TempRHSocketReader.read(receive_TRH);
TempRHSocket.close(); //关闭Socket
intTemp = 0;
str = "";
intTemp = receive_TRH[0] >= 0 ? receive_TRH[0] : 256 + receive_TRH[0];
str = str+Integer.toHexString(intTemp);
lX = Long.parseLong(str,16);
Temp = lX*10; //计算温度
intTemp = 0;
str = "";
intTemp = receive_TRH[1] >= 0 ? receive_TRH[1] : 256 + receive_TRH[1];
str = str+Integer.toHexString(intTemp);
lX = Long.parseLong(str,16);
RH = lX; //计算湿度
读取到的温湿度数据写入数据库中的TF_Info数据表中。后端数据存储处理程序采用B/S架构进行数据处理,最终向用户提供基于WEB的访问方式。
B/S结构即浏览器和服务器结构,在这种结构下,用户工作界面是通过WWW浏览器来实现,具有分布性特点,业务扩展简单方便,维护简单,开发便捷等特点。
程序主要界面如图3所示。
3 结束语
大型粮食物流园区设备间温湿度监测是确保机房设备间运行环境的前提,将布置在前端温湿度传感器接入网络中,并通过TCP/IP协议对传感器进行数据读取,可以方便快捷地获取到温湿度数据,从而尽早发现因环境温湿度导致的设备故障。通过建立基于B/S架构的系统软件,实现了温湿度的远程检测,通过在河南、江苏等地大型粮食物流园区的广泛使用,效果良好。
串口服务器作为工业现场IP化设备的出现,使得基于TCP/IP协议控制远端串口设备成为可能,因此,开展基于TCP/IP协议的机房设备间温湿度监测研究研究将有助于提高设备运行环境监测能力,更好地满足信息化管理维护的需求。
参考文献:
[1]国家发展改革委关于印发粮食现代物流发展规划的通知(发改经贸 [2007] 2136号)[EB/OL]. http://www.sdpc.gov.cn/zcfb/zcfbghwb/200708/t20070830_579684.html.
[2]国务院关于建立健全粮食安全省长责任制的若干意见国发〔2014〕69号[EB/OL]http://www.gov.cn/zhengce/content/2015-01/22/content_9422.htm.
[3]GB/T 50311-2000.建筑与建筑群综合布线系统工程设计规范[S].2000.
[4]David Coffield, Doug shepherd, Tutorial Guide to UNIX Sockets fro Network Communications, Computer Communication[J]. Vol.10, No.1, Feb.1987,PP21-29.
[5]劉启文,孙传林.TCP/IP协议网络通信Socket结构的设计与应用[J].微型机与应用,1993(12):31-33.
[6]Behrouz A.Forouzan, TCP/IP Protocol Suite, Fourth Edition[M]. McGraw Hill Higher Education,2009.
[7]陈昊鹏.Java编程思想(第4版)[M].机械工业出版社,2007.
[8]Elliotte Rusty Harold, Java Network Programming, Third Edition[M]. O' Reilly Media, Inc.,2004.