張杰文
(國能集團 寧夏煤業集團公司,寧夏 銀川 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節點的壽命,又有效地保存了支架壓力數據重要的奇異信號。根據實際使用需要,該方法也完全可擴展成二次以上的自適應分段曲線擬合。