APP下载

远程分布式地下水位监测系统

2019-09-17江1

长江科学院院报 2019年9期
关键词:水位服务器供电

杨 江1 王 敏

(1.湖北省地震局 地震预警湖北省重点实验室,武汉 430071; 2.中国地质大学(武汉) 地球物理与空间信息学院,武汉 430074; 3.中国地质大学(武汉) 地球内部多尺度成像湖北省重点实验室,武汉 430074; 4.武汉地震科学仪器研究院有限公司,湖北 咸宁 437000)

水位监测系统广泛应用于水库、 河流以及水井等领域, 能有效地动态监测水位变化, 提前对自然灾害进行防御[1]。 传统的水位监测仪大多仅具备简单的测量或数据回传功能, 应用范围窄, 仪器本身可操作性不强, 仅适合单点或少量监测点的部署监测[1-2]。 本文所述的基于B/S架构的远程水位监测系统在具体应用中可实现单台部署和多台同时部署, 用户可远程在局域网任一客户端服务器上通过浏览器进行数据查看和下载等操作, 并在数据中心搭建一个数据库服务器对监测数据进行实时存储备份, 增强了整个水位监测平台的数据安全性和可靠性。

1 水位监测系统概述

1.1 水位监测系统结构

本文所述的水位监测系统采用B/S构架(浏览器/服务器结构)。这种结构模式统一了客户端,将系统功能实现部分集中到了服务器设备端上,简化了系统的开发、维护和使用[3]。此外,水位监测系统集成4.7英寸(11.9 cm)触摸液晶屏,用户可在现场直接对设备进行参数设置而不需要其他辅助工具(如笔记本等)。与传统及现有的同类设备相比,该系统可实现远程参数设置,也可在工程现场进行参数配置,使用方便且集成度高。此外,设备具有后备电源供电接口,可保障设备在掉电后能持续正常运行,设备运行中将连续24 h实时测量数据存储到SD卡中,保障测量数据的安全性。

B/S构架水位监测系统从结构上分为客户端和本地服务器端2部分:客户端(PC机)可通过局域网采用WEB浏览器对服务器端(水位监测仪)进行访问和程序升级;服务器端(水位监测系统)则进行水位监测实现对数据的采集和存储,与此同时将监测数据按固定协议格式进行数据流回传。

B/S构架系统中,服务器端(水位监测仪)已对采集的水位监测数据进行相关处理和存储,可提供分采样和秒采样2种数据存储文件;客户端(PC机)WEB页面则无须任何维护,只需接入相应局域网络则可正常接收和控制[4]。系统B/S架构拓扑框图如图1所示。

图1 水位监测系统B/S架构框图 Fig.1 Block diagram of B/S structure of water level monitoring system

水位监测系统除了可进行本地服务器数据存储外,亦可实现监测数据实时回传,从而对监测数据进行备份,增强系统的安全性。本地服务器自带4 G存储介质(可依据需要进行扩展),可实现一个月的数据以天为单位进行连续存储,且掉电时也能保证数据不丢失;与此同时,在数据中心搭建一个数据库服务器,本地服务器端同时开辟一条水位监测实时数据流链路,数据库服务器则与该数据流链路进行对接,进而实现数据管理等工作。

1.2 WEB浏览器远程控制

水位监测装置通过TCP/IP协议进行组网,通过设置网络配置参数与局域网络进行数据通信接入系统。现场水位监测装置通过局域网将数据传输给数据库服务器,用户可随时进行调用。数据库服务器端部署Server2008,能够适合企业大量数据应用,采用ADO.NET技术进行数据库的调用[5-6]。

水位监测系统设备端采用Mongoose作为轻量级嵌入式WEB服务器,该服务器具有跨平台的能力,能在Windows、MacOS,以及大多数UNIX(包括Linux)系统中运行。Mongoose占用空间小,在Linux操作系统中其执行文件只占用40 kB。Mongoose WEB服务器的执行是自满足的,它不依赖于任何其他服务,其端口号等相关配置选项通过配置文件mongoose.conf设置。嵌入式WEB服务器作为用户与水位监测系统交互的接口达到人机交互,其结构如图2所示。

图2 嵌入式WEB服务器交互结构Fig.2 Structure of embedded WEB server interaction

通过调用Mongoose的开源代码头文件,在入口函数中实现WEB服务器的启动和对HTTP请求接口的分类处理,完成对水位监测系统与用户的各种交互。

远程WEB浏览器主界面和数据显示界面如图3所示。在WEB浏览器主界面设置有菜单栏,主要由“设备信息”“仪器控制”“实时数据”和“数据下载”等组成。其中,“设备信息”菜单可供用户进行设备IP和相关测量参数信息查询;“仪器控制”菜单可供用户对网络参数,例如IP地址、子网掩码等进行手动设置,并通过设置通道参数选项对采集到的电压值和水位之间的转换系数进行设置,设置结果将保存到设备存储介质中,掉电不会丢失;用户可通过“实时数据”菜单对当前采集的水位数据进行实时查看,如图3(b)所示。

图3 远程WEB浏览器主界面和数据显示界面Fig.3 Main interface of page setup and data display interface

水位监测系统可进行长期不间断实时监测,并进行数据24 h不间断实时存储。每天晚上00:00自动进行数据文件的创建。设备采样率按分钟进行采样,单个数据文件合计可保存1 440个水位数据。

1.3 数据传输安全

在实际应用时,数据传输过程需要进行加密处理,用于保障信息泄露而引起的安全性问题。因水位数据并非涉及隐私等重要信息,故选择采用单向加密方式进行单纯的加密处理。通过采用MD5加密算法,对数据进行加密获得特征码,用于确定原始数据的完整性。

图4 远程水位监测装置结构框图Fig.4 Block diagram of remote water level monitoring device

2 水位监测装置方案设计

远程水位监测系统结构框图如图4所示,该系统包括液位变送器、供电电源、I/V变化、24位A/D采集卡、ARM9主控板、4.7英寸触摸液晶屏以及网络接口等部分组成。

系统水位探头部分采用高精度液位变送器,输出为电流型模拟信号(4~20 mA),信号传输线缆长度为50 m。系统主机部分分为采集模块和主控模块2部分,其中,采集模块主要实现对电流型信号I/V变化、24位A/D采集并通过PIC单片机与主控板进行数据传输。主控板主要实现对所接收到的数据处理、存储、参数设置以及数据远程传输等功能。

本系统采用压力式水位传感器,即通过压力与水深成正比关系的静水压力原理测量水位。传感器为压敏元件,当传感器固定在水下某一测点时,该压力与水柱高度成正比关系,间接测出水柱高度,再通过水柱高度转换成井孔水位埋深(水位埋深H,水位传感器测量深度h,井口到水位传感器底部的深度为Hk,H=Hk-h)。

3 硬件方案设计

水位监测装置主要由水位传感器、数据处理模块和核心板卡构成。水位监测装置实物如图5所示。

图5 水位监测装置实物Fig.5 Photo of water level monitoring device

3.1 水位传感器采样电路

测量探头选用电流型输出液位变送器,采用24 V直流电压进行供电,其输出范围4~20 mA,分别对应水位深度0 m和10 m,其测量水柱深度满量程为0~10 m,精度为0.2% Fscal(满量程),该传感器抗干扰能力强且能进行远距离传输。传感器输出电流信号通过阻值为100 Ω(万分之一精度)的金属电阻后变换为输出范围400 mV~2 V的电压信号,其与水位深度之间的比例关系为K=满量程/输出电压变化量=10 000 mm/(2 000 mV-400 mV)=6.25 mm/mV。

图6 数据处理模块结构Fig.6 Structure of data processing module

3.2 数据处理模块

数据处理模块功能结构如图6所示,主要用于进行水位数据采集、守时及数据组合传输等功能。采用STM32F101RBT6微处理器进行24位A/D采集控制,控制时钟芯片进行时间同步,按秒采样将数据信息与时间封装为一个数据包,通过串口与ARM9核心板卡进行通讯。

3.2.1 数据采集

24位A/D采集卡主要包括有前端跟随器电路、A/D控制电路以及时钟源电路等。其原理如图7所示。前置跟随器选择OPA2211,其等效输入噪声为1.1 nV/√Hz。为提高数据测量精度以及分辨率,选择24位A/D转换器ADS1281,其具有高分辨率、高精度等特性[7]。ADS1281的AINP和AINN端分别接如图7(a)中的AIP0和AIN0。采用有源晶振CRY_C3391-4.096MHZ作为时钟源,通过时钟分频器CDCLVC1108对主时钟源进行4分频作为ADS1281的基准时钟信号,具体电路如图7(b)所示。当ADS1281完成A/D数据采集转换后,其DRDY引脚输出为低电平,用于通知处理器进行数据读取操作[8]。

图7 数据采集原理Fig.7 Principle of data collection

3.2.2 时钟电路

水位测量装置的时钟芯片采用PCF8653,能够提供日历/时钟数据,具有计时准确、功耗低及体积小等特点,如图8所示。STM32F101RBT6通过I2C总线进行通讯,PCF8653提供中断输出和掉电检测,所有数据和寄存器操作地址都通过I2C总线进行传输[9]。

图8 时钟电路Fig.8 Clock circuit

3.2.3 系统供电切换机制

为保证设备能实现持续24 h不间断工作,系统供电电源有主电源和备用电源2类。其中,主供电电源接入220 V交流电并经由电源适配器提供+15 V供电电压,备用电源采用2块12 V、100 Ah容量的蓄电瓶进行供电。主备电源电路连接如图9所示,当220 V交流市电供电正常时,二极管不导通,此时主要由+15 V对设备进行供电;当220 V交流市电供电断开时,二极管导通,此时主要由+12 V对设备进行供电,实现了主备电源自动切换的功能[10]。

图9 系统供电切示意图Fig.9 Principle of power supply and power cut of the system

3.2.4 系统电源开关控制模块

整个装置电源按键选择为非自锁式,人工按下后将自动弹起。利用JK触发器74HC109和双刀双掷G6K-2F-Y型继电器来实现控制通断电的功能,电路如图10所示。

图10 系统电源开关控制电路Fig.10 Circuit of power switch control of the system

利用JK触发器74HC109的输出翻转功能,将1J和1K同时置为高电平,当按下S9,将在引脚1CLK产生一标准上升沿信号,从而触发1Q的输出状态发生翻转,进而控制继电器AK1产生通断动作,此时VCC将与POUT输出连通并给后级电路进行供电,且该状态一直保持到1CLK引脚再次产生上升沿。当继电器AK1处于断开状态时,电池仅给74HC109供电,整个仪器处于低功耗模式,有较长待机时间。

图11 核心板卡组成结构Fig.11 Structure of core card

3.3 核心板卡

核心板卡组成结构如图11所示,主要由三星2440最小系统构成,通过RS-232串口进行读取数据处理模块的数据包,并通过TCP/IP通讯进行数据流的实时传输,与此同时,在每晚00:00创建新的数据文件用于存储24 h的测量数据。由于采用秒采样,因此1个完整文件记录将包含有86 400个数据点,该数据文件存储在SD卡中,可连续存储1个月的数据文件。

3.3.1 网卡模块

网卡模块采用DM9000AEP,该芯片自带以太网MAC控制器和一般处理接口,具有10/100 M自适应PHY和4K的DWORD值的SRAM,能支持8位、16位和32位接口进行内部存储器的访问。

3.3.2 SD卡接口电路

整个装置采用SD卡作为存储介质,并采用FAT32文件格式进行水位数据的存储。SD卡的操作模式主要有SD和SPI两种方式,SD模式接口电路如图12所示。采用SD模式进行数据传输,其传输速度要优于SPI工作模式,采用SD的4BIT模式通过DAT0—DAT3进行数据通信,其中将DAT1复用作为中断信号。

图12 SD卡接口电路Fig.12 Circuit of SD card interface

3.4 触摸液晶屏

在实际应用中,为了方便现场工作人员进行设备的参数设置和调试,可以通过触摸屏进行人机交互,能实现设备参数设置、水位模式选择、设备状态信息查询及设备参数更新等操作。其操作优先级要优于通过WEB页面进行上述相关操作。选用PS-LCD(可编程智能LCD),可编程智能LCD是一种包含TFT LCD显示屏、LCD控制器、触摸屏、人机界面处理系统和通讯接口于一体的智能显示组。该模组内部集成了32位人机界面处理软硬件系统,配合专用组态式界面设计工具,能快速生成图形界面。

PS-LCD采用Designer图形化编程器,用Java脚本进行程序编写。PS-LCD通过RS-232串口模块与ARM9进行通讯,来实现测量数据和当前时间的实时更新,并根据需要对设备相关参数进行设置和更新[11]。其中,主要的通讯命令有:主界面数据更新(实时秒数据传输)、设备IP参数设置和通道参数设置等。串口接收操作如下:

(1) 定义局部变量数组data0和data1,其中,data0主要用于存放主界面实时更新数据,data1主要用于存放设备参数。var data0=new Array(38);data1=new Array(114)。

(2) 设备参数回读命令sysCom0.write(0xaa,0xbb,0xcc,0xdd,0x0b,0x10,0x0b,0x11,0x11,0x11,0x11)。

(3)等待接收相关参数,其中,当PS-LCD处于实时数据更新时,则处于被动接收态,当检测到串口接收缓存有数据,则进行读取和校验,有效数据共31 B,数据实时显示界面如图13所示。

图13 PS-LCD实时显示界面Fig.13 PS-LCD real-time display interface

当通过PS-LCD进行设备参数查询或参数设置操作时,PS-LCD会主动向ARM9发送设备参数回读命令,发送完毕后,PS-LCD会通过读取串口缓存器进行命令校验,确认此时为设备参数信息后进行数据读取,参数信息共107 B。

4 系统测试数据分析

为了验证本文所述水位监测系统的相关测量指标,分别就测量精度和稳定性2方面进行测试。

4.1 系统水位测量数据准确度测试

测试环境选择温度和湿度分别为27 ℃和82%的室内进行,所用相关工具为直径5 cm、深度2 m的透明玻璃管与卷尺。

进行测试试验时,首先将透明玻璃管注满纯净水,并将卷尺与玻璃管进行表贴固定,每间隔20 cm进行标定测量一次,一共测量5组数据,测试数据如表1所示。

表1 水位实际值与测量值对比Table 1 Comparison between actual and measured values of water level

4.2 现场实际应用

将水位测量装置安装于三峡水体流动地震前兆监测台网丁家坪,将水位探头安放至距水面深度约5 m左右,并对信号线缆进行固定,待安装完成后,进行长期数据观测。选取其中24 h数据文件进行数据分析,其数据曲线如图14所示。

图14 24 h水位变化曲线Fig.14 Water level fluctuation in 24 hours monitoredby the system

由于地下水观测深度属于地球表层,所以地球表层的潮汐应力分布势必影响井水位变化。地球表层潮汐应力大小随地球天体在运动中相对位置的变化而有规律地变化。当潮汐应力增大时,含水岩层发生膨胀,含水层的孔隙水压降低,井水位下降;当潮汐应力变小时,含水岩层发生体压缩,含水层的孔隙水压升高,井水位上升[12]。上述水位数据曲线与地球固体潮汐的变动完全吻合,当天水位变化量约为0.06 m。

5 结 语

本文所介绍的B/S构架水位监测装置的测量精度和稳定度基本满足当前水文勘察、钻孔测量等工程类应用领域的要求,其性能指标不低于同类仪器。该监测装置能进行远程数据传输,在一定程度上解决了原有的人工现场操作读数所带来的各种问题。该水位监测装置已应用在三峡井网水体流动观测站,并长期运行进行井水固体潮观测,目前已经正常运行1 a。

猜你喜欢

水位服务器供电
超高层建筑供电分析
战洪魔保供电
通信控制服务器(CCS)维护终端的设计与实现
红军与供电人的故事
山西直供电折戟
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
七年级数学期中测试题(B)