当前位置:首页 期刊杂志

梧州西江机场气象服务系统设计与实现

时间:2024-05-04

梁慧 潘习元 黎直

摘要:针对梧州西江机场气象服务需求,设计了专项气象服务系统,该系统分为服务器端和调阅客户端,服务器端和客户端由专线联通。服务器端由ftp服务器、数据下载和资料转发3个核心模块组成,数据下载采用C语言编程,资料转发采用已有的软件同步转发,客户端由ftp资料转发软件、micaps和pup客户端3个核心模块组成。目前,该系统已在业务中应用,为梧州西江机场飞机航行业务提供了重要支撑。

关键词:气象服务;资料下载;调阅显示

中图分类号:TP311

文献标识码:A

文章编号:1009-3044(2020)04-0038-05

Design and Implementation of Meteorological Service System for Wuzhou Xijiang Airport

LIANG Hui,PAN Xi-yuan,LI Zhi

(Wuzhou Municipal Meteorological Service,Wuzhou 543000,China)

Abstract:In order to meet the needs of meteorological service in wuzhou xijiang airport,a special meteorological service system is designed.The server terminal is composed of FTP server,data download and data forwarding.The data download is programmed with c language,and the data forwarding is synchronously forwarded by the existing software.The client terminal is composed of FTP data forwarding software,micaps and pup client.At present,the system has benn applied in the business,providing important support for the aircraft navigation business of wuzhou xijiang airport.

Key words:meteorological services;data download;read the display

隨着梧州市的发展,梧州机场所处的地理位置变成了市中心,严重影响了梧州机场周边建筑的建设,为了梧州市未来更好的发展,梧州机场需要搬迁,搬迁到梧州所辖县——藤县,重新建设的机场叫梧州西江机场。原来的梧州机场跟梧州市气象局有气象服务业务,需要对原有服务进行迁移,因原服务器使用时间超过了十年,服务器操作系统是windows server2003,微软不提供系统补丁,互联网传输数据,安全使用措施比较弱,安全性低,不适应现在的网络安全要求。传输的数据量为数值产品和雷达产品,数值产品有地面填图和气压场资料,高空观测填图、温度对数压力图,欧洲中心等,雷达产品有反射率、基本速度、回波顶、风廓线和风暴追踪信息5大项产品。机场搬迁后,西江机场对气象资料的需求产生了变化,地面高空产品保留,雷达产品增加到14大项,数值产品除了欧洲中心外,增加了日本细网格和德国细网格,数据量增多了大概十倍,为了适应新的业务需求,本文将西江机场需求为基础,对气象服务系统进行新的设计与部署。

1 系统设计架构

租用电信线路,使用专网传输数据,ftp服务器操作系统使用的是windows server2012,微软提供操作系统补丁,服务器安装杀毒软件,安装防火墙,路由器只开通必要端口。

图1为系统结构图。多普勒雷达连接RDA系统,RDA系统跟RPG系统通信,产生数据传给PUP系统。基于CIMISS气象数据统一服务接口(MUSIC:Meteorological Unified Service Interface Community)实现对实况产品、日本细网格、欧洲细网格和德国细网格海量气象数据快速下载、处理、存储,地面高空和数值产品下载过程中,下载程序釆用C语言来编写。资料转发系统转发雷达产品。

利用Serv-U(是一种被广泛运用的FTP服务器端软件,支持3x/9x/ME/NT/2K等全windows系列毋搭建ftp服务器。利用ftp转发系统,将资料从雷达服务器同步到ftp服务器。

地面高空和数值产品在micaps显示应用,雷达产品用RPG(雷达产品生产,Radar Product Generator)产生和PUP(主用户工作站)显示应用。

2 提供服务资料

2.1 气象实况观测产品

02时、05时、08时、14时、17时、20时、23时欧亚范围的地面实况产品;08时、20时欧亚范围的高空实况和温度对数压力图产品,如表1所示。

2.2 数值预报产品

欧洲细网格:08及20时海平面气压场分析及未来12-72小时预报,500hpa、700hpa850hpa高度场、温度场、风场、湿度场分析及未来12-72小时预报。

德国细网格:08及20时海平面气压场分析及未来12-72小时预报,500hpa、700hpa850hpa高度场、温度场、风场、湿度场分析及未来12-72小时预报。

日本细网格:08及20时500hpa、700hpa850hpa高度场、温度场、风场分析及未来12-72小时预报,925hpa风场分析及未来12-72小时预报,地面10米风场分析及未来12-72小时预报,地面气压场分析及12-72小时预报;未来0-72时累积降水预报。如表2所示。

2.3 梧州多普勒天气雷达产品

理论上,每6分钟生产1个基数据,1个小时生产10个基数据,每1个基数据生成36个产品,需要提供的雷达产品包括基本反射率、基本速度、组合反射率、回波顶、风廓线、垂直积分液态含水量、风暴追踪信息、冰雹指数、中尺度气旋、龙卷涡漩特征、1小时累积降水、3小时累积降水、风暴总累积降水、反射率等高面位置显示,共31个产品,按照31个产品计算,1个小时产生310个产品,1天产生7440个产品。如表3产品所示。

3 关键技术

3.1 如何快速下载基于CIMISS数据环境下的资料

3.1.1 CIMISS数据环境下载资料流程图

在CIMISS数据环境下载资料的工作任务中,首先确定资料种类,分布式文件存放目录,资料的文件名结构,文件时次,其次,根据编程语言选择合适的函数,最后调用分布式下载工具。程序完成后,用批处理调阅程序,在计划任务里设置批处理,每15分钟运行1次。图2程序流程图。

3.1.2 日期获取和转换

在CIMISS数据环境资料下载过程中,在C编程语言中,生成时间函数如图书[l]time_t(时间函数)来完成。地面02、05、08、11、14、17、20时次资料生成时文件名为当天时间,23时次资料文件生成时文件名为前一天日期,例子:2019年10月10日地面资料文件,20191010020000.000(2019年10月10日02时)、20191010050000.000(2019年10月10日05时)、20191010080000.000(2019年10月10日08时)、20191010110000.000(2019年10月10日11时).20191010140000.000(2019年10月10日14时)、20191010230000.000(2019年10月10日23时),10日23时的资料需11日才能下载,合成23时资料文件名要将当天日期运算为昨天日期;高空资料文件名20191010080000.000(2019年10月10日08时)、20191010140000.000(2019年10月10H14时);欧洲细网格资料文件名19101008.000(2019年10月10日08时000时次)、19101008.024(2019年10月10H08时024时次)、19101008.048(2019年10月10日08时048时次)、19101008.072(2019年10月10008时072时次)、19101020.000(2019年10月10日20时000时次)、19101020.024(2019年10月10日20时024时次).19101020.048(2019年10月10日20时048时次)、19101020.072(2019年10月10日20时072时次),10日20时的资料需11日才能下载,合成资料文件名要将当天日期运算为昨天日期;德国细网格资料和日本细网格资料与欧洲细网格下载资料时次一样。

下面是用C语言编写的获取时间主程序段代码:

//取得当天时间

time_t rawtime;

time_t t;

struct tm*info;

struct tm*m;

char today[80]="0";

char today2[80]="0";

char yesterday[80]="0";

char yesterday2[80]=“0";

time(&rawtime);

info=localtime(&rawtime);

strftime(today,80,”%Y%m%d",info);

printf("%s\n",today);

//运算昨天日期

t=time(NULL)-24*3600;

m=localtime(&t);

strftime(yesterday,80,"%Y%m%dH,m);

……

3.1.3 M4分布式数据库下载方式

调取M4分布式数据库文件运行GDSJavaClient.jar需要Ja-va8环境,命令如下:

java-jarGDSJavaClient.jar IP 地址 8080 samba目录 文件名 文件名

3.1.4增加资料接口方式

文档”wzjc1.txt" “wzjc2.txt" "wzjc3.txt”为增加产品配置接口。

例子:

wzjcl.txt文档内容:

2

JAPAN_MR/WIND/900 08.000

JAPAN_MR/WIND/900 20.012

wzjc2.txt文档内容:

2

SURFACE/TMP_NATIONAL 210000.000

SURFACE/TMP_NATIONAL 220000.000

wzjc3.txt文档内容:

1

SURFACE/RAIN24_NATIONAL 230000.000

文檔“wzjcl.txt”,第一行为需要下载文件的总行数,第二行第一字符串为文件来源路径,第二行第二串字符串为合成文件名的后半部分,其中文件名前半部分为年月日,年取年份后2位,例如:2019年6月25日合成“190625”。

文档“wzjc2.txt”,第一行为需要下载文件的总行数,第二行第一字符串为文件来源路径,第二行第二串字符串为合成文件名的后半部分,其中文件名前半部分为年月日,年取年份4位,例如:2019年6月25日合成“20190625”。

文档“wzjc3.txt”,第一行为需要下载文件的总行数,第二行第一字符串为文件来源路径,第二行第二串字符串为合成文件名的后半部分,其中文件名前半部分为年月日,主要是地面产品23时,年取年份4位,日期取前一天,例如:2019年6月25日合成“20190624”。

下面是用C语言编写的接口主程序段代码:

if((fpl=fopen("wzjcl.txt","r"))==NULL)

{

printf("can'topenwzjcl.txt!\n");

exit(0);

}

fscanf(fpl,n%d",&total1);

for(i=0;i

fscanf(fpl,"%s",&address);

fscanf(fpl,"%s",&suffix);

strcpy(strorder,”java-jarGDSJavaClient.jar IP 地址 8080 E:Wmicaps");

strcat(strorder,address);

strcat(strorder,"");

strcat(strorder,yesterday2);

strcat(strorder,suffix);

strcat(strorder,"");

strcat(strorder,yesterday2);

strcat(strorder,suffix);

system(strorder);

}

fclose(fp1);

3.2 如何转发雷达产品

图3为资料转发系统界面,功能分手工操作、节目表维护、系统参数设置和退出。主节面有已接发文件、待收发文件和系统参数。盘符"x”为PUP映射盘,生成时间记录为文件生成时间,发送时间记录为发送成功。左下角rad灯为绿色代表链路连接,为红色代表未连接。

关键设置好配置文件sendfile.txt,部分参数如下:

主机名远程路径本地路径类型文件名资料说明重命名开始时间结束时间

rad /rad/ET/41 X:\products\Z9774\ET\41 rad *!!##*.774CIN-RAD雷达

rad /rad/ET/41 X:\products\Z9774\ET\41 rad *!!@@*.774CINRAD雷达

rad /rad/ET/41 X:\products\Z9774\ET\41 rad *.41CINRAD雷达

rad /rad/HI/59 X:\products\Z9774\HI\59 rad *!!##*.774CIN-RAD雷达

rad /rad/HI/59 X:\products\Z9774\HI\59 rad *!!@@*.774CINRAD雷达

rad /rad/HI/59 X:\products\Z9774\HI\59 rad *.59CINRAD雷达

rad /rad/HSR/33 X:\products\Z9774\HSR\33 rad *!!##*.774CINRAD雷达

rad /rad/HSR/33 X:\products\Z9774\HSR\33 rad *!!@@*.774CINRAD雷达

rad /rad/HSR/33 X:\products\Z9774\HSR\33 rad *.33CIN-RAD雷达

rad /rad/M/60 X:\products\Z9774\M\60 rad *!!##*.774CIN-RAD雷达

rad /rad/M/60 X:\products\Z9774\M\60 rad *!!@@*.774CIN-RAD雷达

rad /rad/M/60 X:\products\Z9774\M\60 rad *.60CINRAD雷达

rad /rad/OHP/78 X:\products\Z9774\OHP\78 rad *!!##*.774CINRAD雷达

rad /rad/OHP/78 X:\products\Z9774\OHP\78 rad *!!@@*.774CINRAD雷达

rad /rad/OHP/78 X:\products\Z9774\OHP\78 rad *.78CIN-RAD雷达

rad /rad/R/19 X:\products\Z9774\R\19 rad *!!##*.774CIN-RAD雷达

rad /rad/R/19 X:\products\Z9774\R\19 rad *!!@@*.774CIN-RAD雷达

rad /rad/R/19 X:\products\Z9774\R\19 rad *.19CINRAD雷达

主机名rad为远端计算机名,远程路径为远端路径,本地路径为存放在本地路径,类型为雷达,重命名中文件名用“##”和“@@”区分昨天日期还是今天日期,“!!”代表月份,“*”为通配符,后缀“774”为产品,其他后缀为产品号。

3.3 如何搭建FTP服务器

中文文献[2]Serv-UFTPServer是一种被广泛运用的FTP服务器端软件。可以设定多个FTP服务器、限定登录用户的权限、登录主目录及空间大小等,功能非常完备。通过使用Serv-U,用户能够将任何一台PC设置成一个FTP服务器,这样,用户或其他使用者就能够使用FTP协议,通过在同一网络上的任何一台PC与FTP服务器连接,进行文件或目录的复制,移动,创建和删除等。给用户设置账号,出于安全的考虑,访问方式权限只设置为只读。

3.4 如何接收调阅资料

雷达,地面、高空、数值产品资料下载到客户端后,再用mi-caps和pup调阅,图4、图5是调阅地面实况资料和调阅雷达产品界面。

4 结束语

系统具有自动转发雷达产品,自动下载基于CIMISS环境下的地面实况、高空实况、欧洲细网格、德国细网格和日本细网格资料特点。采用计划任务处理技术,实现了资料下载的自动化、批量化、流程化。本文系统地介绍了梧州西江机场气象服務系统的关键技术和解决方案,相信对各地气象部门为外部门做实时气象服务提供了很好的借鉴作用。

参考文献:

[1] Schildt H,Guntie G.C++ Builder技术大全:周海斌,等,译.北京:机械工业出版社,2002:302-304.

[2] 360百科[EB/OL].https://baike.so.com/doc/5500892-5738035.html.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!