久久九九国产无码高清_人人做人人澡人人人爽_日本一区二区三区中文字幕_日韩无码性爱免费

遠程控制實驗系統(tǒng)軟件體系的結(jié)構(gòu)

時間:2024-04-28 17:13:14 研究生論文 我要投稿
  • 相關(guān)推薦

遠程控制實驗系統(tǒng)軟件體系的結(jié)構(gòu)

  摘 要:針對遠程控制實驗系統(tǒng)具有多需求、多任務(wù)并且實時性要求高的特點,提出一種基于需求特征映射的軟件體系結(jié)構(gòu),并且在此基礎(chǔ)上設(shè)計與開發(fā)了一套基于C/S與B/S的混合體系結(jié)構(gòu)的遠程控制系統(tǒng)。該系統(tǒng)不但允許用戶進行遠程虛擬實驗,而且還可以對實驗設(shè)備進行遠程實時控制。實際應(yīng)用表明,該系統(tǒng)不但保證了不同用戶的實驗需求,而且還滿足了遠程控制的實時性要求。

  關(guān)鍵詞:軟件體系結(jié)構(gòu);遠程控制系統(tǒng);需求工程

  1、引 言

  目前,國內(nèi)外已經(jīng)有許多大學(xué)都研制出了自己的遠程教育軟件系統(tǒng),這些系統(tǒng)的建成對于提高教學(xué)質(zhì)量和效率起到了極大的推動作用。對于控制系統(tǒng)的遠程實驗教學(xué)平臺就其功能而言主要分為虛擬實驗室和遠程控制實驗室。在國外,美國Illinois大學(xué)芝加哥分校的VRiChEL實驗室研制的Vicher系統(tǒng)¨ 將虛擬現(xiàn)實技術(shù)應(yīng)用在化學(xué)工程教育領(lǐng)域,設(shè)計了多個虛擬實驗。另外,類似的還有澳大利亞RMIT大學(xué)設(shè)計的虛擬實驗用于進行熱傳遞過程的教學(xué) ,可以幫助學(xué)生快速地掌握這個抽象的概念。在國內(nèi),北京大學(xué)開發(fā)的基于Internet的虛擬實驗室3WNVLAB就是一種支持大計算量和交互式的網(wǎng)上虛擬實驗室的通用基本框架,它是一個基于瀏覽器和Web服務(wù)器的虛擬實驗室 ?梢钥闯,虛擬實驗室主要是用戶通過Internet把設(shè)計的的實驗傳送到服務(wù)器端。服務(wù)器端用來完成客戶端要求的實驗內(nèi)容,并將可信的實驗結(jié)果返回客戶端?蛻羰盏綄嶒灲Y(jié)果后,可評價自己的實驗設(shè)計,從而對自己的能力進行判斷。

  由于虛擬實驗室中實驗用到的實驗設(shè)備都是抽象符號表示,往往無法代表真正的實驗環(huán)境,在控制實驗教學(xué)過程中尤其明顯,由于用戶無法觀察到被控對象的動態(tài)響應(yīng),以及實際實驗過程中系統(tǒng)所存在的擾動和不確定性,導(dǎo)致這樣的虛擬實驗無法達到真正的實驗?zāi)康。因此,產(chǎn)生了另一類遠程實驗室:遠程控制實驗 ,目前,國內(nèi)主要有中國科技大學(xué)物理系研制了一套基于Internet的掃描探針顯微鏡(SPM)遠程控制系統(tǒng) ;浙江大學(xué)研制了依托千兆局域網(wǎng)基礎(chǔ)上的基于C/S模式的遠程控制系統(tǒng) 。新加坡國立大學(xué)的遠程實驗室 允許用戶通過Internet進行遠程實驗,使用B/S方式實驗,可以實現(xiàn)昂貴的實驗設(shè)備共享。

  遠程實驗室的服務(wù)器端使用LabView虛擬儀器軟件實現(xiàn)對實驗設(shè)備的控制,服務(wù)器與實驗設(shè)備之間通過RS-232接口或IEEE488.2 GPIB總線進行連接。意大利的PolitecnicodiMilano大學(xué)也使用類似方案實現(xiàn)了遠程實驗室。不難看出,這樣的系統(tǒng)基本上可以滿足普通的本科教學(xué)的驗證性實驗。但是,由于此類系統(tǒng)的控制器設(shè)計在本地實驗端,遠程端僅僅只能允許修改相應(yīng)的控制器參數(shù),而不能夠提供完整的控制器的設(shè)計。因此,對于高年級學(xué)生的實驗要求就很難滿足,尤其是網(wǎng)絡(luò)控制實驗(此類系統(tǒng)要求整個控制回路通過網(wǎng)絡(luò)閉環(huán)進行實時控制,所以要求系統(tǒng)提供相應(yīng)的網(wǎng)絡(luò)傳輸參數(shù))更是無能為力。

  綜合以上介紹的遠程實驗系統(tǒng)不難發(fā)現(xiàn),現(xiàn)有系統(tǒng)都在一定程度上滿足了特殊用戶的需求,在局部范圍內(nèi)起到了較好的教學(xué)效果,但是,由于用戶需求的多樣性,這樣的系統(tǒng)很難普及,同時一個統(tǒng)一的遠程控制實驗系統(tǒng)的軟件體系結(jié)構(gòu)尚未形成。因此,本文從遠程實驗室系統(tǒng)的不同層次用戶的需求出發(fā),提出一種基于特征映射的軟件體系結(jié)構(gòu)的設(shè)計方法,在此基礎(chǔ)上開發(fā)和設(shè)計了相應(yīng)的遠程控制實驗室。與現(xiàn)有系統(tǒng)比較本文論述的系統(tǒng)具有以下幾個優(yōu)點:

 、 滿足多用戶的需求,不僅提供虛擬的驗證性實驗,而且提供遠程的控制實驗。用戶可以通過本系統(tǒng)動態(tài)觀察被控對象的過渡過程,以及系統(tǒng)的不確定性對性能的影響。

  ② 本系統(tǒng)可以為控制專業(yè)較高層次的研究性用戶提供網(wǎng)絡(luò)傳輸?shù)姆⻊?wù)質(zhì)量性能參數(shù),使系統(tǒng)的網(wǎng)絡(luò)資源調(diào)度與管理以及控制過程中的采樣周期調(diào)度成為可能。

 、 系統(tǒng)可以在局域網(wǎng)內(nèi)通過網(wǎng)絡(luò)實時閉環(huán)控制,為網(wǎng)絡(luò)控制系統(tǒng)的研究提供實驗基礎(chǔ)。

  2、現(xiàn)有系統(tǒng)的軟件體系結(jié)構(gòu)及其存在的問題

  2.1 虛擬實驗室的軟件體系結(jié)構(gòu)目前,現(xiàn)有的虛擬實驗室普遍采用如圖1所示的軟件體系結(jié)構(gòu),利用面向?qū)ο蠓治?OOA)和面向?qū)ο笤O(shè)計(OOD)來開發(fā)。采用B/S結(jié)構(gòu)的主要功能是:用戶提交待實驗的Simulink或m文件通過遠程調(diào)用Matlab的計算引擎,完成仿真計算后服務(wù)器將仿真結(jié)果送還給遠程用戶端,客戶端的Applet通訊模塊把仿真數(shù)據(jù)解析后,將數(shù)據(jù)分別以動畫和虛擬示波器、數(shù)據(jù)表格等方式有效的把實驗結(jié)果呈現(xiàn)給用戶,達到仿真實驗的效果。由于虛擬實驗的引入,可以滿足遠程教育中自動化專業(yè)的低年級學(xué)生的仿真實驗或簡單的驗證性實驗的需求,但是,由于缺少對真實設(shè)備的控制,對于高年級的本科實驗教學(xué)而言,實驗內(nèi)容的復(fù)雜性和多元化,這樣的實驗系統(tǒng)就很難滿足了,尤其是缺乏對控制過程中實際系統(tǒng)的不確定性以及系統(tǒng)過渡過程的動態(tài)性能的直觀的描述。

  2.2 遠程控制實驗室的軟件體系結(jié)構(gòu)目前,現(xiàn)有的遠程控制實驗室的軟件體系結(jié)構(gòu)普遍采用如圖2所示的軟件體系結(jié)構(gòu),跟虛擬實驗室類似采用OOA和OOD來開發(fā)設(shè)計采用B/S結(jié)構(gòu)。從系統(tǒng)的功能上而言,由于遠程控制實驗室連接的是真實的實驗設(shè)備,實驗過程中利用多媒體技術(shù),可以讓學(xué)生實時觀測到實際對象的運行情況,并且在遠程控制端給實驗者提供修改控制器參數(shù)的接口,允許用戶動態(tài)地改變系統(tǒng)的采樣周期? 。此類系統(tǒng)有一個共同的特點:實驗對象的控制器設(shè)置在本地端,并且往往都是事先固定的,如:PID,預(yù)測控制策略,使用者僅僅可以通過網(wǎng)絡(luò)對系統(tǒng)所提供的控制器參數(shù)進行設(shè)置和修改。相對于虛擬實驗室,遠程控制實驗室更適合本科高年級的教學(xué)實驗。尤其是其提供的先進控制策略,也適合一般的研究人員進行驗證性實驗。不難發(fā)現(xiàn),這樣的系統(tǒng)就其本質(zhì)而言其控制回路的設(shè)計仍舊是本地控制,而沒有通過網(wǎng)絡(luò)實時閉環(huán)控制。因此,就很難滿足控制專業(yè)研究生的實驗教學(xué)要求。

  考慮到如圖2的結(jié)構(gòu)中系統(tǒng)的控制器設(shè)計在服務(wù)器端,并且往往都是固定的。為了保證系統(tǒng)的控制回路構(gòu)建在整個網(wǎng)絡(luò)上,文獻[10]中研制了依托校園網(wǎng)的基于C/S模式的遠程控制系統(tǒng),把控制器設(shè)計在遠程端,整個控制回路通過傳輸網(wǎng)絡(luò)閉環(huán)如圖3所示。

  這樣方便了遠程實驗用戶設(shè)計開發(fā)相應(yīng)的控制器。但是其帶來的代價就是客戶端需要安裝龐大的軟件或插件,不僅系統(tǒng)可維護性差,而且由于客戶端使用平臺的不一致性,導(dǎo)致系統(tǒng)的使用范圍受到了很大的限制。

  3、基于需求特征映射遠程控制系統(tǒng)體系結(jié)構(gòu)綜合

  上述分析不難看出,現(xiàn)有系統(tǒng)的軟件體系結(jié)構(gòu)設(shè)計過程中普遍存在的一個問題就是:從需求到軟件體系結(jié)構(gòu)的映射不足。對于控制系統(tǒng)而言,系統(tǒng)的實時性要求很高,如果系統(tǒng)的控制回路通過傳輸網(wǎng)絡(luò)實時閉環(huán),則構(gòu)成的控制系統(tǒng)為典型的網(wǎng)絡(luò)控制系統(tǒng)。

  近年來,對于這類系統(tǒng)的研究,已經(jīng)成為控制理論的研究熱點和重點但還有很多理論問題有待進一步的完善。因此,在現(xiàn)有基礎(chǔ)上采用基于需求特征映射方式的軟件體系結(jié)構(gòu)設(shè)計方法來設(shè)計遠程控制實驗系統(tǒng)。

  首先,把特征看作需求建模的一階實體,并把特征建模與傳統(tǒng)的需求建模結(jié)合起來以更完整地捕獲各種需求。進而,在體系結(jié)構(gòu)建模中,以面向需求特征為目標(biāo),維持特征模型和體系結(jié)構(gòu)模型間在較高抽象層相對直接和自然的映射。這里要強調(diào)的是本文的方法并不是對傳統(tǒng)方法的否定而是對傳統(tǒng)方法的改善,因而該方法能夠與傳統(tǒng)方法如面向?qū)ο?O0)方法緊密地集成,并且本文的建模概念和表示、遵循UML語言的概念和表示體系。

  3.1 遠程控制系統(tǒng)的需求建模文獻[11]中把特征分為功能性特征和非功能性特征,兩者對軟件體系結(jié)構(gòu)構(gòu)造有著不同的影響。因此,本文首先基于功能特征將待開發(fā)的遠程控制實驗系統(tǒng)初步劃分為一些構(gòu)件,接著考慮系統(tǒng)的非功能特征,對這一初步劃分反復(fù)、漸進地進行優(yōu)化和轉(zhuǎn)換。利用特征誘導(dǎo)和特征組織與分析的需求建模方法[11],把系統(tǒng)的需求劃分為3個層次上的抽象:任務(wù)需求,用戶需求和功能需求。

  任務(wù)需求的特征描述了實驗教學(xué)的目標(biāo)、實驗過程、實驗組織及約束等。用戶需求特征主要描述系統(tǒng)所提供支持最終實驗用戶任務(wù)的服務(wù)以及對服務(wù)的約束,在此基礎(chǔ)上按文獻[11]中的組織方式進一步組織特征:

  (1)支持特定任務(wù)層特征的用戶任務(wù)可歸為一組,并成為該任務(wù)層特征的子特征。

  (2)支持某一用戶任務(wù)的特征可歸為一組并成為該用戶任務(wù)的子特征。

  (3)如果一個非功能特征是對一個功能特征的約束,則該非功能特征成為對應(yīng)功能特征的子特征。如果一個用戶層特征以某一個任務(wù)層特征為目標(biāo),則前者稱為后者的導(dǎo)出子特征。

  對于特征間的潛在的交互關(guān)系,這里采用其相互問的邏輯關(guān)系加以描述,包括:“包含”、“一般到特殊”、“導(dǎo)出”、“制約”及“依賴”和“互斥”等,并且嚴(yán)格指定特征本身的屬性,然后利用use case技術(shù)把特征細化為足夠詳細的可實現(xiàn)的功能需求。

  遠程控制實驗系統(tǒng)根據(jù)不同的用戶可以分為:①?苹虻湍昙壍谋究粕;② 高年級本科生;③ 研究生;④ 教師及其他研究人員。針對這4類不同的用戶,需求特征不同,如對于第① 類用戶,其實驗需求的主要特征是對給定的被控對象模型和控制策略進行驗證性實驗,或者在此基礎(chǔ)上進行適當(dāng)?shù)膮?shù)調(diào)整以驗證控制參數(shù)對系統(tǒng)性能的影響。因此,在需求建模的時候,把其統(tǒng)一抽象成為此類任務(wù)需求的必須特征。

  同時,對于這類用戶系統(tǒng)的被控對象的特性,回路特性和計算引擎都不是必須的,可以統(tǒng)一的作為可選特征進行需求特征建模,而這些功能對于其他用戶而言可能是必須的特征,如第③ 、④類用戶要求系統(tǒng)提供回路信息和網(wǎng)絡(luò)服務(wù)質(zhì)量的相關(guān)信息作為系統(tǒng)控制設(shè)計的依據(jù),甚至是希望系統(tǒng)能夠通過網(wǎng)絡(luò)實時閉環(huán),因此要求整個系統(tǒng)能夠保證很好得到實時性。整個遠程控制實驗系統(tǒng)的需求特征模型如圖4所示。

  3.2 遠程控制系統(tǒng)的體系結(jié)構(gòu)建模與系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)根據(jù)得到的需求特征模型,考慮到功能特征與非功能特征對軟件體系結(jié)構(gòu)的構(gòu)造有著不同的影響,因此,在系統(tǒng)體系結(jié)構(gòu)建模的時候?qū)⑺鼈兎珠_處理,分別進行概念體系結(jié)構(gòu)建模、邏輯體系結(jié)構(gòu)建模和部署體系結(jié)構(gòu)建模。其中,概念體系結(jié)構(gòu)建模是基于問題域和需求的結(jié)構(gòu)來描述系統(tǒng)的抽象視圖,而不考慮技術(shù)細節(jié);邏輯體系結(jié)構(gòu)建?紤]技術(shù)方案,是對概念體系結(jié)構(gòu)進行精化、調(diào)整和轉(zhuǎn)換;而部署體系結(jié)構(gòu)建模相比與前兩者主要解決模塊與模塊間的計算節(jié)點及計算節(jié)點之間的交互問題。

  系統(tǒng)的體系結(jié)構(gòu)建模是待求解的問題域到解決問題域的高層次的抽象,而面向特征的體系結(jié)構(gòu)建模是以“面向特征”為目標(biāo),維持特征模型和體系結(jié)構(gòu)模型間在較高抽象層相對直接和自然的映射。而對于本系統(tǒng)而言,其在實現(xiàn)方式上采用C/S和B/S混合結(jié)構(gòu),對于系統(tǒng)模型中的控制服務(wù),考慮到系統(tǒng)實時性的要求和需求模型中的必須特征的使用用戶為研究性實驗,對于這類用戶由于其已經(jīng)具有較好的專業(yè)知識, 所以采用C/S結(jié)構(gòu),利用校園網(wǎng)進行實時閉環(huán)。對于其他服務(wù),這里采用B/S結(jié)構(gòu)。

  不難看出,系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)在于遠程控制中控制器的動態(tài)加載,控制策略的動態(tài)加載與擴充常用的方法是通過c++的new和delete的內(nèi)存管理和分配方案來實現(xiàn)數(shù)組和數(shù)據(jù)結(jié)構(gòu)的定義,以及模塊間的參數(shù)傳遞。然而,對于遠程實驗系統(tǒng)運行狀態(tài)的判斷,完全依賴于用戶的控制信號,即當(dāng)用戶希望系統(tǒng)運行停止的時候,需要先給模塊停止信號,然后再停止系統(tǒng)的運行。這樣的做法對于遠程控制實驗系統(tǒng)顯然是不適合的。另外,從整個軟件的安全性角度出發(fā),在終止整個系統(tǒng)的運行前,單獨停止某一個模塊的運行,安全方面會產(chǎn)生隱患?紤]到以上因素,在本系統(tǒng)提出動態(tài)接口,其基本思路是另外添加一個DLL,提供公共函數(shù),用于分配和管理內(nèi)存。在用戶自定義的控制策略模塊中,調(diào)用公共函數(shù)即可,需要保留或傳遞參數(shù),直接傳遞序列編號。

  SpaceDLL是用于分配和管理內(nèi)存的公共DLL,接口包括:UserFBDVVector、UserFBDdVect0r和UserFBD.NewdVect。其中,基本的數(shù)據(jù)類型為雙精度,能夠滿足基本要求。定義雙精度的vector:typedef::std::vector(double)DoubleVector;定義DoubleVector的vector:ty.pedef::std::vector(DoubleVector)VVector;其中,VVector是鏈?zhǔn)降慕Y(jié)構(gòu),用戶可以在這個鏈上基本上可以認為是無限制的添加和操作DoubleVector的數(shù)據(jù)類型;對于DoubleVector的管理和傳遞,通過其序號來實現(xiàn),從而實現(xiàn)內(nèi)存數(shù)據(jù)的安全傳遞;UserFBDVVector函數(shù)返回的是對VVector的引用;UserFBDNewdVect函數(shù)返回的是新的DoubleVector的引用,用戶可以直接操作使用;UserFBDdVector函數(shù)的參數(shù)為DoubleVector在整個VVector中的序號,返回指定序號的Dou.bleVector的數(shù)據(jù)序列的引用。通過以上策略,實現(xiàn)了算法模塊接El的擴展,用戶可以自行添加數(shù)組或動態(tài)分配內(nèi)存,并且保留或傳遞參數(shù),對內(nèi)存進行操作。

  3.3 應(yīng)用實例自行開發(fā)了基于校園網(wǎng)的遠程控制軟件(軟件著作權(quán)登記號:2005SR15172),網(wǎng)絡(luò)控制軟件運行環(huán)境為:win2o0O/winxP、SQLServer 7.0,主要包括菜單、工具欄、狀態(tài)欄、控制窗13、監(jiān)控窗口、視頻窗13、顯示窗口。操作窗口主要負責(zé)管理監(jiān)控平臺的各項操作,包括實驗管理、實驗操作和系統(tǒng)管理,其中,實驗操作主要包括:通信設(shè)置、流量監(jiān)控、曲線設(shè)置、控制回路配置、被控對象模型配置、控制器參數(shù)配置和控制策略的動態(tài)加載等。系統(tǒng)管理包括密碼設(shè)置和用戶管理。實驗管理主要功能:實驗成績查詢、實驗報告的生成與遞交等功能。監(jiān)控窗El可以實時顯示控制點的信息主要包括:工程信號量、采樣周期、控制點編號、采集量的延時等。顯示窗El主要配合操作窗口和控制窗口完成各項操作功能的設(shè)置及控制點的配置。

  4、結(jié) 語

  在現(xiàn)有遠程實驗系統(tǒng)軟件體系結(jié)構(gòu)分析的基礎(chǔ)上,針對遠程實驗系統(tǒng)用戶需求的多樣性和控制系統(tǒng)本身的實時性強的特點下,提出一種基于需求特征映射的軟件體系結(jié)構(gòu)建模的方法。在此基礎(chǔ)上,開發(fā)與設(shè)計了基于C/S和B/S混合結(jié)構(gòu)的遠程控制實驗系統(tǒng)。實際應(yīng)用表明,系統(tǒng)在滿足實時性要求下,在一定程度上滿足了多用戶的需求,具有較好的可行性。

【遠程控制實驗系統(tǒng)軟件體系的結(jié)構(gòu)】相關(guān)文章:

中藥炮制學(xué)科結(jié)構(gòu)與體系完善07-21

實施預(yù)算治理 健全內(nèi)部控制體系08-04

環(huán)境成本三層控制體系10-21

實施預(yù)算管理 健全內(nèi)部控制體系07-24

現(xiàn)代企業(yè)本錢控制制度體系分析07-14

數(shù)據(jù)中心網(wǎng)絡(luò)的體系結(jié)構(gòu)分析09-10

數(shù)字圖書館體系結(jié)構(gòu)的發(fā)展10-10

以人力資本為中心的資本結(jié)構(gòu)體系10-16

電梯的電氣控制結(jié)構(gòu)安全探究08-26

遠程機房電源控制系統(tǒng)設(shè)計07-28