譚司庭,何 毅,徐富新
(中南大學 物理與電子學院,湖南 長沙410083)
大學物理實驗對培養(yǎng)學生動手能力及創(chuàng)造性思維能力非常重要,已成為理工科學生必修基礎課程之一,其核心就是要利用現(xiàn)有的儀器進行集成,對現(xiàn)有的物理現(xiàn)象、自己的創(chuàng)新思想等進行實驗驗證、設計和創(chuàng)新.因此,只有反復進行各種實驗,且根據(jù)現(xiàn)有的實驗進行改進是培養(yǎng)這些能力的重要條件.然而,由于高校擴招導致實驗資源的緊缺,以及物理實驗都是以某個具體實驗進行建設的,導致學生很難根據(jù)自己的興趣進行實驗驗證和新的實驗設計.目前,物理仿真實驗在各高校使用極為廣泛,包括中國科技大學制作的大學物理仿真實驗課件[1],以及清華大學、北方交通大學、華南理工大學、電子科技大學等高校于近幾年內(nèi)也相繼開發(fā)了具有較高水平的仿真軟件[2-3].這些軟件都是建立在具體實驗基礎之上,必須與具體的實驗儀器相配套,不利于大規(guī)模推廣.其次,如何對學生做的仿真實驗結(jié)果進行客觀、公正的評價,也是難點.文獻[4]提出了基于B/S的物理實驗系統(tǒng),取得良好的效果,但這種平臺需要較好的網(wǎng)絡平臺,也缺乏合適的實驗結(jié)果評價.
建構(gòu)主義認為[5],知識不是通過教師傳授得到的,而是學習者在一定的情境下,借助于他人的幫助,利用必要的學習資料,通過意義建構(gòu)的方式獲得的.我們以建構(gòu)主義理論為指導,以學生的學習過程和需求為中心,利用Flash的動畫制作的優(yōu)勢,從大學物理實驗中抽象出若干公用的元件,制作包括力學、電學、光學的儀器庫,通過這些儀器庫可構(gòu)建完全自主設計實驗的環(huán)境,并開發(fā)了實驗報告自動評價模塊,方便學生自主設計,形成物理實驗教學輔導系統(tǒng).該軟件在我校國家物理實驗教學示范中心使用,取得較好的效果.
物理實驗的教學流程如下:
1)上課前檢查預習情況,給出學生預習分.
2)教師講課.
3)學生實驗操作,輸入原始數(shù)據(jù).
4)教師查看原始數(shù)據(jù),根據(jù)操作情況給出學生操作分,學生的原始數(shù)據(jù)不能再修改.
5)學生處理實驗數(shù)據(jù),如果未完成可以保存,全部完成且自認為正確無誤時提交報告,教師對實驗報告進行評閱.
6)學生可查看自己的處理是否正確.
因此,仿真實驗平臺應該具有如下功能:
1)實驗教程.提供完整的實驗講義,相當于獨立的大學物理實驗電子教科書.
2)實驗講授.教師的電子教案,并配有一定的聲音和動畫效果.
3)實驗演示.主要是仿真實驗操作的錄像.
4)實驗仿真.真實地模擬了實驗儀器和實驗操作過程.
5)數(shù)據(jù)處理.提供數(shù)據(jù)記錄表格和計算公式,完成在計算機上記錄和運算實驗數(shù)據(jù),形成實驗報告.
用戶的角色包括學生、教師和系統(tǒng)管理員.
1)學生.可以進行實驗教程、實驗演示和實驗仿真等操作,還可以進行成績查閱、實驗報告管理等操作.
2)教師.除了也可以進行實驗教程、實驗演示和實驗仿真等操作,還可以實驗測試設置、成績管理、實驗報告評閱和分析.
3)管理員.負責儀器庫維護、數(shù)據(jù)庫管理、用戶管理等.
大學物理實驗仿真系統(tǒng)結(jié)構(gòu)如圖1所示.
圖1 大學物理實驗仿真平臺
利用Flash的動畫制作功能和內(nèi)嵌的面向?qū)ο蟮哪_本語言ActionScript制作儀器庫,其腳本代碼語句都遵循事先制定的統(tǒng)一接口標準,有良好的封裝性、獨立性和擴展性.
1)封裝性,主要表現(xiàn)為采用面向?qū)ο蟮某绦蛟O計,將儀器的所有特性,包括儀器的形狀、儀器的參量、可進行的動作等,都封裝到虛擬儀器的內(nèi)部,使用類和對象的概念使仿真儀器與真實儀器在屬性和操作上一致.仿真儀器不僅是逼真的圖形,而且其中含有功能代碼.
2)獨立性,每個仿真儀器是獨立的SWF動畫文件,所有仿真儀器合起來組成了“儀器庫”,而仿真儀器的使用不依賴于具體的實驗內(nèi)容,用戶可根據(jù)需要隨意組合仿真儀器做實驗.
3)擴展性,來源于程序設計是面向儀器而不是面向具體實驗,這樣只要是遵循事先制定的統(tǒng)一接口標準所制作的仿真儀器(SWF文件),就可以直接運用于仿真實驗環(huán)境中.顯然,擴充仿真儀器就等于增加仿真實驗.
ActionScript3.0能夠支持第3方提供的各種類包[6],包括PV3D,可以在SWF文件中顯示具有交互功能的三維物體.利用Autodesk公司的3DSMax軟件制作儀器的三維模型,導出成為PV3D可用的DAE格式文件,并編寫代碼加載至模擬軟件中.這些代碼包括創(chuàng)建MovieClip元件,在元件的第1幀中加載PV3D所需類文件、初始化PV3D相關參量、為舞臺添加偵聽鼠標事件,然后進行鼠標事件處理等.用戶可以在界面中按下并拖動鼠標實時旋轉(zhuǎn)三維模型,全方位觀察儀器結(jié)構(gòu).
以電壓表和電流表為例.圖2為C19-m A型毫安表,該表共有量程、內(nèi)阻4個參量.缺省參量分別為量程Im1=100 m A,內(nèi)阻Rm1=0.9Ω;量程Im2=50 m A,內(nèi)阻Rm2=1.4Ω.本儀器可以動態(tài)設定4個參量,這是設定參量的示例,通過c19_m A.swf?Im1=100 & Rm1=0.000 9 &Im2=50&Rm2=0.001 4,設定內(nèi)阻Rm1,Rm2(kΩ),Im1,Im2(m A)量程,要求Im1>Im2,Rm1<Rm2.該表零點隨機,測量值在0.5級內(nèi)隨機變化.
圖2 C19-m A型毫安表
圖3給出了居里點實驗的加熱爐及實驗樣品,圖4為居里點加熱爐的操作面板.可以根據(jù)需要選擇所需的樣品,并在加熱爐面板上進行參量動態(tài)設置和有關操作.
圖3 居里點實驗樣品
圖4 居里點加熱爐操作面板
在做實驗時,管理員或教師可以根據(jù)教學大綱的要求,以及設計性和創(chuàng)新性實驗的需求,通過修改INI文本文件選擇必要的實驗儀器,構(gòu)成實驗中的小儀器庫.在實驗中用戶通過從小儀器庫內(nèi)選擇儀器進行實驗,將各儀器組裝在一起就能進行實驗.
以電學為例,將電學儀器的各種特性,如儀器的阻值大小、內(nèi)部接線、形狀、旋鈕的動作等都封裝在儀器內(nèi)部.主程序讀取各儀器的電學特性,自動形成線性或非線性方程組,并選擇合適的方法求解物理量隨時間變化的方程組.對于復數(shù)問題求解,實際上就是對單一頻率的交流分量的求解,對非線性元件來說,直流和交流的非線性特性不同,所以先通過傅里葉變換,分離出直流和交流各分量的非線性特性.主程序解得各物理量,通知各儀器實現(xiàn)自己的動作,如燒表、表的指針偏轉(zhuǎn)、示波器顯示波形等.在使用ActionScript編寫程序時,主程序只要儀器之間的接口即可計算.對電學實驗來說,儀器之間是采用接線柱之間的接線來連接的.接線柱的種類較多,如同軸電纜等,應區(qū)別對待.儀器的電學特性用方程來表示,其變量是儀器的接線柱的電流和電勢.方程可以是線性的,也可是非線性的.可以理解,對有n個接線柱的儀器,必須提供n個方程,儀器的所有電學性質(zhì)都包含在這n個方程中.當儀器參量改變時,如旋轉(zhuǎn)旋鈕,則由儀器的程序改變儀器中的方程.主程序計算出儀器的接線柱的電流和電勢后,由儀器根據(jù)接線柱的電流和電勢的值計算自己所需的物理量,而后做出相應的動作.
仿真程序分為2種模式:指定模式和自由模式,由管理員通過修改INI文件決定,缺省的是自由模式.對自由模式來說,程序并不知道用戶要干什么,此時用戶可以進行任意的實驗,比較適合于設計性實驗和平時實驗.指定模式是管理員預先將要做的內(nèi)容寫入INI文件,對實驗的步驟進行安排.此時,用戶必須按實驗所需操作步驟進行實驗,否則程序提示錯誤,并對操作扣分.這種種模式適用于預習、考試.
圖5為示波器操作示意圖.左上角為仿真實驗操作菜單,分別可以進行儀器庫管理、儀器編輯和擺放、記錄數(shù)據(jù)、自動判斷數(shù)據(jù)正確性、自動評分等操作.我們可以把儀器從儀器庫中拿取到桌面后,進行連線,再對示波器進行簡單操作.
圖5 示波器操作示意圖
為了避免在Excel里面內(nèi)嵌Visual Basic Application語言導致Excel的不安全的問題[7],采用Visual Basic嵌入式Excel對象的方法,該方法學生無法直接接觸Excel文件,提高了安全性,同時保持了Excel的所有功能.把通用評分方法編入程序中,教師只要提供數(shù)據(jù)處理及標準處理的Excel模版,就能實現(xiàn)實驗報告自動評分.由于使用Excel進行數(shù)據(jù)處理需要用戶裝有Excel軟件,為了方便我們也提供網(wǎng)頁形式的報告處理方法,而網(wǎng)頁評分標準是由教師提供的標準Excel,程序自動生成,不需要教師編寫.
評分方法主要從如下幾個方面評分:
1)比較實驗數(shù)據(jù)與標準值.兩者相差超出給定范圍則扣分,標準值可以是固定值、通過公式運算的值,甚至可以是一種規(guī)則.該值反映測量結(jié)果的好壞.
2)數(shù)據(jù)計算的正確性.學生計算結(jié)果與計算機根據(jù)學生的原始數(shù)據(jù)計算的結(jié)果比較,兩者相差超出給定范圍則扣分.
3)有效數(shù)字.教師可以設定有效數(shù)字的允許范圍,超過該范圍則扣分.
4)百分數(shù).是否必須使用百分數(shù)表示,比如相對誤差.
5)最后結(jié)果的表示.判斷最后結(jié)果的表示是否正確.
第一次點擊“數(shù)據(jù)處理”,進入原始數(shù)據(jù)輸入.圖6是示波器實驗的一個原始數(shù)據(jù)的例子.
圖6 “示波器實驗”原始數(shù)據(jù)輸入
“保存報告”是將輸入的數(shù)據(jù)保存到服務器上,“提交報告”是在正確完成輸入數(shù)據(jù)后,將數(shù)據(jù)上傳到服務器上,在教師給了操作分后,不能再修改原始數(shù)據(jù),這相當“教師簽字”.
圖7 示波器數(shù)據(jù)處理部分
當教師給了操作分后,學生再次進入“數(shù)據(jù)處理”,則可以進行數(shù)據(jù)處理了,見圖7.完成數(shù)據(jù)處理就可以提交,沒有完成則保存.提交數(shù)據(jù)后,系統(tǒng)自動給出客觀分.第3次進入“數(shù)據(jù)處理”,就可以看到錯誤詳細情況了,如圖8所示.
8 學生拿到評閱客觀成績后的數(shù)據(jù)處理部分樣式圖
該軟件集成了基于儀器庫仿真實驗和評分系統(tǒng),經(jīng)過3年的測試,共有21 000多人次使用,程序運行良好.基于儀器庫的仿真實驗程序,實際使用價值強,操作方便,其優(yōu)越性明顯.學生通過使用該系統(tǒng)能夠直觀地預習、預做實驗,當報告提交后立即就可以拿到評閱的實驗報告,及時查看正確錯誤的詳細情況.由于客觀部分是由計算機自動評閱的,教師只需抽查學生報告情況,主觀部分評閱也方便快捷,工作量明顯減少了.
[1] 霍劍青,王曉蒲.大學物理仿真實驗和實驗教學的新模式[J].工科物理,1998,8(增):118-20.
[2] 石星軍.計算機仿真實驗教學的探索[J].青島大學學報,2000,13(3):107-110.
[3] 延明.現(xiàn)代電路仿真實驗教學的實踐[J].實驗室研究與探索,2002,21(3):87-88.
[4] 向東,何毅,郭萍,等.基于B/S模式的大學物理仿真實驗系統(tǒng)開發(fā)[J].數(shù)理醫(yī)學雜志,2004,17(2):183-184.
[5] 何克抗.信息技術(shù)與課程深層次整合的理論與方法[J].中國大學教學,2005(5):43-48.
[6] 陳剛,羌鈴鈴.使用Flash ActionScript實現(xiàn)樹節(jié)點信息局部顏色變化[J].人工智能及識別技術(shù),2009(14):97-99.
[7] 唐東煒.用VB、EXCEL實現(xiàn)實驗數(shù)據(jù)的計算機處理[J].中山大學學報論叢,2003,23(5):241-243.