張 建
摘 要:為了解決物理實(shí)驗(yàn)教學(xué)中存在的種種弊端,我校構(gòu)建了物理虛擬仿真實(shí)驗(yàn)室。文章論述了物理虛擬仿真實(shí)驗(yàn)室的功能與設(shè)計(jì)思路,并對虛擬仿真實(shí)驗(yàn)室的系統(tǒng)結(jié)構(gòu)、開發(fā)技術(shù)的選擇和開發(fā)流程等做了詳細(xì)說明,最后結(jié)合實(shí)例論述了物理虛擬仿真實(shí)驗(yàn)室的開發(fā)。
關(guān)鍵詞:實(shí)驗(yàn)教學(xué) 虛擬仿真實(shí)驗(yàn)室 Cult3dFlash
中圖分類號(hào):G434 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1673-8454(2009)13-0022-03
目前物理實(shí)驗(yàn)教學(xué)主要還是采用傳統(tǒng)實(shí)驗(yàn)的教學(xué)模式。學(xué)習(xí)者按照教師的安排來完成實(shí)驗(yàn),實(shí)驗(yàn)以小組的形式進(jìn)行,一組內(nèi)的學(xué)生數(shù)量往往比較多,在有限的一節(jié)課內(nèi)不可能使每一位學(xué)習(xí)者都能從頭到尾地完成實(shí)驗(yàn);學(xué)生只有在規(guī)定時(shí)間范圍內(nèi)才允許到實(shí)驗(yàn)室實(shí)驗(yàn),學(xué)習(xí)者對實(shí)驗(yàn)的預(yù)習(xí)和復(fù)習(xí)往往是通過閱讀相關(guān)文字資料來完成。傳統(tǒng)的物理實(shí)驗(yàn)教學(xué)面臨著巨大的挑戰(zhàn),隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和虛擬現(xiàn)實(shí)技術(shù)的發(fā)展,虛擬實(shí)驗(yàn)室應(yīng)運(yùn)而生,它的出現(xiàn)主要是針對傳統(tǒng)實(shí)驗(yàn)教學(xué)中存在的弊端而設(shè)計(jì)和開發(fā)的,目的在于盡可能地降低客觀條件對學(xué)習(xí)者的限制,合理有效地解決傳統(tǒng)實(shí)驗(yàn)教學(xué)中存在的問題,為進(jìn)一步加強(qiáng)實(shí)驗(yàn)教學(xué)環(huán)節(jié)提供強(qiáng)有力的手段。
我們認(rèn)為一個(gè)有效的物理虛擬仿真實(shí)驗(yàn)室的建立,必須集教學(xué)、操作演示、虛擬實(shí)驗(yàn)、練習(xí)測試等為一體。除了應(yīng)具備網(wǎng)絡(luò)特征的基本要求外,還應(yīng)該達(dá)到以下幾方面的要求:
(1)能夠?yàn)閷W(xué)習(xí)者提供逼真的虛擬實(shí)驗(yàn)場景;
(2)能夠讓學(xué)習(xí)者任意操作虛擬實(shí)驗(yàn)場景中的儀器設(shè)備;
(3)能夠?qū)?shí)驗(yàn)過程、實(shí)驗(yàn)現(xiàn)象進(jìn)行實(shí)時(shí)模擬和再現(xiàn);
(4)具有與實(shí)驗(yàn)教學(xué)要求相適應(yīng)的輔助功能。如明確實(shí)驗(yàn)?zāi)康牡墓δ?、掌握?shí)驗(yàn)原理的功能、實(shí)驗(yàn)指導(dǎo)和演示的功能、練習(xí)測試的功能以及填寫實(shí)驗(yàn)報(bào)告的功能等。
一、物理虛擬仿真實(shí)驗(yàn)室的設(shè)計(jì)
1.虛擬仿真實(shí)驗(yàn)室的結(jié)構(gòu)模型
該虛擬仿真實(shí)驗(yàn)室采用的是基于Web的B/S模式。在服務(wù)器端:Web Server是服務(wù)器端的基礎(chǔ)模塊,它能夠接收客戶端的請求并響應(yīng),返回虛擬的實(shí)驗(yàn)場景。虛擬實(shí)驗(yàn)是服務(wù)器端最主要的部分,包括虛擬實(shí)驗(yàn)儀器、實(shí)驗(yàn)步驟等單元模塊;在瀏覽器端:瀏覽器是學(xué)習(xí)者進(jìn)行虛擬實(shí)驗(yàn)的窗口,虛擬實(shí)驗(yàn)所有的操作都是在瀏覽器中進(jìn)行的。學(xué)習(xí)者可以通過鼠標(biāo)、鍵盤等輸入輸出設(shè)備在虛擬實(shí)驗(yàn)場景中漫游,任意操作虛擬的實(shí)驗(yàn)儀器,獲得更加真實(shí)、直觀的體驗(yàn)。同時(shí),在瀏覽器端還需要一些插件,如Cult3d、Flash Player插件等等,它們是嵌入到瀏覽器中的插件,是完成虛擬實(shí)驗(yàn)的基礎(chǔ),所有的虛擬場景都通過插件進(jìn)行解釋并渲染在瀏覽器之中。
2.虛擬仿真實(shí)驗(yàn)室的內(nèi)容結(jié)構(gòu)
該虛擬仿真實(shí)驗(yàn)室覆蓋了物理實(shí)驗(yàn)教學(xué)大綱所規(guī)定的所有內(nèi)容,在內(nèi)容設(shè)置上采用了教學(xué)大綱中的實(shí)驗(yàn)?zāi)J?即主要內(nèi)容分為:實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)原理、實(shí)驗(yàn)步驟、數(shù)據(jù)處理、練習(xí)測試和實(shí)驗(yàn)報(bào)告等幾個(gè)主要部分。在結(jié)構(gòu)上將虛擬仿真實(shí)驗(yàn)室劃分為基本模塊和附加模塊兩部分以及它們的子單元模塊,如圖1所示。
(1)基本模塊
在基本模塊中,包含了以下幾個(gè)子單元模塊:實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)原理、實(shí)驗(yàn)儀器、實(shí)驗(yàn)步驟以及數(shù)據(jù)處理等。以“實(shí)驗(yàn)儀器”、“實(shí)驗(yàn)步驟”和“數(shù)據(jù)處理”子模塊為例,說明各子單元模塊的功能。
1)實(shí)驗(yàn)儀器模塊:為了讓學(xué)習(xí)者在做實(shí)驗(yàn)前掌握各種實(shí)驗(yàn)儀器的性能和使用方法,本模塊給出了整個(gè)實(shí)驗(yàn)中用到的所有儀器設(shè)備,并且呈現(xiàn)的方式可以使學(xué)習(xí)者360度全方位的觀察;為了方便學(xué)習(xí)者的學(xué)習(xí),可以對三維立體的實(shí)驗(yàn)儀器進(jìn)行任意的縮放、移動(dòng)和旋轉(zhuǎn)甚至是進(jìn)入到實(shí)驗(yàn)儀器的內(nèi)部。
2)實(shí)驗(yàn)步驟模塊:由于實(shí)驗(yàn)步驟模塊關(guān)系到學(xué)習(xí)者是否能將在虛擬實(shí)驗(yàn)室中獲得的技能向真實(shí)的操作能力遷移,所以對實(shí)驗(yàn)步驟模塊設(shè)計(jì)的要求是盡可能提供一個(gè)與真實(shí)實(shí)驗(yàn)相近的虛擬實(shí)驗(yàn)環(huán)境,學(xué)習(xí)者可以自由操作和調(diào)試實(shí)驗(yàn)儀器,同時(shí)系統(tǒng)根據(jù)學(xué)習(xí)者的操作情況給出豐富的視覺反饋信息。在虛擬實(shí)驗(yàn)室中,學(xué)習(xí)者可以反復(fù)進(jìn)行實(shí)驗(yàn)。另外,學(xué)習(xí)者的學(xué)習(xí)不僅僅是在用眼睛觀察,而是一個(gè)集仔細(xì)觀察、自主操作和認(rèn)真思考為一體的過程。
3)數(shù)據(jù)處理模塊:實(shí)驗(yàn)數(shù)據(jù)是對實(shí)驗(yàn)定量分析的依據(jù),是探索、驗(yàn)證物理規(guī)律的第一手資料。在系統(tǒng)誤差一定的情況下,實(shí)驗(yàn)數(shù)據(jù)處理得恰當(dāng)與否,會(huì)直接影響偶然誤差的大小,所以對實(shí)驗(yàn)數(shù)據(jù)的處理是實(shí)驗(yàn)過程的重要內(nèi)容之一。因此,在該虛擬實(shí)驗(yàn)室中,需要考慮設(shè)置數(shù)據(jù)處理模塊。當(dāng)學(xué)習(xí)者完成實(shí)驗(yàn)操作并記錄下實(shí)驗(yàn)數(shù)據(jù)后,能通過該模塊對實(shí)驗(yàn)數(shù)據(jù)進(jìn)行處理和分析。由于學(xué)習(xí)者初始能力、接受能力以及各自特點(diǎn)不同,系統(tǒng)提供了兩種呈現(xiàn)方式供學(xué)習(xí)者選擇:一種方式是動(dòng)畫演示模式。在演示過程中,詳細(xì)地向?qū)W習(xí)者展示對實(shí)驗(yàn)數(shù)據(jù)處理的來龍去脈;另一種方式是自主探索模式。學(xué)習(xí)者在使用過程中,可以自主輸入?yún)?shù),在系統(tǒng)輔助條件下,獨(dú)立地推算出實(shí)驗(yàn)結(jié)果、總結(jié)出實(shí)驗(yàn)規(guī)律。
(2)附加模塊
虛擬實(shí)驗(yàn)室中的一些附加模塊,如課程簡介單元模塊可以向?qū)W習(xí)者提供諸如教學(xué)大綱、學(xué)習(xí)要點(diǎn)、教學(xué)實(shí)施方案等有關(guān)開展實(shí)驗(yàn)教學(xué)活動(dòng)的基本信息;練習(xí)測試模塊可以向?qū)W習(xí)者提供診斷性練習(xí)、測試評價(jià)等內(nèi)容,通過練習(xí)和測試,讓學(xué)習(xí)者及時(shí)強(qiáng)化所學(xué)的知識(shí),并且增強(qiáng)學(xué)習(xí)者與虛擬實(shí)驗(yàn)室之間的交互,增強(qiáng)學(xué)習(xí)者的參與感;仿真實(shí)驗(yàn)室模塊:可以向?qū)W習(xí)者提供一個(gè)虛擬實(shí)驗(yàn)環(huán)境,這樣不僅保持了實(shí)驗(yàn)的完整性,而且注意了真實(shí)實(shí)驗(yàn)場景中的實(shí)驗(yàn)情況。在加入場景因素的基礎(chǔ)上,保持了學(xué)習(xí)者自由度與高交互的特性,大大增強(qiáng)了學(xué)習(xí)者的沉浸感。該單元模塊完全模擬了實(shí)驗(yàn)的操作、過程、現(xiàn)象,能夠反映出實(shí)驗(yàn)的本質(zhì)。
二、物理虛擬仿真實(shí)驗(yàn)室的開發(fā)
1.虛擬仿真實(shí)驗(yàn)室的技術(shù)選擇
(1)各種開發(fā)技術(shù)的比較(如表1所示)
(2)選用Cult3d和Flash作為主要開發(fā)工具
本虛擬實(shí)驗(yàn)室選用的主要是Cult3d和Flash這兩種開發(fā)工具,這是由它們各自的特點(diǎn)以及系統(tǒng)本身的要求所決定的。從目前網(wǎng)絡(luò)條件來看,在二維表現(xiàn)層面系統(tǒng)選用Flash作為開發(fā)工具,在三維表現(xiàn)層面系統(tǒng)選用Cult3d作為開發(fā)工具。在有些地方為了更加方便學(xué)習(xí)者的使用,本實(shí)驗(yàn)室還通過JavaScript在Cult3d和Flash之間建立通信。
2.虛擬仿真實(shí)驗(yàn)室的開發(fā)流程
虛擬仿真實(shí)驗(yàn)室的整個(gè)開發(fā)流程可以分為以下三個(gè)過程:
(1)制作素材
素材的制作主要是針對實(shí)驗(yàn)儀器的建模,它是開發(fā)的基礎(chǔ)。它可通過3DMAX工具來完成。由于制作出來的素材分別要導(dǎo)入Cult3d和Flash環(huán)境中,因此需要將其導(dǎo)出為兩種格式:*.c3d和*.png。由于在其后的Flash添加交互過程中,想要改變實(shí)驗(yàn)儀器的視角很難,因此在導(dǎo)出*.png靜止的圖像時(shí),需要注意在3DMAX中將實(shí)驗(yàn)中涉及的所有物件都最好放在同一個(gè)攝像機(jī)下,以保證其統(tǒng)一的視角。
(2)添加交互
交互的添加是開發(fā)過程中的重點(diǎn)和難點(diǎn),根據(jù)實(shí)現(xiàn)效果的不同,可以將其分為兩種方式:一種是添加三維交互,可通過Cult3d工具來實(shí)現(xiàn);另一種是添加二維交互,可通過Flash工具來實(shí)現(xiàn)。
(3)集成發(fā)布
將Cult3d和Flash制作出的文件插入到網(wǎng)頁中,可以通過Dreamweaver工具來完成,在其中還可以添加一些JavaScript特效。所有工作都完成后,最后發(fā)布試運(yùn)行。
3.虛擬仿真實(shí)驗(yàn)室各單元模塊的實(shí)現(xiàn)
選取“實(shí)驗(yàn)儀器”單元模塊為例,描述其開發(fā)過程:
“實(shí)驗(yàn)儀器”單元模塊重點(diǎn)在于實(shí)驗(yàn)儀器的三維演示,它采用Flash、Cult3d與JavaScript三種技術(shù)進(jìn)行聯(lián)合開發(fā)。為了讓學(xué)習(xí)者更好地感受到虛擬實(shí)驗(yàn)界面的整體性,決定采用如圖2所示的界面結(jié)構(gòu),即將整個(gè)界面分為兩部分,左部分用Cult3d技術(shù)實(shí)現(xiàn)儀器模型的三維展示,右部分用Flash技術(shù)給出其二維文字介紹,并且可以通過JavaScript為中介對Cult3d中的模型進(jìn)行相關(guān)操作,以方便學(xué)習(xí)者的觀察和學(xué)習(xí)。Cult3d動(dòng)畫與Flash動(dòng)畫均采用相同的背景顏色,以保持界面風(fēng)格的一致性。
下面以“滑線變阻器”為例介紹實(shí)驗(yàn)儀器模塊的實(shí)現(xiàn)過程。界面如圖2所示。
主要的制作過程如下:
(1)3Dmax建模
三維模型的制作十分重要,直接關(guān)系到虛擬實(shí)驗(yàn)室中三維模型的逼真程度和最后成品數(shù)據(jù)量的大小,所以在導(dǎo)出前,應(yīng)該盡量對其進(jìn)行優(yōu)化處理。另外,制作3D模型的時(shí)候應(yīng)該特別注意儀器哪些部件是可以運(yùn)動(dòng)的(如旋轉(zhuǎn)、平移),哪些部件是固定的。如果可以運(yùn)動(dòng),就需要將其單獨(dú)做成一個(gè)零部件,這是為了以后可以為它單獨(dú)設(shè)置運(yùn)動(dòng)動(dòng)作。最好將具有相同運(yùn)動(dòng)規(guī)律(靜止或者能夠同時(shí)移動(dòng)、旋轉(zhuǎn))的部件歸為一組,這樣便于管理,也可以相應(yīng)降低在后續(xù)開發(fā)步驟中的工作量。
(2)導(dǎo)入Cult3d
將3Dmax文件導(dǎo)出為*.c3d格式,3Dmax默認(rèn)并不能導(dǎo)出為*.c3d文件,因此需要安裝Cult3d Exporter插件,安裝此插件后可以把3D建模軟件制作的模型導(dǎo)出為*.c3d格式。
(3)添加交互
在Cult3d中,Scene Graph窗口內(nèi)可以看到該模型中的各個(gè)組成部分,在3Dmax里面有的節(jié)點(diǎn)都會(huì)出現(xiàn),其下方是Action窗口,包含了Cult3d所有可以執(zhí)行的動(dòng)作,其中最常用的有移動(dòng)、旋轉(zhuǎn)、放大、縮小等。除此之外,還可以播放在建模軟件中制作好的動(dòng)畫、添加聲音、改變攝像機(jī)視角、設(shè)置鼠標(biāo)形狀、隱藏或顯示某個(gè)組件、改變場景背景等。充分、合理地運(yùn)用這些動(dòng)作,可以設(shè)計(jì)出具有相當(dāng)水準(zhǔn)的三維交互動(dòng)畫。另外一個(gè)重要的窗口是Event Map,它提供了觸發(fā)事件,以觸發(fā)Action窗口中所列出的動(dòng)作,例如可以單擊一個(gè)物體以移動(dòng)它。Cult3d提供的事件類型相當(dāng)豐富,有左鍵單擊、右鍵單擊、中鍵單擊、敲擊鍵盤按鍵等。一個(gè)典型的交互動(dòng)畫的實(shí)驗(yàn)步驟為:事件→動(dòng)作→三維模型的某個(gè)部件,也就是用事件去觸發(fā)某些部件的某個(gè)動(dòng)作。
三、物理虛擬仿真實(shí)驗(yàn)室的運(yùn)行情況
選取“數(shù)據(jù)處理”和“虛擬實(shí)驗(yàn)室”單元模塊為例,說明物理虛擬實(shí)驗(yàn)室的運(yùn)行情況。
1.數(shù)據(jù)處理單元模塊
在該模塊中,可以允許學(xué)習(xí)者輸入?yún)?shù),自主決定坐標(biāo)系的原點(diǎn)和單位距離;將在“實(shí)驗(yàn)步驟”過程中讀取的數(shù)據(jù)輸入到該模塊中,將對應(yīng)的記錄點(diǎn)一個(gè)一個(gè)地依次標(biāo)注在作圖紙上,然后還可以根據(jù)標(biāo)注的點(diǎn),用鼠標(biāo)做出一條直線;最后任意選取直線上距離較遠(yuǎn)的兩點(diǎn)并讀出其坐標(biāo)值。
2.仿真實(shí)驗(yàn)室模塊(如圖3所示)
該模塊是對真實(shí)實(shí)驗(yàn)環(huán)境的一個(gè)模擬。包括對周圍環(huán)境的模擬:實(shí)驗(yàn)室門的打開、實(shí)驗(yàn)臺(tái)櫥門的打開、櫥門玻璃的拖動(dòng)、窗簾打開等效果;實(shí)驗(yàn)過程的模擬:儀器擺放、儀器電路連接、開關(guān)閉合、滑線變阻器滑片滑動(dòng)、更換濾色鏡等;實(shí)驗(yàn)現(xiàn)象的模擬:光線的傳播、電子的逸出、電壓表電流表指針的偏轉(zhuǎn)等。
四、結(jié)論
本虛擬仿真實(shí)驗(yàn)室的構(gòu)建,目的在于解決傳統(tǒng)實(shí)驗(yàn)教學(xué)中存在的種種弊端。該系統(tǒng)的開發(fā)經(jīng)歷了需求分析、教學(xué)分析、結(jié)構(gòu)分析、內(nèi)容分析以及各模塊的開發(fā)等過程。經(jīng)過試運(yùn)行,學(xué)習(xí)者普遍反映良好,認(rèn)為該虛擬仿真實(shí)驗(yàn)室的界面友好,操作方便,極大地提高了他們實(shí)驗(yàn)興趣。本虛擬實(shí)驗(yàn)室適合于對理工科教學(xué)中儀器操作類實(shí)驗(yàn)的模擬,是現(xiàn)階段虛擬仿真實(shí)驗(yàn)技術(shù)中系統(tǒng)要求低、軟硬件投入少、具有較好實(shí)驗(yàn)教學(xué)效果的一種解決方案。?筅
參考文獻(xiàn):
[1]蔡朝暉.Flash MX PROFESSIONAL 2004多媒體課件制作教程[M].北京:中國鐵道出版社, 2005.
[2]蘇威洲.實(shí)現(xiàn)網(wǎng)絡(luò)三維互動(dòng)——Cult3D應(yīng)用指南[M].北京:清華大學(xué)出版社,2001.