蔣偉杰
(陽光學院 信息工程學院, 福州 350015)
在線虛擬仿真實驗平臺架構設計與實現
蔣偉杰
(陽光學院 信息工程學院, 福州 350015)
設計了一種虛擬仿真實驗平臺架構,該架構基于B/S結構,能夠集中管理實驗資源,支持靈活擴展實驗項目。在平臺前端能夠進行實驗操作,通過在服務器端運行實驗邏輯后反饋回前端展示實驗的仿真過程和實驗現象,支持記錄和評定實驗操作,并實現了計算機組成原理模型機的虛擬實驗實例。
虛擬仿真實驗;實驗平臺;B/S結構;模型機
虛擬仿真實驗是在計算機上利用虛擬現實、多媒體、人機交互等技術手段構建高度仿真的虛擬現實環境和實驗對象,使用者可以在這個環境中模擬真實的環境并開展實驗,完成各種實驗項目。虛擬仿真實驗可以呈現實驗過程中的信息流動、甚至可以將不可見的微觀結構以視覺方式展示,相較于傳統實驗,虛擬仿真實驗不受時空限制,并且可以完成真實實驗設備不具備或難以實現的教學內容[1]。虛擬仿真實驗教學是教育信息化的重要組成部分,高校開展的虛擬仿真實驗平臺建設與真實實驗教學互為補充,有利于提高高校實驗教學信息化水平,提升學生參加實驗的自主性,為學生開展探究性學習、自主實驗和創新實踐提供了先進手段、開放平臺和優質資源[2]。近年來,教育部陸續建立了數百個國家級虛擬仿真實驗教學中心,同時國內多家高校和企業也致力于虛擬實驗教學的研究,形成了一系列虛擬實驗教學系統和資源[3]。然而,現有的虛擬實驗教學僅局限于較小的地域范圍,其開放性和實用性都還不夠,特別是難以適應當前大規模在線教育的環境和需求,暫無法形成良好的相互促進。針對以上不足,本文提出并實現了一種基于B/S結構的虛擬仿真實驗平臺,該平臺具有良好的可擴展性、交互性以及虛擬實驗教學管理功能。
實驗平臺的主要功能包括實驗資源分配、學生完成實驗、教師批改實驗,可分為3種用戶:管理員、教師和學生。管理員用戶負責管理虛擬實驗的項目,審核教師和學生用戶,搭配好實驗項目、教師、學生三者之間的對應關系等;教師用戶能夠在自己負責的實驗項目范圍內查看相應的學生實驗記錄,包括完成該實驗項目的關鍵過程、時間,最后給出該學生在這個實驗項目上的成績評定;學生用戶可以進入系統選擇需要完成的實驗項目,根據實驗界面上的交互元素進行實驗操作,觀察實驗現象,查看并記錄實驗數據,逐步完成實驗項目,還可以查看以往的實驗記錄和實驗成績。
本文所實現的網絡虛擬實驗平臺架構如圖1所示,由客戶端模塊、服務器端模塊、通信模塊及庫模塊等4部分構成。用戶通過客戶端即瀏覽器登錄與服務器端進行交互,實現平臺功能。

圖1 虛擬實驗平臺架構
庫模塊包括實驗界面庫、實驗運行邏輯庫以及數據庫,其中實驗界面庫、實驗運行邏輯庫使用面向對象的方式抽象了各實驗項目中組件的靜態屬性、動態屬性和對應實驗過程中的操作,實驗界面庫由Javascript前端語言實現,服務對象為客戶端程序。實驗運行邏輯庫由服務器端語言實現,采用Webservice方式接入為服務器端程序提供服務,從而靈活掛接不同的實驗項目。數據庫內主要有用戶表、實驗記錄表、實驗分配表等內容,分別存儲對應用戶類型和權限,學生完成的實驗項目、完成時間、實驗成績、批閱教師,以及項目、教師、學生的對應關系。
客戶端模塊采用HTML5+Javascript來實現虛擬實驗的運行邏輯和實驗過程中的數據可視化,可分為數據呈現、過程展示及交互方式3類功能。數據呈現是指通過HTML5中的Canvas來繪制所調用的實驗界面庫中的對應實驗項目組件和相關的數據;過程展示用來表現實驗的動態過程,通過將當前實驗狀態和服務器回發的結果狀態進行比較,檢查數據產生變化的組件,調用實驗界面庫中相對應的動畫效果,如數據流動、位置移動、顏色漸變等;交互方式提供了學生操作實驗的方式,如按鈕、拖拽、旋轉、連接、文本輸入等模擬推動實驗進程的方式。
服務器端模塊由權限審核、項目選擇、實驗狀態判定以及實驗記錄4個部分組成。權限審核針對用戶,為不同類型的用戶提供不同的界面和操作;項目選擇針對學生用戶,判斷當前學生所進行的實驗項目,選擇掛接不同的實驗運行邏輯庫為其服務;實驗狀態判定判斷學生是否進行了有效的實驗操作,判斷當前的實驗進程;實驗記錄與數據庫部分進行數據交互,存儲或提取用戶信息、實驗狀態等內容。
通信模塊包含通信協議、數據封裝程序、數據解析程序3塊內容。通信協議制定和實現了實驗操作過程中客戶端與服務器端的通信數據內容,規定通信的數據內容包含用戶信息、實驗項目信息、實驗操作信息以及實驗項目狀態信息等內容;數據封裝程序實現通信內容按照協議格式打包和發送;數據解析程序接受通信內容,按協議讀取相應的信息和調用對應的程序模塊。
以計算機組成原理課程的模型機實驗為例。在該實驗過程中學生只是按照實驗步驟用導線將各單元信號連接起來,然后按要求撥動開關,觀察各信號指示燈來完成實驗,不能為學生提供計算機內部結構及工作過程的直接感受[4-7]。而在虛擬仿真實驗中,學生在指令執行的過程中能夠讓系統根據要求動態顯示指令執行時數據的變化和流動過程,可進一步加深對指令執行過程的理解[4],從而更容易達到實驗的目的。本實驗中的模型機以文獻[8]所提供的模型機為原型,結構如圖2所示。
該模型機中ALU為運算器,DR1和DR2為運算數據鎖存器;A為累加器,CY是進位標志,ZD是零標志;Ri為寄存器組(共4個8位寄存器);PC為程序計數器,IR1、IR2為指令寄存器;M為內存;uPC、uIR、uM分別為微程序計數器、微指令寄存器及微內存;其他為這些部件的控制和時序信號。

圖2 模型機結構
模型機實驗要求學生能夠根據模型機所提供的硬件邏輯自行設計其微指令、微程序以及指令,實驗界面不僅要能顯示模型機的部件、各個部件的數據及其控制信號,還需要支持學生自行編輯微指令和指令。因此,本文在實驗界面庫的模型機實驗中提供了模型機各部件的繪制坐標、部件數據的顯示位置,同時還支持上傳自行編輯的指令和微指令二進制代碼。在實驗界面上還設置了指令執行的操作方式,具體實現界面如圖3所示。

圖3 模型機實驗界面
模型機的仿真實際上是硬件邏輯的仿真,是通過檢測當前微指令中的微信號,根據微信號的值來控制數據在各個部件的寄存器中進行流動和變化,最終改變寄存器中的數據。若按照6個時序來進行仿真,則各個時序所對應的微操作如圖4所示。

圖4 各時序對應微操作
當命令中需要執行一條微指令時,硬件邏輯程序自動按照時序1至時序6的順序檢測微指令中對應的微信號并完成相應的微操作。
本實驗項目的通信內容包含3部分,分別是模型機的指令內容、客戶端交互操作對應的命令類型和通信內容的結束符。其通信格式按照數據封裝和解析模塊所制定的格式,即將模型機寄存器和存儲器內的數據用“,”號隔開;通信內容的最后部分是操作命令號,分別是0 表示單微操作,1表示指令執行,2表示連續執行。
虛擬仿真實驗是現代教育信息化的重要內容,是實驗教學改革的必然趨勢。本文提出的實驗平臺架構具有靈活的擴展性、用戶友好的交互性以及良好的開放性和實用性,有助于激發學生的學習興趣,提升學生的學習自主性。同時,實驗平臺的維護成本低、利用率高,易于整合優質實驗教學資源,高效管理實驗教學資源,可實現校內外、本地區及更廣范圍內的實驗教學資源共享,滿足多地區、多學校和多學科專業的虛擬仿真實驗教學的需求。本實驗平臺基于B/S架構,在實驗過程中能夠實現跟蹤和反饋實驗的操作過程,彌補在線教育課程在實踐類型課程方面的不足和缺陷,對當今大規模在線教育的發展方面具有重要的意義。
[1] 李林,陳宇峰,李鳳霞,等.虛擬實驗在大學計算機課程教學改革中的研究[J].中國教育信息化,2017,(8):61-63.
[2] 王衛國,胡今鴻,劉宏.國外高校虛擬仿真實驗教學現狀與發展[J].實驗室研究與探索,2015(5):214-219.
[3] 李林,陳宇峰,李鳳霞.開放式虛擬實驗教學平臺研究與實踐[J].中國教育技術裝備,2017(10):33-34,39.
[4] 蔣偉杰.基于C/S結構的計算機組成原理模型機仿真系統[J].信息通信,2015(5):72-73.
[5] 馬沖,趙勰,范贊.基于C/S架構的小型人力資源管理系統設計與實現[J].信息技術,2010(2):104-107.
[6] 胡怡之.基于C/S模式的工程信息管理系統的設計實現[J].鐵道工程學報,2012,29(9):93-97.
[7] 賈珺.基于C/S結構的醫院門診管理信息系統設計與開發[J].計算機與現代化,2011(4):24-28.
[8] 白中英.計算機組成原理[M].4版.北京:科學出版社,2010.
DesignandImplementationofaOnlineVirtualSimulationExperimentPlatform
JIANG Weijie
(School of Information Engineering, Sunshine College, Fuzhou 350015, China)
A virtual simulation experiment platform architecture is designed. This architecture is based on the B/S structure, and it can centrally manage lab resources, and support flexible extension experiment project. Experimental operation can be carried out at the front end of the platform, by running after experimental logic on the server side, back to the front to show the experiment simulation process and the experimental phenomena, and it also supports recording and evaluation of experimental operations. Finally, the paper realizes the virtual experiment example of computer component principle model machine.
virtual simulation experiment; experiment platform; B/S structure; model machine
2017-09-22
福建省級實驗教學示范中心項目“在線虛擬仿真實驗平臺架構設計”(2015SJSY02)
蔣偉杰(1981—),男,福建仙游人,碩士,講師,主要從事智能計算、仿生算法、計算機視覺及圖像處理等方面研究,E-mail:2464614552@qq.com。
蔣偉杰.在線虛擬仿真實驗平臺架構設計與實現[J].重慶理工大學學報(自然科學),2017(12):156-159.
formatJIANG Weijie.Design and Implementation of a Online Virtual Simulation Experiment Platform[J].Journal of Chongqing University of Technology(Natural Science),2017(12):156-159.
10.3969/j.issn.1674-8425(z).2017.12.027
TP216
A
1674-8425(2017)12-0156-04
(責任編輯楊黎麗)