基于GIS技术的刘大灌区用水管理系统设计与实现

2019-02-14 22:22
水利建设与管理 2019年8期
关键词:语句田间用水

(辽宁省大连市普兰店区刘大水库管理局,辽宁 大连 126207)

刘大灌区位于大连市大沙河流域,其主要供水水源地是大沙河干流上游修建的刘大水库。该水库是大连市的大型水库之一,坝址以上集雨面积278.3km2,水库死库容480万m3,正常水位88.25m,正常库容 6700 万m3,总库容 1.89亿m3,多年平均供水量4600余万m3。目前水库水量能够满足刘大灌区的灌溉用水需求。然而,近年来随着工业和生活用水的持续增加,再加上灌区灌水方式落后,渠道渗漏等问题严重,导致水资源严重浪费,出现水资源紧缺的趋势。因此,加强灌区节水管理,提高灌溉水利用率,是解决该问题的唯一途径。本研究采用地理信息系统(GIS)技术,设计了刘大灌区用水管理系统,使农田灌溉更具有科学性,提高系统精确度,并大大节省人力和物力,同时提出了该系统的实现方法和存在的问题,以期为灌区管理提供科学的方法和依据。

1 系统需求分析

灌区管理的核心在于水的管理。灌区用水包括用水定额、运行成本、水质等几个方面,这些都直接或间接影响着灌区经济、生态、社会效益的发挥。刘大灌区属中型灌区。多年来,该灌区在防洪治涝、规划等方面做了大量工作。但是至今刘大灌区的管理还相当落后,最前线的管理人员为了保证灌区观测数据的实时性和准确性,每天要实地观测数据多次,到了防汛时期管理人员的工作强度就更大了,而且观测数据存在很大的误差。为了跟上时代的发展,刘大灌区急需一套现代化的管理系统,这套系统应当能够实现用水数据的实时采集、传输、自动保存、汇总和分析,提出适宜的用水管理计划,供灌区管理者采用。

2 系统总体设计

根据灌区需求分析,该系统应能够实现观测数据的实时采集和记录,并进行灌区用水调配等计划的制作。系统的总体设计包括数据采集硬件设计和软件设计两个部分。其中,数据采集硬件部分包括数据采集传感器、数据采集卡、太阳能供电装置或移动电源装置等部分;软件设计部分主要是对硬件设备的控制,包括电压水位转换程序、灌区用水数据库、地图属性数据库、灌溉制度设计、流量计算程序及用水报表统计等。

具体功能设计如下:

a.实时监测灌区用水,并能够自动记录用水数据。

b.具有灌区地图的浏览,编辑、打印等功能。

c.查询灌区的用水及空间信息,实现SQL查询及地图上的点查询。

d.通过属性来进行地图查询。

e.具有根据属性制作专题图的功能(如柱状图,饼状图,区域填充图等)。

f.具有图层控制功能。

g.同农田水利相结合,能够做出灌区水的调配计划。

h.形成用水量的月、年度报表。

i.通过网络或无线通信技术汇集灌区各个站的实测数据,为灌区管理中心决策提供依据。

3 系统硬件的设计与实现

系统硬件包括两个部分,一部分是灌区内水位、闸门、流量等的远程监测硬件,另一部分是控制中心综合操作台所需硬件。具体实现如下。

3.1 远程监控硬件设计

远程监控包括灌区内水位、流量、闸门启闭、开合度等数据的采集和传输,以及灌区图像实时监控两个方面。

3.1.1 水位、流量、闸门启闭、开合度等硬件设计

水位监控主要是为灌区供水运行状况、输水量的计量提供实时数据。采用的设备是WFX-D系列浮子式自收缆水位计,并配备太阳能供电、无线传输装置,实现水位的实时采集和传输。

流量监控主要是测定灌区干、支、斗、农渠道内水流的速度和流量,为灌区用水管理提供实时数据。采用的设备是SKLD系列电磁流量计,并配备太阳能供电、无线传输装置,实现流量的实时采集和传输。

闸门启闭、开合度监控等主要是对进水闸、拦沙闸等的启闭和开度进行电动控制,为灌区的调水、配水提供支持。采用的是KS-10Z闸位传感器,是一种独立的闸门开度测量仪,与太阳能供电、无线传输装置相连接,实现闸门的自动及手动控制和数据传输。

3.1.2 灌区图像实时监控

本系统主要是借助视频机、监视器或计算机网络实时监控灌区运行的监控图像画面,及时掌握情况。因此,图像实时监控由前端设备、传输通道和终端设备组成。前端设备包括图像采集摄像机、镜头、电动云台和防护罩,传输通道采用无线传输通道,包括图像和指令传输通道,采用了KS型微波无线视频监控系统和移动GPRS传输系统。

3.2 控制中心硬件设计

控制中心主要是对整个灌区用水进行实时监控、发布管理指令的地方,设置在灌区管理中心。主要布设有操作台1套。所需硬件有两部分,一部分是视频监控方面,包含嵌入式硬盘录像机2台、液晶显示器1台,用于视频监控,并通过画面分割功能分别显示闸门、灌区各部位的运行视频图像;另一部分是装配计算机系统1套,上面装配有GIS软件平台,通过软件设计实现灌区的实时监控和用水管理。

4 系统软件的设计与实现

4.1 软件设计功能

基于GeoStar强大的功能和GeoMap模块功能的可开发性,以GeoMap作为设计的基础,采用GIS软件二次开发以实现系统所需的功能。本系统主要开发了以下几个功能:

a.按照工作区分层、地物类组织地图数据。

b.分层、地物类显示地图。

c.地图的漫游与缩放。

d.显示地图注记。

e.点查询方式选中地物。

f.利用SQL表达式选中地物。

4.2 软件功能的实现

采用GIS二次开发,实现下述功能。

4.2.1 灌区需水量计算功能

需水量计算程序段的作用是根据田间水分状况和有关灌溉制度计算出田间的需水情况。具体功能实现如下:基于现有条件,田间信息主要通过人工监测并控制输入的方法获得。如果将来有条件的话,可以实现田间信息的自动采集功能。有关灌溉制度的资料则是通过读取数据库得来。

计算需水量的原理如下:系统先将当天的日期值读到“日期”文本框内,再根据“日期”文本框内的日期值(该日期值是可以改变的)由数据库读取与“日期”文本框内的日期值相同日期有关的资料,如今日耗水量、最小水深、最大水深、适宜水深等。昨日田面水层深度值和今日降水情况则需要应用者根据实际情况输入。这样就可以计算田间需水量,不过,为了能进一步计算出田间静流量和相应渠道的流量,需要输入和计算流量有关的资料,如:灌水延续时间、每天灌水历时和灌溉面积等。每天灌水历时默认为24h,这个时间可根据实际情况由决策者决定并输入。灌溉面积的输入是在“面积”输入框中输入。

至此,所有需要输入的资料都已录入,接下来就开始进行需水量的计算。采用的计算原理是水田灌溉制度计算的原理,即当田面水层深度大于最大水深时,则需要排水,排水量为田面水层深度减去最大水深所得的值;当田面水层深度小于最小水深时则开始灌水,灌水量等于适宜水层深度减去田面水层深度的差值取整所得的值。这样就可以计算田间需水情况,即灌排水情况。在此基础上引入灌溉面积即可算出灌溉面积上的总需水量。

在计算完总的需水情况之后,再计入渠系水利用系数和田间水利用系数就可算出田间净流量进而得出相应渠道的流量。计算田间净流量的过程包括了一些小的计算程序,如:灌水定额、灌水率计算程序等。

4.2.2 信息查询功能

包括点查询和SQL查询两种方法,主要通过GeoMap调用GeoStar自带的地图属性查询功能和SQL查询语句实现。

4.2.3 生成报表功能

此功能是针对渠道量水而设的一项功能,将某天记录的渠道内流过的流量和这一天内流过的总水量以报表的形式记录下来,并将每天流过的水量累加起来进行记录。本功能的实现主要依靠从数据库中读数和将数据写入电子表格两个程序块。从数据库中读取的数据是相应时段的流量值。具体实现语句如下:

While Day(mdate)>Day(rst!日期)

rst.MoveNext

Wend

Do While Not rst.EOF

For i = 1 To 12

If Day(mdate)= Day(rst!日期)And Hour(rst!日期)= Hour(bbshj(i))And Minute(rst!日期)= Minute(bbshj(i))Then

bbflow(i)= rst!流量

lseIf Day(mdate)= Day(rst!日期)-1 And Hour(rst!日期)= Hour(bbshj(i))And Minute(rst!日期)= Minute(bbshj(i))Then

bbflow(i)= rst!流量

End If

Next i

rst.MoveNext

Loop

由于每天需要读取的就是几个有数时段的数据,各时间点附近一个时间段内的流量的平均值,构成了一天的报表数据。因此,只需利用12个存储空间进行读数即可,在此基础上定义了一个12维数组来存储读取的数据。

在读完数后,往电子表格中写数据时,涉及到打开电子表格的程序。先介绍一下如何引用Excel及打开电子表格,语句如下:

Dim ex As New Excel.Application

该语句是定义一个变量,作用是实现对Excel的引用类型。

Dim exwbook As Excel.Workbook

该语句的功能是定义一个变量为Excel的工作表类型。通过此语句就可以打开或新建一个电子表格了。下面的语句就是打开一个表格的语句。

Set exwbook = ex.Workbooks.Open(App.path &"报表ook1.xls")

至此,电子表格就打开了,下面开始往表格里写数据,语句如下:

For i = 1 To 12

rangestr = "d" &CStr(i + 1)

exsheet.Range(rangestr)= bbflow(i)

Next i

以上四句将各时段的流量对应着写到打开的电子表格中,其中exsheet.Range(rangestr)代表的是要写入数据的位置。Rangestr代表一个字符串,它的内容指明了写入的位置。

exsheet.Range("b2")=mdate

该语句的作用是将生成报表的日期记录到报表中,实现了查看报表功能。

4.2.4 情景展示功能

是指计算结果的表示形式以情景的方式表示出来,使得决策者能直观地了解田间和渠道相关信息,以便快速作出决策。主要通过设计一个含水量模拟程序来实现。当某个地块的含水量低于一定值时,该地块就会以红色加亮显示,以告诉决策者该地块需要灌水了。同时控制该地块的闸门也加亮显示并闪动,说明需要开启该闸门进行灌水。

4.2.5 报警功能

报警功能是在系统应用于渠道量水过程中提出的,渠道中有一个警戒水位,当水位达到警戒水位时,对渠道及相关建筑物就会产生威胁,因此需要设置报警系统来进行监测。

报警功能的实现是通过时钟控件进行控制的,通过时钟的工作与否来控制报警器的开关,当控制报警器的时钟开始工作时,报警器就会响;当控制报警器的时钟停止工作时,报警器也会停。报警器采用背景音乐报警的方式,背景音乐的播放器是Windows Media Player。具体实现语句如下:

If Val(Tzqh.Text)>1.75 Then

Timer2.Enabled = True

End If

这几句是将控制报警器的时钟打开,即当闸前水深大于1.75m时打开时钟。该时钟一打开就触发了背景音乐播放,进行报警,具体语句如下:

Private Sub Timer2_Timer()

If mainfrm.StatusBar1.Panels(3)= "报警器:开" Then

If Timer1.Enabled = True Then

If Val(Tzqh.Text)>1.75 Then

MPlay1.Play

End If

Else

MPlay1.Stop

MPlay1.SelectionStart = 0

End If

End If

End Sub

以上语句的主要意思是当由传感器读入的闸前水深大于1.75m时就播放音乐进行报警。

5 结 语

该系统是在VB开发环境下对GeoStar的模块GeoMap进行二次开发形成的,主要组成部分包括水位变送器、数据采集器、数据采集卡和软件系统。该系统实现的主要功能是灌区用水数据采集和视频监控、地理信息系统的查询、形成报表以及形象化的结果显示,为管理者提供决策依据。该系统的设计达到了预期要求,得到了灌区管理者的认可。该系统的成功设计为GIS技术引入到灌区管理中做了一次尝试,同时也为灌区管理工作的完善提供了一个可行的方案。

猜你喜欢
语句田间用水
强降雨过后 田间自救指南来了
哪些火灾不能用水扑灭?
田间地头“惠”果农
节约洗碗用水
“码”上办理“田间一件事”
田间地头有了“新绿”
重点:语句衔接
上海建立大用水户用水实时监管制度推进城市节水
我喜欢
作文语句实录