地震预警站点设备的监控及编程实现

2024-01-27 17:24杨世英孟彩菊靳玉贞安凯杰韩凯宇
电脑知识与技术 2023年36期
关键词:站点运维预警

杨世英 孟彩菊 靳玉贞 安凯杰 韩凯宇

摘要:地震预警站点正常运行是地震烈度速报与预警系统快速高效产出的基础,针对目前监控运维系统尚未全面覆盖的现状,基于对地震预警站点设备通信方式的分析,运用Python中socket、requests模块编写程序获取地震预警站点设备状态,实现了对地震预警站点智能电源和数据采集器的有效监控,可有效避免了设备“病态运行”引发的断记、波形异常甚至发生风险的情况,提高地震预警站点的实时运行率和数据完整率。本文所探讨的内容对于具有同类需求的工作具有一定的参考价值。

关键词:中心站;地震预警站点;监控;Python

中图分类号:TP311     文献标识码:A

文章编号:1009-3044(2023)36-0123-04

开放科学(资源服务)标识码(OSID)

0 引言

1868年美国J. D. Cooper最早提出地震预警的构想,限于当时的技术水平,直到大约100年后,随着科技的进步,美国、日本、美国、墨西哥、意大利等多个国家先后建成地震预警系统,开展地震预警实践,并取得一些成功经验和减灾实效。

地震预警(Earthquake Early Warning,简称“EEW”)的基本思想是利用布设在震中附近的密集地震台网和低延时实时通信传输线路对地震进行实时监测,利用地震 P 波传播速度大于更大破坏性的 S波和面波,以及电磁波传播速度远远大于地震波波速的原理,在尽可能短的时间内估算地震影响范围和程度,抢在破坏性地震波到达目标区域之前发布警报,以减少人员伤亡和减轻地震灾害损失[1-2]。

我国于2015年开启国家地震烈度速报与预警工程(以下简称“预警工程”)。国家预警工程山西子项目于2021年底基本建设完成,2022年4月进入内部测试运行,2023年5月获项目法人批复进入试运行。

预警工程系统主要由台站观测系统、通信网络系统、数据处理系统、紧急地震信息服务系统及技术保障系统等组成。其中,台站观测系统是实现地震烈度速报与预警功能的首要环节与基础。台站观测系统中的地震预警站点分为基准站、基本站和一般站[3-4]。

1 站网概况

太原地震监测中心站(以下简称“太原站”)负责山西中部(太原、晋中、吕梁、阳泉4个地级市)295个地震预警站点的运维工作,太原站辖区地震预警站点分布如图1所示。其中224个一般站主要委托铁塔公司共同维护,71个基准站和基本站的运维任务由太原站负责。

一个典型的基准站的技术系统如图2所示。其中地震计、加速度计、数据采集器(以下简称数采)构成观测系统;交流电、太阳能、智能电源、蓄电池组、环境监控、视频监控、防雷接地等构成供电系统;路由器、运营商传输链路构成通信系统[5-6]。

不同地震预警站点的技术系统与图2略有不同,如基本站仅列装加速度计、部分地震预警站点仅有市电或光伏单路电能来源。

供电系统的核心是智能电源,智能电源工作机制是,由市电和(或)光伏为两组电池充电,两组电池轮流输出12V供给数采等负载,智能電源同时采集地震预警站点内的动环信息。

观测系统的核心是数采,数采作用是将地震预警站点的地震动信号传输到汇聚中心,同时收集自身及传感器的状态信息。

通信系统的核心是路由器,实现数据的分组选路和转发。

2 地震预警站点监控现状分析

地震预警站点实行中心站、地震台和国家级中心三级监控运维。中心站负责辖区地震预警站点的监控运维。

台网中心要求各级单位建立24小时值班制度,使用运维监控系统每天对地震预警站点的网络、供电、数据通断、数据延时、数据质量、专业设备零位、智能电源供电和温湿度等动环状态及地震预警站点参数变化情况进行检查和监控(震台网函〔2023〕38号附件1:测震站网站点运维管理细则)。

目前,在太原站使用和部署的监控系统包括网强网管系统、华为公司定制软件—监控与运维分系统、JOPENS系统的monitor模块以及省地震台人工分析波形后的共享文档通知。基本实现了地震预警站点“网络、数据通断、数据延时、数据质量的监控”。

对于台网中心要求的“供电、专业设备零位、智能电源供电和温湿度等动环状态及地震预警站点参数变化情况进行检查和监控”,即对各地震预警站点的智能电源和数采进行监控和参数检查,以上系统不能实现。

中心站主要通过客户端软件、浏览器逐个登录各地震预警站点的智能电源或数采进行查看,由于中心站地震预警站点数量较多,通过这种方式任务繁重效率低下,难以实现日常巡查。部分厂家提供了“集成管理软件”“批量获取参数软件”等,但因需配备Linux服务器、功能有待改进、获取的参数不足等原因不能实现有效监控。

运行中易发生智能电源充放电“病态运行”的状况,如充放电模块故障,交流、光伏、电池断路等,如未被及时发现,将导致电池过度放电直至耗尽,从而引起长时间断记。另外,动环状态异常(如红外、烟感、水侵等)时,若不能及时被发现也可能会造成设备损毁引起断记。数采的“病态运行”如未被及时发现得不到及时处置,轻则影响观测数据的质量,重则导致数据丧失使用价值。另外数采的参数配置方面如量程、标定的误设等或可引发一定风险。故对智能电源和数采的监控和参数检查是重要的[7]。

根据台网中心对监控的要求以及对智能电源、数采进行监控的重要性,针对当前工作现状,本文拟使用Python编制“地震预警站点设备监控程序”,实现对智能电源和数采的监控和参数检查。

3 编程实现

太原站地震预警站点使用的智能电源有远航RH-C1000系列,数采有泰德公司的TDE-324FI(CI)、港震公司的EDAS-24GN-EEW和深研院的HG-D6(D3)。以上设备分别可使用客户端软件和(或)浏览器方式进行访问,故编程实现分为Socket和HTTP两种方式,本文拟采用近年流行的简洁、易读、扩展性强的Python编程语言实现[8]。

3.1 Socket方式

智能电源、港震数采、泰德数采可使用Socket方式访问。以智能电源为例,厂家未提供通信协议。先运行Wireshark(一个数据抓包和分析工具软件),然后打开客户端软件连接一个地震预警站点的智能电源,并点击“实时数据”,最后用Wireshark对通信数据流分析并进行追踪分析,结果如下:

客户端软件与智能电源的通信采用了UDP协议,使用9999端口,客户端发送“ReqCommBSN=00000 000;”智能电源回应 “ACKCommBSN=RH.XXXXX;”,客户端发送“RW_RT= RH.XXXXX;1;?;”,智能电源回应实时数据包如下(RH.XXXXX为智能电源序列号):

RTD;ID=RH.XXXXX;CI=0;DT=20230815014356;VF=2;PVA=0_00.3_+0_00.0_0;PVB=1_14.6_+0_00.5_0;AV=218;BA=1_0;BB=1_2;PT=+24.0;EA=9999.9_00;EB=9999.9_00;AP=000;SVI1=1_12.2_00.5;SVI2=1_12.4_00.5;SVI3=1_12.4_00.0;SVI4=1_12.4_00.0;SVI5=1_12.3_00.0;SVI6=1_12.4_00.0;VAB=12.8_14.6;A1=00.0_999.9_00;A2=00.0_999.9_00;A3=00.0_999.9_00;A4=00.0_999.9_00;A5=00.0_999.9_00;A6=00.0_999.9_00;B1=00.0_999.9_00;B2=00.0_999.9_

以上数据包含了相应序列号的智能电源的数据时间、充电来源、光伏、交流、电池等数十项状态参数及报警值。

Python的socket类可向智能电源发送命令并获取返回数据,使用socket类的关键命令行示例如下:

#1、创建socket套接字,绑定本地端口设定智能电源IP地址及端口

from socket import *

udpSocket = socket(AF_INET,SOCK_DGRAM)

bindAddress = ("",9999)

udpSocket.bind(bindAddress)

sendAddress = ("21.33.XX.XX",9999)

#2-1、向智能电源发送命令行

sendData = "RW_RT=RH.XXXXX;1;?;"

udpSocket.sendto(sendData.encode(),sendAddress)

#2-2、接收智能电源返回的数据

receiveData = udpSocket.recvfrom(1024)

#3、关闭socket套接字

udpSocket.close()

3.2 HTTP方式

对于泰德、深研院通过浏览器登录的数采,可采用Python的requests库获取数采的状态及配置信息。以泰德数采为例,厂家提供了接口说明文档,如设备系统资源使用状态的请求地址为http://10.14.X.X/service/sysusedstatusservice.php,数采返回的文本[{"cpu":"44","mem":"32","rootdisk":"51.2","usbdisk":"67.7"}]是一个字典类型数据,给出数采系统使用状态中的CPU温度、内存、系统盘、U盘使用率。Python的requests支持HTTP请求、Cookie保持会话、文件上传产、自动响应内容编码、国际化的URL和POST数据自动编码。Requests在Python内置模块的基础上进行了高度的封装。Requests实现以上功能的关键命令行代码示例如下:

import requests , json

url="http://10.14. X.X /service/sysusedstatusservice.php"

response = requests.get(url)

data = json.loads(response.text)

深研院等厂家的数采,需要登录才能获取页面的数据。可使用requests库先构造POST请求参数并发送POST请求,获取返回的cookie信息;然后使用cookie信息进行后续操作。

3.3 监控分析

在通过以上方式获地震预警站点设备数据后,需进行简单分析判断,对于智能电源,所有地震预警站点均需关注充放电状态、电池组电压、动环信息,位置偏僻的改造基准站,还需关注交流电的通断。对于数采,对比获取的参数与之前保存的正确值是否一致,关注GNSS对钟状态,定时标定状态、传感器零位等。以便发现设备“病态运行”,及时处置避免造成断记、波形等故障甚至引发风险。程序运行中的页面如图3,可自動对数十个地震预警站点的设备进行查询并给出异常信息和超出设定阈值的告警内容,实际应用中可根据需要定期运行,以做到对辖区地震预警站点设备状况的掌握,程序也可以自动定时执行,并使用微信公众平台发送警告信息[9]。

4 应用成效

“地震预警站点设备监控程序”应用之前,多次发生地震预警站点由于市电中断后太阳能供电不足或智能电源充放电异常引起电池过度放电直至耗尽,智能电源处于待机(或死机)状态,即使市电恢复后也无法启动工作,需上站进行处置,从而引起长时间断记。数次发生传感器或零位偏移较大引起波形异常需上站调零处理。还发生过传感器雨后长时间浸泡于水中未及时发现险些损毁的情况。

“地震预警站点设备监控程序”应用之后,在日常使用中已及时发现部分地震预警站点的“病态运行”,如2023年8月4日 YSJXM、KY001站点在普降大雨后市电中断至次日仍未恢复;2023年8月23日JZ001交流中断至次日仍未恢复,由于该站点光伏硅晶板遮挡严重,造成电池电压下降较多。2023年8月23日JS001充放电异常(显示充电中,但无充电电流)导致电池电压降较多。

以上地震预警站点通过及时处置使智能电源得以恢复正常运行,避免了发生电池亏电引发长时间断记的可能。

“地震预警站点设备监控程序”实现了对地震预警站点数采的健康状态、传感器零位、参数配置等的监控与检查,防范了风险的发生。目前暂未監控到“病态运行”或参数配置错误。

5 结束语

本文介绍了太原站辖区站网概况,分析了地震预警站点监控现状,针对目前运维监控系统无法实现对“供电、专业设备零位、智能电源供电和温湿度等动环状态及地震预警站点参数变化情况进行检查和监控”的情况,使用Python编程语言,编制了“地震预警站点设备监控程序”。该程序可使中心站掌握辖区地震预警站点的智能电源和数采的状态的参数配置,有效避免设备“病态运行”引发的断记、波形异常甚至发生风险的可能。文中详细介绍了获取智能电源和数采状态的编程方法和示例代码。编制的程序和编程实现的方法对其他中心站和有类似需求的工作具有一定的参考价值。

本文主要关注对观测系统的监控以及发现设备“病态运行”状态。至于故障处理和维修方法未予讨论,可参阅省地震台编制的故障处理流程或文献[5]等内容。

参考文献:

[1] 中国地震局监测预报司.测震学原理与方法[M].北京:地震出版社,2017.

[2] 杨陈,郭凯,张素灵,等.中国地震台网现状及其预警能力分析[J].地震学报,2015,37(3):508-515.

[3] 丁大业,董春丽,宫卓宏,等.山西地震预警新建基准站数据质量评估[J].山西地震,2023(2):15-22.

[4] 赵国峰,高楠,杨大克.国家地震烈度速报与预警工程建设进展[J].地震地磁观测与研究,2022,43(3):165-171.

[5] 李晓锐,刘国俊,陈永新,等.地震预警站网典型故障及波形异常分析处理[J].山西地震,2023(2):32-36.

[6] 李奎,阿布都热依木江·巴克,毛玉剑,等.地震预警台站断记自动告警程序的实现及应用[J].山西地震,2022(4):28-33.

[7] 董一兵,朱音杰,王仁涛,等.基于开源WebGIS的测震台站运维管理系统的设计与实现[J].震灾防御技术,2017,12(2):399-408.

[8] 布兰登·罗德. Python网络编程[M].北京:人民邮电出版社,2020.

[9] 贾宁,孙哲,韶丹.地震速报微信自动推送系统设计[J].地震地磁观测与研究,2016,37(2):165-170.

【通联编辑:李雅琪】

猜你喜欢
站点运维预警
运维技术研发决策中ITSS运维成熟度模型应用初探
基于Web站点的SQL注入分析与防范
法国发布高温预警 严阵以待备战“史上最热周”
2017~2018年冬季西北地区某站点流感流行特征分析
园林有害生物预警与可持续控制
首届欧洲自行车共享站点协商会召开
基于ITIL的运维管理创新实践浅析
机载预警雷达对IFF 的干扰分析