軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)_第1頁
軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)_第2頁
軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)_第3頁
軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)_第4頁
軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件設(shè)計(jì)論文軟件構(gòu)件設(shè)計(jì)論文:基于構(gòu)件技術(shù)的可重構(gòu)虛擬儀器軟件的設(shè)計(jì)摘 要: 為解決傳統(tǒng)虛擬儀器技術(shù)可重構(gòu)性比較弱的問題,以傳統(tǒng)虛擬儀器技術(shù)為基礎(chǔ),結(jié)合基于構(gòu)件技術(shù)的軟件開發(fā)理論,提出了一種基于軟件構(gòu)件化技術(shù)的可重構(gòu)虛擬儀器設(shè)計(jì)方法.結(jié)合工業(yè)應(yīng)用問題,采用VC+及OpenGL技術(shù)構(gòu)建了虛擬信號(hào)發(fā)生器和頻譜分析儀,實(shí)現(xiàn)了虛擬儀器系統(tǒng)的在線重構(gòu),提高了系統(tǒng)構(gòu)建的靈活性.關(guān)鍵詞: 虛擬儀器;可重構(gòu)技術(shù);構(gòu)件0引言虛擬儀器是目前國內(nèi)外測(cè)量與儀器制造業(yè)十分關(guān)注的研究熱點(diǎn),它將計(jì)算機(jī)硬件、軟件、總線技術(shù)以及測(cè)試測(cè)量技術(shù)和儀器儀表技術(shù)完美結(jié)合起來,實(shí)現(xiàn)了測(cè)量系統(tǒng)從廠商定義的固定功能向用戶自定義模式的轉(zhuǎn)變,但

2、同時(shí)也帶來了新問題.從當(dāng)前的虛擬儀器技術(shù)來看,系統(tǒng)功能都是預(yù)先設(shè)計(jì)好的,投入使用后功能固定不變,用戶只能在虛擬儀器系統(tǒng)的設(shè)計(jì)階段實(shí)現(xiàn)測(cè)量系統(tǒng)的重構(gòu),而不能使系統(tǒng)在在線動(dòng)態(tài)下改變其功能,因此系統(tǒng)設(shè)計(jì)完成后,動(dòng)態(tài)重構(gòu)能力相對(duì)較弱.在這種情況下,將可重構(gòu)理論和軟件構(gòu)件化技術(shù)引入虛擬儀器技術(shù)逐步成為虛擬儀器系統(tǒng)的主要開發(fā)模式1-5.本文將虛擬儀器技術(shù)的研究成果和軟件構(gòu)件化理論技術(shù)相結(jié)合,圍繞基于軟件構(gòu)件化技術(shù)的可重構(gòu)虛擬儀器進(jìn)行研究,通過采用VC+編程語言以及OpenGL技術(shù)構(gòu)建三維儀器構(gòu)件庫,以信號(hào)發(fā)生器和頻譜分析儀為例,實(shí)現(xiàn)了系統(tǒng)在線動(dòng)態(tài)重構(gòu)的虛擬儀器系統(tǒng)功能1可重構(gòu)虛擬儀器架構(gòu)1·1軟

3、件構(gòu)件化裝配的虛擬儀器模型構(gòu)件是一種能夠提供某種功能的軟件模塊,構(gòu)件封裝著一定的數(shù)據(jù)和方法,并提供給用戶特定的接口5.開發(fā)人員就是利用這一特定的接口來使用構(gòu)件以及與其它構(gòu)件的交互通訊,從而構(gòu)造應(yīng)用程序.構(gòu)件主要具有封裝性、獨(dú)立性和寬適應(yīng)性的特點(diǎn).基于軟件構(gòu)件開發(fā)的儀器是以軟件構(gòu)架為組裝藍(lán)圖,以可復(fù)用的構(gòu)件為組裝零件,支持組裝式的軟件復(fù)用,這也是提高軟件的生產(chǎn)效率和產(chǎn)品質(zhì)量以及縮短產(chǎn)品開發(fā)周期的有效途徑之一.我們知道,軟件在虛擬儀器的組建中占據(jù)著核心地位,因此也有理由認(rèn)為軟件構(gòu)件化技術(shù)也同樣適用于虛擬儀器的開發(fā).由于組成虛擬儀器功能構(gòu)件種類的多樣性,基于裝配結(jié)構(gòu)的虛擬儀器系統(tǒng)的應(yīng)用程序也要附帶很

4、多構(gòu)件,構(gòu)件庫的管理會(huì)很復(fù)雜,所以本文借鑒了硬件電路中可編程邏輯陣列的思路,將虛擬儀器所有構(gòu)件進(jìn)行集成、封裝到虛擬儀器構(gòu)件內(nèi)核中,在現(xiàn)場(chǎng)應(yīng)用中,用戶根據(jù)測(cè)試測(cè)量任務(wù)的需求,對(duì)集成過的虛擬儀器構(gòu)件內(nèi)核進(jìn)行重新裝配,在主體軟件不變的情況下實(shí)現(xiàn)不同的測(cè)量系統(tǒng)功能.基于軟件構(gòu)件技術(shù)的虛擬儀器模型如圖1所示2, 6,它是由構(gòu)件以及起連接作用的連接部件組成,圖1中的中間的那些小方塊是內(nèi)部已經(jīng)封裝過的儀器構(gòu)件,黑色線條就是連接內(nèi)部封裝的構(gòu)件的軟導(dǎo)線和軟開關(guān)矩陣資源,四邊的長(zhǎng)條是與外部測(cè)量板卡和上層程序通訊的軟I/O接口.借鑒·NET容器組件模型設(shè)計(jì)了一個(gè)可包含儀器構(gòu)件的容器構(gòu)件作為動(dòng)態(tài)可重構(gòu)虛擬儀

5、器內(nèi)核的母體,內(nèi)部集成的軟元件則借鑒·NET構(gòu)件模型設(shè)計(jì)一個(gè)可包含在容器構(gòu)件內(nèi)部的儀器構(gòu)件模型,軟導(dǎo)線和軟開關(guān)矩陣資源采用數(shù)據(jù)管道和所構(gòu)成的數(shù)據(jù)管道矩陣來實(shí)現(xiàn).1·2儀器動(dòng)態(tài)重構(gòu)通訊方法通訊總線結(jié)構(gòu)是目前一種前沿的軟件結(jié)構(gòu)體系的設(shè)計(jì)方式.它是將所有的功能部件以相同的方式連結(jié)到一個(gè)用來相互通訊的結(jié)構(gòu)性部件上,我們稱這個(gè)結(jié)構(gòu)性部件即是通訊總線.而把有著不同方面的系統(tǒng)軟件功能單元作為軟插件掛接在這個(gè)通訊總線上,各構(gòu)件之間的數(shù)據(jù)交換通過通訊總線的控制和管理來完成.通訊總線提供了構(gòu)建模塊之間交換信息和數(shù)據(jù)的標(biāo)準(zhǔn)化接口以及信息交換協(xié)議,它試圖利用一切可能的技術(shù)來實(shí)現(xiàn)軟件解決方案的快速配

6、置,屏蔽了操作系統(tǒng)間的差異,使得符合其接口協(xié)議的構(gòu)件模塊具有可移植性和可重用性,實(shí)現(xiàn)了儀器系統(tǒng)的開放和構(gòu)件模塊的重用2.本文提出的基于通訊總線構(gòu)件化的軟件模型見圖2.在這種軟件體系結(jié)構(gòu)中,各個(gè)構(gòu)件模塊插接在通訊總線上,每一個(gè)功能模塊都是一個(gè)獨(dú)立的工作單元,通過通訊總線獲取和發(fā)送數(shù)據(jù),而構(gòu)件模塊間彼此沒有直接的聯(lián)系.不同的功能模塊只要插接在通訊總線上就能工作,拔下來也不會(huì)影響其它構(gòu)件模塊的工作.用戶只要根據(jù)自身不同的需求更換不同的構(gòu)件,在儀器通訊總線控制器的控制和管理下就可以快速地配置出一個(gè)滿足于用戶特定需求的測(cè)量?jī)x器功能和儀器的面板,計(jì)算機(jī)成為用戶所需要的多功能和多用途虛擬儀器,這種方式極大地

7、提高了儀器系統(tǒng)的靈活性和可靠性6.1·3基于VC和OpenGL技術(shù)的軟件構(gòu)件庫的開發(fā)虛擬儀器的優(yōu)越性就在于能夠建立圖形化的軟面板來代替常規(guī)的儀器控制面板,因?yàn)橛押玫膱D形化界面使用戶的操作更加便利和舒適.比如在實(shí)際儀器中常用到的開關(guān)、按鈕、旋鈕以及虛擬儀器特有的控件,充分體現(xiàn)了“軟件儀器”這一特點(diǎn).近年來, OpenGL在圖形領(lǐng)域有著超強(qiáng)的繪圖功能以及三維造型優(yōu)勢(shì)7,本文選擇OpenGL技術(shù)來開發(fā)儀器的圖形庫,能夠提供給用戶更好的人機(jī)界面.1·3·1構(gòu)件庫的分類儀器功能模塊庫的分類是建立智能儀器的首要步驟,良好的分類使得組織和管理儀器功能模塊庫比較容易.本文按照能夠

8、獨(dú)立、完整、功能內(nèi)聚性原則,劃分出如下測(cè)量?jī)x器系統(tǒng)所需的基本功能類:標(biāo)簽類、線段類、按鈕類、表盤類、滾動(dòng)條類、信號(hào)處理類和波形顯示類等,見圖3.1·3·2構(gòu)件庫的開發(fā)由于VC+基礎(chǔ)類庫和接口函數(shù)的豐富多樣性,它已經(jīng)被廣泛地應(yīng)用于多個(gè)工程技術(shù)領(lǐng)域.GDI繪圖是通過設(shè)備句柄(Device Contex,t簡(jiǎn)稱DC)來實(shí)現(xiàn)的,而OpenGL則需要繪制環(huán)境(Ren-deringContex,t簡(jiǎn)稱RC)來實(shí)現(xiàn). MFC中的OpenGL基本框架如下8(限于篇幅只列出部分代碼):(1)創(chuàng)建工程.使用AppW izard產(chǎn)生一個(gè)MFC EXE項(xiàng)目,其他選擇默認(rèn)即可.(2)把所需的Open

9、GL庫文件加入到工程中.此程序運(yùn)行結(jié)果是一個(gè)絢麗多彩的三維按鈕.不同的物體采用OpenGL進(jìn)行三維造型時(shí)的步驟基本相同,只是在繪圖函數(shù)OnPaint ()中的程序代碼要針對(duì)不同物體進(jìn)行分別繪制和造型就行了.2虛擬儀器設(shè)計(jì)原則軟件是用戶與虛擬儀器之間交流信息的紐帶.本文從用戶的實(shí)用角度出發(fā),采用面向?qū)ο蟮脑O(shè)計(jì)思想來設(shè)計(jì)虛擬儀器軟面板.軟面板的設(shè)計(jì)不僅是一個(gè)工程設(shè)計(jì)問題,而且還涉及到人們從心理上對(duì)面板的認(rèn)可和欣賞問題.面板設(shè)計(jì)時(shí),一般要遵循以下原則9:(1)直接操作的原則.采用“所見即所得”的可視化技術(shù)建立人機(jī)界面是被廣泛采用的虛擬儀器軟面板設(shè)計(jì)原則.如儀器的軟面板上常有較多與現(xiàn)實(shí)中的很相似的控件

10、,便于用戶的操作.(2)控件的一致性原則.為了保持視覺的一致性,在開始開發(fā)應(yīng)用程序之前應(yīng)先創(chuàng)建設(shè)計(jì)策略和類型約定.例如,控件的類型、控件的尺寸、分類的標(biāo)準(zhǔn)等設(shè)計(jì)元素都應(yīng)該事先確定.(3)控制顏色種類保持軟面板簡(jiǎn)明的原則.軟面板一般采用一些柔和、中性化的顏色,而且軟面板的色調(diào)也應(yīng)保持一致.軟面板上的功能應(yīng)簡(jiǎn)捷明了,功能復(fù)雜的虛擬儀器可采用分面板形式.總之,虛擬儀器軟面板的設(shè)計(jì)要以“為操作人員提供一個(gè)虛擬的儀器操作環(huán)境”為標(biāo)準(zhǔn),參考上述設(shè)計(jì)原則,有助于建立適用的、友善的人機(jī)交互接口10.3儀器系統(tǒng)設(shè)計(jì)實(shí)例3·1虛擬信號(hào)發(fā)生器設(shè)計(jì)信號(hào)發(fā)生器是一種常用的信號(hào)源,本文設(shè)計(jì)的虛擬信號(hào)發(fā)生器用戶面

11、板主要由波形顯示和波形控制兩部分組成.此信號(hào)發(fā)生器能產(chǎn)生穩(wěn)態(tài)的正弦信號(hào)、方波信號(hào)、鋸齒波信號(hào)等,且頻率、幅值、相位都可以隨意調(diào)節(jié),還能根據(jù)需要選擇所需的通道.組成信號(hào)發(fā)生器的各模塊如下.(1)儀器標(biāo)題欄模塊.軟面板第一行顯示所選擇的信號(hào)類型標(biāo)題.(2)信號(hào)頻率選擇及調(diào)節(jié)模塊.可以根據(jù)要求輸入所需信號(hào)的頻率,或者可以通過調(diào)節(jié)按鈕來調(diào)節(jié)信號(hào)的頻率.(3)幅值、相位調(diào)節(jié)模塊.調(diào)節(jié)所需信號(hào)的幅值和相位.(4)波形生成模塊.對(duì)已選定類型、頻率、幅值、相位的信號(hào)按要求生成動(dòng)態(tài)的波形數(shù)據(jù).虛擬信號(hào)發(fā)生器以及各模塊如圖4所示.3·2虛擬頻譜分析儀觀察信號(hào)最普遍的方法除了信號(hào)波形,即信號(hào)的時(shí)域分析外,

12、還可從信號(hào)所包含的頻率成分,即信號(hào)的頻譜分布來描述,這就稱為頻域分析或頻譜分析.本文設(shè)計(jì)的虛擬頻譜分析儀具有與實(shí)際頻譜分析儀一樣的功能,可完成傳送的波形數(shù)據(jù)的處理分析.虛擬頻譜分析儀的用戶面板是由三部分組成,即原始波形顯示、頻譜顯示和控制部分.頻譜分析儀通過對(duì)原始信號(hào)進(jìn)行頻譜分析處理,得出被輸入信號(hào)分析結(jié)果.各功能模塊如下. (1)儀器標(biāo)題欄模塊.顯示所選擇的信號(hào)類型標(biāo)題. (2)典型信號(hào)類型選擇模塊.可以任意選擇正弦信號(hào)、方波信號(hào)等.(3)幅值和相位調(diào)節(jié)模塊.與虛擬信號(hào)發(fā)生器相同,即調(diào)節(jié)所需信號(hào)的幅值與相位.(4)顯示輸出模塊.對(duì)所選擇的信號(hào)數(shù)據(jù)進(jìn)行分析處理,以波形方式顯示得出的結(jié)果.圖5所

13、示的是頻譜分析儀控制面板以及可控制模塊.4結(jié)語圍繞軟件構(gòu)件化裝配虛擬儀器模型、虛擬儀器的通訊方法以及構(gòu)件庫的開發(fā)進(jìn)行了研究,提出了一種基于軟件構(gòu)件化技術(shù)的可重構(gòu)虛擬儀器設(shè)計(jì)方法.利用VC+和OpenGL技術(shù)設(shè)計(jì)出了具有動(dòng)態(tài)可重構(gòu)能力的虛擬儀器系統(tǒng)的虛擬信號(hào)發(fā)生器和頻譜分析儀,解決了傳統(tǒng)虛擬儀器技術(shù)的可重構(gòu)性弱的難題,實(shí)現(xiàn)了虛擬儀器系統(tǒng)的快速開發(fā)和在線動(dòng)態(tài)重構(gòu).參考文獻(xiàn):1盛伯浩,羅振璧.快速重組制造系統(tǒng)(RRMS)新一代制造系統(tǒng)的原理及應(yīng)用J.制造技術(shù)與機(jī)床, 2001,12 (8): 37-442何嶺松,張登攀,賴紅.可重構(gòu)虛擬儀器系統(tǒng)J.機(jī)械工程學(xué)報(bào), 2005 (9): 81-85.3馬

14、曉燕.可重構(gòu)虛擬儀器的設(shè)計(jì)J.機(jī)電產(chǎn)品開發(fā)與創(chuàng)新, 2006 (9): 119-120.4鄭鑫,肖明清,程嗣怡,等.可重構(gòu)測(cè)試儀器設(shè)計(jì)J.計(jì)算機(jī)工程, 2007 (5): 270-271.5汪紅.基于組件的虛擬儀器軟件系統(tǒng)設(shè)計(jì)J.微計(jì)算機(jī)信息, 2001 (1): 76-77.6ZHANG DENG PAN, CUISHU XIN, HE LING SONG. WaterfrontArrayBased Distributed CollaborativeMeasurementPattern C / IEEE Computer Society. IEEE International Conference on Automation and Logistics. Uniter States:445 Hoes Lane-P. O. Box 1331, Piscataway, NJ 08855-1331, 2009: 68-72.7郭兆榮,李菁,王彥. VisualC+OpenGL應(yīng)用程序開發(fā)M.北京:人民郵電出版社, 2006.8鄭君立,達(dá)飛鵬,譚小

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論