《電子技術應用》
您所在的位置:首頁 > 嵌入式技术 > 设计应用 > 中学化学教学辅助系统设计
中学化学教学辅助系统设计
来源:微型机与应用2013年第5期
顾和明,杨 涵
(长江师范学院 数学与计算机学院,重庆 408100)
摘要: 针对现有化学教学辅助软件存在的不足,提出了化学辅助教学系统的研究和设计思路,规划了实用的功能。提出了一种复杂化学方程式配平算法,阐述了根据分子式计算分子量的计算方法,介绍了使用公式变换实现分子球棍模型制作的方法。
Abstract:
Key words :

摘  要: 針對現有化學教學輔助軟件存在的不足,提出了化學輔助教學系統的研究和設計思路,規(guī)劃了實用的功能。提出了一種復雜化學方程式配平算法,闡述了根據分子式計算分子量的計算方法,介紹了使用公式變換實現分子球棍模型制作的方法。
關鍵詞: 化學輔助教學;元素周期表;分子量計算;方程式配平;3D球棍模型

 在化學課堂教學中運用信息技術,可以激發(fā)學生學習興趣,活躍思維,提高學習效率,增強求知欲,有利于培養(yǎng)學生的創(chuàng)新精神和科學探究能力。運用信息技術還可以降低教育工作者的勞動強度,提高工作效率。因此,近十年來編制了不少化學輔助教學類軟件,在化學教學中發(fā)揮了不小的作用。這些軟件大多數是由中學化學教師編寫的,分析這些軟件,主要存在如下不足:(1)大多數軟件功能比較單一,少數軟件雖然集成了多個功能,但各功能都比較簡單,比如方程式配平程序只能配平簡單的方程式;(2)許多軟件界面不太美觀,交互性不強,可操作性比較差,專業(yè)性不足;(3)軟件設計專業(yè)性不足,比如元素周期表功能大多使用了ODBC連接ACCESS數據庫的方法,體積過大而且需要手工配置數據庫驅動才能使用,這給安裝使用帶來了不便,尤其是計算機應用水平不高的中學生使用起來更加困難,因此在課外學習中不能充分發(fā)揮作用。針對軟件存在的上述問題,設計開發(fā)了功能比較全面、易用性強、兼容性好、對系統配置要求不高的化學教學輔助軟件系統。
1 設計思想
 該軟件的主要用戶群是中學化學教育工作者和中學生,考慮到此類用戶計算機操作水平相對不高,以及此類單位的計算機軟硬件配置參差不齊,尤其是經濟落后地區(qū)電腦配置比較差,針對上述情況要求:(1)軟件不需要安裝,保存在電腦里能直接使用,軟件界面美觀,直觀明了,易學易用易掌握,在不閱讀軟件幫助文檔的前提下能夠使用軟件的大部分功能;(2)對計算機系統配置要求不高,普通電腦即便是比較老舊的電腦均能正常運行;(3)軟件盡量小,大小控制在3 MB以內,這樣在網絡上保存和下載均比較方便,同時應考慮到廣大農村中學網絡普及率比較低,體積小便于使用容量不大的存儲器保存。
 鑒于此系統是圖形用戶界面,又需要在配置比較差的電腦上正常運行,優(yōu)先選用了VB6.0語言進行開發(fā)。沒有選用最新的VB.NET版本,是因為需要安裝.NET框架,框架程序大小為22.4 MB,體積過大,只有Windows 7及以上版本才帶有VB.NET程序運行需要的.NET框架,比較老的版本則沒有,但Win ME以上操作系統均自帶VB6.0運行庫,國內中學普通使用的各個Windows操作系統基本均帶有VB6.0運行庫,這就為VB6.0開發(fā)的軟件提供了廣泛的支持。
2 化學教學輔助系統結構
 分析化學教學中重要的知識點,以及從方便教學和學生自學角度出發(fā),選取了4個主要功能:元素周期表、方程式配平、分子量計算以及3D分子球棍模型編輯器等。以這4個功能為核心設計了4個子系統:
?。?)化學元素周期表子系統:可以顯示各個元素的化學性質等信息,并能進行修改,突出顯示周期/主族,可以根據個人需要單獨對某個元素進行重新配色,為了寓教于樂,設計了周期表元素游戲,教師可以在娛樂中進行元素內容教學。
 (2)方程式配平子系統:根據用戶輸入的化學方程式或離子方程式直接計算出配平結果。能夠對用戶輸入的化學方程式的非邏輯錯誤進行自動更正,自動判別用戶輸入的化學方程式的類型并調用不同的計算模塊進行計算,可以配平復雜化學方程式。
?。?)分子量計算子系統:根據用戶輸入的化學分子式直接計算出分子量,根據用戶輸入的數學表達式直接計算出結果。
?。?)3D分子球棍模型編輯子系統:用戶能夠較方便、直觀地制作、編輯3D分子球棍模型并以文件的方式進行保存、讀取。編輯完成的3D分子球棍模型能夠以定向旋轉、鼠標跟隨、鼠標拖拽等三種動態(tài)方式進行演示。
 此外,系統設計了截取圖像功能,可將其截取圖像保存為BMP或JPG格式的圖像文件。教師備課和學生學習過程中經常需要使用此功能,將重要的內容截圖保存,便于教學、學習和復習。
3 高性能中學化學教學輔助系統設計
3.1元素與化合物相關信息存儲方式

 眾多的元素和化合物以及它們相關信息的存儲是軟件是否方便使用的關鍵,同類軟件大多采取內置數據或使用ODBC連接ACCESS數據庫的方法存儲數據。使用內置數據的缺點是數據分散,編程不方便,修改困難,查詢困難,尤其不適合數據量比較大的情況。使用ACCESS數據庫雖然功能強大但需要數據庫驅動,安裝軟件后需要進行系統配置,這樣不僅會大大增加軟件體積同時也降低了軟件的易用性。此外可以采用隨機文件保存數據,但隨機文件內部數據結構性不強,關聯性差,因此不便于數據查詢,尤其是復雜查詢。最終軟件采用了XML格式文件保存數據,這種格式數據不僅結構性強,易于讀取,而且可以方便地根據需要進行增加、修改或刪除。
 每一個元素和化合物都作為一個節(jié)點,每一個元素有二十多項化學性質,均作為它的子節(jié)點,每一個化合物的相關信息也作為它們的子節(jié)點,包括與化合物相關化學方程式。當查詢某個元素或化合物時,可以將其全部信息查詢出來,也可以根據某個元素查詢相關的化合物及其相關信息。使用XML格式存儲數據的缺點是不方便對數據進行格式化設置,化合物中元素如果有下標,在查詢時不能直接顯示,需要進行格式設置。
3.2 化學元素周期表子系統
 元素周期表仿照門捷列夫周期表的形式用圖形整體顯示,點擊任一元素,均可馬上查詢到相關化學性質,包括元素常見的化合物,點擊化合物可以查詢相關的化學性質。同一周期或主族的元素使用同一種顏色顯示,這樣直觀明了。
3.3 方程式配平子系統

 


 分析現有的配平化學方程式的程序,第一類是純粹搜索預先設定的數據,這種軟件能配平的方程式很有限且軟件體積大;第二類是純粹枚舉各物質系數,但這樣速度太慢;第三類是通過計算得到。這三類方式均不能配平所有的化學方程式。分析發(fā)現,不能配平的方程式的特征是:生成物的種數+反應物的種數-參加反應的元素的種數≥2。
 對于生成物的種數+反應物的種數-參加反應的元素的種數<2的化學方程式可以為每種元素列一個一次方程,將問題轉化為多元一次線性方程組,再將此多元一次線性方程求解即可得到各項配平系數。對于生成物的種數+反應物的種數-參加反應的元素的種數≥2的化學方程式的情況,其無法配平的根本原因在于:未知的系數數目超過方程所能求出的解的數目,例如:HClO3O2+Cl2+HClO4+H2O,其中生成物和反應物共有五種,而元素只有H、Cl、O三種,這種情況在有機化學中很常見。目前針對該類化學方程式的人工代數解法是對部分未知系數逐一進行假設,然后計算出其它未知系數,這樣獲得若干個解之后再篩選出符合條件的解(實際上這類化學反應方程式的配平系數有無窮多,這種情況下必須依據實驗數據選擇恰當的配平系數),但此方法人工筆算工作量較大,也難以通過簡單的編程實現。為了解決這個問題,本程序采用的方法是:直接對方程組進行假設而不是假設未知系數。具體做法是在原方程組上再加上一條方程,如果不行再加一條,直到滿足:生成物的種數+反應物的種數-參加反應的元素的種數<2,就可以用普通方法進行計算了。方程求解如下所示(虛線框內為假設的方程):


    對新添加的方程進行枚舉,其中m為枚舉系數的最小值,n為枚舉系數的最大值,m和n可由軟件自動產生,也可由用戶設定。枚舉的方程數量的上限也可由用戶設定。計算后再對解進行篩選,把出現0和負數的解去掉,合并相同的解,將符合條件的解輸出。
3.4 分子量計算子系統
 計算分子量的問題可以簡化為將分子式轉換為數學表達式。分子式的關鍵是正確分離出每一個元素,為了正確計算,分子式中的化學元素第一字母必須大寫,根據字母大寫和數字,使用字符串方法分離出每一個元素和元素的下標,分離出的元素和一個數組對應起來,每一個元素查詢出它們的原子量存儲在對應數組單元中,然后根據分子式中元素的位置和下標構建出一個數學表達式,從而計算出分子量。
 輸入分子式時,系統會自動查詢內部存儲的分子式,當輸入錯誤時,系統會顯示可能的正確分子式供選擇,這樣大大降低了錯誤計算的可能性,如果輸入的分子式系統內部沒有存儲,則不做任何提示。
 在設計中發(fā)現,使用系統函數Round控制相對原子量小數位數時會出現一些問題。VB6中文版的MSDN上說這個函數實現的是四舍五入,而實際上這個函數采用的四舍六入五留雙,也就是當五之前是奇數時五入,而是偶數時五舍,比如:1.25保留一位小數,則Round(1.25)=1.2如果是1.35,則Round(1.35)=1.4即奇進偶不進。這樣在大量需要四舍五入的數相加相減相乘的時候誤差要更小一點。Round函數符合國際標準,該函數是正確的,但不符合國人的習慣,所以在本程序中采用了自定義的符合國人習慣的四舍五入函數。
3.5 3D分子球棍模型子系統
 3D分子球棍模型用于直觀顯示分子結構。設計目標是用戶可以用鼠標方便增、減表示原子的球和表示原子位置關系的棍,用戶能夠自如地調整球和棍的位置,能旋轉分子模型以便從不同角度觀察分子結構。此模塊可以使用開源的3D游戲引擎實現,但由于該3D游戲引擎還不太完善,運行時容易導致死機。另一種方法是在Flash中使用矩陣變換法實現模型的制作和編輯,但存在計算效率過低從而導致速度比較慢等一系列問題。分析Flash實現3D動畫制作和編輯的過程,發(fā)現球棍模型空間運動相對簡單,使用矩陣變換的方式計算坐標,算法復雜,計算量比較大,導致速度較慢。經過認真研究發(fā)現,可以通過更簡單的公式變換來計算球和棍轉動與移動坐標。當轉動球棍模型時,根據轉動的角度,可以十分簡單地計算出各個球新的坐標,這種方式計算速度明顯加快,動畫速度獲得了大幅提高,在此基礎上也實現了預期的各種編輯功能。
 出于安全角度考慮,Macromedia公司沒有在Flash中設計寫文件的功能,所以要將球棍模型數據以文件的形式進行保存就必須將數據傳遞給其他程序,讓其他程序幫忙進行寫文件的操作。具體做法是先在Flash里的“保存數據”按鈕里寫入“fscommand("other",make_data("\r\n"));”,其中第一個值為必選參數,第二個值為傳遞的數據(該值為可選參數可省略,如“關閉”按鈕為“fscommand(“quit”);”)。然后在VB中先使用ShockwaveFlash控件將目標Flash嵌入到程序中,再通過ShockwaveFlash控件獲取Flash的FSCommand中第一個參數的值來識別Flash中哪一個按鈕被按下了,同時獲得第二個值的數據。采用這種方法可以方便實現分子球棍模型的保存。
3.6 截圖功能模塊
 使用BitBlt函數可方便地將指定區(qū)域的屏幕圖像復制到PICTURE控件中。VB的SavePicture方法可將圖形保存為BMP格式文件。BMP格式質量很好但體積過大,所以采用壓縮率高的JPEG格式來保存圖形文件的功能是圖形類軟件必不可少的。雖然該功能可以通過第三方控件或GDI+來實現,但這類控件體積較大,對于不需要批量保存圖形的小型軟件來說是不值得的。如果采用GDI+,其所需要的gdiplus.dll文件只有Windows XP以上操作系統才自帶,而且gdiplus.dll文件同樣也很大,帶上數MB的gdiplus.dll文件顯然也是不值得的。本軟件使用的是匯編語言編寫的JPEG圖片壓縮模塊,程序相對比較小,該模塊表現穩(wěn)定,但速度較慢,使用1.1 GHz的CPU的電腦保存1 024×768大小32位色的圖片約需要5 s。VB不適合編寫高速JPEG壓縮程序的主要原因在于JPEG壓縮需要大量的位運算,而VB中只能靠乘除來移位,效率太低;其次,在高級語言中確定一個整數占用的位數需要一大堆if,而在匯編中一條位掃描指令就行了。不過本軟件不需要大批量保存圖形,用數秒的時間換取數MB的空間還是值得的。本文中的程序界面截圖均為本程序制作。
4 軟件實現與試用
 為了更好地滿足用戶需求,本系統先發(fā)行了V1.0和V1.5兩個版本,將主要功能模塊發(fā)到網上任由用戶下載試用,通過網上留言和投票的方法收集到了大量的用戶需求信息以及系統改進建議,并據此開發(fā)了V2.1版。鑒于篇幅,主要介紹方程式配平工具和分子球棍模型編輯器。
 方程式配平工具能夠配平復雜的方程,目前還沒有發(fā)現不能配平的化學方程式,這是目前其他同類軟件(包括國外收費軟件)均不具備的。舉一個復雜方程配平的例子。

 這個方程式配平極其復雜,用手工來配平工作量很大,而且十分容易出錯,用現有的配平軟件也均不能正確配平,使用我們編寫的軟件,只需要把方程式復制到輸入欄,點擊配平后立刻出現正確的結果,配平速度極快(圖1)。


 本系統具有良好的兼容性、交互性以及數據的準確性,界面友好,簡單易用,較好地解決了目前此類軟件的不足之處。除了中學化學教學常用的功能之外,軟件加入了一些專業(yè)功能,使其既可作為供教師使用的化學教學工具及學生課后進行自主探究式學習的工具,同時也可作為化學數據查詢、計算工具供化學類相關專業(yè)人員使用。
參考文獻
[1] 劉志廣,高占先.化學多媒體系列教學軟件的研制與應用[J].化工高等教育,2003(1):96-98.
[2] 徐順,張勇,趙曉洋,等.常用化學軟件多媒體教學軟件的開發(fā)研究[J].計算機與應用化學,2005,22(12):1142-1145.
[3] 孫會霞,職桂珍.線性方程組的基本理論在配平化學方程式中的應用[J].鄭州輕工業(yè)學院學報(自然科學版),2001,12(4):68-71.
[4] 劉樹利.化學反應方程式配平的數學模型及求解[J].濰坊學院學報,2005,5(2):81-83.
[5] 王榮浩.用矩陣代數運算解決復雜化學方程式配平問題[J].衛(wèi)生職業(yè)教育,2004,22(12):75-76.
[6] 胡龍橋.配平化學反應方程式的矩陣方法[J].天津師大學報(自然科學版),1997,17(2):63-66.

此內容為AET網站原創(chuàng),未經授權禁止轉載。

相關內容