唐擁軍, 潘羅平
(中國水利水電科學(xué)研究院 水力機(jī)電研究所, 北京 100038)
隨著我國水電事業(yè)的發(fā)展,水電在整個電網(wǎng)中的比重越來越大,另外,水輪發(fā)電機(jī)組單機(jī)容量也在逐步增大,一旦事故停機(jī)會造成嚴(yán)重的經(jīng)濟(jì)損失,從而對機(jī)組可用率、機(jī)組運(yùn)行的效率、安全性、可靠性與經(jīng)濟(jì)性提出了更高的要求。由于水力發(fā)電機(jī)組額定轉(zhuǎn)速較低,其故障發(fā)展多數(shù)是漸變的,突發(fā)性惡性事故較少,使得利用狀態(tài)監(jiān)測和趨勢分析技術(shù),捕捉事故征兆,早期分析事故原因,防止故障的發(fā)生變得相對容易和正確。因此,對水電機(jī)組安裝狀態(tài)監(jiān)測系統(tǒng)是水電發(fā)展的必然趨勢。然而,水電機(jī)組狀態(tài)監(jiān)測系統(tǒng)測點(diǎn)較多,包括振動、擺度與壓力脈動等測量參數(shù),因此,在機(jī)組長期監(jiān)測的過程中會產(chǎn)生大量的歷史數(shù)據(jù),龐大的數(shù)據(jù)量給存儲和查詢以及網(wǎng)絡(luò)傳輸都帶來很多問題,必須采用合理的壓縮算法對原始采樣數(shù)據(jù)進(jìn)行壓縮。同時考慮到系統(tǒng)的實(shí)時性,要求壓縮算法的速度盡可能快,否則會造成數(shù)據(jù)丟失。
數(shù)據(jù)壓縮,就是以最少的碼字表示信源所發(fā)的信號,減少容納給定消息集合或數(shù)據(jù)采樣集合的信號空間。
所謂信號空間亦即被壓縮對象是指:
(1)物理空間,如存儲器、磁盤、磁帶等數(shù)據(jù)存儲介質(zhì);
(2)時間區(qū)間,如傳輸給定消息集合所需要的時間;
(3)電磁頻譜區(qū)域,如為傳輸給定消息集合所要求的帶寬等。
由于信源特征千差萬別,每一種信源所包含信息的相關(guān)性或冗余度都不盡相同,所以在編碼時,應(yīng)當(dāng)根據(jù)各種信源的特點(diǎn),選擇不同的壓縮算法,使得壓縮性能盡可能高,時間開銷盡可能短,易于實(shí)現(xiàn),獲得最佳的壓縮效果。
在信息論中用“熵”來測量信息量的大小。設(shè)離散信源的輸出Xk, k = { 1,2,...}取值于有限符號集A:
而該集合中每個對應(yīng)符號出現(xiàn)的概率為:
于是可以定義信源的平均信息熵為:
數(shù)據(jù)壓縮的理論起源于香農(nóng)信息論,信源的熵是信源無失真編碼的極限,也就是說不論采取何種壓縮算法,其壓縮后的平均碼長不會小于該信息的熵,如果小于的話,那么這種壓縮必然是失真的。按照壓縮過程的可逆性進(jìn)行分類,通??煞譃橛袚p壓縮和無損壓縮兩種。
(1)有損壓縮是不可逆壓縮。在有損壓縮的過程中,會損失掉一部分信息,這樣,在還原壓縮文件時就無法做到無失真地再現(xiàn)被壓縮的數(shù)據(jù)。它是以丟失部分信息為代價來獲得較好的壓縮效果。
(2)無損壓縮的工作機(jī)理是除去或盡量除去數(shù)據(jù)中重復(fù)和冗余的部分,而不丟失其中的任何信息,從而確保被壓縮了的數(shù)據(jù)還原后與壓縮前完全一致。
無損壓縮是完全可逆的,不會給數(shù)據(jù)所攜帶的信息帶來任何損失,但由于無損壓縮方法其壓縮率受到數(shù)據(jù)統(tǒng)計(jì)冗余度的理論限制,所以其壓縮比是有限的。當(dāng)不考慮信號的次要分量時,其壓縮比可以得到大幅提高,由于不影響信號的特征信息可認(rèn)為是無損壓縮的。
在實(shí)際信源的數(shù)據(jù)流中,由于相鄰符號數(shù)據(jù)間隔潛在的相關(guān)性,有些數(shù)據(jù)可能連續(xù)重復(fù)數(shù)次,表現(xiàn)出較高的冗余度,游程編碼就是要設(shè)法利用這種數(shù)據(jù)流的特點(diǎn)來達(dá)到數(shù)據(jù)壓縮的目的。所謂游程(RL)是指由信源符號構(gòu)成的數(shù)據(jù)流中某個符號重復(fù)出現(xiàn)而形成的串的長度,在游程編碼中用三個字節(jié)表示一個字符串:第一個字節(jié)是壓縮指示字符S,第二個字節(jié)記錄連續(xù)出現(xiàn)的字符,第三個字節(jié)記錄重復(fù)字符出現(xiàn)的次數(shù)。由此可知,當(dāng)游程長度RL大于3時游程編碼就能達(dá)到數(shù)據(jù)壓縮的目的,于是編碼時要先判斷RL值,再決定是否對信息進(jìn)行游程編碼;而譯碼時如果為普通字符,則直接輸出,若遇到的是壓縮指示符S,則應(yīng)再讀出它后面的兩個字符,其中前一個字符是要釋放的字符,應(yīng)按字符后面所標(biāo)識的數(shù)字重復(fù)輸出該字符。
本文介紹的壓縮算法是一種變換編碼壓縮即首先對信號原始數(shù)據(jù)進(jìn)行FFT變換,F(xiàn)FT系數(shù)是復(fù)數(shù)序列,其實(shí)部是偶對稱,虛部是奇對稱的,因此可以用FFT系數(shù)的前半部分來重構(gòu)整個系數(shù)序列。然后,對FFT系數(shù)進(jìn)行量化處理,對整個信號來說,幅值與能量很小的分量其系數(shù)可置為零,再對量化后的系數(shù)進(jìn)行游程編碼達(dá)到數(shù)據(jù)壓縮的目的,連續(xù)零的位數(shù)大于2時就可以采用編碼壓縮,編碼的方法為第一位用S表示壓縮指示符,第二位數(shù)據(jù)表示連續(xù)零的位數(shù)。數(shù)據(jù)壓縮與解壓流程見圖1。
圖1 數(shù)據(jù)壓縮與解壓流程
某水電站機(jī)組在某一負(fù)荷穩(wěn)定工況下上導(dǎo)擺度信號原始波形與頻域FFT如圖2所示,采樣率為1000 Hz,數(shù)據(jù)長度為4096個點(diǎn)。如對原始數(shù)據(jù)不進(jìn)行壓縮,則需要保存4096個單精度數(shù)據(jù)??紤]到穩(wěn)定工況主要關(guān)注的是機(jī)組擺度幅值與主要頻率成分,從信號頻域FFT圖可看出,信號主要頻率成分為15Hz以下的低頻。因此可在保證不丟失信號特征信息的條件下,對數(shù)據(jù)進(jìn)行大量壓縮。
FFT變換系數(shù)中以模值最大的頻率分量作為基準(zhǔn),其他頻率分量模值與它相比,比值小于1/150的分量其系數(shù)置為零,得到量化處理后的FFT變換系數(shù)數(shù)組,其中系數(shù)實(shí)部可以簡單地示意如圖3所示(0的連續(xù)個數(shù)小于3的也用非0表示,虛部與實(shí)部一致)。采用游程編碼壓縮后可表示如4所示,它需要保存的數(shù)組長度為51,虛部與實(shí)部需要保存的數(shù)組長度相同。因此,壓縮后需要保存的數(shù)組長度為102,因此壓縮比為 40.157,均方誤差為 2.0324,解壓后的數(shù)據(jù)波形與原始波形對比見圖5。
圖2 上導(dǎo)擺度時域與頻域FFT
圖3 量化后FFT系數(shù)表示圖
圖4 游程編碼后FFT系數(shù)表示
圖5 解壓后的數(shù)據(jù)波形與原始波形對比
(1)FFT變換系數(shù)是復(fù)數(shù)序列,其實(shí)部是偶對稱,虛部是奇對稱的,可以用FFT系數(shù)的前半部分來重構(gòu)整個系數(shù)序列。
(2)對信號原始數(shù)據(jù)先進(jìn)行 FFT變換,對 FFT變換系數(shù)用一門檻值進(jìn)行量化處理,再對量化處理后的系數(shù)進(jìn)行游程編碼,可以有效地對信號進(jìn)行壓縮,壓縮比由門檻值決定,對穩(wěn)態(tài)信號,在保留信號特征的條件下,壓縮比可達(dá)到 100以上,并且穩(wěn)態(tài)信號的數(shù)據(jù)長度越大壓縮比越高。這樣,就可以大大減小存儲信號數(shù)據(jù)的空間與縮短傳輸信號所需時間及網(wǎng)絡(luò)帶寬。
[1]董鴻魁. 關(guān)于水輪發(fā)電機(jī)組的在線監(jiān)測及狀態(tài)診斷[J]. 云南電力技術(shù). 2001, (1): 1.
[2]汪大全. 電力錄波數(shù)據(jù)壓縮技術(shù)的研究[D]. 成都:西南交通大學(xué), 2003: 5-7.