劉曉東
[摘要]隨著社會的發展和技術的更新速度加快,為了達到較好的教學目標,需要對所學理論進行及時的實驗教學。應用計算機虛擬實驗系統,實驗室無需購買昂貴的實驗設備,可以再有限經費投入的條件下,實現大規模學生實驗的要求。基于此,本文對虛擬實驗模擬訓練系統進行相關研究。
[關鍵詞]虛擬實驗;計算機;創新教育
[中圖分類號]F224-39[文獻標識碼]A [文章編號]1672-5158(2013)06-0071-01
一、技術應用
系統為CS客戶端-服務器結構。該結構通過將任務合理分配到Client端和Server端,降低了系統的通訊開銷,可以充分利用兩端硬件環境的優勢。核心代碼均使用C#語言編寫。系統的開發環境為Visual Studio2005集成開發環境,用戶可以在該環境中使用C++、.NET、VB、C#等編程語言進行算法和系統的實現。系統的后臺數據庫采用的是SQL2005,它為數據管理與分析帶來了靈活性,允許單位在快速變化的環境中從容響應。
二、虛擬實驗平臺的實現
所有的虛擬設備和虛擬實驗項目都建立在一個統一的平臺之上。該平臺式必須是一個虛擬實驗的集成環境,通過該平臺,用戶可以對多種操作進行結合,完成各種復雜的工作任務。
最上邊的是菜單欄,通過菜單欄,用戶可以選擇文件操作,編輯方式,上傳下載等功能;菜單欄主要用來對平臺進行管理,方便用戶的個性化使用。左邊的是虛擬設備欄。該欄目根據虛擬設備的不同,將設備分放在不同的設備類別中,當用戶選擇某個類別時,可以展開所有的虛擬設備,通過鼠標操作可以方便的選擇和拖動虛擬設備。中間的核心區域是編輯區域,所有的虛擬實驗的操作都在該區域中實現,包括設備的拖動、連接和電路聯通等。右邊的欄目是輔助菜單欄。通過它,用戶可以了解自己的操作流程歷史記錄,通過點擊可以返回到記錄中的任何步驟。用戶還可以從該欄目中找到聯機幫助,通過幫助,學生可以解決系統中已經記錄的相關問題。最下面的欄目是狀態信息欄,它主要提供一些額外輔助信息,如登錄時間,當前的系統版本號,顯示方式,登錄方式等。
三、虛擬實驗的虛擬設備實現
虛擬設備是計算機虛擬實驗系統中的最基本元素,通過對它們的操作可以完成復雜的虛擬計算機實驗項目。虛擬實驗系統中的虛擬設備,每個設備都具有眾多的屬性,這些屬性對虛擬設備的基本型號以及可執行的操作給出了詳細的說明,有重要意義,需要對它們統一管理。采用面向對象的基本思想,本虛擬實驗系統統采用JavaBean組件技術開發虛擬設備,從而增加虛擬設別模型的可重用性。
在系統中,所有虛擬設備的公共屬性都定義在父類Component中。當構建一個新的元件時,需要從父類Component中繼承。因此,當開發或者設計具體設備時,只需要關注組件的特有屬性和功能方法,大大提高了組件的開發效率。當需要設定一個新的設備時,需要對該設備的各種屬性進行描述。為了方便表達和管理,對于每一個設備,使用XML文檔對其相應屬性進行存儲。XML是一種標記語言,具有可擴展性、結構化的特點。以CPU為例,為其建立的虛擬設備的XML屬性描述文件。描述了系統中的某CPU虛擬設備。
四、虛擬實驗的設備的多線程運行實現
在一個規模較大的虛擬實驗系統中,用戶需要使用多個虛擬元件才能完成一個實驗項目。這些虛擬元件有各自的獨立性又保持著相互聯系。在一個完整的實驗項目中,為了不影響各元件的獨立運行,需要對每個元件分配獨立的線程。線程的建立可以通過Java中的Thread類進行實現。
如果該設備需要和其他設備進行通信,則需要為該設備設置監聽端口。當學生將所有設備連接到一起時,可以開啟實驗,這時,各個線程將逐一啟動。num為系統中需要啟動的所有線程的數量的和,通過代碼的循環結構,使得每一個線程都被初始化,這里的線程對象VThread繼承了Thread線程類,當線程初始化結束后,可以通過run()方法來對某個線程所要執行的功能進行調用。以時鐘信號發生器為例,它是一個特定的虛擬設備元件,它繼承自Component父類,和線程父類。當一個類繼承了Thread類后,可以在線程中添加特定的執行代碼。
五、虛擬實驗交互功能實現
在本虛擬實驗系統中,交互功能分為兩個方面,一是用戶和虛擬設備之間的交互。二是虛擬設備之間的交互。這兩方面從不同的角度實現了系統的可操作性。
首先是用戶和虛擬設備之間的交互。這樣的交互過程是用戶和計算機軟件進行溝通的過程,通過鼠標動作,虛擬實驗系統能夠識別用戶的操作意圖,并且根據用戶的具體操作,對給定命令做出反應。用戶定義的操作有鼠標左鍵點擊、拖拽、鼠標右鍵點擊、鼠標雙擊等。這幾種鼠標操作可以實現全部的對可視化界面中的虛擬設備的管理。為了實現這一個過程,可以設置監聽器,對鼠標動作進行監聽,當監聽器注意到新的鼠標動作時,則通知系統做出合理的反應。對于鼠標時間,首先啟動一個監聽線程,該線程負責監聽鼠標在什么時間發生了什么樣的狀態改變。當狀態改變時,系統會逐一對可能的狀態進行判斷,當狀態為左鍵單擊時,啟動選擇虛擬設備函數;當狀態為右鍵單擊時,啟動顯示設備信息函數;當狀態為鼠標拖拽時,啟動移動虛擬設備函數;當狀態為鼠標雙擊時,啟動打開虛擬設備屬性面板函數。另一種重要的交互式虛擬設備之間的交互,即一個虛擬設備發生改變時,其他的虛擬設備也要發生相應的變化。這種虛擬設備間的觸發機制可以被理解為設備之間的交互。
在系統使用中,定義了三類角色,學生用戶、教師用戶和管理員用戶。每類用戶均實現了自己的功能。對于學生用戶,他們可以完成實驗選擇、實驗操作、實驗結果上傳和疑難問題提問等功能;對于教師用戶,他們可以完成問題解答、班級管理和實驗結果評閱等功能;管理員是系統的最高權限擁有者,他們可以對系統的整個運行進行管理,包括學生管理、教師管理和實驗模型管理。
六、結論及展望
由于計算機實驗設備昂貴、占地較大等因素,相對于傳統的實驗模式而言,虛擬實驗方式有其獨特的優勢,這些優勢包括:虛擬實驗只需要創建在普通微機上即可,縮小的占地面積,即使是極其復雜的、需要大量實驗設備的實驗也可以再微機上通過虛擬系統完成;由于虛擬系統采用了虛擬的方式,不用擔心硬件因為誤操作而引起的損壞問題,同時這種自由的操作方式大大地提高的學生學習熱情和創新能力,更加利于教學活動的開展。今后還需要在以下方面做出努力,以提高系統的性能和發展空間:
(1)系統對3D模型的應用較少,為了達到更好的教學效果和操作便捷性,將考慮使用3D模型對系統的虛擬設備進行構建。
(2)進一步加強系統的可視化操作能力。
參考文獻
[1]J.de LaP&,M,Alfonseca,Visual Interactive Simulation for DistanceEducation,SIMULATION,2003,79(1),19-34
[2]劉井利,基于WWW模式的虛擬實驗室系統,廣東職業技術師范學院學報,2000(4)
[3]易小琳,王鑫,網上計算機系統虛擬實驗室的研究,計算機工程,2002,28(11),243-244