趙增印,弓 宇,吳 哲,韓肖君
(1.北京航宇天穹科技公司,北京 100043;2.中機生產力促進中心,北京 100044)
旋轉部件是風力發電系統的重要部件,需要實時監測這些部件的運行狀態,以確保風力發電系統旋轉部件運轉正常。由于旋轉部件的特殊性,遙測系統在獲取轉子的測量參數后通常需要采用無線通訊設備進行高效率、高可靠性的傳輸,方便地面人員接收數據并進行判讀。
旋轉部件的高速參數遙測系統屬于典型的時域系統,需要實時、快速地傳輸測量參數[1]。不同設備采集信號帶寬和采樣速率有差異,以設計的12點測量系統為例,濾波帶寬1.2KHz,采樣率3.1Ksps,精度16bit,總體數據速率為595200bps,這表明在單位時間內需要傳輸的旋轉軸應變測量數據量非常大。在無線傳輸信道帶寬有限的情況下,為了滿足最大傳輸測量參數數據的要求,在傳輸旋轉軸應變測量數據之前需要壓縮時間區間和頻譜區域[1]。
本文以旋轉部件12路參數遙測系統遙測數據為研究對象,通過對旋轉軸應變測量數據特征進行研究,設計一套專用于旋轉軸應變測量數據的信源壓縮方案,降低其對信息通信帶寬需求,解決遙測升級后數據傳輸帶寬不足問題。
旋轉軸應變測量數據應變遙測系統主要包括應變傳感器、信號放大濾波器、A/D轉換器、數據合路器和無線傳輸單元等,見圖1。

圖1 應變遙測數據傳輸框圖
分布在旋轉軸相應測量點的應變傳感器產生應變測量信號,經適當放大和濾波后,形成需要的測量信號,確保合適的信號取值范圍,然后進行A/D轉換,進而實現模擬信號到數字信號之間的轉換,同時進行數字濾波,完成信源數據采集。然后各測量點產生的數字信號按照一定規則串行化合路,最后通過無線數據傳輸模塊進行旋轉軸應變測量數據的發射,完成數據發送。
無線接收單元接收到相應的編碼數據后,傳輸到地面處理系統進行后續解碼處理。在旋轉軸應變測量數據的傳輸過程中,通過信源編碼技術和信道編碼技術對數據進行編碼。其中信源編碼技術保證無線傳輸通道帶寬能夠充分被旋轉軸應變測量數據利用,信道編碼技術保證地面設備能夠正確無誤地接收旋轉軸應變測量數據[1]。
旋轉軸有轉動和停止、正向旋轉和反向旋轉、加速和減速等狀態,尤其是對于風電系統,有風強度瞬變和風向瞬變等,因此,數據呈現出非穩定的瞬變特征。
應變數據與其它數據有顯著區別,一般變化緩慢,干擾嚴重。旋轉軸應變測量數據不僅具有數據量大、冗余度高的特點,而且具有其獨特的規律。從接收的數據看,旋轉軸應變測量數據普遍數較小,見圖2。

圖2 12點應變測量數據
圖2中橫向為12路采集某一時刻數據,共24字節,每兩個字節表示一路樣點,16位有符號short類型表示(第 一 排 樣 點 數 值 分 別 為:-31,8,-49,-14,41,-18,10,10,18,21,-47,-2)。縱向為各路不同時刻樣點,可以看出,每路樣點數值隨時間變化比較小。以波形的方式畫出應變數據見圖3。

圖3 部分應變數據波形圖
針對上述旋轉軸應變測量數據特征,設計先使用預測方法,然后對預測殘差采用霍夫曼壓縮編碼算法,會有效地減少傳輸數據總量,滿足通信帶寬要求。
數據壓縮模式很多,分類方式多種多樣。可以根據信息丟失情況分為有損壓縮和無損壓縮兩大類,也可以根據實時性要求分為實時壓縮和非實時壓縮。為了保證信息完整和時效性,系統設計采用實時無損壓縮。
2.1.1 無損壓縮技術
目前主流無損壓縮算法包括霍夫曼編碼、算術編碼等。
霍夫曼編碼是霍夫曼在1952年提出,霍夫曼編碼[2]首先統計輸入信號中符號出現的頻率,然后按照符號出現頻率大小對符號排序,最后構造二叉樹為所有符號分配不同長度的碼字,其中符號分配的碼字越短表示其出現的頻率越高。

步驟1:待編碼信號中的m個符號按概率由大到小進行排序,確保上面符號的概率大,下面符號的概率小,將這些符號作為二叉樹樹葉,保證pk≤pk+1。
步驟2:兩片概率最小的樹葉連接一點,作為一個新符號,其概率是兩片樹葉的概率之和,即p1,2=p1+p2,然后對新符號和剩余符號共m-1個符號進行編碼。
步驟3:重復步驟2中的方法,再次對m-1個符號中兩個概率最小的符號連接一點作為新符號,然后對新符號和剩余符號共m-2個符號進行編碼,按照上述方法一直循環直至樹根,最后可通過樹根的概率是否為1進行檢查。
步驟4:將0和1賦值給每個節點的樹枝,從樹根開始取每片樹葉所經過的樹枝上的值,依次排列作為各個符號的霍夫曼碼字。
霍夫曼編碼碼字是異字頭碼,能夠保證編碼結果的唯一可譯性;由于霍夫曼編碼采用符號碼字字典,接收端出現誤碼時只影響當前符號解碼,不會影響后續符號解碼,可靠性強。
算術編碼[3]同樣基于統計概率進行編碼,編碼器也需要先將輸入信號中的符號進行出現概率統計,然后按輸入信號符號出現的順序在編碼區間上按概率進行區間的劃分表示。與霍夫曼編碼中每個字符采用整數個位的碼字表示不同,算術編碼方法是將待編碼的輸入信號的符號串表示成[0,1)區間上的一個浮點數。輸入信號的符號序列越長,算術編碼最終劃分的區間長度越小,而區間需要更多的位數進行表示。由于計算機的精度的限制,算術編碼通常需要使用比例縮放進行區間表示。算術編碼過程實際上就是依據輸入信號符號的發生概率劃分編碼區間的過程,與霍夫曼相比,可以獲得更高的編碼效率。
算術編碼器將整個輸入信號的符號序列表示為一個在間隔[0,1)中的實數碼字,因此解碼器需要接收到這個實數的所有位的數據才能進行解碼,這也暗示著算術編碼對錯誤很敏感。算術編碼的編、解碼計算復雜度要明顯高于霍夫曼編碼,這也決定了算術編碼的實時性不如霍夫曼編碼。
綜合對比,為了實時無損壓縮旋轉軸應變測量數據,選擇霍夫曼編碼方法進行旋轉軸應變測量數據的壓縮。
2.1.2 基于預測和霍夫曼編碼的旋轉軸應變測量數據壓縮方法
由于旋轉軸應變測量數據具有緩變的特征,為了進一步壓縮數據,可以先采用線性預測的方法,用已有的數據預測未來的數據,使預測誤差形成殘差數據,將信源信息在零附近進行有效集中,使得符號的概率分布發生集中變化,降低數據的信息熵,從而有利于提高霍夫曼編碼的壓縮倍數。
由于旋轉軸應變測量數據的預測過程會帶來信息時延,為了保證實時性,需要降低預測級數。每一級的預測延時是一個樣點的采樣時間,因為采樣速率比較低,樣點間隔時間比較長,所以預測的級數不能太高。圖4為一階預測后殘差數值的波形。

圖4 預測后殘差數據波形
從圖4可以看出,經過一階預測,旋轉軸應變測量數據數值很好的集中在零點附近,分布嚴重失衡,非常不均勻。當信源的概率分布的不均勻程度越大,霍夫曼編碼壓縮的效果越好[4]。
為了減少設備的復雜性,設計選擇使用經驗霍夫曼壓縮。經驗霍夫曼壓縮基于信息熵,依賴于統計方法。
通過上述討論,設計選擇簡單實用的線性預測和經驗霍夫曼編碼對旋轉軸應變測量數據進行壓縮。在編碼端,旋轉軸應變測量數據的信源數據先進行一個樣本的延時,前一個數據作為的預測值,兩者相減得到預測殘差,然后利用霍夫曼編碼方法對預測殘差進行壓縮得到壓縮后的數據,最后進行無線傳輸。在解碼端,地面接收到壓縮數據后,首先進行霍夫曼解碼,得到預測殘差,然后與預測殘差相加得到恢復的信源數據,見圖5。

圖5 壓縮和解壓縮框圖
2.2.1 信源數據各路獨自進行預測。
對旋轉軸應變測量數據預測后的殘差數值進行頻次統計,統計結果見表1。

表1 殘差數據頻次統計
2.2.2 確定霍夫曼編碼符號數和對應的頻次
根據表1計算各符號對應頻次,如表2所示。其中,⊿表示所有大于9,小于-9數值的之和對應的符號。

表2 霍夫曼編碼符號與對應頻率
2.2.3 霍夫曼編碼
根據各符號出現的頻次進行霍夫曼編碼,形成霍夫曼編碼表,見表3。

表3 經驗霍夫曼編碼符號編碼表
2.2.4 霍夫曼壓縮
按照流程圖5給出的過程,對每個樣點進行預測,并按照霍夫曼碼表對殘差數據進行編碼,完成數據壓縮。⊿為轉義標識符號,對殘差數據大于9,小于-9數值編碼時,先輸出⊿編碼,再加上輸出16位數值源碼,形成壓縮數據流進行傳輸發送。
2.2.5 解壓縮
地面接收到的數據按照霍夫曼碼表進行解碼,恢復出殘差數據。然后通過已恢復樣點的數據,結合預測數據,恢復出該樣點數據,完成數據解壓縮。
利用提出的算法進行旋轉軸應變測量數據的仿真測試實驗,測試旋轉軸應變測量數據的總傳輸數量為22799496字節,其中包括12路,每路數據949978字節,474989采樣點。壓縮后的數據量為1678134字節,平均碼率約43809bps。
提出的算法使用了一階預測,延時一個樣點,實時性非常好。由于使用一階預測,算法復雜度非常低,實現簡單;整數運算,對處理器要求很低;算法使用經驗霍夫曼壓縮方法,只使用查表運算,實現起來也非常簡單。算法使用無損壓縮,無失真。
該壓縮方法對出現極少的大數值,采用源碼傳遞,未進行壓縮,且需要添加轉義標識⊿編碼,數據長度非但沒有壓縮,還增加了數據傳輸量,這會增加數據傳輸抖動。實際數據如果連續性差,出現突變或者有突發強干擾信號,就會出現數據突變,預測后就會出現大數值數據。為了防止這種現象發生,輸入端應有良好的濾波。
由于使用了預測編碼方法,傳輸差錯會出現偏心(零點偏移)問題。通過傳輸時定時插入原始數據進行解決,利用⊿轉義標識符號后加原始真實數據實現糾偏。
經驗霍夫曼編碼需要長時間大量數據統計,形成的碼表才具有代表性。要得到一個穩定可信的碼表,還有很多工作要做。
本文分析了旋轉軸應變測量數據的特點,針對其特點設計了一種簡單實用的壓縮方法,經實驗證明能夠滿足實際工作需求。同時通過以上分析不難看出,該壓縮方法仍有很大的改進空間,可以進行繼續研究。