因特網和智能建筑
摘要:本文討論了因特網和智能建筑的一些技術, 提出了一個基于因特網的樓宇自動化系統(BAS)的一個框架,使得能通過因特網對樓宇設備進行遠程監控。
前言
智能建筑的概念,在20世紀80年代誕生于美國。按照IBI(Intelligent Building Institute)機構的定義,智能建筑是通過優化四個基本元素:結構、系統、服務和管理來提供有效和舒適的環境。智能建筑幫助業主和用戶達到在費用、舒適度、便利、安全等方面的目標。第一幢智能大廈于1984年在美國哈特福德(Hartford)市建成,我國于90年代才起步,但迅猛的發展勢頭令世人矚目。智能建筑是信息時代的必然產物,其智能化程度隨科學技術的發展而逐步提高。
智能建筑主要依賴于集成建筑系統和建筑設備,智能化系統的功能與系統集成度存在著密切的相關性。目前,無論是大廈內的控制系統,還是信息系統,都已是網絡化的,集成應用系統的開發也不再面向過程,而是面向數據。隨著信息系統以需求為中心及IOD(Information On Demand)概念的出現,智能大廈已從集成功能發展到集成系統和網絡,從基于單機應用發展到基于網絡的協同應用,特別是基于Internet/Intranet網絡集成的應用。從信息交互上來看,已經從簡單的狀態信息組合和基于監控的處理,發展到基于內容的處理和融合,以及基于虛擬現實與多媒體技術的人機接口。
因特網的迅速發展及在樓宇自動化系統上的應用,使得物業管理人員足不出戶就可以對整個建筑完成監視、實時控制和適當的維護。目前,基于Internet/Intranet網絡的Web技術可以在世界范圍內提供信息的采集和綜合、分析和處理、交互和共享。 通過因特網,世界上任一處的授權用戶可以獲得所請求的數據,即使在千里之外也可以監控整個樓宇自動化系統。本文提出了基于因特網的BAS系統的一個框架,使得能通過因特網對樓宇設備進行遠程監控。
1 因特網的數據庫訪問技術
因特網技術與數據庫技術相結合的Web數據庫的應用,實現了信息從靜態發布向動態發布的轉變,而其中遠程數據服務是核心。
目前比較流行的Browse/Server模型是采用三層模式結構:表示層(Browser),提供可視界面,用戶通過可視界面觀察信息和數據,并向中間層發出服務請求;中間層(Web Server),實現正式的進程和邏輯規則,響應用戶服務請求,是用戶服務和數據服務層的邏輯橋梁;數據庫服務層(DB Server),實現所有的典型數據處理活動,包括數據的獲取、修改、更新及相關服務。 Browser端一般沒有應用程序,借助于Java applet、ActiveX、JavaScript 、VBScript等技術可以處理一些簡單的客戶端處理邏輯,顯示用戶界面和Web Server端的運行結果。中間層負責接受遠程或本地的數據查詢請求,然后運行服務器腳本,借助于中間部件把數據請求通過數據庫驅動程序發送到DB Server上以獲取相關數據,再把結果數據轉化成HTML及各種腳本傳回客戶的Browse。DB Server端負責管理數據庫,處理數據更新及完成查詢要求、運行存儲過程,可以是集中式的也可以是分布式的。在三層結構中,數據計算與數據處理集中在中間層,即功能層。由于中間層的服務器的性能容易提升,所以在Internet下的三層結構可以滿足用戶的需求。
瀏覽器對數據庫的訪問如圖一所示,由用戶向Web服務器發出請求,Web服務器端遠程數據服務組件處理該請求并將該請求發向DBMS(數據庫管理系統),它響應該請求并發回數據。客戶方的軟件在功能上最為簡單,服務程序通過標準的HTML、JavaScript形成用戶接口。Web服務器實現客戶方與服務器之間的所有交互操作,組件被用于提高處理的效率,服務器利用CGI(公共網關接口 Common Gateway Interface)、ISAPI (Internet Server Application Program Interface)或JAVA語言來生成基于數據信息的HTML文件。
為增強HTML語言實現的界面,還可通過ActiveX組件、JAVA組件。Browser不需要任何數據庫驅動程序,但是需要下載這些組件,以使客戶端的功能趨于完善。Web服務器可以通過不同的方式訪問數據庫,如CGI、ISAPI、IDC、ASP或JAVA。
在Web中與數據庫接口的技術有CGI、ISAPI、JDBC、ADO等幾種流行的方式。在CGI上編程為請求客戶機瀏覽器、網關程序、HTTP服務器提供了標準對話及處理機制。CGI程序通常是用源程序語言如Practical Extraction和PERL編寫的。當在網絡服務器上調用PERL源程序時,網絡服務器把它當作獨立的可執行文件。正因為如此,每一例CGI應用都會創建一個新的進程,而在服務器上創建新進程是一項非常昂貴的資源任務,會引起嚴重的資源流失和操作問題。另外,CGI應用不能通過應用分享信息,不能與其他的實例化CGI程序的其他記憶空間動態分享信息。 ISAPI的工作原理和CGI大體上是相同的,工作流程有一些不同。
ISAPI 應用的DLL 不僅可以象CGI 程序一樣被用戶請求激活,還可以被系統預先激活來監視用戶輸入;對于被用戶激活的DLL,在處理完一個用戶請求后不會馬上消失,而是繼續駐留在內存中等待處理別的用戶輸入,直到過了一段時間后一直沒有用戶輸入才停止。
Java/JDBC技術是SUN公司設計的Java語言的數據庫訪問API。JDBC是第一個支持Java語言的標準的數據庫API,它使得Java程序與數據庫服務器的連接更加方便。在功能方面JDBC與ODBC相同,它給程序員提供了統一的數據庫訪問接口。用戶通過瀏覽器從Web服務器上下載含有JavaApplet的HTML頁面。如果HTML頁面中的JavaApplet調用了JDBC,則瀏覽器運行的JavaApplet將直接與指定的數據庫建立連接。JDBC是JAVA在Web環境下與數據庫接口的代表性技術,可用來訪問關系型數據庫。
ADO實際上是一種基于OLE DB標準的對象模型。在ADO中不再象DAO或RDO那樣強調對象的繼承,它不再需要通過繼承去創建一個對象。相對于訪問數據庫的CGI程序而言,它是多線程的,在出現大量并發請求時,也同樣可以保持服務器的運行效率,并且通過連接池(Connection Pool)技術以及對數據庫連接資源的完全控制,提供與遠程數據庫的高效連接與訪問,可以開發高效率、高可靠性的數據庫應用程序。
2 樓宇設備的遠程監控
基于因特網的樓宇設備遠程監控結構如圖二所示,這個結構是基于NT的平臺上。對于市場上的BA系統,如江森和霍尼維爾等,他們系統內置有專用的數據庫,并提供有接口,可以轉化為標準的數據庫,通過前面提到的方法,用戶可以從遠程通過調用數據庫來了解整個BA系統的情況。如果他想獲得BA系統的實時狀況和實時控制BA系統,可以直接通過相應的CGI程序監控BA系統(當然他須要相應的權限,還有重要的設備如電梯等不能通過遠程控制)。
通過這樣的結構,授權的用戶可以在遠程獲得建筑設備每一相關數據,除了數據監測和報警功能之外,還有比如數據記錄、趨向預測、基本維護等功能。現代的BAS系統包括數以千計的測控點,所以僅是關鍵數據才應該在遠程使用者間傳輸。 進行遠程監控的時候,必須充分考慮到信息安全性。目前的解決方法是:SSL(安全套接層)和HTTPS等。SSL協議是用來加密Web瀏覽器和Internet之間信息的。此協議允許客戶/服務器應用程序之間的通信不被偷聽、篡改和偽造。SSL是由Netscape Communications發展起來的,它基于由RSA數據安全發展起來的公開密鑰技術。它被Internet Engineering Task Force評價為可互操作的、開放式安全標準,SSL加密整個通信通道。而HTTPS則分別加密每條消息。HTTPS允許用戶在每條消息上產生數字簽名(不只是認證協議作用期間的特定消息)。
3 結語
現代的樓宇自動化系統應基于Internet來實現信息交互、綜合與共享,實現統一的人機界面和跨平臺的數據庫訪問,真正做到局域和遠程信息的實時監控,數據資源的綜合共享,以及全局事件快速的處理和一體化的科學管理。一旦將傳統的BAS系統延伸到因特網上,建筑管理人員即便是在千里之外也可以完成他的職責。可以說因特網與智能建筑是分不開的,通過因特網,不僅可以完成監控職責,而且還有很多便利,比如樓宇設備廠家可以通過因特網持續了解自己設備的運轉情況,當設備運行在非正常狀態時,廠家可以立即采取措施避免事故發生,當然可以減少運行管理費用。可以說,基于因特網的BAS技術代表著樓宇自動化的發展方向。
文章版權歸西部工控xbgk所有,未經許可不得轉載。