基于云计算的强震预警软件开发

2016-04-01 05:22赵银刚王晨谭婧刘庆杰1中国山东262100安丘地震台2中国北京100081中国地震局地球物理研究所3中国辽宁110162沈阳炮兵学院4中国河北065201防灾科技学院
地震地磁观测与研究 2016年1期
关键词:功能模块云计算

赵银刚王 晨谭 婧刘庆杰1)中国山东262100安丘地震台2)中国北京100081中国地震局地球物理研究所3)中国辽宁110162沈阳炮兵学院4)中国河北065201防灾科技学院



基于云计算的强震预警软件开发

赵银刚1)王 晨2)谭 婧3)刘庆杰4)
1)中国山东262100安丘地震台2)中国北京100081中国地震局地球物理研究所3)中国辽宁110162沈阳炮兵学院4)中国河北065201防灾科技学院

摘要依托专业地震监测台网,采用云技术环境,利用Java开发平台,开展地震早期预警软件系统集成关键技术研究,研制一套具有自主知识产权的地震早期预警软件系统,并在中国地震重点监视防御区和试验场开展系统试验,建立信息发布平台,实现预警参数和地理信息的近实时动态发布。该软件在地震事件触发准确率、误触发判断及信息发布速度等方面具有一定创新,从而提高地震预警信息的时效性和准确性。

关键词强震预警;云计算;多线程技术;功能模块

0 引言

地震预警(Earthquake Early Warning,EEW)技术作为震灾预防的新手段,已经在多个地震多发国家和地区引起重视并得到应用(赵纪东等,2009)。地震预警系统的基本硬件组成(袁志祥等,2007)为:地震监测系统(数字化实时强震仪)→通信系统(电话线、无线拨号上网、中继站)→控制中心(计算机和专业软件)→警报发布系统(手机、电子媒体、政府)。整套地震预警系统的特点应该是高度集成、实时监控、飞速响应,尤其是飞速响应至关重要。地震预警作为一种以秒计的“超级地震速报”,每1 s均是决定地震预警成败的关键。地震预警信息的发布过程涉及数据传输、处理、信息确认等环节,每个环节均会消耗一定时间(殷海涛等,2012;张晁军等,2013;张红才,2013)。由于地震动参数获取的速度和精度直接影响到地震预警系统运行的效率和准确度,因此数据传输处理系统也是需要重点保障和维护的子系统。本文基于云计算技术开发强震预警软件,并在示范区开展系统试验,建立信息发布平台,实现预警参数和地理信息的近实时动态发布。在地震事件触发准确率、误触发判断以及信息发布速度等方面有一定创新,从而进一步提高预警信息的时效性和准确性。

1 总体构架

本文所涉及的强震预警软件系统由参数管理、数据汇集服务、事件触发判断、自动震相拾取、自动定位、震级估算、烈度估算、Web信息发布等模块组成。系统集成后分为用户层、应用层、数据层。搭建环境采用云技术,利用Java平台开发编制各功能模块及集成模块,程序编制注重系统运行的快速、自动处理和实用化功能,尽量实现智能化,减少人机操作,提高产出速度。

图1为强震预警软件系统构架示意图。其中,数据层主要是数据获取,从设备或离线数据文件中获取数据,通过TCP SOCKET提供后续模块使用。台网基础信息可通过TCP SOCKET,从数据服务模块获取。应用层主要是系统业务功能模块,包括误触发判断、事件触发判断、震相拾取、事件定位、震级估算、烈度估算等功能模块。在应用层中采用多线程技术和分布式计算技术,以共享数据区动态震相数据为耦合点,提高系统运行效率,缩短计算时间,充分利用CPU资源。用户层主要包括面向专业用户的参数管理模块和面向公众用户的预警信息发布模块。预警信息发布模块通过Web Service服务与后台模块进行数据交换。

图1 系统构架Fig.1 System architecture diagram

图2 物理机网络拓扑Fig.2 Physical network topology

1.1 分布式云计算环境搭建

物理机网络拓扑中云环境搭建采用5台高性能服务器,通过2个网口分别连接2台千兆交换机。5台服务器中的1台做控制节点,其他4台做计算节点兼存储节点。2台交换机中1台与行业网相连,用于外部通讯,另1台进行私有云内部通讯;台式机作为监控用机。图2为物理机网络拓扑图。

OpenStack是一个开源的云计算管理平台项目,以Apache许可证授权,由美国国家航空航天局和Rackspace合作研发,该项目由几个主要组件组合完成某些具体工作。Ubuntu Linux是OpenStack的主要操作系统,本软件采用最新的64位版本Ubuntu Server安装、配置OpenStack,搭建私有云环境。

1.2 多线程技术应用

线程是程序运行的基本执行单元。操作系统(不包括单线程操作系统)执行程序时,在系统中建立一个进程,且必须至少建立一个线程(此线程称为主线程)作为该程序运行的入口点。合理的使用线程,可充分利用CPU资源,简化编程模型及异步事件的处理,减少开发和维护成本,使GUI更有效率,改善应用程序性能。

Java是纯面向对象语言,通过Thread类将线程必须的功能封装起来。有3种方法可以实现多线程:①继承Thread类实现多线程;②以Runnable接口方式实现多线程;③使用Executor Service、Callable、Future,实现有返回结果的多线程。

2 功能模块接口封装

2.1 数据汇集服务

数据汇集服务分为3部分:①实时数据汇集服务程序,提供测震、强震与GPS波形数据;②离线数据服务程序,将数据文件转换为模拟实时数据流,模拟实际台网观测环境;③客户端读取接口程序,以TCP SOCKET方式从数据汇集服务器获取台站的信息和数据,采用Java语言开发,方便与系统集成。数据汇集服务在运行前需进行台网参数、速度结构模型等配置,服务框架见图3。

图3 数据汇集服务框架Fig.3 Data collection service block diagram

客户端接口模块采用双数据缓冲方式,两个缓冲区的作用分别是:①存储从流服务接收到的数据,缓冲区中各通道循环队列长度为10 s;②为事件触发检测模块提供数据,循环队列长度为事件触发检测模块数据分析总长度。程序创建单独线程,每间隔20 ms 对1号缓冲区进行检查,有新数据时将新数据追加到2号缓冲区,然后启动事件触发检测模块。采用双缓冲区的优点是,在事件触发检测模块占用缓冲区进行计算时,不影响数据接收。

2.2 地震波形实时显示

基于Web页面的地震波形实时显示模块,在浏览器中使用High Chart JS组件,显示地震实时波形,后台应用服务器通过Servlet从波形服务器获取实时波形数据,利用Ajax技术,将波形数据传递到前台展示。波形显示界面提供波形显示时间长度控制、通道控制、纵轴放大等功能。波形显示时间长度分为30 s、60 s和120 s等3种模式,可通过下拉菜单选择控制。波形显示长度为120 s时,因需要缓存的数据包较多,需要工作站具有较高性能。通道控制菜单可以单独控制垂直、东西、南北3个通道的显示情况,未选中则相应通道图形不显示。图4为基于Web的波形实时显示框架。

2.3 地震事件触发检测

震相分析是波形数据中提取数据的主要手段,快速确定地震参数是地震预警系统的关键技术环节之一,关系到预警时间的长短。地震事件触发检测模块的功能是,从实时数据流中计算提取台站震相信息,包括P波、S波的触发时间、位移幅度、卓越周期。提取时间的时效性关乎全局预警时间,因此本模块采用Java多线程和分布式计算技术,以缩短每次计算时间。模块采用全局动态数组存放提取的震相信息,作为与其他模块交互的接口,减少与其他模块的耦合,提高程序的灵活性。地震事件触发检测模块主要有管理线程和识别计算线程2部分。管理线程负责初始化相关参数、轮询台站数据和创建启动计算线程;识别计算线程负责将波形数据进行分布式计算分析,将最终震相结果返回管理线程。图5为地震事件触发检测管理线程流程。

图4 基于Web的波形实时显示框架Fig.4 The real-time wave display based on Web

图5 地震事件触发检测管理线程流程Fig.5 Detection management fl ow chart of seismic event trigger

2.4 误触发判断模块

误触发判断采用2种方法:①基于V图和走时,找出其中不合理的台站;②根据台站与周边台站的距离、波速及周边台站的触发情况,判断该台是否为误触发。

对于1组触发台站,根据Delaunay三角网空间分布,对相邻台站进行分组,每组台站中,根据两两走时差判定此台站是否满足走时原理,从而为台站误触发检测提供依据。程序流程见图6。

对于动态触发的1组台站,根据台站间距和P波波速计算周边台站的传播时间,如果传播时间与台站触发后的时间差超出预设值,则认为台站是误触发,判断流程见图7。

具体判断检测流程如下:从动态震相数组中获取震相信息进行V图分组;对组内震相做走时检验,删除不符合走时的震相;对组内震相做Pd、τc检验,未通过检验则删除该组震相;如果组内有一个或两个台站,计算每个台站距周边台站的最大距离内P波走时T1,并计算P波触发时间到目前的时间差T2;如果T2> T1,则删除该组震相,否则进行定位、震级计算、烈度计算、信息发布等操作;如果组内有3个以上台站,确认为地震事件,从震相数组中清除其他组的震相后,进行定位、震级计算、烈度计算、信息发布等操作。

图6 台站误触发流程Fig.6 False trigger in monitoring station

图7 台站误触发判断流程Fig.7 False trigger judgment in monitoring station

3 系统离线测试

选取山东省内7个震例(2 ≤ M < 5)、国内17个震例(4 ≤ M ≤ 8.2)、日本陆地6个震例(5.9 ≤ M ≤ 7.0),共计30个震例用于强震预警系统离线测试,其中国内震例中有2个震例前3个触发台站既有测震台又有强震台。测试结果表明,强震预警软件可在地震监测能力一定条件下,最大程度地提高预警信息的时效性和准确性,中强地震(M ≥ 5)触发率为100%,随着触发台站增多系统不断对震中位置、震级及震中最大烈度进行修订,预警信息通过信息发布平台实时发布。同时发现,因建立震级计算关系式时缺少MS7.0以上地震数据样本,导致较大地震(MS7.0以上)的震级测定偏差较大。

4 结束语

搭建环境采用云技术,利用Java开发平台,开展地震早期预警软件系统集成关键技术研究,并在山东省示范区开展系统离线测试,建立信息发布平台,实现预警参数和地理信息的近实时动态发布,以期在强震预警实践中取得实效。

参考文献

殷海涛,刘希强,李杰,等. 现今地震预警技术及其在国内发展状况的探讨[J]. 中国地震,2012,28(1):1-9.

袁志祥,单修政,徐世芳,等. 地震预警技术综述[J]. 自然灾害学报,2007,16(6):216-223.

赵纪东,张志强. 地震预警系统的发展、应用及启示[J]. 地质通报,2009,28(4):456-462.

张晁军,李卫东,林捷,等. 关于地震预警的几个问题[J]. 中国地震,2013,29(2):198-209.

张红才. 地震预警系统关键技术研究[D]. 哈尔滨:中国地震局工程力学研究所,2013.

Strong earthquake early warning software development based on cloud computing

Zhao Yingang1),Wang Chen2),Tan Jing3)and Liu Qingjie4)
1) Anqiu Seismic Station, Shandong Province 262100, China 2) Institute of Geophysics, China Earthquake Administration, Beijing 100081, China 3) Shenyang Artillery Academy, Liaoning Province 110162, China 4) Institute of Disaster Prevention Science and Technology, Hebei Province 065201, China

Abstract

Relying on professional earthquake monitoring network, using cloud technology environment and Java development platform, we had developed the key technologies in earthquake early warning software system with independent intellectual property rights. The system testing is carried out in earthquake-prone regions and testing sites of China, which build an information release platform, implementing early warning parameters and geographical information near realtime dynamic publishing. The timeliness and accuracy of early warning information had been further improved based on seismic event trigger accuracy, false trigger judgment and information releasing speed innovations.

Key words:strong earthquake early warning,cloud computing,multi-threading technology,function module

doi:10. 3969/j. issn. 1003-3246. 2016. 01. 027

基金项目:国家科技支撑计划项目“面向公众的地震监测预警技术研究与集成示范”(编号:2012BAK19B04)、地震科技星火计划项目“基于Android平台的前兆管理系统监控软件研制”(编号:XH13038Y)

作者简介:赵银刚(1978—),男,山东诸城人,主要从事地震监测工作与研究

本文收到日期:2015-07-09

猜你喜欢
功能模块云计算
商业模式是新媒体的核心
基于ASP.NET标准的采购管理系统研究
志愿服务与“互联网+”结合模式探究
云计算与虚拟化
基于云计算的移动学习平台的设计
实验云:理论教学与实验教学深度融合的助推器
云计算中的存储虚拟化技术应用
风景区潮汐性人流与可移动建筑设计研究
输电线路附着物测算系统测算功能模块的研究
功能模块的设计与应用研究