秦皇岛市区域站数据查询与显示系统的设计及实现

来源 :现代农业科技 | 被引量 : 0次 | 上传用户:wakaji
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要 为了能够充分发挥区域站在山洪气象灾害监测中的作用,秦皇岛市开发了新的区域站数据查询显示系统,该系统能够监控各雨量点雨量信息并根据雨量达到的量级进行声音报警;能进行历史数据查询,并将结果导出为Word文档、Web文档或普通文本文件;还能根据已有雨量点信息通过插值和填色生成秦皇岛市降水分布图,便于以更直观的方式为地方政府服务。
  关键词 区域气象站;数据查询;显示;系统设计;实现;河北秦皇岛
  中图分类号 P415.1 2 文献标识码 A 文章编号 1007-5739(2015)13-0290-03
  Design and Implementation of Data Inquiry and Display System of Qinhuangdao Regional Automatic
  Meteorological Station
  CHANG Ju-zheng 1 CUI Fen-e 2 YANG Jia 1 WU Ming-hao 1
  (1 Meteorological Bureau of Qinglong Manchu Autonomous County in Hebei Province,Qinglong Hebei 066500; 2 Qinhuangdao Meteorological Bureau)
  Abstract To make regional automatic meteorological station newly established play an effective role,new data query and display system of Qinhuangdao regional station was developed,which can monitor rainfall of all regional station,give voice alarm when rainfall of some station reach a certain level,and make the inquiry of historical data and export the result into word,html or txt document,generate rainfall distribution chart by interpolation.All these will be convenient of serving local government and civilian of Qinhuangdao City.
  Key words regional automatic meteorological station;data inquiry;display;system design;implementation;Qinhuangdao Hebei
  随着山洪工程项目的顺利实施,秦皇岛市的区域自动气象站无论是总数还是密度,都达到了前所未有的高度,原来所使用的雨量实时采集系统由于无法显示全部区域站雨量信息而无法满足需求;同时由于原系统数据库存放在省局,在市县局通过原客户端进行查询统计时存在数据保存周期较小、查询费时等缺点。进入汛期后,由于局地性强降水极易出现,原采集系统没显示出来的区域往往就有强降水发生,而这些地方又是山洪灾害频发地,所以对这些新建区域站的降水信息进行监控就显得尤为重要。鉴于以上几点,并结合台站使用要求,设计开发了一套新的区域站数据查询显示系统,囊括了秦皇岛市所有区域站的同时选择在本地架设数据库服务器,便于统一管理和提高查询统计时效,同时提供将查询结果按常用格式导出的功能,便于为地方政府和居民服务,也让后建的区域站发挥积极作用。
  1 系统功能及架构
  系统功能及架构如图1所示。系统采用C/S架构,数据入库客户端以省局数据库为数据源,在入库配置文件和定时器的作用下,从省局数据库查询最新更新过的数据并插入本地数据库,整个过程可以自动执行,也可以根据情况通过手动点击按钮执行;数据查询显示客户端则依托本地数据库提供了数据显示(雨量、温度)、历史数据查询、数据分析及数据导出等功能。对于数据显示功能,缺省情况下显示日累积雨量及最近整点时次的各区域站温度;历史数据查询则提供了任意时间段雨量和温度数据的查询统计功能;数据分析则可根据各区域站点的降水或温度数据插值后根据量级填充相应的颜色,得到雨量或温度分布情况;数据导出功能则可以将查询或插值分析产生的结果导出为Web页面或Word文件或简单的文本文件,方便用户制作各类服务材料;还可对各区域站雨量进行监控,当达到或超过指定量级时发声报警。
  为了尽可能的减少系统开发成本,本地数据库采用开源的MySQL,安装和维护都简单易行,且功能足够强大而稳定[1]。入库客户端和数据查询显示客户端均采用Visual Studio 2010为开发平台,开发语言为C#[2]。
  2 数据库设计
  区域站数据每隔5 min便将采集数据以固定格式上传到省局,经处理后进入省局数据库服务器,为了便于数据的统一管理以及提高查询时效,新建本市区域站数据库系统,通过开发入库客户端软件定时从省局服务器查询新插入的数据并插入本地数据库。本地数据库首先需要建立一个存放本地区域站基本信息的StationList表,基本信息包括区站号、行政归属(所属的省、市、县)、经纬度信息等,以及用于存放区域站小时温度数据的Temperature表和存放区域站降水数据的Rain表,建立2张表的SQL语句如下。
  建立Temperature表的SQL语句为:
  CREATE TABLE Temperature(
  stationID varchar(5) NOT NULL,   observetime datetime NOT NULL,
  hourtemp float DEFAULT NULL,
  maxtemp int(11) DEFAULT NULL,
  timemaxtemp varchar(8) DEFAULT NULL,
  mintemp int(11) DEFAULT NULL,
  timemintemp varchar(8) DEFAULT NULL,
  createtime datetime DEFAULT NULL,
  lastmodify datetime DEFAULT NULL,
  PRIMARY KEY(stationID,observetime))
  建立Rain表的SQL语句为:
  CREATE TABLE Rain(
  stationID varchar(5) NOT NULL,
  observetime datetime NOT NULL,
  createTime timestamp NOT NULL DEFAULT ′0000-00-00 00:00:00′,
  lastmodify timestamp NOT NULL DEFAULT CURRENT_ TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  r1 tinyint(3) unsigned DEFAULT NULL,
  r2 tinyint(3) unsigned DEFAULT NULL,
  ……
  r60 tinyint(3) unsigned DEFAULT NULL,
  PRIMARY KEY(stationID,observetime))
  这2个表中,都有observetime、createTime、lastmodify 3个时间类型字段,observetime表示数据属于那个时次的观测数据,createTime表示该条记录被建立的时间,而lastmodify则表示该条记录最后被修改的时间,对于雨量数据由于每条记录包含了1 h内60 min的分钟雨量数据,如果观测到有降水,那么每隔5 min发出的数据都可能会刷新前面已插入数据,同时更新最后更新时间即lastmodify字段。
  3 数据入库客户端设计
  数据入库客户端界面设计如图2所示。整个界面简洁明了,其中各项参数如数据库IP、用户名、口令、数据库名等信息均存放在配置文件中,客户端启动时自动从配置文件中读取加载。测试按钮用于对应数据库服务器的连通性测试,操作命令分别用于手工拷贝数据、保存配置信息、退出客户端。
  软件启动后自动最小化到托盘区,然后按照程序流程设定的循环进行数据入库操作,程序操作流程如图3所示。当程序启动后,首先从配置文件加载数据库连接参数,然后使用连接参数查询本地数据库获取本地区域站列表,然后启动定时器,开始周期为1 min的循环。根据2种数据的更新频率不同,设计温度数据每10 min拷贝1次,降水数据则1 min拷贝1次。拷贝数据的操作是以站为单位按照区域站列表进行循环,每个站都分别进行新数据的查询和插入。
  在数据查询拷贝的过程中,不可避免会出现数据库操作异常的情况,这些异常会影响该次循环运行过程中的数据拷贝,但由于每次循环均会重复查询未插入的数据,所以本次循环未插入成功的数据会在后面循环过程中继续进行再次插入,直到成功为止。
  4 数据查询显示客户端设计
  4.1 主界面设计
  数据查询显示客户端是最终提供给业务人员使用的,软件主界面用于显示查询结果,分为左、右2个部分。左边占据了整个窗口的大部分,显示以本地地图为背景的数据信息,缺省情况下显示日累积雨量,各区域站位置由经纬度定位,可以直观地显示数据在地理上的分布特性;右侧以表格的形式显示经过排序后的区域站数据信息。左、右2个部分还可以进行联动,当鼠标选中右边列表中某一行时,左边地图对应区域站将弹出信息,以更加醒目的形式显示该站点的详细信息如区站号、降水量或温度数值,弹出的信息显示一段时间后自动消失。
  软件采用秦皇岛地图作为背景,各种数据就显示在背景地图之上,为了使地图随窗口大小进行等比例放大以确保程序可以在不同分辨率的显示器中正确显示,设置BackgroundImageLayout属性为Zoom,且最小值不得小于地图原值。各区域站在地图上位置可以通过如下公式来确定:
  x=(longitude-xMin)×width/(xMax-xMin)
  y=(yMax-latitude)×height/(yMax-yMin)
  其中longitude、latitude分别代表区域站的经纬度,xMin、xMax、yMin、yMax分别代表秦皇岛市地理范围的最大最小经纬度,width和height则分别表示控件的长和宽,当窗口大小发生变化时,width和height也将发生变化,但其长宽比保持固定,以保持背景图像不变形。
  软件启动后按照配置参数的设置定时从数据库读取数据,查询结果将用于填充右边的表格以及左边对应位置的数据显示控件,当数据有变化时则更新旧数据,并以闪烁的红色站标来加以提醒,当降水量超过某个量级时还会发声报警,提醒值班业务人员加以关注。
  4.2 历史数据查询
  历史数据查询主要用来查询历史时段的小时降水和小时温度数据。对于降水,以表格和图形的形式显示查询时段内各小时降水量及小时内各分钟的降水分布情况;对于温度除了以列表形式显示各小时的整点温度、1 h内最高最低温度及出现时间外,还以逐小时分布曲线的形式形象地显示了查询时段内温度的小时变化曲线。   4.3 插值分析
  插值分析功能主要是根据各区域站雨量,插值后根据量级填充相应的颜色[3-4],填充颜色的选取严格按照国家标准执行。该部分功能主要采用在气象部门较为常用的Surfer软件来完成,产生的图形化结果很形象地显示了秦皇岛市降水的分布情况,可以更好地为地方政府进行服务。Surfer软件是美国Golden Software公司研制的基于Windows系列操作系统的插值绘图软件,是一个十分流行的小型软件。同时还可通过VB等编程语言将其强大的功能嵌入到用户开发的系统中[4]。
  通过Surfer插值绘图流程如图4所示。第一步:通过查询数据库获取的站点数据经插值后生成格点数据。此处数据源是1个至少包含3列的文本文件,其中2列表示区域站的经纬度,1列表示降水量,还可以有其他的例如区站号或区站名等。Surfer缺省情况下是以第1列为经度、第2列为纬度、第3列为值,如果文件不是按照这个格式写入的,那么在进行插值时就需要手动指定。第二步:格点数据在地图文件的控制下经白化后生成新的格点文件。地图文件是表示秦皇岛市地理边界封闭曲线的数据文件,用于控制数据的范围,经白化后只对封闭曲线指定范围的数据予以保留。第三步:利用白化后的格点数据绘制等值线。第四步:将刚绘制的等值线根据量级填充相应颜色后生成成品图。
  4.4 其他功能
  其他功能包括数据导出和日志。数据导出功能可以将查询结果导出为Word文件格式或html格式或txt普通文本文件,可满足不同情况下的应用需求。其中降水数据是按照不同的县来排序的,同一个县按照降水量降序排列,如果是Word文件格式或网页文件格式,还可以以不同的颜色表示各个县区的第1个数据,这样很容易就找到各个县的数据列表,方便了各县业务人员进行查看。日志功能则主要用来记录各区域站雨量级别变化情况,当某个区域站开始降雨或降水量级别发生变化后发声报警,并产生1条日志信息,方便业务值班人员查看降水量的变化情况。
  5 结语
  秦皇岛区域站数据查询显示系统极大地方便了业务值班人员获取全部区域站的降水信息,使得新装的区域站在地方气象服务中发挥积极作用。该软件运行逾1年来,稳定可靠。但由于该软件后台的数据库来自于省局数据库,而不是直接来自区域站,故时效性稍差。另外,由于开发时间较短、开发经验有限以及调研不到位,整个系统难免会有不尽如人意的地方,这只能在以后的工作中不断加以改进和完善。
  6 参考文献
  [1] PAUL DuBois.MySQL权威指南[M].北京:机械工业出版社,2004.
  [2] KARLI Watson,CHRISTIAN Nagel.C#入门经典 [M].5版.北京:清华大学出版社,2010.
  [3] 任印国,魏永强.使用Surfer软件绘制地质图件和处理地质数据的方法[J].测绘技术装备,2006(1):35-37.
  [4] 余祖玉,俞立军,王丽华.基于Surfer Automation技术的水文气象等值线图绘制[J].软件导刊,2002(6):157-158.
其他文献
摘要 由于牡丹是异花传粉植物,为了克服现有牡丹品种的不足,培育花色奇异、花型丰富并具有各种用途的优良品种,采用人工授粉法对牡丹进行杂交,既而从中培育出新品种,从套袋、母本人工去雄、晾花粉、筛花粉、杂交授粉、杂交后管理等几个方面介绍牡丹人工授粉技术,以供参考。  关键词 牡丹;人工授粉;杂交  中图分类号 S685.11 文献标识码 B 文章编号 1007-5739(2016)15-0157-02 
摘要 在对黑果枸杞地下垂直茎研究的基础上,首次确立了其可作为接穗使用的属性特质,并采用这种接穗,首次进行了黑果枸杞与枸杞不同方法、不同生长季的嫁接研究。结果表明:采用劈接、切接、舌接3种嫁接方法均能获得良好的成活效果,成活率均达80%以上。劈接法不同生长季嫁接,以3月下旬至6月中旬为适宜嫁接时间,成活率达40%~90%;4月中旬至5月中旬为其最佳嫁接时间,成活率达90%;7月中旬、8月中旬仅出现个
摘要 介绍天优2352的亲本来源、选育经过、特征特性,总结其栽培技术、制种技术,以为天优2352的推广种植提供参考。  关键词 高产;杂交水稻;天优2352;选育  中图分类号 S511 文献标识码 A 文章编号 1007-5739(2015)08-0055-01  Abstract Parental origin,breeding process and characteristics of T
摘要 阐述了浚河湿地公园建设的必要性,对建设浚河国家湿地公园的资源条件、管理条件以及预期效果进行了分析。  关键词 浚河国家湿地公园;必要性;可行性;建设条件;预期效果;山东平邑  中图分类号 X37 文献标识码 A 文章编号 1007-5739(2016)17-0146-02  Abstract The necessities and significances of the construct
摘要 进行茄子氮肥总量控制试验,结果表明:优化施氮处理(N2P2K2)单株果数、单果重、果长、果横径等经济性状最优,能明显促进茄子的生长。优化施氮处理产量为74 840 kg/hm2,与70%优化氮区、130%优化氮区比较,分别增产5 880、3 440 kg/hm2,增产率分别为8.53%、4.82%,经F检验,优化施氮的处理与70%优化氮区、130%优化氮区比较增产效果达极显著水平。优化施氮处
摘要 随着世界经济的发展和人们生活水平的不断提高,人们对农产品的食品安全问题逐渐重视,尤其是在一些发达国家,对农产品的质量安全重视程度更高。我国近年来对农产品的重视程度也在逐年提高,通过对农产品安全问题的研究和调查,分析我国目前农业产品安全现状与存在问题的成因,同时提出了相应的解决对策。  关键词 农产品质量安全;问题;原因;对策  中图分类号 F322 文献标识码 A 文章编号 1007-573
摘要 为了寻找出对鸭脚木星室木虱高效、持效期长、对环境安全的杀虫剂,选择10%吡虫啉可湿性粉剂等8种杀虫剂进行防治鸭脚木星室木虱药剂的筛选试验。结果表明:所选择8种农药对鸭脚树星室木虱的防效均高于60%,其中10.5%阿维·哒螨灵乳油1 200倍液对鸭脚树星室木虱虫瘿增长的抑制作用最好,防效最差的是22.4%亩旺特悬浮剂4 000倍液。  关键词 鸭脚树星室木虱;杀虫剂;防效  中图分类号 S76
摘要 研究了5种不同改造类型马尾松林初期林木生长情况及林下植物多样性,结果表明:①在造林初期,不同改造树种的生长存在明显差异。其中,红锥和木荷长势最好,生长最快;阴香、枫香、黧蒴和火力楠长势中等,生长较快;樟树生长速度最慢。②不同改造类型林下植物多样性不同。红锥×枫香自然式混交改造类型林下植物多样性最高,其次是火力楠×黧蒴自然式混交改造类型和枫香×樟树自然式混交改造类型,而木荷×阴香自然式混交改造
摘要 利用2005—2014年临夏地区永靖、东乡、广河、和政、康乐5个气象站雷暴观测资料,从10年的观测资料中,挑选出了213个雷暴记录。由于所选站点比较集中,一个站点发生雷暴就认为该地区有发生对流。根据雷暴发生个例,逐个查看2005—2014年5—9月MICAPS 8:00、20:00的500 hPa高度场,将对流天气过程进行划分,得到了临夏地区对流天气的主要环流形势为:槽后西北气流型、横槽型、
摘要 [目的]依据杂种优势利用原理,探讨天麻不同类型间杂交组合,旨在寻求并利用其优势性。[方法]以红天麻、乌天麻、绿天麻作供试亲本,开展类型间正反交试验,分析不同组合间的产量差异。[结果]天麻不同类型组合中,以绿天麻(父本)×红天麻(母本)F1代有性种产量最高达2.84 kg/0.35 m2优势明显;以乌天麻(父本)×红天麻(母本)组合F1代个体平均单重及商品天麻产量分别达5.07 g和5.11