史瑞麟,,韓芳,,孔維健,王直杰
?。|華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,,上海 201600)
摘要:隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,基于Web的虛擬控制實驗系統(tǒng)是高校遠(yuǎn)程實驗的重要組成部分,。結(jié)合了一種虛擬控制實驗系統(tǒng)的體系結(jié)構(gòu),,依托unity3D,、APS.NET以及組態(tài)軟件等多種工具共同構(gòu)建基于Web的虛擬控制實驗系統(tǒng)。
關(guān)鍵詞:基于Web,;ASP.NET,;組態(tài)軟件;虛擬控制實驗軟件系統(tǒng)
0引言
現(xiàn)代的高校遠(yuǎn)程實驗以信息網(wǎng)絡(luò)技術(shù)為根本,,具有資源共享,,隨時隨地在有網(wǎng)絡(luò)的地方即可操作等優(yōu)點。近年來,,隨著高校遠(yuǎn)程實驗的迅速發(fā)展,,各大高校都開始進(jìn)行遠(yuǎn)程虛擬實驗室的建設(shè),這對虛擬實驗室和現(xiàn)代教育等的發(fā)展具有重大的意義[1] ,。
在高校教學(xué)實驗中,,由于現(xiàn)場的生產(chǎn)設(shè)備比較貴重,難以搬到實驗室中來供學(xué)生實驗,,并且學(xué)生也不能進(jìn)入工廠生產(chǎn)線進(jìn)行實驗[2],。虛擬實驗室作為一種全新的解決方案,為高校教學(xué)實驗提供了一個平臺,。虛擬實驗室是一個對虛擬對象進(jìn)行監(jiān)控的平臺,,可以對任意工業(yè)現(xiàn)場進(jìn)行建模, 然后組態(tài)監(jiān)控系統(tǒng),,從而加深對工業(yè)生產(chǎn)線的了解,。但是由于以往的虛擬對象只是一段“程序”或者一張平面圖,學(xué)生可能對虛擬對象不能直觀地了解,。本文利用unity3D對虛擬對象進(jìn)行模型建立,, 這樣就會對想要了解的生產(chǎn)線有了立體直觀的印象,并且把3D虛擬模型與組態(tài)系統(tǒng)通過OPC通訊模塊來實現(xiàn)連接,,這樣即可對3D虛擬對象進(jìn)行監(jiān)控,。
1基于Web的遠(yuǎn)程虛擬實驗軟件系統(tǒng)的總體設(shè)計
虛擬實驗是指把傳統(tǒng)實驗中的一些硬件設(shè)施用計算機技術(shù)來代替的一種方式,實驗者使用虛擬實驗技術(shù)獲取的實驗效果可能略遜于真實實驗場景下的結(jié)果,,也可能更優(yōu),,結(jié)果取決于具體的實驗。本文中的“虛擬實驗”是利用計算機技術(shù),,以Web為實現(xiàn)平臺,,把一系列軟件和硬件有機地結(jié)合起來,從而實現(xiàn)對真實實驗場景起到模擬的作用[35],。根據(jù)虛擬實驗的定義,,該遠(yuǎn)程虛擬實驗軟件系統(tǒng)分成兩個組成部分:硬件和軟件。虛擬實驗軟件系統(tǒng)總體設(shè)計如圖1所示,。
1.1虛擬實驗軟件系統(tǒng)硬件結(jié)構(gòu)
虛擬實驗軟件系統(tǒng)的硬件是由一套DCS組件構(gòu)成的,,主要用來開發(fā)基于DCS系統(tǒng)的實驗項目以及實驗項目的Web發(fā)布方案,。分布式控制系統(tǒng)(Distributed Control System,DCS)又稱集散式分布系統(tǒng),,主要用于工控行業(yè)的生產(chǎn)線監(jiān)控。DCS主要分為控制站,、操作站和工程師站,。其中控制站是下位機,主要用來采集數(shù)據(jù)和控制與下位機相連接的儀器,;操作站是上位機,,主要用來監(jiān)視和控制整個生產(chǎn)線;工程師站則是用來配置整個監(jiān)控系統(tǒng),,其中的配置工具是與DCS配套的組態(tài)軟件,。目前國外的組態(tài)軟件有InTouch、IFix,、Citech,、WinCC以及ASPENtech等,國內(nèi)的組態(tài)軟件有世紀(jì)星,、三維力控和組態(tài)王等,。本文使用的組態(tài)軟件是浙江中自的Chitic。
組態(tài)軟件有硬件配置,、數(shù)據(jù)庫組態(tài),、界面組態(tài)、算法組態(tài)等功能,。數(shù)據(jù)庫組態(tài)主要是采集工藝流程中某些比較重要的點的數(shù)據(jù)來達(dá)到對整個工藝流程的監(jiān)視,。另外還可以對數(shù)據(jù)設(shè)置報警,這樣當(dāng)數(shù)據(jù)的值越限時就會自動報警,。界面組態(tài)可以用來組態(tài)工藝生產(chǎn)流程的人機界面,。它將圖形畫面、報警,、網(wǎng)絡(luò)等工程元素集中管理,,工程人員可以一目了然地查看工程人機界面部分的各個組成部分。算法組態(tài)在完成數(shù)據(jù)庫組態(tài)后可以進(jìn)行組態(tài),。Chitic軟件圖2虛擬實驗軟件系統(tǒng)
硬件結(jié)構(gòu)圖中提供了符合國際標(biāo)準(zhǔn)的IEC611313標(biāo)準(zhǔn)的五種工具:FBD,、LD、SFC,、ST和IL語言,。
具體的硬件結(jié)構(gòu)如圖2所示。
1.2虛擬實驗軟件系統(tǒng)中的軟件結(jié)構(gòu)
虛擬實驗軟件系統(tǒng)中的軟件是指開發(fā)的一套基于Web的實驗管理系統(tǒng),?;赪eb的實驗管理系統(tǒng)主要采用B/S結(jié)構(gòu)進(jìn)行開發(fā),。B/S結(jié)構(gòu)即Browser/Server,是一種新興的網(wǎng)絡(luò)結(jié)構(gòu)模式,,Web瀏覽器是主要的客戶端軟件,,也就是說用戶只需要安裝一個瀏覽器(具體瀏覽器根據(jù)腳本語言的兼容性來決定,但是現(xiàn)在絕大多數(shù)瀏覽器都支持幾乎所有腳本語言),,就可以在線使用軟件,,因此B/S結(jié)構(gòu)統(tǒng)一了客戶端,將軟件的核心放在服務(wù)器端,,大大方便了軟件的開發(fā)和維護(hù)[6],。
B/S結(jié)構(gòu)分為兩部分,瀏覽器端和服務(wù)器端,。用戶主要在瀏覽器端操作,,當(dāng)客戶端運行瀏覽器,并且提出申請時,,瀏覽器以HTTP形式向Web服務(wù)器發(fā)出請求,;Web服務(wù)器接收到瀏覽器的請求,開始解析HTTP,,然后將解析的結(jié)果轉(zhuǎn)化成SQL語言,,提交給數(shù)據(jù)庫服務(wù)器;數(shù)據(jù)庫服務(wù)器接收到請求后,,驗證請求的合法性,,當(dāng)驗證通過以后,按照請求進(jìn)行數(shù)據(jù)處理,,當(dāng)處理完之后將結(jié)果返回到Web服務(wù)器端,;Web服務(wù)器將返回的結(jié)果進(jìn)行轉(zhuǎn)碼,并加入一些必要的信息,、轉(zhuǎn)變成HTML文檔,,返回到客戶端瀏覽器,并以頁面的形式顯示出來,。采用B/S結(jié)構(gòu)主要有以下優(yōu)點:
(1)成本低,。B/S結(jié)構(gòu)軟件的核心部分集中于服務(wù)器端,客戶端則不需要開發(fā)者來開發(fā)和維護(hù),,并且一般大型公司的服務(wù)器系統(tǒng)都采用Linux系統(tǒng),,因為Linux系統(tǒng)穩(wěn)定、開源并且免費,,能夠被公司二次開發(fā),。低成本也更符合虛擬實驗軟件系統(tǒng)的開發(fā)要求。
(2)維護(hù)簡單。B/S結(jié)構(gòu)的客戶端是瀏覽器,,開發(fā)者并不需要專門開發(fā)瀏覽器來供用戶使用,,因為目前市場上的瀏覽器基本上被Firefox、chrome,、IE和Opera等瀏覽器壟斷,,這樣開發(fā)者僅僅需要考慮服務(wù)器端的維護(hù),大大節(jié)約了開發(fā)者的精力,。
(3)硬件需求少,。B/S結(jié)構(gòu)是依托廣域網(wǎng)的,不需要專門的硬件來構(gòu)造系統(tǒng)環(huán)境,,比C/S結(jié)構(gòu)有更強的適應(yīng)性。
B/S結(jié)構(gòu)的具體結(jié)構(gòu)圖如圖3所示,。
系統(tǒng)B/S結(jié)構(gòu)圖1.3虛擬實驗軟件系統(tǒng)軟硬件的交互
虛擬實驗軟件系統(tǒng)最重要的一步就是硬件和軟件的交互,。本系統(tǒng)主要使用兩種途徑來實現(xiàn)軟硬件的交互。
?。?)網(wǎng)頁發(fā)布,。硬件部分主要是使用組態(tài)軟件來實現(xiàn)實驗項目的建立和使用。其中組態(tài)軟件有網(wǎng)頁發(fā)布的功能,,也就是說將組態(tài)軟件由C/S結(jié)構(gòu)轉(zhuǎn)化成B/S結(jié)構(gòu),,這樣用戶就可以通過瀏覽器進(jìn)行訪問或者使用。這種方式的優(yōu)點是,,用戶可以通過組態(tài)軟件網(wǎng)頁版在線組態(tài)實驗項目,,自由度非常高。
?。?)遠(yuǎn)程訪問,。遠(yuǎn)程訪問是現(xiàn)在大多數(shù)公司使用的技術(shù)。在服務(wù)器端設(shè)立多個虛擬機,,在每個虛擬機內(nèi)安裝組態(tài)軟件,,并且與DCS相連接,這樣每個用戶可以通過瀏覽器向服務(wù)器申請獨立的虛擬機,,實現(xiàn)對實驗項目和硬件的訪問,。這種方式的優(yōu)點是使用方便,并且對開發(fā)者來說開發(fā)簡單,;同樣缺點也是顯而易見的,,那就是對服務(wù)器要求比較高。
兩種方式各有優(yōu)劣,,采取何種方法以開發(fā)者的意見為主,。
2虛擬實驗軟件系統(tǒng)的設(shè)計
虛擬實驗軟件系統(tǒng)是基于B/S結(jié)構(gòu)開發(fā)一個DCS實驗管理軟件,作為學(xué)生遠(yuǎn)程,、并行,、基于Web訪問DCS實驗的入口與管理平臺,。實驗管理平臺相當(dāng)于一個虛擬實驗室管理工具,它不僅提供了關(guān)于虛擬實驗室的相關(guān)資料,、課程實驗的相關(guān)內(nèi)容,、課程相關(guān)新聞等文字類的資料,而且學(xué)生還可以通過管理平臺提交實驗報告,,老師通過平臺批改實驗報告,、發(fā)布實驗時間等信息。這是實驗平臺的信息共享功能,。實驗管理平臺最重要的功能就是能夠為學(xué)生提供實驗場景,,這是虛擬實驗室的精髓。通過虛擬儀器構(gòu)建的實驗項目可以發(fā)布成網(wǎng)站,,學(xué)生可以通過虛擬實驗室去操作實驗,,并獲得實時數(shù)據(jù)等。本文采用現(xiàn)有系統(tǒng)的模塊化設(shè)計思想來搭建系統(tǒng)架構(gòu),。在設(shè)計系統(tǒng)架構(gòu)時,,要考慮到提高各模塊的相對獨立性,以便于移植和擴充,,并且要保持模塊的可理解和模塊的規(guī)模便于維護(hù),。虛擬實驗軟件系統(tǒng)總體模塊功能圖如圖4所示。
詳細(xì)的平臺介紹如下:
用戶管理平臺,。該實驗管理平臺采用用戶登錄的模式,,因為有時候需要實驗報告上傳或者留言板等功能,所以采用用戶管理制度能更利于平臺的管理,,當(dāng)然老師的用戶權(quán)限要高于學(xué)生的權(quán)限,。該模塊主要是從數(shù)據(jù)庫中讀取數(shù)據(jù),通過數(shù)據(jù)的某項數(shù)值來辨認(rèn)是否為老師,,是則開啟某些老師特有的權(quán)限,,否則取消這些權(quán)限。用戶登錄的持續(xù)時間則是由session值來設(shè)置,,一般設(shè)置為2 h,。用戶登錄2 h以后,則會自動退出登錄,,需要用戶重新登錄,。具體的時長會根據(jù)具體需要再次確定。所有的用戶數(shù)據(jù)只能由管理員從服務(wù)器端的數(shù)據(jù)庫中讀取,,用戶只能獲取關(guān)于自己的信息,,如果用戶想獲取這些信息,可以在管理平臺中查詢,然后由服務(wù)器響應(yīng)請求將數(shù)據(jù)從服務(wù)器的數(shù)據(jù)庫中傳遞到瀏覽器頁面上,。
信息管理平臺,。登錄后的首頁內(nèi)容,實時熱點新聞,、老師簡介,、課程簡介以及留言板等其實屬于信息管理平臺的范疇。老師可以對新聞進(jìn)行添加,,對課程加以介紹以及對實驗報告進(jìn)行批改和對留言板進(jìn)行監(jiān)控等,。學(xué)生只能進(jìn)行訪問和上傳文檔,不能對平臺的具體內(nèi)容進(jìn)行修改,。課程介紹,、熱點新聞、老師簡介等數(shù)據(jù)是直接寫在前端部分,,這部分?jǐn)?shù)據(jù)是直接顯示在瀏覽器中的,,用戶并不需要提交請求便可獲得。但是實驗報告的批改和留言板等數(shù)據(jù)則是存儲在數(shù)據(jù)庫中的,。這個數(shù)據(jù)庫和用戶數(shù)據(jù)庫是關(guān)系型數(shù)據(jù)庫,,留言板與用戶表中的用戶ID或者學(xué)號(工號)綁定,,與用戶表不同的是,,留言板的內(nèi)容是用戶可以全部看到的。
理論學(xué)習(xí)平臺,。理論學(xué)習(xí)平臺的實驗內(nèi)容,、課程知識等都屬于理論學(xué)習(xí)部分的內(nèi)容,理論部分的在線教學(xué)是遠(yuǎn)程實驗的基礎(chǔ),,其作用甚至比虛擬實驗更重要,。因此在實驗管理平臺中,理論學(xué)習(xí)模塊是必不可少的,。只有當(dāng)學(xué)生通過理論學(xué)習(xí),,而且必須通過理論測試才可以進(jìn)行實驗。這些數(shù)據(jù)與課程介紹等數(shù)據(jù)一樣,,都是直接寫在前端,。用戶可以通過點擊進(jìn)入平臺,然后進(jìn)行測試,,由于主觀題開放性比較大,,電腦較難對其進(jìn)行評分,因此測試題目由選擇和判斷兩種題型組成,。用戶的答案正確與否也是在前端頁面直接進(jìn)行判斷,,不需要后端參與。當(dāng)檢測用戶合格后,會把用戶數(shù)據(jù)表中的remark數(shù)據(jù)修改為true,,遠(yuǎn)程實驗?zāi)K能否進(jìn)入主要依據(jù)用戶數(shù)據(jù)表中的remark值,,只有為true時才允許用戶進(jìn)入。
虛擬實驗平臺,。老師可以對實驗項目進(jìn)行增刪改,,而且可以通過時刻表來通知學(xué)生何時進(jìn)行實驗課程等。該平臺的內(nèi)容主要是由組態(tài)軟件將實驗項目組態(tài)完成后發(fā)布成網(wǎng)頁,,在該模塊調(diào)用,。該模塊能否進(jìn)入主要取決于該用戶在用戶數(shù)據(jù)表中的remark值是否為true。只有為true時才能進(jìn)行實驗,;若為false,,則平臺會提示用戶先在理論學(xué)習(xí)平臺進(jìn)行測試,通過后才能進(jìn)行實驗,。
整個虛擬實驗軟件系統(tǒng)需要各個模塊的相互合作才能組成一個完整的實驗管理平臺,,軟件系統(tǒng)的設(shè)計主要用到了APS.NET、JavaScript,、CSS以及HTML等網(wǎng)頁編程語言,。
3虛擬控制軟件系統(tǒng)的實現(xiàn)
虛擬實驗軟件系統(tǒng)的客戶端是瀏覽器,因此前端的設(shè)計頁面也是格外重要的,,具體的效果圖如圖5所示,。
4結(jié)束語
本文介紹了虛擬實驗軟件系統(tǒng)的原理和具體設(shè)計,,硬件使用DCS以及配套的組態(tài)軟件,,軟件系統(tǒng)的設(shè)計采用B/S結(jié)構(gòu),并且使用網(wǎng)頁編程技術(shù)來制作,。虛擬實驗軟件系統(tǒng)能夠有效地幫助用戶更好地進(jìn)行遠(yuǎn)程實驗,,并且有利于學(xué)校的管理,是高校虛擬實驗室的一種形式和延伸,。
參考文獻(xiàn)
?。?] 康榮學(xué),賈海波,張優(yōu)云. 基于Internet的遠(yuǎn)程實驗研究[J].計算機工程與應(yīng)用, 2002,38(16) :168170.
[2] 白雁,張娟,潘瑾,,等. 虛擬實驗室在高校儀器分析教學(xué)中的應(yīng)用[J].實驗技術(shù)與管理, 2011,,28(12): 169171,174.
?。?] 劉澤良. 發(fā)揮虛擬實驗室建設(shè)對實驗教學(xué)的促進(jìn)作用[J].實驗技術(shù)與管理,2011,28(7):193194,,197.
[4] 宋象軍. 虛擬實驗室在高校實驗教學(xué)中的應(yīng)用前景[J].實驗技術(shù)與管理,2005,,22(1):3537,,47.
?。?] 黃慕雄. 高校教學(xué)型虛擬實驗室建設(shè)的現(xiàn)狀與建議[J].電化教育研究,2005(9):7780.
[6] 曾志,尹建偉. 基于B/S架構(gòu)Web遠(yuǎn)程控制的研究及實現(xiàn)[J].計算機應(yīng)用與軟件,2005,,22(11):7074.