欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

智能樓宇中海量能耗信息的壓縮方法

文檔序號:7518536閱讀:222來源:國知局
專利名稱:智能樓宇中海量能耗信息的壓縮方法
技術(shù)領(lǐng)域
本發(fā)明涉及建筑能耗監(jiān)控技術(shù)領(lǐng)域,具體是一種智能樓宇中海量能耗信息的壓縮 和解壓縮方法
背景技術(shù)
智能樓宇能耗信息在線實時監(jiān)測是利用電子測控技術(shù)實現(xiàn)對智能樓宇內(nèi)的水、 電、暖等能源消耗情況進行分量式監(jiān)測,電能分項數(shù)據(jù)采集;并應(yīng)用無線傳感網(wǎng)絡(luò)技術(shù),實 現(xiàn)對建筑物室內(nèi)溫濕度、C02、甲醛含量等環(huán)境定時采集監(jiān)測;通過建立數(shù)據(jù)中心,構(gòu)建省市 多級能耗監(jiān)管系統(tǒng)。該能耗監(jiān)管系統(tǒng)能夠?qū)δ芎臄?shù)據(jù)進行分析統(tǒng)計,獲得準(zhǔn)確建筑真實的 能耗數(shù)據(jù),便于政府部門進一步強化監(jiān)督管理,確保建筑全面執(zhí)行建筑節(jié)能強制性標(biāo)準(zhǔn),建 立和完善能效測評、用能標(biāo)準(zhǔn)、能耗統(tǒng)計、能源審計、能效公示、用能定額、節(jié)能服務(wù)等各項 制度,促進既有高耗能國家機關(guān)辦公建筑和大型公共建筑節(jié)能運行和改造,可有效控制樓 宇內(nèi)能源的浪費,達到優(yōu)化能源供應(yīng)、提高能源管理水平、節(jié)約能源成本的目的。由于系統(tǒng)提供每天各智能樓宇能耗信息在線實時監(jiān)測回路能耗的實時監(jiān)測功能, 每間隔一定時間(可由用戶設(shè)定)采集一次能耗數(shù)據(jù)。對于省市多級能耗監(jiān)管系統(tǒng),由于 監(jiān)測現(xiàn)場的采集點多,采集時間周期短,因而要保存的歷史數(shù)據(jù)量非常大。如果將這些數(shù)據(jù) 直接存儲,不僅會占用大量的系統(tǒng)存儲空間,而且會降低數(shù)據(jù)的實時性,使數(shù)據(jù)的傳輸、查 詢變得困難。

發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)中存在的上述問題,減少對海量歷史數(shù)據(jù)存儲管理的成本,本 發(fā)明根據(jù)智能樓宇管理系統(tǒng)中的能耗信息數(shù)據(jù)結(jié)構(gòu)特點,提出了一種新的海量能耗信息的 壓縮和解壓縮方法。本方法充分考慮了不同特性信號點的需求,采用開放性的記錄方式給 予工程配置以最大的自由度,能夠很好地配合工程應(yīng)用,有效地過濾冗余數(shù)據(jù)。利用數(shù)據(jù)平 滑對數(shù)據(jù)序列中強噪聲點進行處理,使得處理后的數(shù)據(jù)能接近被測參數(shù)的實際值,主要用 于降低傳感器的測量精度誤差給數(shù)據(jù)處理帶來的影響。時間戳的處理采用了周期跨度的保 存方式,具有很高的壓縮比,與內(nèi)存數(shù)據(jù)庫中的緩存結(jié)構(gòu)設(shè)計相結(jié)合,使得壓縮方法與結(jié)構(gòu) 設(shè)計相得益彰。在浮點數(shù)的壓縮方法的過程中,采取了量程轉(zhuǎn)換的方法,該方法的理論基礎(chǔ) 更牢固,實際工程應(yīng)用的壓縮性能更好,并且實現(xiàn)方法更為有效和合理。與傳統(tǒng)的數(shù)據(jù)壓縮 算法相比較,該算法的壓縮率有了顯著的提高,并大大縮短了壓縮時間,具有很強的應(yīng)用價 值。本發(fā)明的技術(shù)方案如下一種智能樓宇中海量能耗信息的壓縮方法,步驟如下1)先對樓宇中個監(jiān)測端的數(shù)據(jù)進行采集,對于采集得到的數(shù)據(jù),設(shè)智能樓宇能耗 信息在線實時監(jiān)測現(xiàn)場的記錄點每條記錄為一個三元組(tagid,time, data),分別表示點 編號、數(shù)據(jù)的采集時態(tài)和采集的數(shù)據(jù);
2)當(dāng)某記錄點的時態(tài)屬性值發(fā)生改變時,對應(yīng)的新數(shù)據(jù)存入一級緩存中,然后直 接返回下一個任務(wù),這些新數(shù)據(jù)由后臺數(shù)據(jù)存儲線程存入文件;所述一級緩存是一個數(shù)據(jù)隊列,由數(shù)據(jù)管理線程和數(shù)據(jù)存儲線程共享;3)設(shè)立二級緩存對應(yīng)每個tagid設(shè)有兩個固定大小的緩存區(qū),存儲線程從一級緩存中取得數(shù)據(jù), 寫入該id對應(yīng)的緩存區(qū);當(dāng)某點對應(yīng)的緩存區(qū)已滿的時候,一次性地把該緩存區(qū)中的所有 數(shù)據(jù)轉(zhuǎn)入歷史數(shù)據(jù)壓縮區(qū)中,并將另一個緩存區(qū)變?yōu)楫?dāng)前緩存區(qū),繼續(xù)接收一級緩存的歷 史數(shù)據(jù),如此交替進行;4)設(shè)置歷史數(shù)據(jù)壓縮區(qū),并在該壓縮區(qū)中,對步驟3)的緩存區(qū)中的數(shù)據(jù)進行壓縮 后再將其轉(zhuǎn)存到磁盤文件;5)采用文件隊列的形式來組織數(shù)據(jù)文件,當(dāng)一個文件存滿后,才啟用文件隊列中 下一個文件;6)當(dāng)壓縮完成后,把壓縮后的數(shù)據(jù)存入存儲器中,供所需用戶端調(diào)用。


圖1數(shù)據(jù)轉(zhuǎn)儲流程示意圖;圖2數(shù)據(jù)存儲流程示意圖;圖3開關(guān)量的變化壓縮示意圖。
具體實施例方式下面結(jié)合附圖與具體實施方式
對本發(fā)明作進一步說明。一種智能樓宇中海量能耗信息的壓縮方法,步驟如下1)設(shè)計智能樓宇能耗信息在線實時監(jiān)測現(xiàn)場的記錄點每條記錄為一個三元組 (tagid, time, data),分別表示點編號,數(shù)據(jù)的采集時間,當(dāng)時的數(shù)據(jù)狀態(tài)和采集的數(shù)據(jù);2)當(dāng)系統(tǒng)中某對象的時態(tài)屬性值發(fā)生改變時,這個新值并不直接存人數(shù)據(jù)文件 中,系統(tǒng)把該值存入一級緩沖中,然后直接返回下一個任務(wù),而這些數(shù)據(jù)由后臺數(shù)據(jù)存儲線 程負責(zé)存入文件;3)設(shè)立二級緩存。一級緩存是一個數(shù)據(jù)隊列,由數(shù)據(jù)管理線程和數(shù)據(jù)存儲線程共 享。而二級緩存是為了防止頻繁的文件寫入,提高數(shù)據(jù)存儲的效率。系統(tǒng)為每個tagid設(shè) 立兩個固定大小的緩存區(qū)(如4KB),存儲線程從一級緩存中取得數(shù)據(jù),并不直接寫入文件, 而是寫入該id對應(yīng)的緩存區(qū),只有當(dāng)某點對應(yīng)的緩存區(qū)已滿的時候,系統(tǒng)才會一次性地把 該緩存區(qū)中的所有數(shù)據(jù)轉(zhuǎn)入歷史數(shù)據(jù)壓縮區(qū)中。并將另一個緩存區(qū)成為當(dāng)前緩存區(qū),繼續(xù) 接收一級緩存的歷史數(shù)據(jù),如此交替進行從而避免了在歷史數(shù)據(jù)壓縮保存時無法保存一級 緩存歷史數(shù)據(jù)現(xiàn)象的出現(xiàn)。4)在歷史數(shù)據(jù)壓縮區(qū)中,對步驟3)的緩存區(qū)中的數(shù)據(jù)進行壓縮后再將其轉(zhuǎn)存到 磁盤文件。對緩存區(qū)中的數(shù)據(jù)進行壓縮,是一種多級壓縮策略,包括了初級壓縮、核心壓縮 兩個階段以及對數(shù)據(jù)文件的定期整理壓縮;初級壓縮過程中,先由數(shù)據(jù)平滑處理對數(shù)據(jù)序 列中的強噪聲點進行平滑計算;再由記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留 下需要的數(shù)據(jù)點;核心壓縮過程中,首先進行時間戳壓縮,然后根據(jù)不同的數(shù)據(jù)類型,分別采用不同的方法進行數(shù)據(jù)量過濾壓縮,最后經(jīng)過數(shù)據(jù)類型轉(zhuǎn)換,完成對所有過程數(shù)據(jù)的壓 縮;5)采用文件隊列的形式來組織數(shù)據(jù)文件,當(dāng)一個文件存滿后,才啟用文件隊列中 下一個文件。6)當(dāng)壓縮完成后,把壓縮后的數(shù)據(jù)存入存儲器中,供所需用戶端調(diào)用。所述步驟4)中,對緩存區(qū)中的數(shù)據(jù)進行壓縮,是一種多級壓縮策略,包括了初級 壓縮、核心壓縮兩個階段以及對數(shù)據(jù)文件的定期整理壓縮;初級壓縮過程中,先由數(shù)據(jù)平滑處理對數(shù)據(jù)序列中的強噪聲點進行平滑計算;再 由記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留下需要的數(shù)據(jù)點;核心壓縮過程中,首先進行時間戳壓縮,然后根據(jù)不同的數(shù)據(jù)類型,分別采用不同 的方法進行數(shù)據(jù)量過濾壓縮,最后經(jīng)過數(shù)據(jù)類型轉(zhuǎn)換,完成對所有過程數(shù)據(jù)的壓縮。所述核心壓縮過程中,如果組態(tài)時用戶配置了定期整理策略,則定期地對數(shù)據(jù)文 件進行無損壓縮備份,并清理原始數(shù)據(jù)。所述步驟5)中,文件隊列的長度由系統(tǒng)管理員來設(shè)定。初級壓縮過程中,1)首先要根據(jù)傳感器的測量精度來確定是否需要進行數(shù)據(jù)平滑,當(dāng)傳感器的測量 誤差較大時,則對數(shù)據(jù)塊中的噪聲點進行處理,使得處理后的數(shù)據(jù)更能代表或者更接近被 測參數(shù)的實際值;數(shù)據(jù)平滑處理在科學(xué)研究中應(yīng)用廣泛,常用的方法有移動窗口多項式最 小二乘擬和平滑方法,粗糙懲罰方法,以及kernel平滑方法、卡爾曼濾波法、指數(shù)平滑法、 五點三次平滑法、七點二次平滑法等。事實上無論是哪種平滑方法,平滑結(jié)果都是對每組數(shù) 據(jù)進行的修正計算,對于比較準(zhǔn)確的數(shù)據(jù)都存在精度損失的可能。2)記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留下需要的數(shù)據(jù)點。不同的 記錄點,其記錄的數(shù)據(jù)對應(yīng)著不同物理意義的現(xiàn)場信號量,如溫度、壓力、流量等,即使是物 理意義相同的信號量,信號變化快慢也存在著差異。因此,保存歷史數(shù)據(jù)時采用有針對性的 記錄方式,只在有必要的時刻才保存信息,可以有效地對采集到的數(shù)據(jù)進行過濾,進而減小 存儲的總量。記錄方式過濾的主要參數(shù)是來源于工程組態(tài)時對記錄點的配置,由工程人員 根據(jù)實際記錄點的物理意義、信號特性等信息,設(shè)置周期記錄方式的k值(對于每個記錄 點,實際的記錄周期應(yīng)該設(shè)置為最小記錄周期的整數(shù)倍,即Ti = k · T(k = 1,2, K),k值由 用戶在工程組態(tài)時配置),或者死區(qū)記錄方式的△值(設(shè)[為某記錄點最近一次保存的數(shù) 據(jù)值,該記錄點待壓縮的數(shù)據(jù)序列為y2, K,yn_i,yn,定義一個精度值Δ,依次對序列中的 值Yi做如下比較若Yi滿足IyiIsI彡八,則將71保存,并記錄1 = 71;否則過濾掉71值 不予保存);初級壓縮中的所有參數(shù)是對用戶完全開放的。所述核心壓縮包括時間戳壓縮,和針對不同數(shù)據(jù)類型的開關(guān)量壓縮、整型量壓縮 和模擬量壓縮;1)時間戳壓縮對于同一個記錄點,每次對二級緩存中的一組歷史數(shù)據(jù)壓縮時,完整地記錄該組 數(shù)據(jù)的起始時間戳Ts,對于其他數(shù)據(jù)的時間戳Ti,則使用“周期跨度”來表示,表達形式為Ti = TJiXT式中i為一個0到255的整數(shù),表示Ti相對于起始時間Ts的“周期跨度”,T為該點的記錄周期;由于記錄周期T另外保存在配置文件中,一個時間戳實際上存儲的信息僅 為一個周期跨度i,占用1個字節(jié);同時,因為采用了這種時間戳的存儲方式,在內(nèi)存二級緩 存中,將單個記錄點的數(shù)據(jù)緩存量限制為255,也就是一個字節(jié)能夠表示的最大時間跨度;2)開關(guān)量壓縮開關(guān)量進行數(shù)據(jù)量過濾時,采用了變化壓縮算方法,提取時間點中的關(guān)鍵數(shù)據(jù)點 保存;3)整型量壓縮對于整型量的壓縮,采用變化壓縮算法,只保存關(guān)鍵數(shù)據(jù)點;4)模擬量壓縮對模擬量的數(shù)據(jù)量過濾,提出了一種的自控精度SDT算法,自控精度SDT算法如 下SAE* SDT算法的壓縮精度參數(shù),其壓縮原理為起點、為最近一次存儲的 點,以距離、為ΔΕ的上下兩點作為支點,建立兩扇虛擬的門,只有一個數(shù)據(jù)時門閉合;隨 著數(shù)據(jù)點的增加,門會旋轉(zhuǎn)著打開,門的寬度可延伸,一旦打開就不能再閉合;只要兩扇門 的內(nèi)角和小于180° (兩扇門未平行),旋轉(zhuǎn)操作就可以繼續(xù);當(dāng)兩扇門的內(nèi)角和大于等于 180°,就停止操作,存儲前一數(shù)據(jù)點,并由該點開始新一段壓縮。數(shù)據(jù)壓縮過程中,計算出 實際壓縮性能與期望性能之間的偏差,根據(jù)偏差大小調(diào)整壓縮精度Δ五,并作為下一組數(shù) 據(jù)的壓縮精度,使得實際性能指標(biāo)不斷地逼近期望值。SDT算法可以理解為帶有變化趨勢判 斷的死區(qū)壓縮,壓縮精度ΔΕ決定了兩扇門達到平行時能夠容納的精度范圍,因此,SDT算 法的壓縮效果對Δ E的依賴性很大。然而該算法的Δ E是一個固定值并且需要預(yù)先設(shè)置,通 常需要豐富的經(jīng)驗或者長時間的試驗才能夠得到合適的值,因而很多情況下ΔΕ設(shè)置與實 際數(shù)據(jù)特性不符嚴(yán)重限制了 SDT算法的性能。SDT算法是一種有損壓縮算法,即在壓縮過程 中通過丟棄一些數(shù)據(jù)來達到減少數(shù)據(jù)容量的要求。這些被丟棄的數(shù)據(jù)必須在一定范圍內(nèi)不 影響數(shù)據(jù)的恢復(fù)和重建,因此,數(shù)據(jù)的解壓縮誤差通常作為評價壓縮過程好壞的重要標(biāo)準(zhǔn)。所述步驟3)中,對數(shù)據(jù)文件的定期整理壓縮是指定期整理歷史數(shù)據(jù)壓縮區(qū),按照 組態(tài)時的配置對歷史數(shù)據(jù)文件進行壓縮備份。本例技術(shù)方案的說明智能樓宇能耗信息在線實時監(jiān)測現(xiàn)場的記錄點多為現(xiàn)場實時數(shù)據(jù),記錄點的數(shù)據(jù) 類型簡單而固定,只有開關(guān)量、模擬量和整型量三種,且其時間標(biāo)簽為毫秒級。每條記錄都 是一個三元組(tagid, time, data),分別表示點編號,數(shù)據(jù)的采集時態(tài)和采集的數(shù)據(jù)。其中tagid是智能樓宇管理系統(tǒng)中給每一個點分配一個唯一的id,它是由變量號 (short int, 2字節(jié))、設(shè)備號(Byte,1字節(jié))、子系統(tǒng)號(Byte,1字節(jié))組合成一個int型 (4字節(jié))的統(tǒng)一編號。可容納10萬以上的點。time時間標(biāo)簽用于標(biāo)識數(shù)據(jù)采集的時間。每記錄一個數(shù)據(jù),都給它打上當(dāng)前時刻 的時間標(biāo)簽。一般來說,開關(guān)量只有當(dāng)變化了才記錄,而對于模擬量則設(shè)定一個采樣周期, 時間周期是由用戶設(shè)定的,根據(jù)系統(tǒng)的要求來選定,有的量變化慢(如溫度),可以設(shè)定它 的周期比較長,有的變化快,則設(shè)定的采樣周期時間短。data數(shù)據(jù)是歷史數(shù)據(jù)中最關(guān)鍵的部分,系統(tǒng)中的位號分為很多類型,數(shù)據(jù)分為開 關(guān)量的數(shù)據(jù)、模擬量的數(shù)據(jù)(包括浮點量和整型量)三種。
當(dāng)系統(tǒng)中某對象的時態(tài)屬性值發(fā)生改變時,這個新值并不直接存人數(shù)據(jù)文件中, 系統(tǒng)把該值存入一級緩沖中,然后直接返回下一個任務(wù),而這些數(shù)據(jù)由后臺數(shù)據(jù)存儲線程 負責(zé)存入文件。設(shè)立二級緩存。一級緩存是一個數(shù)據(jù)隊列,由數(shù)據(jù)管理線程和數(shù)據(jù)存儲線程共享。 而二級緩存是為了防止頻繁的文件寫入,提高數(shù)據(jù)存儲的效率。系統(tǒng)為每個tagid設(shè)立兩 個固定大小的緩存區(qū)(如4KB),存儲線程從一級緩存中取得數(shù)據(jù),并不直接寫入文件,而是 寫入該id對應(yīng)的緩存區(qū),只有當(dāng)某點對應(yīng)的緩存區(qū)已滿的時候,系統(tǒng)才會一次性地把該緩 存區(qū)中的所有數(shù)據(jù)轉(zhuǎn)入歷史數(shù)據(jù)壓縮區(qū)中。并將另一個緩存區(qū)成為當(dāng)前緩存區(qū),繼續(xù)接收 一級緩存的歷史數(shù)據(jù),如此交替進行從而避免了在歷史數(shù)據(jù)壓縮保存時無法保存一級緩存 歷史數(shù)據(jù)現(xiàn)象的出現(xiàn)。為了盡可能地節(jié)省磁盤空間,我們對緩存區(qū)中的數(shù)據(jù)進行有效的壓縮后再將其轉(zhuǎn) 存到磁盤文件。為了防止數(shù)據(jù)文件過于龐大、不利于管理,系統(tǒng)采取以文件隊列的形式來組織數(shù) 據(jù)文件,文件的長度由系統(tǒng)管理員來設(shè)定,當(dāng)一個文件存滿后,才啟用文件隊列中下一個文 件,從而提高數(shù)據(jù)存儲和查詢的效率。對緩存區(qū)中的數(shù)據(jù)進行壓縮的是一種多級壓縮策略,包括了初級壓縮、核心壓縮 兩個階段以及對數(shù)據(jù)文件的定期整理壓縮。如圖2所示,該策略可以描述為初級壓縮過程 中,數(shù)據(jù)平滑處理對數(shù)據(jù)序列中的強噪聲點進行平滑計算,在傳感器的測量誤差較大時降 低噪聲干擾;記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留下需要的數(shù)據(jù)點。核心壓 縮過程中,首先進行時間戳壓縮,然后根據(jù)不同的數(shù)據(jù)類型,分別采用不同的方法進行數(shù)據(jù) 量過濾壓縮,最后經(jīng)過數(shù)據(jù)類型轉(zhuǎn)換步驟,完成對所有過程數(shù)據(jù)的壓縮。如果組態(tài)時用戶配 置了定期整理策略,則會定期地對數(shù)據(jù)文件進行無損壓縮備份,并清理原始數(shù)據(jù)。數(shù)據(jù)平滑處理當(dāng)傳感器的測量誤差較大時,就需要對數(shù)據(jù)塊中的噪聲點進行處 理,使得處理后的數(shù)據(jù)更能代表或者更接近被測參數(shù)的實際值,這就是數(shù)據(jù)平滑過程。首先 要根據(jù)傳感器的測量精度來確定是否需要進行數(shù)據(jù)平滑,其次是使用何種平方法,不同的 平滑方法對平滑后的數(shù)據(jù)結(jié)果有一定影響。不同的記錄點,其記錄的數(shù)據(jù)對應(yīng)著不同物理意義的現(xiàn)場信號量,如溫度、壓力、 流量等,即使是物理意義相同的信號量,信號變化快慢也存在著差異。因此,保存歷史數(shù)據(jù) 時采用有針對性的記錄方式,只在有必要的時刻才保存信息,可以有效地對采集到的數(shù)據(jù) 進行過濾,進而減小存儲的總量。記錄方式過濾的主要參數(shù)是來源于于工程組態(tài)時對記錄 點的配置,由工程人員根據(jù)實際記錄點的物理意義、信號特性等信息,設(shè)置周期記錄方式的 k值,或者死區(qū)記錄方式的△值??梢姡涗浄绞竭^濾的壓縮效果對組態(tài)人員的工程經(jīng)驗有 著較多的依賴,因此,本級壓縮中的所有參數(shù)是對用戶完全開放的。核心壓縮工業(yè)的歷史數(shù)據(jù)是基于時間序列的數(shù)據(jù),數(shù)據(jù)量會隨著時間的推移不 斷地增加。對歷史數(shù)據(jù)庫的要求是所記錄的歷史數(shù)據(jù)必須能夠反映出系統(tǒng)在一系列時刻的 狀態(tài),因此時間戳與數(shù)據(jù)值必須嚴(yán)格對應(yīng)地記錄。在核心壓縮過程中,首先解決時間戳壓縮 的問題。另外,為了提高歷史數(shù)據(jù)庫系統(tǒng)的效率,便于統(tǒng)一管理,在內(nèi)存緩存中的歷史數(shù)據(jù) 統(tǒng)一按照4字節(jié)進行暫存,此時并沒有考慮信號點的實際數(shù)據(jù)類型。因而在數(shù)據(jù)的核心壓 縮階段,進行數(shù)據(jù)壓縮和存儲格式轉(zhuǎn)換是必不可少的過程。需要說明的是,在這個過程中,將減少采樣數(shù)據(jù)序列中冗余數(shù)據(jù)的過程,稱為數(shù)據(jù)量過濾。數(shù)據(jù)量過濾是根據(jù)開關(guān)量、整型 量和模擬量三類不同信號的特點,分別設(shè)計了有針對性的壓縮方法,下文將詳細分析該過 程使用的壓縮方法。三種信號類型的數(shù)據(jù)在實際存儲中又對應(yīng)著三種不同的C什數(shù)據(jù)類 型,分別為char,int和float,將上述數(shù)據(jù)類型占用的存儲空間減小的過程,稱為數(shù)據(jù)位精簡。時間戳壓縮對于同一個記錄點,每次對二級緩存中的一組歷史數(shù)據(jù)壓縮時,完整地記錄該組 數(shù)據(jù)的起始時間戳Ts,對于其他數(shù)據(jù)的時間戳Ti,則使用“周期跨度”來表示,表達形式為Ti = TJiXT式中i為一個0到255的整數(shù),表示Ti相對于起始時間Ts的“周期跨度”,T為該 點的記錄周期(精度記錄方式下,該周期等于系統(tǒng)的掃描周期1秒)。由于記錄周期T另 外保存在配置文件中,這樣一來,一個時間戳實際上存儲的信息僅為一個周期跨度i,占用 1個字節(jié),極大降低了存儲空間的占用。同時,因為采用了這種時間戳的存儲方式,在內(nèi)存二 級緩存中,將單個記錄點的數(shù)據(jù)緩存量限制為255,也就是一個字節(jié)能夠表示的最大時間跨 度。需要指出的是,在實際保存到文件中時,一組數(shù)據(jù)中連續(xù)數(shù)據(jù)點的i值并不一定是連續(xù) 遞增的整數(shù)。因為經(jīng)過了數(shù)據(jù)量過濾壓縮后,實際存儲的數(shù)據(jù)點所對應(yīng)的時間戳是無規(guī)律 的。開關(guān)量壓縮開關(guān)量信號點只有0和1兩種狀態(tài),其數(shù)據(jù)值是跳變的,而不是連續(xù)性地變化。另 外,在工業(yè)現(xiàn)場,有相當(dāng)一部分的開關(guān)量數(shù)據(jù)在特定甚至很長的時間段內(nèi)狀態(tài)不發(fā)生變化, 因此,本文在對開關(guān)量進行數(shù)據(jù)量過濾時采用了變化壓縮算法。如圖3,時間點分別應(yīng) 著開關(guān)量值1,0,0,0,1,0,0,根據(jù)變化壓縮算法提取、,、,、,、時刻的關(guān)鍵數(shù)據(jù)點保存,而 t2,t3,t6時刻的數(shù)據(jù)值丟棄不保存。這樣,在嚴(yán)格保證數(shù)據(jù)序列準(zhǔn)確性的同時,實現(xiàn)了數(shù)據(jù) 量的過濾。開關(guān)量在實際存儲時使用了 char這種數(shù)據(jù)類型,占用了 1個字節(jié)的存儲空間, 而實際上表示一個開關(guān)量只需要1位,因此對于經(jīng)過變化壓縮算法過濾后的開關(guān)量數(shù)據(jù), 要進行數(shù)據(jù)位精簡。在使用C 一編程時最小的操作單位是1個字節(jié)而并非1位,因此,開關(guān) 量在精簡時采用了移位的方法,將8個開關(guān)量數(shù)據(jù)存放于1個字節(jié)的不同位置,讀數(shù)據(jù)時同 樣通過移位操作取出。進行移位操作雖然增加了數(shù)據(jù)管理的負擔(dān),對數(shù)據(jù)的讀取速度也有 一定影響,但是該壓縮方法成功地將開關(guān)量的存儲空間降到了最小,并保證了 8 1的高壓 縮比,綜合考慮,上述的影響是可以接受的.整型量壓縮整型量信號點的歷史數(shù)據(jù)具有一定的特殊性,它們通常是將一系列的開關(guān)量組合 記錄,存儲時占用4個字節(jié)(32位),每一位的數(shù)據(jù)都有著嚴(yán)格的意義,因此不允許出現(xiàn)任何 誤差。對于整型量的壓縮,只進行一步數(shù)據(jù)量過濾,處理方法與開關(guān)量相同,采用變化壓縮 算法,只保存關(guān)鍵數(shù)據(jù)點,此處不再贅述。數(shù)據(jù)量過濾后就不再進行數(shù)據(jù)位精簡,直接將需 要保存的數(shù)據(jù)按照4字節(jié)大小存儲到數(shù)據(jù)文件中。模擬量壓縮模擬量信號是工業(yè)歷史數(shù)據(jù)庫存儲的主要信號類型,也是數(shù)據(jù)量最多、信號復(fù)雜 度最高、壓縮難度最大的信號類型,本文研究的重點在于對模擬量的數(shù)據(jù)量過濾,提出了一種的自控精度SDT算法。模擬量信號點的數(shù)據(jù),在實際存儲時使用4字節(jié)的float類型,即 單精度浮點數(shù)存儲。定期整理壓縮定期整理是按照組態(tài)時的配置對歷史數(shù)據(jù)文件進行壓縮備份,一 方面保證數(shù)據(jù)的安全性,另一方面可以清理硬盤空間,提高歷史數(shù)據(jù)庫的運行效率。本級文件整理壓縮采用的是無損壓縮技術(shù)。對歷史數(shù)據(jù)壓縮的復(fù)雜程度與解壓 耗時是相互制約的關(guān)系,在定期整理策略的設(shè)計上要根據(jù)不同歷史數(shù)據(jù)文件的應(yīng)用需求與 特點,權(quán)衡兩者的關(guān)系,選擇合理的策略進行數(shù)據(jù)的壓縮。對于工業(yè)現(xiàn)場的備份數(shù)據(jù),在追 溯歷史信息、分析故障等特定應(yīng)用時才需要解壓查詢。雖然備份數(shù)據(jù)不需要經(jīng)常地查詢使 用,但要保證其時間跨度上的完整性,即要求涵蓋系統(tǒng)運行以來幾乎每個時間段上的現(xiàn)場 數(shù)據(jù),數(shù)據(jù)量巨大。因此,對于備份數(shù)據(jù),可以適當(dāng)?shù)貭奚鈮汉臅r來換取高的壓縮比。相 反,對于需要經(jīng)常查詢的近期數(shù)據(jù)文件或者關(guān)鍵數(shù)據(jù)文件,查詢性能是至關(guān)重要的。過于繁 瑣的壓縮步驟會直接影響到數(shù)據(jù)的解壓縮效率,解壓時間過長將使得歷史數(shù)據(jù)庫的查詢性 能讓人難以接受。在本方法的壓縮策略設(shè)計中,數(shù)據(jù)的實時壓縮是以工業(yè)數(shù)據(jù)為對象的壓縮過程, 此時并未采用二次無損壓縮技術(shù),即磁盤數(shù)據(jù)文件中的數(shù)據(jù)都是沒有經(jīng)過無損壓縮的。歷 史數(shù)據(jù)庫僅在數(shù)據(jù)定期整理時采用無損壓縮技術(shù),獨立于在線壓縮完成。定期整理為多級 壓縮策略的最后一個步驟,當(dāng)歷史數(shù)據(jù)文件存儲到一定量,如一個星期或者一個月時,會在 新的進程中以數(shù)據(jù)文件為對象,進行無損壓縮,采用標(biāo)準(zhǔn)的LZW算法,不對數(shù)據(jù)的準(zhǔn)確性造 成任何影響。
權(quán)利要求
1.一種智能樓宇中海量能耗信息的壓縮方法,步驟如下1)先對樓宇中個監(jiān)測端的數(shù)據(jù)進行采集,對于采集得到的數(shù)據(jù),設(shè)智能樓宇能耗信息 在線實時監(jiān)測現(xiàn)場的記錄點每條記錄為一個三元組(tagid,time, data),分別表示點編號、 數(shù)據(jù)的采集時態(tài)和采集的數(shù)據(jù);2)當(dāng)某記錄點的時態(tài)屬性值發(fā)生改變時,對應(yīng)的新數(shù)據(jù)存入一級緩存中,然后直接返 回下一個任務(wù),這些新數(shù)據(jù)由后臺數(shù)據(jù)存儲線程存入文件;所述一級緩存是一個數(shù)據(jù)隊列,由數(shù)據(jù)管理線程和數(shù)據(jù)存儲線程共享;3)設(shè)立二級緩存對應(yīng)每個tagid設(shè)有兩個固定大小的緩存區(qū),存儲線程從一級緩存中取得數(shù)據(jù),寫入 該id對應(yīng)的緩存區(qū);當(dāng)某點對應(yīng)的緩存區(qū)已滿的時候,一次性地把該緩存區(qū)中的所有數(shù)據(jù) 轉(zhuǎn)入歷史數(shù)據(jù)壓縮區(qū)中,并將另一個緩存區(qū)變?yōu)楫?dāng)前緩存區(qū),繼續(xù)接收一級緩存的歷史數(shù) 據(jù),如此交替進行;4)設(shè)置歷史數(shù)據(jù)壓縮區(qū),并在該壓縮區(qū)中,對步驟3)的緩存區(qū)中的數(shù)據(jù)進行壓縮后再 將其轉(zhuǎn)存到磁盤文件;5)采用文件隊列的形式來組織數(shù)據(jù)文件,當(dāng)一個文件存滿后,才啟用文件隊列中下一 個文件;6)當(dāng)壓縮完成后,把壓縮后的數(shù)據(jù)存入存儲器中,供所需用戶端調(diào)用。
2.根據(jù)權(quán)利要求1所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述步驟4) 中,對步驟3)的緩存區(qū)中的數(shù)據(jù)進行壓縮,是一種多級壓縮策略,包括了初級壓縮、核心壓 縮兩個階段以及對數(shù)據(jù)文件的定期整理壓縮;初級壓縮過程中,a)先由數(shù)據(jù)平滑處理對數(shù)據(jù)序列中的強噪聲點進行平滑處理;b)再 由記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留下需要的數(shù)據(jù)點;核心壓縮過程中,首先進行時間戳壓縮,然后根據(jù)不同的數(shù)據(jù)類型,分別采用不同的方 法進行數(shù)據(jù)量過濾壓縮,最后經(jīng)過數(shù)據(jù)類型轉(zhuǎn)換,完成對所有過程數(shù)據(jù)的壓縮。
3.根據(jù)權(quán)利要求2所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述核心壓 縮過程中,如果組態(tài)時用戶配置了定期整理策略,則定期地對數(shù)據(jù)文件進行無損壓縮備份, 并清理原始數(shù)據(jù)。
4.根據(jù)權(quán)利要求1所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述步驟5) 中,文件隊列的長度由管理員設(shè)定。
5.根據(jù)權(quán)利要求3所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述初級壓 縮過程中,初級壓縮過程中,先由數(shù)據(jù)平滑處理對數(shù)據(jù)序列中的強噪聲點進行平滑處理;再 由記錄方式過濾根據(jù)組態(tài)信息、預(yù)處理數(shù)據(jù)序列,保留下需要的數(shù)據(jù)點;1)對a)中,根據(jù)傳感器的測量精度來確定是否需要進行數(shù)據(jù)平滑,當(dāng)傳感器的測量誤 差較大時,則對數(shù)據(jù)塊中的噪聲點進行處理,使得處理后的數(shù)據(jù)更能代表或者更接近被測 參數(shù)的實際值;數(shù)據(jù)平滑的方法包括移動窗口多項式最小二乘擬和平滑方法、粗糙懲罰方 法,kernel平滑方法、卡爾曼濾波法、指數(shù)平滑法、五點三次平滑法或七點二次平滑法;2)對于b)中,記錄方式過濾是指,保存歷史數(shù)據(jù)時,只在有必要的時刻才保存信息;記 錄方式過濾的主要參數(shù)是來源于工程組態(tài)時對記錄點的配置,由工程人員根據(jù)實際記錄點 的物理意義、信號特性等信息,設(shè)置周期記錄方式的k值,或者死區(qū)記錄方式的△值;初級壓縮中的所有參數(shù)是對用戶完全開放的;對于所述k值,對于每個記錄點,實際的記錄周期應(yīng)該設(shè)置為最小記錄周期的整數(shù)倍, 即Ti = k · T,k = 1,2,K,k值由用戶在工程組態(tài)時配置;對于所述△值,設(shè)ys為某記錄點最近一次保存的數(shù)據(jù)值,該記錄點待壓縮的數(shù)據(jù)序 列為y2,κ, yn_i,yn,定義一個精度值Δ,依次對序列中的值yi做如下比較Syi滿足 Yi-Ys I彡Δ,則將yi保存,并記錄ys = Yi ;否則過濾掉yi值不予保存。
6.根據(jù)權(quán)利要求2所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述核心壓 縮包括時間戳壓縮,和針對不同數(shù)據(jù)類型的開關(guān)量壓縮、整型量壓縮和模擬量壓縮;1)時間戳壓縮對于同一個記錄點,每次對二級緩存中的一組歷史數(shù)據(jù)壓縮時,完整地記錄該組數(shù)據(jù) 的起始時間戳Ts,對于其他數(shù)據(jù)的時間戳Ti,則使用“周期跨度”來表示,表達形式為Ti = Ts+iXT式中i為一個0到255的整數(shù),表示Ti相對于起始時間Ts的“周期跨度”,T為該點的記 錄周期;由于記錄周期T另外保存在配置文件中,一個時間戳實際上存儲的信息僅為一個 周期跨度i,占用1個字節(jié);同時,因為采用了這種時間戳的存儲方式,在內(nèi)存二級緩存中, 將單個記錄點的數(shù)據(jù)緩存量限制為255,也就是一個字節(jié)能夠表示的最大時間跨度;2)開關(guān)量壓縮開關(guān)量進行數(shù)據(jù)量過濾時,采用了變化壓縮算方法,提取時間點中的關(guān)鍵數(shù)據(jù)點保存;3)整型量壓縮對于整型量的壓縮,采用變化壓縮算法,只保存關(guān)鍵數(shù)據(jù)點;4)模擬量壓縮對模擬量的數(shù)據(jù)量過濾,提出了一種的自控精度SDT算法;自控精度SDT算法如下設(shè)ΔΕ為SDT算法的壓縮精度參數(shù),其壓縮過程為起點、為最近一次存儲的點,以距 離t(l為ΔΕ的上下兩點作為支點,建立兩扇虛擬的門,只有一個數(shù)據(jù)時門閉合;隨著數(shù)據(jù)點 的增加,門會旋轉(zhuǎn)著打開,門的寬度可延伸,一旦打開就不能再閉合;只要兩扇門的內(nèi)角和 小于180°即兩扇門未平行,旋轉(zhuǎn)操作就可以繼續(xù);當(dāng)兩扇門的內(nèi)角和大于等于180°,就 停止操作,存儲前一數(shù)據(jù)點,并由該點開始新一段壓縮;數(shù)據(jù)壓縮過程中,計算出實際壓縮性能與期望性能之間的偏差,根據(jù)偏差大小調(diào)整壓 縮精度ΔΕ,并作為下一組數(shù)據(jù)的壓縮精度,使得實際性能指標(biāo)不斷地逼近期望值。
7.根據(jù)權(quán)利要求1所述的智能樓宇中海量能耗信息的壓縮方法,其特征是所述步驟3) 中,對數(shù)據(jù)文件的定期整理壓縮是指定期整理歷史數(shù)據(jù)壓縮區(qū),按照組態(tài)時的配置對歷史 數(shù)據(jù)文件進行壓縮備份。
全文摘要
一種智能樓宇中海量能耗信息的壓縮方法,步驟如下1)先對樓宇中個監(jiān)測端的數(shù)據(jù)進行采集,對于采集得到的數(shù)據(jù)的記錄點每條記錄為一個三元組(tagid,time,data);2)當(dāng)某記錄點的時態(tài)屬性值發(fā)生改變時,對應(yīng)的新數(shù)據(jù)存入一級緩存中,然后直接返回下一個任務(wù),這些新數(shù)據(jù)由后臺數(shù)據(jù)存儲線程存入文件;3)設(shè)立二級緩存;4)設(shè)置歷史數(shù)據(jù)壓縮區(qū),并在該壓縮區(qū)中對緩存區(qū)中的數(shù)據(jù)進行壓縮后再將其轉(zhuǎn)存到磁盤文件;5)采用文件隊列的形式來組織數(shù)據(jù)文件,當(dāng)一個文件存滿后,才啟用文件隊列中下一個文件;6)當(dāng)壓縮完成后,把壓縮后的數(shù)據(jù)存入存儲器中,供所需用戶端調(diào)用。
文檔編號H03M7/30GK102006081SQ201010567749
公開日2011年4月6日 申請日期2010年12月1日 優(yōu)先權(quán)日2010年12月1日
發(fā)明者張廣明, 徐楠, 李為相, 路宏偉 申請人:南京工業(yè)大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
恭城| 咸阳市| 蒲城县| 克东县| 长岭县| 拉孜县| 新泰市| 连城县| 双牌县| 台中县| 扎鲁特旗| 永年县| 木兰县| 南宁市| 白玉县| 龙游县| 英吉沙县| 神农架林区| 十堰市| 霸州市| 蒲江县| 都安| 郑州市| 突泉县| 赣州市| 五莲县| 南京市| 平邑县| 梁山县| 鸡泽县| 八宿县| 长泰县| 册亨县| 绥芬河市| 湘阴县| 阿巴嘎旗| 南岸区| 定安县| 四会市| 讷河市| 井冈山市|