姜 博,邱凤萍,张 浩,邹志超,李 昆
(1. 鹤岗地震台,黑龙江 鹤岗 154101;2. 依兰地震台,黑龙江 哈尔滨 154800;3. 哈尔滨市防震减灾技术中心,黑龙江 哈尔滨 150000)
近年来,随着黑龙江省地震局的不断发展,省内台站的建设得到了快速的发展,有人值守台不断增加观测设备,区域无人值守台站密度不断加大,针对这样的情况,急需一个有效的平台对台站监测设备进行统一管理和调配。
通过对全省台站监测设备信息的收集和整理,其中正式观测中的有国家级综合台站10个、省级台站30个、地方台站45个、无人值守台72个,专业监测设备约300多台套,主要包括:观测设备、网络设备、供电设备等,另外,其他配套设备数量多、型号复杂,在区域维修和管理时,技术上缺少有效的信息交互平台,为了进一步整合省内设备资源,提高运维效率,在局项目的支持下,开发了一套设备信息运维管理系统。
为了提高区域维修效率,启动台站智能化、规范化管理模式,管理系统设计采用三层B/S架构,为表示层、应用层和数据层。B/S架构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护,系统的扩展非常容易。
在B/S体系结构系统中,用户可以通过浏览器向服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。而其余如数据请求、处理、结果返回及动态网页生成、对数据库的访问和应用程序的执行等工作全部由Web Server完成[2]。
因此,管理系统采用B/S结构,台站用户可以通过Web网页访问MySQL数据库,管理人员把台站监测设备信息统一录入到数据库,并进行数据交互处理,实现了对台站设备智能化、规范化的管理(图1)。
图1 系统结构Fig.1 System structure
通过对黑龙江省地震台站设备管理流程的研究,设计了管理系统的各个功能模块(图2)。台站工作人员可以通过网页登录管理系统。主要工作流程和系统功能包括:
(1)管理系统设置了用户不同的登录权限,用户会根据不同权限进入管理系统不同的信息显示界面,省局监测中心会实时看到其他区域运维中心的设备信息情况及流动情况,各个区域运维中心可以看到本区域台站的设备信息情况及区域所属各个子台的设备情况。同时增加超级管理员管理功能,方便管理员对用户进行管理及系统维护;
(2)管理系统主页面实时显示设备信息、备机备件、运维信息等情况,设备管理模块可以对设备信息进行查询、增加、删除、更新等操作,设备列表模块包括设备信息列表、备机备件列表及各子台设备列表,便于用户查看设备各种信息;
(3)当区域台站设备出现故障时,运维中心会启动管理系统设备运维管理程序模块,对设备维修、维护过程进行全程记录,并生成运维日志,为管理部门提供运维信息。当需要备机备件时,可以进行申请操作,备机备件状态信息会自动更改,便于其他用户查看剩余备机备件数量,快速分析维修方案,及时优化分配资源,使台站快速恢复观测;
(4)管理系统巡检模块,可以记录运维中心对本区域台站进行巡检的过程,并生成巡检日志,巡检报告包括:台站信息、台站位置、路线、设备信息、供电情况等信息,在巡检结束后生成巡检报告并上传管理系统进行储存。便于巡检人员进行查询,为快速排除设备故障原因提供参考;
(5)系统统计模块,可以对各个台站设备进行统计计算,包括:设备数量、故障率、巡检信息、故障因素等信息,便于管理人员对不同区域、不同台站,设计相应的维修及备机备件准备计划,合理优化资源配置,能够在台站出现故障时,使其快速恢复观测。
图2 管理系统工作流程Fig.2 Management system workflow
管理系统是在Windows环境下开发的,运用 WampServer软件,Windows、Apache、My SQL、PHP集成安装环境,即在Windows下的Apache、PHP和MySQL的服务器软件。开发工具选用Adobe系列产品,包括Dreamweavar、Fireworks、Flash三个软件,用于动态网页设计及页面UI设计。
在MySQL数据库结构设计中,根据数据库设计规范,首先建立名称为Data和HEG的两个数据库,然后在Data数据库中建立了heg_data和heg_xunjian_data两个数据表,在HEG数据库中建立hw_1至hw_8两个数据表,最后根据需要确定各个数据表中所需要的字段和字段的属性[2]。
在设计数据表的类型和属性的过程中,需要合理设计字段名称、类型和长度等属性[4],如表1为HEG数据库中的工作表,其中Id的字段类型为数字整数型(int)长度为5,属性为非重复性,保证设备编号在录入时的唯一性,Data为数据录入时间,字段类型为Datetime,表的排序规则统一为Utf8mb4_general_ci,其他各项属性类型设计为Varchar。
表1 hw_1工作表属性
表2为Data数据库中的heg_data工作表,主要用作台站信息、设备数据、台站运维报告、运维照片等信息的储存,所以File_data的字段类型为长文本类型(Longblob),录入序号(Id)规则为自动排序规则(AUTO_INCREMENT),录入信息的名称、文件大小、文件格式采用Char类型。
管理系统登录页面包括,用户登录信息、帐号注册、用户管理等功能模块,其中用户登录权限设置分级管理,不同权限的用户,根据需要进入不同的登录界面[3](图3),实现代码如下:
<?php
//判断用户权限
if($_SESSION['member'] != "admin"){echo "<script>alert('请进行登陆 ');location='login.php';</script>";
}
//分页显示
$sql="select * from member order by id asc";
$result=mysql_query($sql);
$total=mysql_num_rows($result);
$page=isset($_GET['page'])?intval($_GET['page']):1;
$info_num=2;
$pagenum=ceil($total/$info_num);
If($page>$pagenum || $page == 0){
Echo "Error : Can Not Found The page .";
Exit;
}
$offset=($page-1)*$info_num;
$info=mysql_query("select * from member order by id desc limit $offset,$info_num");
?>
表2 Data数据库工作表属性
图3 系统登录界面Fig.3 System login interface
图4是管理系统主界面,功能操作模块包括设备管理、备机备件管理、运维申请、运维日志、巡检管理;左信息栏包括:运维分中心、运维信息管理、台站信息统计;首页动态信息显示包括:运维申请信息、备机备件信息、运维结果信息、巡检信息[1]。
各个功能模块通过html连接到主页面,框架实现代码如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type"content="text/html; charset=utf-8" />
<title>黑龙江省设备信息管理系统界面</title>
</head>
<frameset rows="88,*,31" cols="*"frameborder="no" border="0" framespacing="0">
<frame src="admin_top.html"name="topFrame" scrolling="No"noresize="noresize" id="topFrame"title="topFrame" />
<frameset cols="187,*" frameborder="no"border="0" framespacing="0">
<frame src="admin_left.html" name="left Frame" scrolling="No" noresize="noresize"id="leftFrame" title="leftFrame" />
<frame src="1sdj_default.php" name="right Frame" id="rightFrame" title="rightFrame" />
</frameset>
<frame src="footer.html" name="bottom Frame" scrolling="No" noresize="noresize"id="bottomFrame" title="bottomFrame" />
</frameset>
<noframes><body>
</body></noframes>
</html>
图5是设备录入界面,可以根据需要选择录入内容设备,包括设备的ID、测项分类、设备名称、设备所属等信息,数据库录入代码如下:
<?php
$con = mysql_connect
("localhost","root","");//连接数据库
mysql_select_db("heg", $con);//选择需要操作的数据库
$result = mysql_query("SELECT * FROM hw_3 order by date desc limit 5");//执行SQL语句
?>
<?php
//每循环一次,取一行数据记录显示在一行中
while($row=@mysql_fetch_row($result)){
?>
<ul class="newlist">
<li><td> 设备编码:</td><td><?php echo$row[0];?></td>
<td> 观测类别:</td><td><?php echo $row[1];?></td>
<td> 运维地点:</td><td><?php echo $row[9];?></td>
<td> 申请人:</td><td><?php echo $row[12];?></td>
<td> 申请时间:</td><td><?php echo $row[15];?></td>
</li>
</ul>
<?php
}
mysql_query($sql);
mysql_close(); //关闭MySQL连接
?>
图4 系统操作界面Fig.4 System operation interface
图5 设备录入界面Fig.5 Device input interface
管理系统于2016年初开始设计开发,2016年4月1日在黑龙江省监测中心运维分中心开始试运行,通过试运行对管理系统进行了数次升级和改正,测试效果良好,在试运行阶段,该系统发挥了重要作用,达到了预期设计目的。如2016年6月11日由于萝北台设备出现故障,启动分中心运维程序,首先登录系统进行运维申请,再检查设备故障原因,如果需要到现场维修申请备机,在现场维修完成后,登录系统填写好运维日志。此次运维任务按流程顺利完成,并在管理系统中及时发布设备、运维等最新信息,为其他区域中心和省局监测中心提供最新的信息,作为参考。
随着计算机技术、互联网技术的快速发展,计算机网络已经成为台站工作的一部分,因此对地震监测设备信息进行网络化管理是一个趋势,符合国家局对台站进行智能化、规范化管理的理念。
在管理系统开发设计时,运用了计算机技术、数据库编程、网络技术、网站设计,实现对设备自动监控、信息管理、网页的自动生成和更新。随着管理系统在黑龙江省的试用,可以在管理系统网站上发布区域中心及所属台站的设备信息、运维信息,实现设备资源的合理优化配置,提高运维效率。
管理系统的建成为黑龙江省地震局所属台站设备信息网络化、自动化提供了一个平台,有利于对监测设备规范化管理,其功能性强、安全性高,操作简便,适合在其他台网及区域运维中心推广应用。
参考文献:
[1] 潘凯华,刘中华,等. PHP开发实战1200例(第I卷)[M]. 北京:清华大学出版社,2011.
[2] 王飞飞,崔洋,贺亚茹,等. MySQL数据库应用从入门到精通第2版[M]. 北京:中国铁道出版社,2014.
[3] 陈益材,等. PHP+MySQL+Dreamweaver动态网站开发从入门到精通(第2版)[M]. 北京:机械工业出版社,2015.
[4] 朱凤梅,缪发军. 基于Web的测震台网值班管理系统设计与实现[J].地震地磁观测与研究,2013,34(3/4):257-259.