一种煤矿安全监测系统断线数据传输方法

2012-05-18 08:49天地常州自动化股份有限公司贺耀宜陈小林王启峰
电子世界 2012年23期

天地(常州)自动化股份有限公司 赵 亮 贺耀宜 陈小林 王启峰

1.引言

煤矿安全监测系统在我国煤矿安全生产中起到了关键的、不可替代的作用。煤矿安全监测系统用于监测甲烷、风速、一氧化碳、二氧化碳、温度、氧气、烟雾、负压等实时数据,及馈电、风门、风窗、风筒、局部通风机开停、主通风机开停等状态,并实现甲烷超限声光报警、断电和甲烷风电闭锁控制。但在实际运行中由于断电、线路故障、通信设备损坏等因素会造成数据传输中断,进而影响用户掌握数据完整性的整体要求。

煤矿安全监测系统断线数据续传能够解决部分数据的恢复,是监控系统追求的目标,也是用户的一个非常迫切的需求。在不降低分站设备性能的前提下,能快速进行高压缩比的数据压缩、存储、传输,并在不影响正常的巡检周期的情况下实现断线数据续传,彻底解决煤矿安全监测系统断线数据续传,是本文要解决的技术问题。

2.煤矿安全监测系统断线传输方法

煤矿安全监测系统断线传输方法包括以下步骤:(1)预先设置上位机最大巡检时间Tmax,分站采用定时中断判断是否与上位机通信中断,中断后开启断线数据存储处理过程;(2)分站定时巡检所接传感器,并对数据进行预处理;(3)采用预先设置好的存储时间间隔φ定时存储断线数据;(4)当分站监测到通信恢复后停止断线数据存储;(5)上位机与分站通信恢复后,上位机发送获取断线数据传输命令,分站将断线数据采用自适应压缩算法进行数据压缩,并将压缩结果组织发送至上位机。

3.分站断线检测方法

(1)分站初始化时开启定时器中断,定时器时间间隔为θ,并分配断线检测寄存器,断线检测寄存器值为Gd;(2)当分站收到上位机巡检命令后,进入485中断,将Gd中数值清零;(3)当定时器中断到达时,将Gd中数值加1(Gd=Gd+1),当Gd×θ>Tmax时,分站与上位机通信中断,即为断线。

4.数据预处理

由于煤矿井下甲烷、风速、一氧化碳、二氧化碳、温度、氧气、烟雾、负压等模拟量为连续变化量,极少出现大的波动,故可对实时数据进行预处理,从而对数据进行压缩。以下为短信数据预处理流程。

表1 低浓度瓦斯传感器原始频率量数据

表2 采用游程编码统计结果

表3 原始序列按照变化编码处理过程,统计结果

(1)为甲烷、一氧化碳、二氧化碳、氧气、风速、负压、温度、烟雾等模拟量分别设置不同的压缩变化阈值[Y1,Y2,…,Yn],n为测点个数;(2)为所有的测点分别分配寄存器,记录上一次获取的测试值[G1,G2,…,Gn],n为测点个数;(3)分站定时巡检所有传感器,并获取所有测点值[D1,D2,…,Dn],n为测点个数;(4)分站巡检完毕后,依次将所有测点值Dm与其寄存器值Gm比较,如差值大于阈值Ym,则将寄存器值更新为Dm,(即Gm=Dm),反之,则维持寄存器原值不变。

5.断线数据存储方法

断线数据存储处理步骤如下:

(1)首先分站为不同测点开辟不同存储区;(2)开辟新的数据帧存储位置,并存储帧头数据,帧个数寄存器Gcount加1,即Gcount=Gcount+1;(3)在帧第一个数据点位置存储当前时间值T0,和测点值寄存器Dm的数值;(4)等待定时器中断,到达下一次数据存储时间T1,获取所有测点数据并进行步骤二中的预处理,处理完毕后将测点值寄存器Dm的数据存储至当前帧数据存储区,进行步骤(5);(5)判断是否到达帧时间长度T2,到达帧时间长度T2则转至步骤(3),没有到达,则转至步骤(4)。

6.断线数据上传方法

上位机与分站通信恢复后,断线数据上传处理步骤如下:(1)上位机一个巡检周期内巡检完所有分站后,累计本周期巡检花费时间为Tx,设断线数据上传经验时间为Ts,当Tx+Ts<Tmax时,上位机发送获取断线数据命令,否则结束返回;(2)分站收到获取断线数据命令,采用自适应压缩算法进行压缩处理,并比较最优得出结果,将压缩结果根据传输协议进行组装并发送至上位机;(3)上位机收到数据后进行校验验证,数据正确则发送接收成功命令,失败则结束,进入下一个巡检周期返回步骤(1);(4)分站收到接收成功命令后,将当前已发送帧从存储空间中删除,并将当前帧寄存器移至下一帧数据位置,帧个数寄存器Gcount减1,即Gcount=Gcount-1。

7.断线数据自适应压缩方法

自适应压缩算法进行压缩处理的过程如下:(1)从存储区中获取本帧原始序列Rsource;(2)对本帧原始序列Rsource应用游程编码获得新的编码序列R1;(3)对本帧原始序列Rsource应用变换编码获的新的编码序列R2;(4)比较原始序列Rsource及R1、R2帧长度,选择长度最短者为最佳编码序列Rres。

所述的压缩算法方法如下。

例如,低浓度瓦斯传感器原始频率量数据如表1所示。

采用原始编码需对所有的数据进行编码,编码后数据体如下:

采用游程编码,则统计每个出现的数据个数,压缩计数器长度Cmax=255,统计结果如表2所示。

压缩计数器长度Cmax=255即每个数据个数采用1个字节进行编码,频率量量程为0~1000,故个数据需要2个字节进行编码,编码结果如下:

变化编码,主要是记录数据变化的时刻和数据的具体值,由于原始序列中的每个数据实际采用固定时间间隔的方式进行存储,而每一帧在帧头已经记录本帧开始的时间,故每个变化数据点的时间可采用与帧头的开始时间相差的存储时间间隔φ的个数进行标示,例如,原始序列中数据404第一次出现时与第一个数据400(即帧开始时间)相差5个存储时间间隔φ,设压缩计数器长度Cmax=255,则数据404可编码为0x05 0x01 0x94。则原始序列按照变化编码处理过程,统计结果如表3所示。

采用变化编码结果如下:

图1 数据通信协议

通过以上所述可看出相同数据序列,采用对原始序列直接编码数据体长度为:60Byte,采用游程编码数据体长度为:18Byte,采用变化编码的数据体长度为:18Byte。故可大大减少数据体长度,减少对总线和巡检周期的占用,大幅提高数据发送效率。

8.数据通信协议

图1为断线续传应用层信协议,其中帧头采用1~5个字节特殊字符标示数据帧起始。数据长度(1~2字节)为设备地址、压缩编码格式、数据体和校验的数据总长度。设备地址(1个字节)为分站唯一地址。压缩编码格式(1个字节)为数据体中的数据压缩编码约定。数据体为断线续传数据。校验为从帧头G1至数据体G5的CRC校验,用于主机检验所接收到的位序列。

9.结论

通过本文所述方法,可实现煤矿安全监测系统的断线数据存储与上传,且本文采用不同压缩算法对原始数据进行压缩,并选择最优压缩结果进行传输,尽可能的压缩数据,提高压缩比,大大提高了数据传输效率,保证了安全监测系统正常的巡检过程和数据的完整性要求,减少了对总线和巡检周期的占用,满足了用户需求。

[1]孙继平.煤矿监控系统手册[K].北京:煤炭工业出版社,2007.

[2]孙继平,煤矿安全监控技术与系统[J].煤炭科学技术,2010,38(10):1-4.

[3]包建军,霍振龙等.一种高精度井下人员无线定位方法[J].工矿自动化,2009(10):18-21.

[4]李恩,蔡丽.一种适用于煤矿安全监控系统的CAN总线应用层通讯协议[J].计算机应用,2006(9):2178-2181.

[5]彭喜元,俞洋.基于变游程编码的测试数据压缩算法[J].电子学报,2007(2):197-201.