實時數據處理

實時數據處理

實時數據處理是指計算機對現場數據在其發生的實際時間內進行收集和處理的過程。在實時數據處理的過程中,實時資料庫首先要提供高速的數據採集和數據處理,為了適應不同的集成系統,實時資料庫要提供高精度的存儲格式:對實數型數據點採用雙精度表示,對於整數型數據點採用四位元組長整型,對時間的存儲也必須表示到毫秒一級,時間戳的存儲要採用格林威治標準時間以避免時區和夏令時所帶來的問題。

基本介紹

實時數據是監測系統中最重要的組成,實時數據是一種帶有時態性的數據,與普通的靜止數據最大的區別在於實時數據帶有嚴格的時間限制,一旦處於有效時間之外,數據將變得無效。但隨著時間的推移,實時數據會變成歷史數據並存儲下來以備以後使用。

如果需要實時數據處理,解碼器必須能夠與相關的數據速率相適應。這可以用延時作為代價來實現,例如,當對一個序列解碼時,下一個序列在緩衝。在某些情況下,解碼延時會變得很明顯,尤其是如果它是可變的話。前向糾錯需要解碼延時,大多數情況下,延時取決於所發生的具體錯誤。不過,通常會有一個確定的最大延時,這個值是不能超出的。對解碼後的信息進行緩衝,直到最大的延時過期,這種方法可以產生平緩的信息流到達終端。決定延時的兩個主要因素是數據速率和碼長度。資訊理論告訴我們,長碼較為理想,但是對於許多套用來說.長的延時並不理想。所以最大的可接受的延時可能對能夠使用的碼長度有所限制。

如果不能確定最大的解碼延時,那么解碼後信息將會經歷可變的延時,這會對實時信息造成嚴重的破壞。展示可變延時的一個主要的差錯控制策略是ARQ,因為我們不能保證哪次重傳一定會成功。這些問題可以通過使用合適的ARQ/FEc的混合方案來將破壞降至最低。

一致性

一般來說,數據對象可以理解為三個分量(X,Y,Z)。其中X為當前的數據對象值,Y為數據對象的更新時間間隔,Z為上層實體對象狀態變化的時間間隔。實時數據對象具有三個不同的層級以滿足數據的一致性。

內部層級

在系統內部,數據對象與靜態數據在關係資料庫中的存儲模式類似。

外部層級

在系統外部,數據對象對應的上層實體狀態變化的時間間隔是由系統的當前時間與數據對象的更新時間間隔共同決定的。

相互關係層級

在系統相互關係層級上,由於內部數據對象更新的時間間隔與外部實體對象是相同的,且數據對象被導出的周期也是相同的,因此內部數據對象與外部數據對象之間嚴格滿足一一映射機制。

採集

直接數據採集

直接數據採集是直接從分散式控制系統中採集到的實時數據。在這種模式下,數據採集計算機大多數放在辦公室或是信息管理部門等非採集現場。計算機中內嵌有採集程式,通過相連的計算機網路與分散式控制系統建立連線並接收數據。

目前,這些分散式控制系統都有一種或是多種的標準數據接口,如ODBC(開放式資料庫互連)、DDE(動態數據交換)、OLE(對象連結與嵌入)等,使用標準的SQL語言或高級語言進行簡單的編程,即可採集所需的實時數據。若在數據採集計算機中安裝有實時資料庫系統,則可以通過簡單的配置,直接將數據採集到實時資料庫中。

這種數據採集模式的特點主要有:

(1)通用性好。採用標準數據接口,常見的作業系統和開發工具都支持。

(2)實時性好。直接從分散式控制系統採集數據,速度快,延遲少。

(3)易於實現。只需簡單的編程甚至完全不需要編程就可以實現,使用簡單。

(4)安全性差。上層計算機網路直接與底層分散式控制系統網路連線,勢必產生一定的安全隱患。

(5)靈活處理性差。直接數據採集,對數據格式、數據的有效性等基本上不作處理,不能直接用於一些基於這些數據的套用軟體。

間接數據採集

間接數據採集是指數據採集計算機不直接與現場分散式控制系統通信,而是在分散式控制系統之上放置一台計算機(上位機),上位機通過分散式控制系統提供的接口採集實時數據,現場之外的數據採集計算機與上位機通信,取得所需要的數據。在這種模式中,實際上存在兩個數據採集過程,如下所示:
(1)上位機與分散式控制系統之間。

上位機通過網卡掛在分散式控制系統的控制格線上,與現場分散式控制系統的數據接口通信。接口分為硬體接口和軟體接口兩種情況。

硬體接口是指通過專門的硬體實現系統連線和數據採集。在分散式控制系統中提供一塊專用卡件,通過適當的網路參數設定(IP位址、路由器等),使之成為分散式控制系統網路中的一個節點,通過特定的連線埠對分散式控制系統中的資料庫進行訪問和修改。在實際套用中,一般需在上位機上編製程序,使用TCP/IP協定,通過特定連線埠向分散式控制系統傳送特定文本信息,硬體接口設備就會以文本形式向上位機返回相應的數據、狀態等信息。

軟體接口是指通過在上位機中運行分散式控制系統提供的專用軟體來實現與分散式控制系統的數據通信,系統提供的數據採集方式基本以DDE、OLE、ODBC等為主。很明顯,這種軟接口方式與上面所說的直接數據採集方式基本相同,不同的是上位機同分散式控制系統一同放在現場,其所有的數據採集軟體是分散式控制系統提供的。

(2)上位機與數據採集計算機之間。

無論是硬體接口還是軟體接口,上位機對所採集上來的數據一般有兩種處理方式,一是數據以特定的格式(資料庫、電子表格或文本檔案等)放在本地硬碟中,由遠程的數據採集計算機定時將數據取走;另一種是上位機定時將採集的數據“主動”傳送到數據採集計算機或其它指定的位置上。

不管是哪種方式,一般都需要編寫相應的程式放在上位機或數據採集計算機中,以實現定時“取數據”或“送數據”的操作。這裡將涉及操作“引發”問題,常用的解決方法有計時器方式,即在程式中設定一個計時器,根據實際需要設定適當的時間間隔,實時數據的定時“發”或“送”;另一種是“觸發器”方式,即將數據的更新作為觸發器,一旦上位機中的數據更新,立即引發程式將最新的數據“發”或“送”到數據採集計算機中。

這種間接數據採集的特點主要有:安全性高、靈活性好、接口統一、延遲較大。

融合

數據融合是一個多級、多層面的數據處理過程,主要實現對來自多個信息源的數據進行自動檢測、關聯、相關、估計及組合等處理。數據融合將不同感測器接收的信息經過融合得到對目標狀態或目標特徵的判定。在數據融合中,常常會用到一些數據融合的算法,但是每個算法都會存在或多或少的缺陷,因此需要不斷地探索新的算法。

帶反饋的實時數據融合算法

該算法主要解決目前在融合過程中的實時性要求。該算法主要強調對於不同類別的數據需要進行實時的自適應分級,將緊急數據迅速融合併傳輸給用戶,做到延時和融合效率的折中。

加權濾波實時數據融合算法

該算法首先利用數據間支持度函式矩陣,進行多組數據的加權融合,之後將融合結果替代濾波值進行卡爾曼濾波,從而實現多組測量數據的實時動態融合數據。該算法使用了數據間支持度矩陣算法和卡爾曼濾波的優點,在不需要數據先驗知識的同時,又達到了實時性的數據融合的要求。

數據融合系統的核心部分就是數據融合算法,通過算法完成對數據流的周期性更新,不斷更新的數據流不但一直為樣本注入新鮮血液,同時由於數據流的隨機性,也同樣會保持樣本權值的多樣性。因此,需要對現有的算法去粗取精,研究出更加實用、更加有效的精準算法。相信隨著技術的不斷發展,這項重要技術會越來越成熟。

存儲

數據經過採集、處理後需要對其進行存儲以方便人們對其進行查詢、分析等操作。在選擇存儲器件時,需要考慮讀取的方便性、快速性以及實時性。現今主要使用NAND FLASH存儲,這種結構最大的優點在於容量可以做得很大,滿足實時性的要求。

現今在設計存儲時,主要採用雙存儲設計,即使用兩片FLASH晶片存儲採集數據。該器件內部“寫控制器”具有自動編程和擦除功能,內部包含一個頁的數據存儲器,讀寫的過程中先將存儲單元數據或外部數據快取到數據暫存器中,然後再將數據讀出或寫入存儲單元中。採用2片的設計,保證了系統的可靠性,即如果將其中一個FLASH出現問題,另一個FLASH可以正常運行,並且可以任意讀取任何一個存儲器的數據,提高了系統的靈活性,高速性。

相關詞條

熱門詞條

聯絡我們