张斌 太原理工大学
建立城市燃气预警系统需要到达以下目的:
1、能够对燃气管道或燃气点周边环境中的燃气浓度进行监测和分析,了解环境中燃气的浓度的变化情况。
2、建立城市燃气泄露监测数据仓库,便于查看历史数据,对泄漏数据进行分析。
3、建立警报机制,对实时监测到的数据进行监控,发现浓度大于警戒值,发出报警。
系统可以设计成四个模块,实时数据管理、历史数据管理、系统配置和系统信息。其中在实时数据中,需要实现查看单个监测点实时曲线,车辆的实时轨迹两个功能。在历史数据管理部分,需要历史数据查询,历史数据趋势曲线,历史车辆轨迹信息。在系统配置模块,需要警报设置,检测车辆管理,系统管理员信息管理。在系统信息模块,可以查看系统帮助和系统简介。
本系统部署在云端,采集服务器做了分布式集群,并且做了LVS的服负载均衡,LVS集群采用IP负载均衡技术和基于内容请求分发技术。数据库做了主从设计,主库负责数据接受实时数据,从库负责存储历史数据。
本系统主要为监测数据表,车辆数据表,系统管理员表,车辆轨迹表。为了提升数据的查询性能对监测数据表和车辆轨迹表进行分表分库操作,监测数据表分成了实时表和历史表,车辆轨迹表分成了实时轨迹表和历史轨迹表。实时数据存放在主库中,历史数据存放在从库中。
本系统的主要实现难点主要有四处,分别是数据采集与传输,数据存储,数据展示分析和数据报警。
通过使用安装有检查装置的巡检汽车在指定线路巡检,检测装置将甲烷浓度传入车载PC中,车载PC选用windows系统,并安装使用Perl语言编制的前段程序,将浓度、时间、车速、GPS数据、光强、车牌等数据封装,缓存在硬盘中,当车载PC通过4G网络连接到云端数据库时,将缓存的数据根据时间戳存入数据库,数据库并返回已接收到数据的时间戳,如发生网络中断现象,车载pc将持续缓存数据待网络恢复后上传至服务器,从而达到数据在网络不稳定情况下的断点续传,保证数据不丢失。
云端SQLserver数据库服务器接收到数据并返回时间戳,数据库将接收到的数据存储到基础数据表中,根据一定的逻辑规则剔除误差值,基础数据表中将会保留较为真实的数据,同时将基础数据表中最新数据复制到实时数据表中,为实时展示提供支持,实时数据表中只存储2000条最新数据,防止了实时展示时调用大量数据造成的延时,优化了实时展示性能。
应用服务器的展示功能包括实时检测曲线展示、实时检测轨迹展示、历史曲线查询、历史轨迹查询、历史数据表查询的功能。
2.3.1 实时检测曲线展示
通过PHP语言,根据用户预设条件(包括车牌号、浓度超限值等)查询sql数据库实时数据表,将返回的数据通过Highcharts插件展示到web界面中。创建三条实时曲线,实时曲线x轴表示时间, Y轴分别表示前置监测设备浓度、顶置监测设备浓度和汽车速度,并根据用户设定的超限值在Y轴标出超限浓度位置,并用虚线画出超限警示线,同时对超限部分的实时曲线采用变色的形式达到警示目的。
2.3.2 实时检查轨迹展示
通过PHP语言,根据用户预设条件(包括车牌号、浓度超限值等)查询sql数据库实时数据表,将返回的数据通过百度地图API插件将巡检汽车的实时轨迹标注到地图中,并将发生甲烷浓度超限的位置和超限数据标注到地图的指定位置。
2.3.3 历史曲线、轨迹、数据查询
根据用户设定的查询条件,查询基础数据库中的数据,利用Highcharts插件、百度地图API插件Datatables插件、将历史曲线、轨迹、数据展示到web界面中,为了减轻服务器负荷,设定最大查询时间间隔。
在实时曲线和实时轨迹的展示过程中,根据用户设定的超限值,对已经超限的数据进行特别标注和提示,包括曲线变色标注,地图超限位置弹出警示图标和超限值,声音报警等方式。
此套检测系统主要提供了甲烷浓度实时曲线的展示和地图超限点标注的功能,本系统已多次测试,其结果得到多方客户关注,通过对大量甲检测数据人工判断数据的积累,将对燃气泄露引发事故的现象进一步的预防。更早的发现问题,更早的解决问题。在测试的过程中也发现不少新的需求和软件系统存在的问题,将会不断的改进。
[1]孙立国,周玉文,部敬孝.车载FID市政管网燃气泄漏预警系统研究[J].煤气与热力,2010, 30(2):24-28.
[2]翟玉文,艾学忠,张振轩.城市地下燃气管道泄漏监测报警系统设计[J].吉林化工学院学报,2009, 26(2):60-61.
[3]杜洋.嵌入式远程燃气预警系统设计[D].黑龙江大学,2015.