【問題】能耗監測系統數據交換的設計?
【解答】在能耗監測系統中,數據測量儀表得到數字信號,通過數據采集器定時采集數據并發送到數據中心,應用軟件處理數據,上傳數據,整個過程都是數據交換和數據處理的過程。如何結合能耗監測系統的特點,將現有的成熟技術合理地用到能耗監測系統中,是數據交換設計的關鍵。數據交換主要包括數據發送、數據傳輸和數據解析,數據解析依賴數據發送時的數據定義。
1.數據采集過程
在能耗監測系統中數據要記錄到省市級信息中心的數據庫中需要包括以下幾個環節,傳感器測量數據,采集器獲取傳感器數據,采集器向省市級信息中心發送數據,省市級信息中心系統軟件接收并存儲數據。因此數據交換分為兩大部分,其一為數據傳感器和采集器的數據交換,其二為采集器和省市級數據中心系統平臺軟件的數據交換。采集器通過RS-485協議定時和傳感器通訊并采集數據,采集器向信息中心上傳數據。數據傳感器和采集器為現場有線連接,具有標準的協議,不用單獨設計,而采集器和信息中心數據交換必須經過INTERNET,在連接方式和數據表示法及其格式方面沒有統一標準,必須結合系統特點制定自己的數據表示法和數據傳輸格式。
2.能耗監測數據的表示方法
數據傳輸采用數據流方式發送和接收,當采集器與信息中心建立連接后,開始發送數據流,在數據流中包括了采集器獲取的各個傳感器的數據,因此數據流中必須能夠區分數據是哪個傳感器的數據,數據代表的物理意義(如空調用電、動力用電等)。能耗監測數據按照《國家機關辦公建筑和大型公共建筑能耗監測系統軟件開發指導說明書》定義數據代碼,明確真實數據和計算機表示數據的關系。定義將隨著能耗監測系統的不斷完善,進行補充和修改。在本軟件中嚴格執行開發指導說明書中的代碼定義,使得后面信息中心的數據解析變得很容易,為解析數據提供了開放的定義,也為數據采集器提供了開放的標準。
3.采用標準的傳輸數據格式
數據格式應獨立于軟件和硬件,避免對軟件和硬件的依賴,同時也減小了對軟件和硬件的限制,便于不同應用程序之間共享數據。本軟件采用XML格式傳送數據,主要考慮XML數據以純文本格式進行存儲,純文本數據在不同操作系統之間都是一樣的,不依賴于操作系統,同時XML有其獨立的語法定義,已成為一種標準,不用單獨制定格式定義規則,且通用性強,已開發出一些公開發表的成熟解析工具,減少了編寫程序的工作,程序穩定性也大大提高。從數據采集器到數據中轉站或信息中心,再上傳到住建部信息中心,各級均采用XML格式進行數據交換。
4.在數據接收和數據記錄之間采用中間件技術
系統軟件接收采集器發送的數據時間短,而接收到的數據需要記錄原始數據,并在進行拆分運算后再記錄到各自的數據庫中,需要時間遠大于接收時間,因此接收的瓶頸發生在接收數據后的處理,當有大量的被監測建筑物時,可能造成數據堵塞或丟失數據,因此必須解決傳輸數據的速度問題。為此將數據接收存儲程序分成兩部分,第一部分直接與數據采集器直接進行數據交換,及時獲取數據,該部分程序功能簡單,只起中間傳遞作用,維護量很小,第二部分保存數據到數據庫并進行數據拆分,中間采用具有郵局功能的中間件技術(第三方軟件),將兩部分隔離,第一部分軟件將得到的數據直接發給中間件,中間件可保證將收到的數據準確送達第二部分,這樣較好地解決了數據接收速度和準確到達目的地的問題。第二部分程序將獲得的數據按照能耗監測系統軟件開發指導說明書中的要求進行存儲拆分,建立各種數據庫,供數據分析展示模塊使用。
5.根據軟件模塊功能確定編程語言
數據接收部分是數據交換的核心,在選擇語言時,需要考慮數據傳輸格式和界面設計,該部分沒有復雜界面,傳輸數據格式在上述3.2和3.3中已經明確,采用XML格式進行數據傳輸,所以采用JAVA語言作為數據交換部分的編程語言,它具有較強的處理XML格式數據的功能,同時有很強的跨平臺可移植性,數據無需轉換,所以便于操作系統升級;數據分析展示部分對界面要求高,屬于客戶服務器模式,采用。Net編程。
6.采用標準的協議與數據采集器進行數據通訊
目前,不同廠家的BAS系統之間很難進行數據交換,各自組成一個封閉的系統。原因是沒有開放的統一的數據傳輸標準。能耗監測系統是一個新的應用系統,而采集器必須與省市級平臺軟件進行數據交換。因此上游軟件開發商應考慮系統的開放性和兼容性,便于采集器生產商自行開發滿足系統軟件要求的數據發送程序,便于集成商集成系統。通過3.2和3.3建立的開放能耗監測系統數據通訊協議,數據采集器廠商可以方便地開發與系統軟件通訊的數據發送程序。
7.雙通道設計
監測系統和采集器一直處于連續運行狀態,當一些采集器參數需要更新或程序升級時,采用兩個連接的邏輯通道,可以在不影響正常使用情況下,保證信息中心與采集器的指令信息交換。
以上內容均根據實際工作中遇到的問題整理而成,供參考,如有問題請及時溝通、指正。