基于VB.net的农业气象灾害查询系统研究
2017-01-09王梦琳吴丹郭佰汇
王梦琳++吴丹++郭佰汇
摘要:本文以Windows操作系统为平台,选用VB.net开发语言,结合Access 2007数据库系统,设计并初步实现了具有数据收集、处理及灾害等级判定等功能的农业气象灾害查询系统。该系统可以根据指标公式和灾害等级划分标准,利用逐日气象资料来判断农业气象灾害的等级,为现代农业气象灾害监测与预防提供了技术参考。
关键词:农业气象灾害;查询系统;VB.NET;数据库
中图分类号: S42 文献标识码: A DOI编号: 10.14025/j.cnki.jlny.2016.22.066
近年来,农业气象灾害对农业生产危害巨大,对国民经济和人们生活产生了较大的影响。开展农业气象灾害服务,建立农业气象灾害相关系统在保护生态环境、防灾减灾、减少农业气象灾害对经济影响等方面显得尤为重要。本文所研究的农业气象灾害查询系统是基于现代农业生产对农业气象灾害系统的需求而开发研制的一种新型服务系统。其总体目标是:以农业气象数据库的建设为基础,采用VB.net开发语言、Access 2007数据库等先进技术,设计并实现集农业气象灾害指标确立、指标计算、灾害查询以及图形产品发布于一体的系统,以拓展农业气象灾害服务需求和整体减少农业气象灾害对作物产量的影响。该系统主要是通过对逐日气象资料加工计算,得到针对当地农业生产实际情况的农业气象灾害服务产品。
1 农业气象灾害查询系统的设计
1.1 平台设计
农业气象灾害查询系统由系统管理、农业气象灾害指标定义、历年农业气象灾害查询、农业气象灾害图形输出4个功能模块组成。同时,根据功能的设计要求,每个模块又被划分为多个子功能模块,各功能模块的设计,见表1。
表1 各功能模块详细设计
1.2 数据库需求分析
农业气象灾害查询系统需要实现各种数据资料编辑入库工作,入库资料包括:逐日气象资料、站点资料、用户资料、历年农业气象灾害指标资料等。该数据库具有资料查询、资料修改和删除、动态录入数据资料和数据资料使用管理等功能。
2 系统实现
2.1 开发环境
本系统采用VB.net语言编写,Access 2007数据库对信息进行储存。
2.2 登录实现
用户在已经注册(注册由管理员负责)过的前提下,填入与之前注册的相符的信息,提交后,系统在核对即查找到与输入相符的用户后,允许登录;若用户名或密码错误,弹出错误信息,并提示重新输入(登录界面图略)。
2.3 数据相关操作
系统中与数据相关的操作主要包括数据浏览、添加、修改、删除以及查询等功能。
2.3.1 数据浏览 系统中利用VB.NET中的DataGridView控件来显示数据,从而实现数据浏览功能。
2.3.2数据编辑 系统中对于数据编辑主要分为前台显示编辑和后台处理编辑。前台显示编辑主要包括数据添加、修改和删除,本系统是通过VB.NET中的BingdingNavigator控件实现的。利用BingdingNavigator控件的DataSource属性绑定DataGridView中显示的数据源,即可对其进行编辑。并且通过向BingdingNavigator控件添加保存按钮来实现对后台数据的更新。后台数据编辑则是对逐日气象数据资料的编辑,包括添加数据、删除数据、更新数据和查找数据,该系统通过SQL语言实现。
2.3.3 数据查询 以历年旱涝灾害查询为例,在数据查询时,用户选择站号,输入查询的年份范围,点击开始查询,即可查询某站点某段年份范围内的所有的记录(如图1)。另外系统支持多条件查询,如用户可选择查询满足“站号为50442,年份在1995年~2004年之间,等级M > 4”条件的所有记录值。在查询过程中,如果查询结果为空,则会弹出“输入有误”的对话框。这时,用户可根据实际情况重新选择查询信息。
2.4 灾害指标定义与计算
灾害指标定义与计算是本系统的核心部分。本系统以东北地区为例,根据张海娜等[1-4]人的研究,选取干旱、洪涝和低温冷害作为东北地区的主要农业气象灾害,即本系统中主要研究的农业气象灾害类型。
2.4.1 指标选取 旱涝指标选取:旱涝灾害是东北地区常见的农业气象灾害,具有持续时间长、波及范围广的特点,对农业生产有严重的影响。许多学者在旱涝评估指标上已经有研究,孟莹等[5]人研究了降水距平百分率和Z指标在辽宁省的应用,得出降水距平百分率作为指标的方法简单、直观,而Z指标旱涝等级划分标准更符合实际情况;张尚印等[6]对K指标和Z指标在北方地区应用的优劣进行对比,得出K指标优于Z指标;崔修来等[7]采用降水距平百分率、Z指数、K指数根据营口地区气象数据研究确立干旱指标,得出准确率较高的为降水距平百分率,K指标对春旱较为敏感。本系统在前人的研究结果下,根据指标的可实施性和准确程度,选取降水百分率和K指数作为旱涝灾害的指标计算公式。降水距平百分率(M)的表达式如下:
(1)
其中,R为某时段降水量, 为多年平均降水量。K指数的计算公式如下:
(2)
(3)
其中,E为需水量(mm),Σt为高于0℃的日平均气温的累加,0.16为系数,R为降水量。
低温冷害指标选取:目前研究低温冷害的指标有六大类,生长季温度距平指标、生长季积温指标指标、生长发育关键期冷积温指标、作物发育期的距平指标、热量指数指标和玉米低温冷害的综合指标[8]。不同学者根据不同地区的情况确定了不同的指标,如李凤忠、李艳[9]规定5~9月平均气温距平和≤-2.5℃,6~9月平均最高气温距平和≤-2.5℃,两条有一条达到就称为低温冷害年;丁士晟[10,11]采用的低温冷害指标是5~9月的月平均温度和的距平值(ΔT5~9),把ΔT5~9=-1.3℃和ΔT5~9=-3.3℃分别作为一般低温冷害和严重低温冷害的标准。综合指标的实际可用性和可执行性,本系统采取丁士晟给定的低温冷害指标。
2.4.2 指标修改功能的实现 虽然系统已经选定了默认的判定指数,但是在实际应用中判定灾害等级与类型的指标范围也是因地区的不同而存在差异。例如,以降水百分率距平(M)为判定旱涝灾害的指数,辽宁省采取M≥0.75为重涝,而北京地区则采用M≥0.60即为重涝[5,12]。本系统针对这一问题,提供用户根据自己地域情况,自己主观修改指标适用的月份与灾害指标判定的数值标准,该界面如图2所示。
2.4.3 指标数值计算 指标数值计算是本系统后台的一个重要过程,本系统要根据默认的指数计算公式和用户自己修改后的判断灾害等级的指标来计算相关指数和判定灾害等级,并通过应用SQL语句将计算出的数据录入数据库里已设计好的数据表格中,等待查询模块和图形输出模块的调用,这一功能并没有相对应的显示界面,仅通过后台代码实现。
2.5 图形显示与输出
农业气象灾害图形输出子系统输出图形的类型有:旱涝等级直方图、旱涝不同指标对比图、K指标变化曲线、M指标变化曲线、5~9月月平均温度和距平的变化曲线和5~9月月平均温度和的变化曲线。该子系统提供不同站点号的图形的查看和导出功能,便于对某地区农业气象灾害相关信息变化的分析。图形保存功能是由SaveAs子过程实现的。SaveAs子过程的作用是将当前Chart控件中显示的图片以bmp、gif、jpeg或者tif格式保存到用户选定的指定位置,从而便于用户的应用。
3 总结
本文所设计的系统实现了根据逐日气象资料监测、判断农业气象灾害等级和种类的功能,同时实现了历年农业气象灾害信息的查询和图表分析功能。系统应用较为灵活,且具有较好的扩充性。如因业务发展,需要扩充监测的灾害种类和计算指标种类,只需增添相应的功能模块,不需要改动整个主程序。该系统还存在未与“3S”技术结合等问题,有待进一步改善,从而适应不断发展的农业气象灾害业务的需求。
参考文献
[1]张海娜,李晶,吕志红,等.东北地区农业气象灾害定量评估[J].气象与环境学报,2011,27(03):24-28.
[2]赵先丽,李丽光,贾庆宇,等.1988-2007年辽宁主要农业气象灾害分析[J].气象与环境学报,2009,25(02):33-37.
[3]刘吉平.吉林省主要农业气象灾害的地域组合规律及其预测[D].长春:东北师范大学,2002.
[4]唐立冰,张平,王剑,等.黑龙江省农业气象灾害的风险评估与预测研究[J].黑龙江八一农垦大学学报,2011,23(02):77-
81.
[5]孟莹,卢娟,陈传雷,等.辽宁3种旱涝指标的对比分析[J].辽宁气象,2004,(02):22-23.
[6]张尚印,姚佩珍,吴虹,等.我国北方旱涝指标的确定及旱涝分布状况[J].自然灾害学报,1998,7(02):22-28.
[7]崔修来,李明香,姚文,等.营口地区干旱指标的确定[J].安徽农业科学,2010,38(32):18303-18305,18306.
[8]王远皓,王春乙,张雪芬.作物低温冷害指标及风险评估研究进展[J].气象科技,2008,36(03):310-317.
[9]李凤忠,李艳.白山地区低温冷害年预报指标的探索[J].吉林气象,1999,(02):21-22.
[10]丁士晟.东北低温冷害和粮食产量[J].气象,1980,6(05):1-3.
[11]丁士晟.东北地区夏季低温的气候分析及其对农业生产的影响[J].气象学报,1980,38(03):234-242.
[12]张强,鞠笑生,李淑华.三种干旱指标的比较和新指标的确定[J].气象科技,1998,(02):48-52.
作者简介:王梦琳,本科学历,朝阳市气象局,助理工程师,研究方向:应用气象。