![]() |
學校地址:湖南省 長沙市 雨花區 車站南路紅花坡路口 |
![]() |
學校地址:湖南省 長沙市 雨花區 車站南路紅花坡路口 |
電力系統實時圖形系統的基于COM的設計與實現
戴賽1 李曉明1 陳少明2
(1.武漢大學,湖北武漢430072;2.孝南供電局,湖北孝感432000)
摘 要 針對電力系統中應用軟件圖形系統復用性不強的問題,提出了一種采用組件對象模型技術開發電力系統實時圖形系統的方法。該方法開發的實時圖形系統,可實現圖形的繪制、圖形編輯和圖形狀態的實時控制等,并可開放地為其它軟件提供服務。
關鍵詞 COM技術 電力系統 圖形生成
0 引 言
隨著電力系統信息化的不斷發展,在一個電力企業內部,往往同時存在著不同廠家開發的各種電力系統應用軟件,如SCADA系統、調度自動化系統、MIS系統、地理信息系統、操作票智能生成系統等。在這些應用軟件中,經常要有界面友好的圖形系統,它們是由不同的開發廠家分別獨立開發,雖然能滿足各自的要求,但不能做到很好的系統集成,往往存在著功能重復設計,即增加一個應用系統時,整個圖形系統又要重復設計,重復開發等問題,這樣極大地浪費了開發人員的時間,增加了企業的負擔。增強軟件復用性,提高軟件生產率是一個亟待解決的問題。
電力企業的應用軟件應按照系統開放的原則,遵循共同的標準,做到插入兼容性(Plug-Compatible),從而提高系統集成度。微軟公司推出的COM/DCOM標準為此提供了有效的工具。
組件對象模型(Component Object Model/Distribute COM即COM/DCOM)技術是繼模塊化、結構化,面向對象開發方法之后,發展起來的又一新的軟件開發方法。它主要思想是將一個對象的外觀(接口)同其工作方式(實現)分離開來〔1〕,這一封裝思想應用到二進制層次上,使得我們可以在COM架構下開發出各種各樣的功能專一的軟件“積木塊”,然后根據需要將其裝配起來構成復雜的應用系統, 大程度地實現了軟件的復用。
1 組件對象模型
1.1 COM標準
COM標準括規范和實現兩大部分。COM規范是一套為組件架構設置標準的文檔,它定義了組件與組件之間的通信機制,這些規范不依賴任何特定的語言和操作系統。COM實現部分是一個COM庫(COM Library)的API(ApplicationProgramming Interface),它為COM規范的具體實現提供核心服務。
1.2 COM工作原理
COM本質上是客戶機/服務器(C/S)模式。當客戶通過傳遞一個組件類的CLSID(ClassIdentifier)請求其服務時,Windows通過注冊表透明地查找到組件對象地址,然后創建該組件對象,并把客戶請求的接口指針回傳給客戶。在COM模型中,客戶請求服務時,只是通過GUID(GloballyUnique Identifier)獲取接口指針,從而調用其相應的成員函數。而COM對象對客戶而言是不可見的,客戶只是通過接口才感受到對象的存在。對客戶而言,接口便是一切。
COM接口規范規定,所有接口都必須直接或間接地從IUnknown接口繼承。IUnknown接口只有3個函數:QueryInterface()用于接口查詢,AddRef()和Release()用來維護對象的生存期管理。COM對象可支持多個接口。
C++通過實現繼承來支持重用,即一個類繼承其基類的代碼或實現,COM對象重用機制為接口繼承,它指的是一個類繼承其基類的類型或接口,實現方法有2種:容(containment)或聚合(aggregation)。容是指外部對象A作為內部對象B的客戶調用內部對象B的方法來實現自己的功能。
聚合是指外部對象A將內部對象B的接口暴露出來,就象它自己的接口一樣。
組件程序通常有2種實現形式:一種是動態鏈接庫,運行時客戶程序與組件程序運行在同進程地址空間,故也叫進程內組件;另一種形式是EXE文件,這種組件運行時,客戶程序和組件程序運行在不同的進程地址空間,故也叫進程外組件。
當跨越機器的邊界時,為適應分布式環境,微軟推出了DCOM,進一步提供位置透明性。
總的來說,COM的特點有:語言無關性。它采用的是一種二進制代碼級的標準,而非源代碼級的標準;進程透明性。客戶與服務器既可以在一個進程中,也可不在一個進程中;位置透明性。客戶與服務器既可以在1臺機器上,也可跨越網絡;版本兼容。組件可以在不妨礙已有客戶的情況下被升級。
1.3 COM組件開發
現在微軟公司在VisualC++中提供了2種方法來開發COM組件:MFC庫(MicrosoftFoundation Class Library)和ATL模板庫(ActiveTemplate Library)。MFC不僅可用于建立COM應用,而且是一套Windows平臺上各種應用開發的基本類庫。ATL主要側重于開發一些小巧、快捷的COM組件。
2 電力系統實時圖形系統設計方法
2.1 總體設計
文章致力于利用MFC庫開發一個可復用的電力系統實時的圖形系統,從而為眾多電力系統應用軟件提供開放的、統一的圖形用戶界面。系統的總體結構如圖1所示。
[1] [2] [3] 下一頁
湖南省陽光電子技術學校常年面向全國招生.安置就業。考試合格頒發全國通用權威證書:《中華人民共和國職業資格證》 、《電工證》 、《焊工證》 。采用我校多年來獨創的“模塊教學法”,理論與實踐相結合、原理+圖紙+機器三位一體的教學模式,半天理論,半天實踐,通俗易懂,確保無任何基礎者也能全面掌握維修技能、成為同行業中的佼佼者。工作(一期不會,免費學會為止)。