亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于組件化思想的測控軟件開發(fā)平臺設計與實現(xiàn)

        2013-09-25 14:13:06趙海源王麗芳蔣澤軍
        電子設計工程 2013年8期
        關鍵詞:開發(fā)人員測控視圖

        趙海源,王麗芳,蔣澤軍

        (西北工業(yè)大學 計算機學院,陜西 西安 710129)

        隨著計算機在各個領域的廣泛應用,種類繁多的控制設備和過程監(jiān)控裝置使得傳統(tǒng)的測控軟件已無法滿足用戶的各種需求。開發(fā)傳統(tǒng)的測控軟件時,當被控對象一旦有變動,就必須修改其控制系統(tǒng)的源程序,導致其開發(fā)周期長;已開發(fā)成功的測控軟件又由于每個控制項目的不同而使其重復使用率很低,導致它的價格非常昂貴;在修改測控軟件的源程序時,倘若原來的編程人員因工作變動而離去時,則必須同其他人員或新手進行源程序的修改,因而更是相當困難?;跇嫾1]技術的測控軟件開發(fā)平臺的出現(xiàn)為解決上述實際工程問題提供了一種嶄新的方法,因為它能夠很好地解決傳統(tǒng)測控軟件存在的種種問題,使用戶能根據(jù)自己的控制對象和控制目的的任意組態(tài)[2](Configuration),完成最終的自動化控制工程。具體地說,測控軟件開發(fā)平臺是為測控軟件開發(fā)、調(diào)試和運行提供的集成環(huán)境;利用該平臺可靈活配置硬件測試資源,以可視化的方式配置測試流程,并加載硬件接口的驅(qū)動程序從而自動生成測控軟件。

        1 基于組件化思想的測控軟件開發(fā)平臺概述

        隨著近幾年Internet的飛速發(fā)展,使軟件應用置身于更加廣闊的環(huán)境中,從而對應用軟件的跨語言、跨平臺和互操作性提出了更高的要求。在這種情況下,傳統(tǒng)的面向?qū)ο骩3]思想難以適應現(xiàn)代的分布式軟件應用[4],組件化思想應運而生。組件化思想使得設計人員在軟件設計過程中更傾向于將功能從主程序中剝離出來,封裝在獨立的模塊中。

        組件化設計的基本思想是將單獨的、龐大而復雜的應用程序劃分成多個模塊,但這里每一個模塊不再是一個簡單的代碼集,而是一個自給自足的組件,每個組件保持一定的功能獨立性,在協(xié)同工作時,通過相互之間的接口完成實際的任務;這些組件可以單獨開發(fā),單獨編譯,甚至單獨調(diào)試和測試,當所有的組件開發(fā)完成后,把它們組合在一起就得到了完整的應用系統(tǒng)。當系統(tǒng)的軟硬件環(huán)境發(fā)生變化或者用戶的需求有所更改時,并不需要對所有的組件進行修改,而只需對受影響的組件進行修改,然后重新組合得到新的升級軟件測控軟件開發(fā)平臺基于組件化思想,發(fā)布訂閱機制、虛擬共享內(nèi)存等技術,開發(fā)人員只需要關注測控邏輯的開發(fā),而不用過多地關注程序語言本身相關的知識和技術,即使是對程序設計了解較少的工程人員,也可以快速地將測控領域的知識和技術應用在測控軟件的開發(fā)中,并在短時間內(nèi)形成軟件產(chǎn)品。測控軟件通用開發(fā)平臺能通過可視化的流程設計,構建出與之相適應的測控軟件源碼、工程文件和安裝文件。基于組件化思想的“測控軟件通用開發(fā)平臺”是標準化和規(guī)?;耐ㄓ脺y控開發(fā)軟件,利用該平臺中的標準功能組件可以實現(xiàn)組件管理、測控軟件的組裝、雙視圖界面的效果模擬、硬件資源管理、二次開發(fā)(平臺的擴展、測控軟件的升級)、ActiveX和COM封裝與集成等功能。

        2 基于組件化思想的測控軟件開發(fā)平臺設計

        測控軟件通用開發(fā)平臺基于組件化設計思想,平臺具有通用性和擴展性。測控軟件通用開發(fā)平臺的框架主要實現(xiàn)測控軟件的開發(fā),以及平臺的管理功能。為了支持平臺的擴展性,實現(xiàn)了平臺的擴展機制,包括組件的擴展和組件的調(diào)試。測控軟件通用開發(fā)平臺的框架與擴展圖如圖1所示。

        圖1 開發(fā)平臺的框架與擴展Fig.1 Framework of the development platform and extend

        測控軟件通用開發(fā)平臺的任務是實現(xiàn)測控軟件的開發(fā),主要通過組態(tài)設計和系統(tǒng)發(fā)布功能完成。組態(tài)設計包含使用平臺拖放式組件在雙視圖界面中對測控軟件流程進行設計。系統(tǒng)發(fā)布通過所完成的組態(tài)設計,實現(xiàn)組件的順序組裝,生成VC工程并進行打包,系統(tǒng)發(fā)布預留了編輯腳本的接口,提供開發(fā)人員編輯腳本控制測控軟件的功能。

        測控軟件通用開發(fā)平臺的管理功能包含安全管理、日志管理、組件管理及資源管理。通過對平臺的管理為平臺對測控軟件開發(fā)提供支持。測控軟件通用開發(fā)平臺具有可擴展性,通過提供組件開發(fā)向?qū)У墓δ?,為平臺提供ActiveX組件和COM組件的擴展,將非平臺原有組件封裝成平臺自身的組件,并且擴展組件時,通過組件調(diào)試保證組件擴展的可用性。測控軟件通用開發(fā)平臺啟動平臺框架,動態(tài)加載軟件平臺下的所有組件。當測控軟件開發(fā)人員對平臺進行操作時,軟件平臺框架根據(jù)操作的信息實例化不同的組件對操作進行相應,其時序圖如圖2所示。

        圖2 時序圖Fig.2 Timing diagram

        3 主體框架的設計實現(xiàn)

        軟件平臺的框架是一個通用的可獨立運行的程序,定義了軟件平臺的接口規(guī)范,可自動加載符合軟件平臺接口規(guī)范的組件,是整個軟件平臺的基礎和主干,其主要作用有:

        1)負責啟動整個軟件平臺和注冊組件:軟件平臺啟動后初始化窗體界面和組件管理器(ComponenetManager),掃描組件目錄,完成組件的注冊,并保存組件信息;

        2)負責管理組件:完成組件接口的初始化,加載和卸載組件,并處理軟件平臺異常;

        3)負責向外界提供使用組件功能的界面(如菜單、工具欄等),通過規(guī)范接口調(diào)用工廠類組件實例化功能組件。工廠類組件是框架實例化功能組件的入口,為框架提供功能組件的相關信息,并根據(jù)需要實例化相應的功能組件。

        軟件平臺框架為組件的實現(xiàn)和擴展提供了一系列基礎接口,并制定組件的開發(fā)規(guī)范,簡化了后期組件的開發(fā)和擴展。軟件平臺框架和組件接口間的類關系如圖3所示。組件可分為顯示類組件和不可顯示類組件:不可顯示類組件主要包括管理和控制軟件平臺的組件;顯示類組件具有界面視圖,主要包括窗口管理類組件、雙視圖類組件、界面視圖類組件、組態(tài)視圖類組件。開發(fā)組件時,開發(fā)人員根據(jù)組件的特性,繼承相應的基礎接口。例如具有雙視圖的組件繼承Doubleview Component接口,具有界面視圖的組件繼承Face Plate Component接口,具有組態(tài)視圖的組件繼承Link View Component接口。開發(fā)人員無需關心平臺底層的特性,只需繼承相應接口類,結合組件的特定需求即可開發(fā)符合軟件平臺接口規(guī)范的組件。按照軟件平臺框架所定義的接口規(guī)范進行組件的開發(fā),封裝組件的功能,提高組件的開發(fā)效率。

        圖3 靜態(tài)類圖Fig.3 Static class diagram

        4 組件設計

        4.1 組件模型

        軟件平臺中的組件是針對測控領域開發(fā)的一系列相關功能的集合體,組件本身具有良好的擴展性和復用性。組件包含一個工廠[5]類組件以及一個或多個功能組件,通常被封裝在同一個動態(tài)鏈接庫中。軟件平臺啟動時自動掃描組件目錄,并將可用組件注冊到框架中。組件的工廠類組件為組件提供與框架交互的接口,是組件實例化的入口。組件的結構圖如4所示。

        圖4 組件結構圖Fig.4 Diagram of component structure

        基礎組件與功能組件的劃分:

        軟件平臺中的組件包括基礎組件和功能組件?;A組件在軟件平臺啟動時由框架自動加載,僅實例化一次,初始化軟件的界面和基本功能;基礎組件包括Editpanel組件、生成/打包組件、硬件管理組件、日志記錄組件。功能組件輔助軟件平臺實現(xiàn)開發(fā)測控軟件流程中所需的具體功能,軟件平臺不會自動加載功能組件,需開發(fā)人員在使用組件時可將其實例化,并可實例化多次;功能組件包括分

        級組件、調(diào)試組件、流程控制組件、分布式通信組件、算法組件、腳本組件、數(shù)據(jù)存儲組件、顯示組件、加密解密組件。

        功能組件是組件內(nèi)部實現(xiàn)的具有單一功能的程序,由工廠類組件接口實例化,并由軟件平臺框架調(diào)用。啟動軟件平臺后,自動掃描組件目錄,調(diào)用LoadPlugIn接口加載組件。組件中的工廠類組件實例化后,調(diào)用Register接口將功能組件注冊在組件注冊表中。

        4.2 組件通信機制

        軟件平臺中的組件間通信包括數(shù)據(jù)交換和消息[6]傳遞兩部分。

        1)數(shù)據(jù)交換

        組件間的數(shù)據(jù)交換采用端口機制實現(xiàn)。端口定義了數(shù)據(jù)流的信息,包括端口號、端口在組件圖示內(nèi)的位置、端口傳輸數(shù)據(jù)類型、端口輸入輸出類型、端口接收或發(fā)送的數(shù)據(jù)值。開發(fā)人員可通過擴展和自定義端口的數(shù)據(jù)類型完成批量數(shù)據(jù)的傳輸。軟件平臺使用強類型轉(zhuǎn)換機制,開發(fā)人員進行組態(tài)時,需保證接收端口的輸入數(shù)據(jù)類型與發(fā)送端口的輸出數(shù)據(jù)類型匹配,否則無法在端口間連線完成組件間通信。軟件平臺在組態(tài)設計階段完成端口匹配的工作,避免了開發(fā)人員因疏忽出現(xiàn)的錯誤,簡化了組態(tài)的設計和調(diào)試,提高了組態(tài)運行時的穩(wěn)定性。

        2)消息傳遞

        軟件平臺采用消息捕獲機制和發(fā)布-訂閱機制[7]共同完成組件間消息的傳遞。組件捕獲軟件平臺發(fā)布的所有消息,并對訂閱的消息做出相應處理,同時繼續(xù)向下分發(fā)其它消息。組件間采用notify接口與report接口共同實現(xiàn)消息的發(fā)布-訂閱機制,對發(fā)布訂閱機制的描述如圖5所示。軟件平臺根據(jù)對消息的解析結果,將組件B和組件C注冊到組件A上,一個組件可注冊到多個組件上,實現(xiàn)消息的傳遞與控制。

        軟件平臺根據(jù)對消息的解析,調(diào)用attach函數(shù)將組件B和組件C加入到組件A的notify鏈表中,并將組件A加入到組件B及組件C的report鏈表中。軟件平臺采用雙向記錄方式,使用report鏈表記錄組件注冊的對象,使用notify鏈表記錄注冊到該組件之上的其它組件,共同實現(xiàn)組件的注冊過程。

        圖5 平臺通信機制Fig.5 Platform communication mechanism

        組件觸發(fā)事件時,將事件封裝為XML格式的消息,查詢report和notify鏈表,將變化的事件發(fā)布到鏈表上的所有組件,軟件平臺默認組件接受所有類型的事件。

        5 結 論

        測控軟件開發(fā)平臺采用組件化的設計思想。使用組件化編程思想提高了組件的復用率,縮短了開發(fā)周期,降低了開發(fā)成本,提高了開發(fā)效率。組件化的設計思想使得測控軟件開發(fā)平臺的通用性、可移植性、可擴展性和開發(fā)效率均得到有效提高,使得測控軟件通用開發(fā)平臺具有可靠性和易用性,并具有二次開發(fā)功能。

        [1]張強,周榮輝.com和.net構件模型[J].教育信息化,2006(3):36-38.

        ZHANG Qiang,ZHOU Rong-Hui.com and.net component model[J].Education information,2006(3):36-38.

        [2]YIN Fei,DING Wei-ming.Patterns research in the design of configuration software[J].Computer Measurement and Control,2005,13(3):298-300.

        [3]Piccioni M,Oriol M,Meyer B,et al.An idebased, integrated solution to schema evolution of objected software[J].ASE,2009(5):650-654.

        [4]金敏,周翔.高級軟件開發(fā)過程[M].北京:清華大學出版社,2005.

        [5]Erich Gama,Richard Helm,Ralph Johnson,等.設計模式:可復用面向?qū)ο筌浖幕A[M].李英軍,馬曉星,蔡敏,等譯.機械工業(yè)出版社,2007.

        [6]姚啟鵬.基于消息中間件應用框架的研究[J].計算機與現(xiàn)代化,2006(135):84-87.

        YAO Qi-Peng.Research on MOM’s application framwork[J].Jisuanji yu Xiandaihua,2006(135):84-87.

        [7]Behnel S,F(xiàn)iege L,Muhl G.On quality of service and publish-subscribe.In:Proe.of the 26th IEEE Int’t Conf.on distributed computing systems workshops[J].Lisboa:IEEE,2006(137):20-25.

        猜你喜歡
        開發(fā)人員測控視圖
        Semtech發(fā)布LoRa Basics 以加速物聯(lián)網(wǎng)應用
        《測控電路》實踐教學改革探討
        電子測試(2018年22期)2018-12-19 05:12:58
        5.3 視圖與投影
        視圖
        Y—20重型運輸機多視圖
        SA2型76毫米車載高炮多視圖
        基于現(xiàn)代測控技術及其應用分析
        向著新航程進發(fā)——遠望7號測控船首航記錄
        太空探索(2016年12期)2016-07-18 11:13:43
        讓Windows 10進入開發(fā)者模式
        電腦迷(2015年12期)2015-04-29 23:22:51
        后悔了?教你隱藏開發(fā)人員選項
        電腦愛好者(2015年6期)2015-04-03 01:20:56
        国产又猛又黄又爽| 国产高清女人对白av在在线| 日韩精品中文字幕免费人妻 | 国产熟女盗摄一区二区警花91 | 日韩精品视频av在线观看| 成人影片麻豆国产影片免费观看| 亚洲第一页综合图片自拍| 正在播放国产多p交换视频| 性色av成人精品久久| 国产三级国产精品国产专区50| 中文天堂国产最新| 国产精品女同一区二区| 激情人妻网址| 国产在线观看午夜视频| 日韩精品极品视频在线观看免费| 妇女性内射冈站hdwwwooo| 女人被躁到高潮嗷嗷叫免费软| 与最丰满美女老师爱爱视频| 国产精品成人3p一区二区三区| 亚洲一区二区三区偷拍女厕| 国产三级黄色片子看曰逼大片| 色和尚色视频在线看网站| 极品少妇小泬50pthepon| 激情另类小说区图片区视频区| 精品丝袜一区二区三区性色| 黄色国产一区二区99| 成人性生交大片免费| 亚洲国产福利精品一区二区 | 亚洲国产成人久久三区| 国内精品视频一区二区三区 | 亚洲码专区亚洲码专区| 欧美噜噜久久久xxx| 久久无码高潮喷水| 久久国产A∨一二三| 男女做羞羞事的视频网站| 久久久久亚洲av成人网人人网站| 香蕉色香蕉在线视频| 亚洲无av高清一区不卡| 天堂8在线新版官网| 丰满女人又爽又紧又丰满| 亚洲中文字幕无线乱码va|