硅谷网9月30日据《电脑知识与技术》杂志刊文,新型自动气象站正陆续在全国各气象台站投入业务使用,为加强对新型站的管理,利用JAVA语言设计了新型自动气象站监控及短信报警系统。该系统能实时监测新型站运行情况,并对观测数据缺测、观测要素异常以及观测文件传输失败等日常极易出现的故障进行短信报警,及时通知业务人员排除故障,有效提高地面观测业务质量。
1 引言
随着中国气象局《综合气象观测系统发展规划(2010-2015)》的推进,为加快建立与现代气象业务相适应的地面气象观测业务体制,提高观测质量效益,全国各级气象部门陆续制定了地面气象观测业务改革方案并在各基层气象台站开展,许多观测项目取消了人工观测和夜间连续观测,大大缓解了地面观测人员的工作压力和工作强度。同时,满足地面全要素气象观测的新型自动气象站也开始逐步在各基层气象台站列装,取代原有的自动气象站。在降低观测频率乃至取消夜间守班的情况下,如何确保新型自动气象站的正常运行以及数据传输就成了急需解决的问题。
2 设计思想
对基层气象台站而言,地面观测业务运行中经常碰到的故障情况包括由于自动气象站本身故障造成的观测数据缺测以及观测要素数据异常,由于通信网络故障造成的数据无法及时上传等情况,由于观测员不可能24小时守在值班室内,因此必须采用技术方法使观测员能实时获知这些故障信息从而及时采取相应措施进行处理,新型自动气象站监控及短信报警系统就是基于以上思路进行设计并投入业务使用。
该系统通过实时监控新型站系统中的分钟数据文件,分析判断新型站的运行情况,同时实时监测新型站所在的网络环境,如有故障发生将及时通过短信模块将故障报警信息发送给台站观测员和相关管理人员。
3 系统设计
3.1 系统架构
该系统监控软件采用JSP语言进行开发,后台数据库采用SQLSERVER,系统架构(图1)主要由自动气象站终端微机、数据监控微机和短信发送模块组成。
自动气象站终端微机:自动气象站观测业务程序OSSMO2004运行于该机,分钟数据观测文件由该机生成。
数据监控微机:为不影响自动站终端微机的采集、发报等操作,系统监控软件运行于数据监控微机。分钟数据文件通过局域网拷贝至数据监控微机,由监控软件定时对分钟数据文件进行检查。
短信发送模块:由短信MODEM、SIM卡和短信服务器软件组成。若出现需要报警的情况,系统监控软件通过连接在数据监控微机上的短信发送模块将报警内容通过移动运营商发送至用户手机。
图1监控系统架构图
3.2 功能设计
该系统实时监测新型自动气象站分钟数据文件,监控软件通过检测数据文件是否生成判断自动气象站本身及自动站终端微机上的观测业务程序是否发生故障;通过检测数据文件中各要素数据是否缺测以及是否超出阀值判断采集器、相应传感器及线缆是否出现故障;通过实时监测自动站所处网络环境,判断报文发送过程中经过的重要节点如自动站终端微机、局域网网络交换机、路由器以及省局报文接收服务器是否出现故障。出现以上任何故障信息均立刻通过短信方式报警,将故障现象以及应采取的措施及时发送给观测员,帮助他们快速的排除故障。
3.3 自动气象站数据分析
新型自动气象站的常规气象要素分钟数据位于\ossmo2004\awssource目录中,文件名为AWS_M_Z_IIiii_yyyyMMDD.TXT简称M_Z文件。其中,AWS表示自动气象站,M、Z为指示符,表示每常规气象要素分钟数据;IIiii为区站号;yyyy为年份,MM为月份,DD为日期,月和日期不足两位时,前面补“0”。文件中部分要素位长及排列顺序见图2。
图2部分要素位长及排列顺序
该文件每站日一个,每一条记录250Byte,代表一条分钟数据。文件第一次生成时进行初始化,初始化的过程是:首先检测分钟常规气象要素数据文件是否存在,如无该日分钟常规气象要素数据文件,则生成该文件,要素位置一律存相应长度的“-”字符(即减号)。文件按北京时计时,以每日20时的分钟数据作为起始记录。文件中记录号的计算方法为:当H≥20时,N=(H-20)60+M+1;当H<20时,N=(H+4)60+M+1。N代表记录号;H代表小时;M代表分钟。
3.4 监控软件
3.4.1软件设计
监控软件是整个系统的运行核心,分为数据要素监控程序和网络传输监控程序。
数据要素监控程序对自动气象站分钟数据文件进行实时监测,并判断是否需要发送报警信息。程序流程图如图3所示。程序首先读取站号、短信告警手机号码、短信数据库IP地址等信息,读取完成后检查当日分钟数据文件是否存在,若文件不存在,立即发送短信告警。文件正常存在则按照要素位长及排位顺序规则进行要素分离,将数据记录中的日期、风、温、压、湿、地温、能见度等要素分离出来,然后对数据进行判断,出现缺测及超出阀值等满足报警条件的情况则发送短信报警。最后,将运行情况记入运行日志,程序退出。该程序每分钟运行一次。
网络传输监控程序对自动气象站所在的网络环境和自动站文件上传情况进行监控。程序流程图如图4所示。程序首先对自动气象站终端微机、局域网交换机、路由器以及省局文件接收服务器进行测试,判断这些设备是否运行正常。通过检测省局文件接收服务器接收目录中是否有本站上传的数据文件判断是否发送成功。若有故障立即将详细故障信息发送短信告警。最后,将运行情况记入运行日志,程序退出。该程序每五分钟运行一次。
图3数据要素监控程序运行流程图图4网络传输监控程序运行流程图
3.4.2软件主要功能代码与核心技术
数据要素监控程序在根据记录号公式选择当前记录并完成要素分离后,对要素数据执行判断,按照文件约定,当正常观测要素位置出现“----”或者“////”时,表示数据缺测,当超出阈值时,表示数据失效,两种情况均需要发送短信报警。以风向要素检查为例,功能代码如下:
inttempOfWindDirection=SU.trans_Integer(needCheck,false);
if(tempOfWindDirection!=9999&&(tempOfWindDirection<0||tempOfWindDirection>360)){
stringBuffer.append("风向要素观测异常:").append(tempOfWindDirection).append(",");
}else{
if(tempOfWindDirection==9999){
stringBuffer.append("风向要素缺测!").append(",");}}
函数SU.trans_Integer(needCheck,false);返回值若为9999,提示有非法字符,无法转换为数字;另当该返回值不等于9999,而且数值小于零或者大于360度的时候,表示该数据失效,以上两种情况均需要发送短信报警给业务值班人员。
网络传输监控程序主要采用windows的Ping命令和Tracert命令,利用这两条命令返回的字符串判断网络故障出现在哪个节点。
短信发送采用第三方短信模块进行。监控软件将需要发送的短信写入到短信模块配套的短信服务器数据库中的信息发送表后,由短信服务器程序定时扫描该表,若该表有记录则将记录发送到相应手机号码,发送后清空该表,继续等待新记录写入和发送。
4 系统应用
新型自动气象站监控及短信报警系统已经在青岛部分采用新型站的台站投入业务应用。由于采用JAVA开发,在系统首次运行前需要在数据监控微机上配置JAVA环境,同时将相关计算机、服务器与网络设备的IP地址和接收报警信息的观测员及相关管理人员的手机号码导入配置文件即可。在几个月的业务运行期间,由于24小时不停运行,对台站出现的传感器故障和网络不稳定的情况系统都及时发出了短信报警。图5为截取了部分具有代表性的短信报警实例。
图5短信报警实例
5 总结
通过对新型自动气象站监控及短信报警系统的设计以及投入业务应用,基层台站地面观测业务的自动化运行得到了有力的保障,大多数故障都能在第一时间告知到责任人,从而及时采取措施处理,这对降低故障率,提升业务质量具有重要意义。同时由于能及时发现夜间故障情况,因此也减轻了地面观测人员的工作强度,对推进地面观测业务改革具有积极意义。随着气象探测设备不断建设,可进一步研究不同类别探测设备的监控方法,实现所有探测设备的实时监控短信报警。
*作者简介:
李航,1978.01,男,汉,山东济南,本科,工程师,青岛市气象局,信息系统应用与开发。
|