地级台站自动气象站实况资料监控的设计

2015-05-04 08:37李细生肖妙妮
中低纬山地气象 2015年2期
关键词:预报员柱状图实况

张 华,李细生,肖妙妮

(1.湖南省株洲市气象局,湖南 株洲 412003 ;2.湖南省娄底市气象局,湖南 娄底 417000)

地级台站自动气象站实况资料监控的设计

张 华1,李细生1,肖妙妮2

(1.湖南省株洲市气象局,湖南 株洲 412003 ;2.湖南省娄底市气象局,湖南 娄底 417000)

2014年初观测业务调整以来,一些夜间观测项目取消,给预报员快速获取实况资料带来困难,自动站实况资料监控程序及时地解决了这一问题。该程序从上级服务器中自动调取观测站数据并显示,既可监视各个观测站资料的及时性和完整性,又可为气象要素的预报提供依据。程序运行稳定可靠,数据快速准确,界面友好美观;程序的设计方面突破了一些难点问题,如借助Chart控件显示平滑曲线和柱状图,利用图像的旋转技术显示风向和风速等。

气象自动站;资料监控;VB.NET;数据库

1 前言

随着全国地面气象观测业务的调整,人工观测时次和项目的减少,自动观测密度的项目的增多,目前全国大部分地区自动站地面观测全要素5 min发一次报,要素达120余个,如何快速获取这些要素,以及从众多要素中遴选出预报员需要的数据和常用的数据成为地市级预报员所面临的一个难题。虽然MICAPS程序可以显示全国范围加密自动站数据,但一是由于MICAPS资料保存天数有限,对数天前的资料检索无能为力,二是由于一般地市级区域范围小,对要素的纵向比较和应用要求更高,而MICAPS在这方面的功能不太多。此外,中国气象局提供的“综合气象观测系统运行监控程序”纵向检索功能强大,要素也全面,但要在全国范围内找到本地区站点,再找到相应的要素并作出时序图,操作稍显繁琐。因此,设计一个针对某一具体地区的实况资料监控程序很有必要,该程序可以自动快速调取本区域的气象实况,实现24 h不间断的监控,预报员无需按键操作即可读取相应的资料,既快捷又方便,可以很好的发挥地市级预报员在地域资料应用上的优势,为各项气象要素比如温度、降水和风向风力、能见度等的预报提供有力依据,在短临预报中发挥作用。

应上述需求,株洲市气象台开发人员设计了一个实况资料的监控程序,自2014年1月开始,该程序一直在气象台使用,半年来运行稳定,数据准确,操作简单,界面美观,深受预报员喜爱。下面将设计思路、主要功能及开发的难点和亮点逐一介绍。

2 设计思路

2.1 总体设计要求

程序设计总体要求是:稳定、可靠、快速、简便、美观。

2.2 流程介绍

系统的工作流程:每小时通过FTP方式从省局服务器调取各个观测站的整点报文(文本格式),由翻译模块处理后,数据显示在主界面,并作出图形曲线,同时自动存入数据库,可供查询和统计分析。

3 程序的主要功能模块

程序界面用Microsoft公司的VB.NET编程语言[1]开发,具有友好、美观、傻瓜化等特点,无需太多人工操作,主要的功能模块有以下几个:

3.1 资料调取模块

用微软的Timer控件,每2 min(时间间隔可以调整)向省局服务器发送一次查询,判断是否有新报文数据生成,如有,即通过FTP方式调回本地,如没有则进入下一次查询循环。

3.2 资料翻译模块

该模块的作用是将调回的文本格式报文,根据中国局观测司《地面气象要素数据文件格式(V1.0)》编码规则,翻译成要素数值,并保存进事先设计好的MDB数据库。

图1 程序主界面

3.3 显示、作图模块

一旦数据库中有新数据存入,则触发显示作图模块。数据显示方式分为文本、折线图、柱状图和位图3种方式。整点时刻的各种要素以文本形式显示在界面右侧,最近24 h的温度、相对湿度和海平面气压以平滑的折线图显示在主窗口,最近24 h雨量数据以绿色柱状图显示,风向风速则以位图方式显示,符合预报员使用习惯,各种数据一目了然。

3.4 数据库模块

考虑到主要是单位内部使用,数据量和访问量都不大,安全性要求也不高,因此数据库采用XP系统自带的MDB设计,此数据库的优势是无需额外安装数据库服务器,通用性和移植性都比较好[2]。

3.5 统计、查询模块

该模块的功能主要是实现历史数据的年、月、日、小时的简单查询和统计,便于操作者快速掌握既往的天气气候资料。例如查询2014年3月日最高最低气温,点击“统计”,则出现如图4“日最高、最低气温柱状图”窗口:

图2 日最高、最低气温柱状图(3月)

此外,资料的查询还可以表格形式显示各种要素的历史数据(图略)。

4 技术难点和亮点

技术的难点主要体现在:要素曲线的显示;风向风速的图形化显示等。

亮点:上述难点问题的解决;界面的美观性;资料的快速及时获取;统计和查询功能的实现;程序的自动化和稳定性。

4.1 要素曲线显示

要素曲线和柱状图使用.NET3.5程序自带的Chart控件实现,该控件的功能非常强大,做出的图表效果也很美观。下载和安装好相关组件后,打开VS2008,在工具箱中右键选项,添加关于MSCHART组件的2个选项,工具箱中即出现Chart组件。 设置好Chart控件的各种属性参数后,使用DataBindings 属性绑定到数据库查询产生的数据源即可。其中Chart控件用法的掌握是个难点,包括安装、数据源绑定、格式和属性设置、事件的使用等等对于初次接触的开发者来说都是个挑战,需要花时间去细细研究。

4.2 风向风速的图形化显示

VB.Net图像操作的功能非常强大,如果用其GDI+接口来绘制图像则显得费时费力。用事先做好的透明位图(gif格式),通过Picboxarray旋转相应的角度实现风向、风速的图形化显示是相对较快速简便的一种方式。图像的平移和旋转方法是利用TranslateTransform和RotateTransform子程序。主程序内的调用方法是:Picboxarray().image=rotate(bmp1,具体角度数值),如果报文内风向风速是“PPC”静风,则Picboxarray().image = Nothing ,不画图。

5 结论

①实况资料监控程序能从上级服务器中自动调取观测站数据并显示,既可监视各个观测站资料的及时性和完整性,又可为气象要素的预报提供依据。

②经过半年的试运行,该程序运行稳定可靠,数据快速准确,界面友好美观。

③程序的设计方面突破了一些难点问题,如借助Chart控件显示平滑曲线和柱状图,利用图像的旋转技术显示风向和风速等。

[1] 杨浩,著.VB.NET入门经典(第3版)[M].北京:清华大学出版社.

[2] D.M.Kroenke著.数据库处理--基础、设计与实现(第七版)[M].北京:电子工业出版社.

2014-04-22

张华(1975—),女,工程师,主要从事地面气象观测工作。

1003-6598(2015)02-0058-02

TP311

B

猜你喜欢
预报员柱状图实况
江西省天气预报员现状调查分析与对策建议
基于Unity3D 的冒泡排序算法动态可视化设计及实现
乡村小学的愿望与现实——宜君乡村教育实况
天舟一号货运飞船发射实况掠影
高中地理图像图表题解析技巧之管窥
由科研论文中一个柱状图引发的编辑思考
航空气象预报人为因素的分析初探
可爱潮咖们的独门彩妆实况直播
基于Android平台的柱状图组件的设计实现
关于提高天气预报准确率的思考