景泰川灌区灌水计划信息系统设计与实现
2019-09-26程玉菲胡想全宋增芳
程玉菲,胡想全,宋增芳,李 莉
(甘肃省水利科学研究院,兰州 730000)
0 引 言
我国农业是第一大用水户,灌区在我国农业生产乃至国民经济中起着举足轻重的作用。农业灌溉在缺水的同时,用水浪费现象也十分严重,灌溉水利用率和单方水效率都与国外发达国家相距甚远[1]。虽然大部分大型灌区都具有较为完善的水源系统、输配水系统和调节系统,但灌溉管理水平和信息化程度总体上讲仍处于较低水平,从信息采集、传输、存储和使用等全面实现信息化的灌区还比较少。
水利是国家经济发展的基础[2]。水利行业为信息密集型行业,随着信息技术的发展,大型灌区的发展对信息化建设依赖程度越来越高[3]。灌区的信息化建设是水利信息化建设的重要组成,是实现灌区现代化的根本和必然趋势[4-6]。灌区信息化可实现水资源利用的最大化,对于加快新农村建设,促进水资源的优化配置和水利事业的长足发展,推动节水型社会的建设发挥着重要作用[7]。灌区的信息化建设有利于实现灌区的现代化发展,有利于实现灌区基础水利数据的信息化,有利于提高灌区的管理水平[8]。当前灌区信息化建设可以利用计算机、手机端智能化控制、网络通信技术[9-10],实现信息共享、远程控制。提高灌区信息化的管理与应用水平,是当前高效节水灌溉建设中的迫切需要[11]。灌区灌水计划制定是灌区信息化建设的一个重要组成部分,灌溉计划对确定灌溉需水量和选择灌溉时机起着非常重要的作用[12],准确的灌水计划可以指导灌区有序供水,在保障作物适时灌溉,保障渠道安全运行方面具有非常重要的作用[13],但相关的专门成果研究较少。国外研究较早,由詹森等人提出了计算机灌溉进度计划(通常称为USCA ARS灌溉进度计划),应用气象资料、农作物数据和土壤情况来估算灌溉时机和灌溉需水量[12]。1984 年萨拉扎尔等人提出了确定灌溉进度的方法,对维持作物根部水的动态平衡及将缺水情况与允许值相比较进行了研究[1]。在国内,陈义隆等(1985)较早总结了汉中地区灌溉计划用水的基本经验[14]。王伟等(2004)分析了河套灌区的灌溉计划用水,提出了灌溉计划的原则和编制的步骤和方法[15]。康跃虎(2004)总结归纳出了适合我国国情,尤其在日光温室、塑料大棚等设施栽培和小块农田蔬菜栽培中使用的滴灌灌溉计划的制定方法[16]。刘军平(2014)介绍了灌溉计划用水的内容和作用,分析灌区渠系轮廓、干支渠系和斗渠用水计划的编制应注意的关键环节,使灌区水资源调配更趋合理,达到提高其利用效率的目的[17]。赵德芳(2018)开展了景电灌区灌水计划编制现状研究,阐述了灌水计划的编制现状与水量调度管理情况[18]。尽管灌区灌水计划编制研究在我国已取得长足的进步和发展,但灌水计划的信息化和自动化程度仍然不高[19],亟须加强在灌区灌水计划交互平台信息传输和自动化控制等方面的工作。
景泰川灌区是甘肃省运行较为成功的大型电力提灌区[20]。目前,灌区灌水计划上报仍采用传统纸质或者Excel电子表格填报,人工汇总计算的原始办法作为灌区灌水计划制定资料收集方式,耗时、费力、效率低下,同时也一定程度上影响着灌区水资源的高效配置和农业生产的增产提质能力。因此,为优化调配灌区水资源,提高农业水分生产效率,提升现有灌水计划制定手段势在必行。本研究选择景泰川灌区作为研究对象,调查并分析景泰川灌区灌水计划信息化现状,在深入学习先进技术的基础上,结合计算机和互联网技术,建立面向Web的B/S模式灌区灌水计划精准制定系统,为农户、用水者协会和灌区水管理机构提供高效交互平台,提升水资源管理能力,提高水资源配置水平,提升水资源管理能力,提高水资源配置水平,从而促进农业用水效率提升,为今后灌区自动化控制和精准灌溉创造条件[21,22]。
1 灌区灌水计划信息系统需求分析
1.1 系统拟实现的目标
景泰川灌区灌水计划信息系统以实现灌水计划制定的便捷、高效和精准为目标而开发研制的,以现状灌溉制度和种植计划为基础,利用计算机和互联网技术,农户-组(庄)-配水点-渠段-水管所-灌溉处逐级上报和审核,实现灌水计划制定的便捷、高效和精准。这一系统的应用与发展,将极大提高灌水计划制定的精确程度,为农户和灌区水资源管理者提供高效交互平台,提升水资源管理能力,提高水资源配置水平,为实现灌区信息化管理提供支撑。
1.2 系统设计思想
灌区灌水计划精准制定系统的主要设计思想是灌溉用水户能够通过浏览器或手机App访问本系统,并及时、便捷、快速、准确的填报本年度的种植计划。系统基本信息包括种植结构、作物类型、种植面积、灌水时间、灌水次数、灌溉所需水量以及各灌溉地块所属斗渠、支渠、干渠等主要信息,结合目前灌区由组(庄)、配水点、渠段、水管所等基层灌溉管理机构逐级审核并上报流程,利用计算机和互联网技术,开发灌水计划精准制定系统,实现灌溉管理处精确、快速和高效的统计出全灌区的年度种植计划,为统一制定灌水计划及水量调度方案提供第一手资料,灌水计划审批流程见图1。
图1 景泰川灌区灌水计划审批流程
系统基于DB数据库,开发两个登录端,分别为PC(电脑)端和手机App(端),逻辑结构见图2。PC(电脑)农户可登录填报自己当年的需水计划,管理人员可登录对农户需水计划进行审批及相关操作;手机APP(端)仅开发农户登录端,农户可登录对自己当年需水计划进行上报。
图2 系统逻辑结构
2 系统总体技术设计
2.1 系统开发环境
本系统开发过程中,运用的语言、开发工具、数据库和编译运行环境如下所示:
(1)软件环境:Windows系统(PC端),安卓系统(手机端)。
(2)开发语言:JAVA、JavaScript、vue.js、jquery、HTML 、mybatis。
(3)开发工具:IDEA +MYSQL+ JDK。
(4)项目架构:B/S架构。
(5)开发框架:spring boot。
(6)项目运行环境:Tomcat容器。
(7)数据库:MySQL(版本号:5.1.1.7)。
(8)浏览器:IE浏览器(IE9及以上版本)、谷歌浏览器、火狐浏览器。
2.2 系统硬件要求
本系统开发和运行过程中,对硬件的要求:
(1)硬件环境:阿里云服务器。
(2)版本:Windows Server2012R2。
(3)处理器:Intel(R)Xeon(R)CPU E5-2682 v4 @2.50 GHz 2.49 GHz,内存16.0 GB。
(4)系统类型:64位操作系统。
(5)手机:安卓系统手机。
3 系统功能模块设计和角色分配
3.1 系统功能模块设计
模块化是一个一般概念,这一概念也适用于软件开发。系统的模块化设计更易于系统的开发、测试与维护,也可给项目管理带来方便。根据总体设计结果,把系统划分为功能相互独立的4个模块。
(1)种植计划模块。主要用于各级部门(农户、村、配水点、渠段、水管所、灌溉处)对种植作物、面积、需水量的上报和对下属部门上报信息的审核。
(2)报表管理模块。为方便用户对统计信息进行自动化操作,系统设计了报表管理模块,主要配水点以上部门对下级各个部门的需水量和各个渠系的需水量进行统计、导出和打印。报表的类型主要是灌水计划表,可将每年灌溉需水信息以Excel的格式输出到系统页面或存储到数据库中。用户根据时间、渠系或者种植作物进行数据统计,统计出全年需水信息、种植计划等。
(3)系统管理模块。主要管理部门对下属单位、渠系基本信息的增加、删除、修改和查询;设置各个部门或渠系上下级之间的关系;对作物类型和相应的灌溉制度进行修正。
(4)权限管理模块。管理系统用户,对系统用户进行增、删、改、查操作。用户是整个系统的操作者,又是面向Web的B/S模式系统,而且系统可通过网络进行远程访问,为保证系统安全稳定,使用用户权限设定对用户操作进行约束,采用了高级权限和普通权限管理的双权限系统管理模式。系统管理员用户可以使用系统全部功能,而其他用户只能对系统进行查询访问,浏览数据,不能对数据库数据进行添加、修改和删除。系统管理员可以对其他用户权限进行修改。
3.2 系统角色分配
灌区灌水计划精准制定系统面向农户、组(庄)、配水点、渠段、配水点、水管所、灌溉管理处等用水户和水资源管理人员。角色分配根据部门的结构层级所设计,农户上报作为一个模块,它是数据信息的来源,农户可以在电脑(PC端)或是手机(app端)页面进行基本数据信息的录入,填写完成之后上报给村组一级,经村组审核,审核通过后,在村组上报页面,把所有农户上报的信息,进行汇总上报给配水点,审核不通过说明原因,退回给农户,农户修改后再次进行上报。依次类推,直到灌溉处完成审核。根据审核程序,角色分为系统管理员、灌溉处人员角色、水管所人员角色、配水点人员角色、渠段人员角色、庄(组)人员角色和用水户角色。对应不同的角色,其权限不同。角色相互关系如图3所示。
图3 角色分配及相互关系图
4 灌区灌水计划信息系统功能与实现
4.1 PC端用户系统功能与实现
系统登录界面是进入系统的屏障。由于系统可通过网络进行远程访问,为保证系统安全稳定,用户必须以合法的密码才能登录系统,访问系统资源。
系统登录分为管理人员和农户两个登录界面,系统管理员、灌溉处人员、水管所、配水点、渠(段)和村(组)登录均选择管理人员。管理人员、农户登录前,请先选择用户类别,然后填写用户名、密码、验证码,之后点击“登录”按钮,登录界面如图4所示。
图4 系统登录界面
当从登录界面正确输入用户名、登录密码和验证码后,就可以进入主程序界面,角色不同对应的系统主程序界面不同。当农户从登录界面输入正确用户名、登录密码和验证码后,就可以进入主程序界面,农户主程序界面只包含1个种植计划模块;每个组(庄)指定1名组(庄)管理员,组(庄)管理员主程序界面包含2个模块,分别为种植计划模块和权限管理模块;每个配水点指定1名管理员,并且每个配水点只能分配1个管理用户名,配水点管理员主程序界面包含2个模块,分别为种植计划模块和报表管理模块;每个渠段指定1名管理员,并且每个渠段只能分配1个管理用户名,渠段管理员主程序界面包含2个模块,分别为种植计划模块和报表管理模块;每个水管所指定1名管理员,并且每个水管所只能分配1个管理用户名,水管所管理员主程序界面包含2个模块,分别为种植计划模块和报表管理模块;景泰川灌区(景电管理局)灌溉处设1名管理员,灌溉处管理员主程序界面包含3个模块,分别为种植计划模块、报表管理模块和系统管理模块;在实际应用中,根据景泰川灌区工作分工情况,在灌溉处或调度室设1名系统管理员,系统管理员主程序界面包含4个模块,分别为种植计划模块、报表管理模块、系统管理模块和权限管理模块,见图5。
图5 系统管理员登录系统主界面
4.2 手机App开发
App在Windows系统上使用Android studio工具进行开发,手机端使用HTML5,采用java开发语言作为后台接口程序,利用html5、CSS3、JavaScript、Ajax、node.js等前端技术和mysql数据库。通过阿里云服务器,将手机端和后台放入阿里云服务器同一tomcat容器中,保证手机端和后台在同一作用域下。目前仅仅开发了安卓系统农户上报系统,各管理单位审核与上报均在PC端完成,App端主要用于农户对种植作物、面积、所属渠系的上报。
首先在安卓手机上安装景泰川灌区种植计划上报系统(种植计划通),安装后启动,进入登录页面,见图6,农户填写用户名、密码,点击登录,进入系统。
图6 种植计划通启动界面
登录成功后跳转到首页面,首页显示上报信息,审核结果为“不通过”可对本条数据作修改,审核已通过或者待审核状态该条数据只能查看,不能修改。手机系统主页及上报界面见图7。点击“新建”按钮,填写表单信息,选择种植作物,输入种植面积和地块所属配水点,选择所在干渠、支渠、斗渠,点击右上角“保存”按钮,点击“提交”按钮完成上报,也可继续点击右上角“新建”按钮,添加其他作物信息。
图7 手机系统主页及上报界面
5 结 语
本系统设计基本信息包括种植结构、作物类型、种植面积、灌水时间、灌水次数、灌溉所需水量以及各灌溉地块所属斗渠、支渠、干渠等主要信息,结合目前灌区由组(庄)、配水点、渠段、水管所等基层灌溉管理机构逐级审核并上报流程,利用计算机和互联网技术,开发了灌水计划精准制定系统,实现了灌溉管理处年度灌水计划制定的精确、快速和高效,为统一制定灌水计划及水量调度方案提供第一手资料。PC端景泰川灌区灌水计划信息系统利用JAVA、JavaScript、vue.js、jquery、HTML 、mybatis等计算机语言,以IDEA +MYSQL+ JDK为开发工具,采用B/S架构和J2EE平台,选用MySQL开源数据库,在Tomcat应用服务器上运行,灌溉用水户能够通过浏览器或手机App访问本系统并及时、便捷、快速、准确的填报本年度的种植计划。景泰川灌区手机App种植计划上报系统在Windows系统上使用Android studio工具进行开发,手机端使用HTML5,采用java开发语言作为后台接口程序,利用html5、CSS3、JavaScript、Ajax、node.js等前端技术和mysql数据库。通过阿里云服务器,将手机端和后台放入阿里云服务器同一tomcat容器中,保证手机端和后台在同一作用域下。目前仅仅开发了安卓系统农户上报系统,各管理单位审核与上报均需在PC端完成,App端主要用于农户对种植作物、面积、所属渠系等信息的上报。
本研究提出的景泰川灌区灌水计划信息系统已开发完成,目前处于试用阶段,为农户、用水者协会和灌区水管理机构提供了高效的交互平台,初步实现了从农户-组(庄)-配水点-渠段-水管所-景泰川灌区的种植计划的逐级审核和逐级上报,为灌溉管理处年度灌水计划制定提供了精确、快速和高效的信息化手段,为统一制定灌水计划及水量调度方案提供第一手资料。下一步将针对各级用户的使用反馈信息,对系统进行补充和完善,从而为促进农业用水效率提升,为今后灌区自动化控制和精准灌溉创造条件。