张杰文
(国能集团 宁夏煤业集团公司,宁夏 银川 751409)
近年来无线传感器网络(WSN)监测煤矿工作面支架压力已成为一个研究的热点。文献[1]~[3]提出了基于WSN的支架监测系统的设计,文献[4]提出了低功耗WSN用于支架压力监测的想法,文献[5]研究了WSN支架监测的链式路由问题。这些研究对推动WSN在工作面监测中的应用起到了较好的作用。
支架压力数据曲线的特征是平稳信号中带有奇异变化的信号,这些奇异信号是由移动支架时降架、移架、升架等过程产生的,对于判断采煤进度、初撑力、来压周期、支架工作状态等都极为重要。图1所示为一个支架24 h工作过程中的压力变化情况[6],它对压力信号中缓慢变化的压力数据,支架压力监测系统的采样频率可以低至数分钟1次,而对移架时的奇异信号,希望采样频率能达到每秒1次以上。这样,当用WSN作为支架压力监测系统时,WSN节点就不可能长期处于休眠状态。然而,目前有关WSN用于支架压力监测的文献中基本没有从被监测对象数据的奇异性特征出发的。为了提高WSN节点的生存周期,它们基本都采取了长期休眠的策略。例如文献[1]提出,支架压力信号是平稳的,可将采样周期设为5 min一次,便于减少需传输的数据量,达到延长节点寿命的目的,但这完全忽略了平稳信号中的奇异性。文献[4]则仅关注低功耗设计,也未考虑支架信号的特征,而其他一些文献则主要进行电路系统及路由的设计。文献[6]考虑了支架信号的奇异性,采用了分段多项式拟合的方法来进行数据压缩,解决了超长工作面分站增加,却造成查询周期延长,数据传输速率不够。该研究对象是超长工作面总线传输的支架压力监测系统,采用主从查询周期来定时分段拟合数据,用4次多项式进行数据拟合,每次拟合均产生5个数据。然而不能根据数据自适应调整分段,也不适用于无线传感器网络。
图1 支架24 h压力变化图
根据上述的研究分析,本文提出采用自适应分段线性拟合的方法来压缩WSN支架监测系统中各节点数据,以解决支架节点传输数据量过大,影响节点寿命的问题。
数据拟合是用多项式去拟合一段曲线,即设测量到的数据x为:
x=f(ti)i=0,1,2,3,…,n
(1)
式中:ti为采样时刻。
f函数关系为未知,可用多项式拟合公式来拟合f函数,即:
y=∑kaktkk=0,1,2,3,…,m
(2)
其中:a0,a1,a2,a3……为拟合系数,y为拟合后的数据,是x数据的近似。若k只取0、1两项,则称之为线性拟合,也就是用直线来近似测量数据。K取值≥2,则为非线性拟合。线性近似一般用在数据变化不太剧烈的数据段,而在某些时刻数据变化较大时,可以采用分段线性来近似,通常也称为折线近似。
在数据拟合中常采用最小二乘法原则来确定拟合系数,即通过不断迭代,使拟合数据y与原测量数据x的差值的平方和为最小,即求下式F为最小时的系数集,即:
(3)
自适应分段线性拟合就是只要相邻的一串数据适合用一个线性直线来近似,就自动地将它们拟合在一个线性公式下,不管这些数据有多少。这样的方法特别适用于像液压支架的监测数据,其在较长时间里数据趋于平稳,通常在一两个小时里仅有1次较明显的数据异变。
自适应分段的指标就是式(3),设定一个测量可接受的误差范围F≤Δ,若新加入的测量点使得迭代结果F>Δ,则认为其不属于本线性段。
由于采用了自适应分段线性的方法,每次用于拟合的数据长度是不确定的,故为了接收端恢复数据方便,需要通知接收端,这次本段线性拟合了多长的数据。线性拟合有a0、a1两个系数,再加上一个数据长度,故每段线性拟合形成3个数据。若用单字节表示,为3个字节,双字节表示为6个字节。
当用单字节传输时,最大拟合数据可达到255个;当有双字节数时,理论上最大拟合数据可达65 535个。实际应用中,通常限定一个最大拟合数据值,比如500,以方便接收端显示的数据有适当的变化,避免时间数据不变化的状态。
理论上接收端将接收到的a0、a1两个系数代入(2)式,即可求出拟合数据y。但恢复的数据长度由第三个数据n决定。由于节点的采样时间间隔是确定的,知道了拟合用的数据长度,也就知道了这段线性近似数是代表的时间长度。
图2给出了WSN分节点组成框图。由图2可知,压力传感器经信号调理电路将压力信号变换到适合进行数据转换的电平,模拟的压力信号送到WSN专用芯片CC2530进行A/D转换,数据化的数据需要就地显示的信息进行显示译码后送显示单元进行显示,CC2530芯片根据需要进行自适应分段线性拟合处理,电路扩展了外部存贮单元(这里主要用于将来可能的扩展需要),必要时也可将数据存放在外存单元中。CC2530通过其收发单元与天线实现WSN的组网。其中组网及路由算法不是本文研究的重点,这里不作介绍。
图2 系统硬件组成框图
图3给出了WSN节点中数据采集和自适应分段线性拟合的程序流程图。主程序先进行初始化、清数据存贮器,然后采集压力信号进行A/D转换,将A/D转换的值送到存贮器进行存贮。将数据进行压力转换,送到显示器进行本地压力显示。
当有新采集数据时,程序进入自适应分段线性拟合处理过程,从数据存贮器中读取数据,进行新数据拟合。判断Δ是否大于5%,若否,则新数据与原数据可用相同的线性公式表示存贮系数与数据长度;若是,则新数据不能和原数据用相同的线性公式描述,即缓存原来的系数和长度,等待传送数据。
采用支架压力数据自适应分段线性拟合,WSN节点根据需要按设定的采样周期进行采样,并进行数据拟合,拟合的数据存在节点中,等到与sink节点通信时,将拟合后的数据及长度发送出去。
为了说明信号奇异性的影响,图4显示出了在压力曲线变化最大时,30 s的测量曲线及其分段线性拟合值。其中带点的曲线是实测数据,分段直线的曲线是自适应线性拟合的数据。由图4可见,采用数据拟合后,支架压力变化最大时的30 s数据,程序自动分成了3段线性拟合直线。而在平时压力变化缓慢时,每个线性拟合段表示的数据段会更长。
从曲线变化看,分段线性拟合曲线能真实反映压力变化的基本情况,有效保留压力数据中奇异信号的信息,满足支架压力数据应用的需要。同时,数据能够大量进行压缩,以有效降低WSN节点的数据传输量,提高节点的生命周期。
图4 自适应分段线性拟合结果示例图
本文提出WSN支架监测系统中压力数据自适应分段线性拟合的方法,既将压力数据按是否适合用一个线性公式进行表达来进行自适应分段,较好地压缩了WSN需要传输的数据量,延长了WSN节点的寿命,又有效地保存了支架压力数据重要的奇异信号。根据实际使用需要,该方法也完全可扩展成二次以上的自适应分段曲线拟合。