基于RIA和軟PLC的現場總線監控系統的設計
2.OLE(objeetlinkingandembedding,對象鏈接和嵌人技術)。定義和實現了一種允許應用程序作為軟件“對象”(數據集合和操作數據的函數)彼此進行“連接”的機制,也是由微軟公司制定的在應用程序之間傳輸和共享信息的一組綜合標準。
3.ActiveX。是一些以D幾(動態鏈接庫)為主要表現形式的組件或文檔,使用時以引用方式插人應用程序。ActiveX組件的應用技術基礎是組件對象模型(COM)。
4.TwinCAT軟件。在數據交換時提供了一個基于AetiveX技術的AdsOex。Oex控件,借助于該控件,TwinCAT可方便快捷地實現與VB、C#或Delphi之間的數據交換。軟PLC中對應實際FO的變量常采用變量數組進行定義,下面的代碼通過Adsocx聲明了變量數組ErmrRetl[20]。

2.3 遠程I/O端子
遠程FO端子是分布于現場總線末端用來連接控制現場各種傳感器、操作終端和控制器的端子,用于收集現場監控信號。其物理鏈路是:現場設備的各種I/0信號-總線端子-現場總線耦合器-計算機中的現場總線通信卡-PC機-軟PLC。對于不同的控制和監控對象(如開關信號、模擬信號、轉速信號等),可以通過更換不同類型的I/O端子來實現。如需采用不同的總線協議,如profibus、InterbuS、CAN、ControlNET等,只需更換該物理鏈路中的總線通信卡和現場總線藕合器,同時對總線拓撲作相應調整即可"本系統中的TwinCAT軟件PLC支持IEC61158標準中包含的主要總線協議,無需針對不同總線協議作特別調整。
3 軟件系統的實現
3.1 RIA技術
與基于文本的傳統Web頁面相比,在基于RIA的Web應用中,由于數據能夠被異步緩存在客戶端,故可實現接口更健壯、反應更靈敏、響應速度更快并具有媲美桌面系統界面功能的Web應用。
RIA是基于XML、腳本語言和WebServiee的。對開發者而言,應用RIA技術有著多種途徑:基于Flash的Flex、基于。NET技術的SilverUght及基于Java技術的JavaFX等。相比較而言,Flash的強大影響使得Flex技術成為廣受青睞的解決方案,Flex編程模型、Flash等各個產品也構成了完整的RIA開發平臺。對用戶而言,使用Flex與使用Flash一樣,無系統平臺和瀏覽器兼容性問題,只需在客戶端運行環境中安裝有FlashPlayer就可以了。
由于RIA的應用模型是多層架構的,與此對應,本系統的結構被劃分成明顯的功能單元和多層邏輯結構:客戶層、表示層、業務邏輯層和資源層(見圖4)。這種多層架構可以降低系統各層之間的藕合度,使得客戶端與數據庫隔離,這樣既可有效地保證系統的安全可靠,又使系統具有較好的可擴展性與可維護性。

圖4系統采用的多層結構
3.2 多層邏輯結構
1.客戶層。由基于RIA的Web應用來實現。使用瀏覽器,系統可以顯示所有的動態監控數據和完成控制指令設置等操作。基于RIA的Web應用采用Flex的開發語言ActionScriPt3。0和編譯器,使用時Flex會在weh服務器中生成和發布swf文件,并在客戶端Web瀏覽器訪問服務器時,由客戶端的FlashPlayer下載和運行。
2.表示層。Flex本身不能直接與數據庫通信,系統的表示層是用ASP。NET來完成的,當用戶需要進行數據交換時,AsP。NET服務器負責與數據庫的通信(由ASP。NET經由中間層提供的ServieeInterface接口進行訪問)。Flex本身可以通過多種方式和Socket進行數據交換,如WebService、HTTPSerVice、RemoteObject等。本系統采用了WebService方式。下面為使用webservice進行數據交互通信的一個簡單示例。


評論