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