曾紅彪 陳錫文 劉靜文 左輝
摘 ? 要:隨著信息化技術在管理中的深入應用,智慧校園是否擁有一套智能樓宇自動化控制系統(tǒng)成為衡量校園管理優(yōu)劣的又一個標準。文章應用OPC技術實現(xiàn)智慧校園樓宇控制系統(tǒng)的信息集成,滿足智慧校園樓宇的本地監(jiān)控和Internet遠程監(jiān)控,構筑云控制智慧校園樓宇管理平臺,通過實際應用證明了文章所設計的OPC方法開發(fā)的智能樓宇服務器體系是可行的。
關鍵詞:智慧校園;智能樓宇;自動化控制系統(tǒng);遠程監(jiān)控;開放平臺通信
智慧校園樓宇控制系統(tǒng)是由計算機網絡將分布在被監(jiān)控區(qū)域的智能節(jié)點連接起來的智能系統(tǒng),本文根據(jù)分布控制理論設計智能控制結構,通過Lon Works,CAN和RS485總線實現(xiàn)開放平臺通信(Open Platform Communications,OPC)智能樓宇服務。
使用OPC技術解決信息管理應用與現(xiàn)場過程設備之間的信息交換問題,通過相應的OPC控制網絡服務器實現(xiàn)對底層控制設備之間的數(shù)據(jù)采集,信息管理層軟件只需支持OPC技術即可以為客戶端提供服務,減少客戶端對軟件程序安裝與配置的需求,簡化交互過程。
1 ? ?基于OPC技術的智能樓宇控制系統(tǒng)設計
1.1 ?系統(tǒng)設計方法分析
OPC服務器直接開發(fā)方法屬于源代碼開發(fā)級,包括OPC服務器的全部代碼,使用的開發(fā)平臺效率高,比如可以采用Java++或者Visual C++6.0實現(xiàn)。
快速開發(fā)方式是軟件開發(fā)商把半成品以動態(tài)鏈接庫的形式交付給用戶,用戶按照動態(tài)鏈接庫的接口完成OPC服務器程序的開發(fā)。該方法相對簡單,設計者可以不用完全了解OPC軟件對象的實現(xiàn)細節(jié),該方法被大多數(shù)用戶所采納。
1.2 ?設計思想
本文設計的校園樓宇控制系統(tǒng)采用OPC技術實現(xiàn)網絡控制服務,設計不同的OPC服務體系,并且不斷優(yōu)化已經完成的服務器程序,保證客戶端與服務器之間的最簡單互聯(lián),最終實現(xiàn)整個系統(tǒng)的實時聯(lián)動。
2 ? ?OPC服務器系統(tǒng)設計
2.1 ?體系結構設計
基于OPC技術的服務器由接口程序、硬件設備和軟件系統(tǒng)組成,使用TLSrvRdk.dll配置OPC技術的服務器,實現(xiàn)延遲鎖相環(huán)(Delay-Locked Loop,DLL)封裝COM,OPC服務器,特定的硬件針對數(shù)據(jù)封裝和通信接口編寫通信協(xié)議,利于軟硬件協(xié)調程序?;贠PC技術服務器體系結構如圖1所示[1]。
2.2 ?基于OPC技術服務器的算法設計
OPC服務器的應用程序編程接口(Application Programming Interface,API)函數(shù)源于OPC動態(tài)庫索制定的數(shù)據(jù),客戶端可以通過API函數(shù)實現(xiàn)添加(注冊)、刪除(注銷)用戶,實現(xiàn)硬件接口控制和讀寫操作,將客戶數(shù)據(jù)通過OPC接口傳送到服務器,流程如圖2所示。
3 ? ?基于OPC技術的智能樓宇服務器實現(xiàn)
本文通過TLSVRRDK動態(tài)快速設計,使用Visual 6.0++開發(fā)服務程序,TLSVRRDK動態(tài)鏈接庫和Visual C++6.0集成COM規(guī)范和OPC應用,實現(xiàn)OPC函數(shù)接口標準化。在VC和VB中調用動態(tài)連接庫(Dynamic Link Library,DLL)相對方便,程序模塊中使用API函數(shù)可以直接聲明并使用,其過程如圖3所示[2]。
3.1 ?服務器注冊與注銷
3.1.1 ?注冊
(1)啟動NETCOM-1025E或者NETCOM-100E調用在線注冊程序。(2)開啟新節(jié)點注冊,進入注冊頁面,判斷注冊信息是否合法。(3)如果合法,開始注冊。(4)輸入用戶的詳細信息,完成注冊,并反饋“注冊成功”,置判斷函數(shù)IDR-Boolean=1,否則反饋“注冊失敗”,置IDR-Boolean=0。(5)更新用戶(節(jié)點)信息,完成注冊[3]。
3.1.2 ?注銷
(1)調用在線注銷程序進入在線注銷頁面。(2)開啟節(jié)點狀態(tài)判斷,如果登錄用戶級別高于刪除用戶級別,并且登錄用戶具有注銷權利。(3)如果前面兩個條件滿足,開始注銷。(4)確認注銷用戶的詳細信息,完成注銷,并反饋“注銷成功”,置判斷函數(shù)IDD-Boolean=1,否則反饋“注銷失敗”,置IDD-Boolean=0。(5)更新用戶(節(jié)點)信息。
3.2 ?OPC服務器程序初始化
若DLL存在,調用TL Init OPC Server函數(shù),DLL將完成OPC服務器的COM接口初始化,創(chuàng)建OPC樓宇服務器的接口對象,方便OPC客戶端與服務器建立連接,設置OPC服務器連接刷新率為500 ms。
(1)OPC服務器刷新,判斷是否有新節(jié)點,確定新的端口設置,在服務器進行OPC節(jié)點操作,刷新節(jié)點,通過動態(tài)連接庫(DLL Database)的刷新函數(shù)更新服務器內部節(jié)點。
(2)更新目標退出服務器程序,判斷是否還有節(jié)點和服務器相連,如果有則釋放連接端口,退出服務器程序[4]。
4 ? ?基于OPC智能樓宇服務器程序驗證
前面已經對基于OPC技術的智能樓宇服務器接口程序設計與實現(xiàn)作了詳細的介紹,下面將對OPC服務器程序編寫進行必要的測試,由此驗證本文所設計的OPC服務器是否可靠。OPC服務器接口程序測試過程包括系統(tǒng)注冊(插入節(jié)點)、注銷(刪除節(jié)點)、數(shù)據(jù)讀取、組對象和數(shù)據(jù)的瀏覽,在服務器和節(jié)點之間建立遠程訪問。
4.1 ?串口配置
(1)啟用點NETCOM 1025E服務器接口程序進入串口OPC Server主程序界面。