溫 才,唐麗紅,賴永寬,魏文灝,魯文靖,隆 強,孔 飛,王 慶
(西南科技大學(xué),四川綿陽 621010)
在一般的高校教材里,晶體結(jié)構(gòu)是《固體物理學(xué)》[1-2]的第一章,它指出了平移對稱性是晶體最基本的性質(zhì),由此可抽象出若干種晶格結(jié)構(gòu),諸如六角密排晶格、面心立方晶格等。晶格結(jié)構(gòu)及其對應(yīng)的平移對稱性將貫穿在整個《固體物理學(xué)》[3]學(xué)習(xí)中,尤其對于后續(xù)的布里淵區(qū)和能帶的學(xué)習(xí)尤為重要??梢?,晶格結(jié)構(gòu)是《固體物理學(xué)》中必須掌握的重要內(nèi)容。
晶格結(jié)構(gòu)相關(guān)內(nèi)容的學(xué)習(xí)需要學(xué)生具有良好的空間想象能力。常規(guī)教學(xué)中采用的板書和幻燈片均無法從空間任意角度觀察晶格結(jié)構(gòu),立體效果較差,缺乏直觀性。盡管有學(xué)者指出可用全息方法制作晶格結(jié)構(gòu)[4],但用全息方法制作晶格結(jié)構(gòu)需搭建復(fù)雜的光學(xué)平臺,技術(shù)性較高。上述原因使得初次接觸《固體物理學(xué)》的大學(xué)生在學(xué)習(xí)時容易感到枯燥難學(xué)[5]。
本設(shè)計利用LED燈表示晶格中的格點,設(shè)計制作了一套以三維方式表達(dá)晶格結(jié)構(gòu)的“LED光立方”模型。模型結(jié)合專業(yè)特色,凝聚軟件和硬件的優(yōu)勢,能直觀、立體地展示晶格結(jié)構(gòu);同時針對不同晶系種類配置按鈕,使用戶能很好的使用此設(shè)備;設(shè)備成本低廉,功能可自由拓展,集科學(xué)性、易操作性和可推廣性于一體,可廣泛用于相關(guān)教學(xué)與科研中。
LED光立方的設(shè)計分為軟件設(shè)計和硬件設(shè)計兩部分(見圖1)。
圖1 LED光立方設(shè)計方案圖
所謂軟件設(shè)計,其目的是實現(xiàn)對LED光立方的控制,這就要求控制簡單、精確。LabVIEW軟件提供了非常豐富的圖形化控件面板,面板上具有與實際儀器相似的旋鈕、開關(guān)、指示燈及其他控制部件,可縮短開發(fā)周期,且相比常規(guī)的傳統(tǒng)儀器面板具有更靈活的優(yōu)勢,故采用LabVIEW軟件設(shè)計上位機[6]程序,通過串口通信控制下位單片機實現(xiàn)對LED光立方的控制。而硬件設(shè)計其目的是實現(xiàn)LED光立方的顯示,這就要求顯示快速、靈活??紤]到成本和設(shè)計的方便性,設(shè)計采用動態(tài)掃描的方法來控制LED光立方的顯示[7],這要求較高的掃描速度。由于ATmega128單片機具有高速、低耗、保密等特點,故本設(shè)計使用 AT-mega128單片機做主控芯片;同時考慮到單片機I/O端口[8]數(shù)量和編程的方便性,采用 8片74LS573鎖存器芯片擴展單片機I/O端口實現(xiàn)動態(tài)掃描控制8×8×8光立方。
光立方控制程序的設(shè)計采用串口通信的方式[9],用LabVIEW軟件設(shè)計光立方取模程序,將顯示圖案存儲到外擴存儲器中,并配置按鈕設(shè)置,具有操作簡單的優(yōu)點。
采用動態(tài)掃描的方法,從光立方底層掃到頂層,每層從第一行掃到第八行,由于掃描速度非常快,用肉眼看上去所有的燈都同時變化,將此掃描過程封裝成一個函數(shù),把每行LED按照亮暗信息進行編碼并作為函數(shù)的輸入?yún)?shù),即可控制所有的LED燈。
編碼模塊需將要顯示的圖案用LabVIEW編寫的上位機取模程序表示。為了方便取模,要將顯示驅(qū)動函數(shù)與取模程序的順序修改為一致。這里以較簡單的底心單斜晶格為例說明。
圖2 底心單斜的晶體結(jié)構(gòu)
底心單斜屬于單斜晶系,單斜晶系無高次對稱軸,二次對稱軸和對稱面都不多于一個,見圖2。a、b、c分別表示晶格的單位長度,α、β、γ分別表示晶軸夾角。在底心單斜中,晶體以唯一一個二次軸或?qū)ΨQ面法線為b軸。b軸和a軸、c軸均正交,a軸,c軸斜交,即 α= γ=90°,β≠ 90°,a≠ b ≠ c。
圖3 底心單斜的設(shè)置框圖
圖3為用上位機取模程序編寫的底心單斜設(shè)置框圖,框圖包含控制面板和端口兩個部分。面板中共有控制512個LED燈的按鈕設(shè)計,512個LED燈構(gòu)成的8排8×8二維面板依次排列成8個正視圖,用8個正視圖來表示這512個按鈕。其中正視圖中標(biāo)記為1到10的格點依次與圖2中序號為1到10的格點對應(yīng)。通過點擊面板中的LED格點,光立方中對應(yīng)的LED燈將隨之改變亮暗,即通過控制LED光立方的正視圖顯示,便可查看到光立方的俯視圖和側(cè)視圖,從而達(dá)到用LED光立方模型表達(dá)晶格結(jié)構(gòu)的目的。
由于用上位機程序?qū)崟r控制圖案顯示需配置電腦,攜帶不便,且單片機容量有限,無法保留太多資源,故利用AT24C64在單片機外擴存儲器,以實現(xiàn)大容量存儲,并便于攜帶。
考慮到單片機I/O端口數(shù)量和編程的方便性,電路設(shè)計中選用ATmega128單片機做主控芯片,8片74LS573鎖存器芯片擴展單片機I/O端口,實現(xiàn)動態(tài)掃描控制8×8×8光立方。電路圖由Altium Designer軟件設(shè)計,見圖4。
圖4 控制LED光立方顯示的電路圖
從圖4可以看出,LED光立方的電路設(shè)計主要包括矩陣鍵盤、單片機最小系統(tǒng)、存儲器、液晶顯示屏、USB轉(zhuǎn)串口設(shè)計、光立方層控制及光立方行列控制7個部分,其中矩陣鍵盤為4×4的矩陣,共16個按鍵組成。在操作光立方顯示時,可根據(jù)液晶顯示屏上的顯示提示,逐步操作按鍵便可使光立方顯示所想查看的晶格結(jié)構(gòu);單片機最小系統(tǒng)是整個光立方的核心,它能實現(xiàn)對外圍設(shè)備的控制;存儲器主要用于存儲與晶格結(jié)構(gòu)相關(guān)的數(shù)據(jù);液晶顯示屏則為對操作界面的顯示;USB轉(zhuǎn)串口設(shè)計則是為了方便連接只有USB而無串口的電腦,以使任一臺電腦上均可控制光立方的顯示;光立方層控制及行列控制則用于控制LED光立方動態(tài)掃描的物理連接。
在光立方布局中LED燈的選取是最重要的環(huán)節(jié)之一。由于霧狀的LED燈發(fā)散性較強,在不同角度觀察時,LED燈的亮度比較均勻,發(fā)出的光不刺眼,使光立方的觀察明顯而溫和;同時為使光立方除能顯示簡單晶格外,還能顯示其他更復(fù)雜的晶格結(jié)構(gòu),設(shè)計用512個霧狀紅色和藍(lán)色LED 燈相間組成光立方[10,11]。此外,為了設(shè)計的美觀性,光立方布局選用8層各共陰極,64列各共陽極的結(jié)構(gòu)設(shè)計[12]。其中 64列采用 8個74LS573鎖存器進行控制,閉鎖可以保持8個比特的信息,這8個比特在輸出管腳得以顯示[13]。8個74LS573的數(shù)據(jù)端和片選引腳各使用單片機的8個I/O口,加上8層控制信號的8個I/O口,共24個I/O口就能單獨控制512個LED燈,使編程、焊接方便,大大降低了硬件成本。
在按鍵設(shè)計中,先將晶格結(jié)構(gòu)的代碼下載到單片機中,再針對不同晶系種類配置相應(yīng)按鍵設(shè)置,通過按鍵控制液晶顯示屏的顯示,使用戶能方便的使用此設(shè)備。圖5為按鍵控制液晶顯示屏顯示的流程圖。
圖5 按鍵控制液晶顯示屏顯示的流程圖
本設(shè)計制作的LED光立方模型第一次應(yīng)用到《固體物理學(xué)》教學(xué)中,能立體顯示晶格結(jié)構(gòu),直觀明了,便于理解。
圖6 (a)用按鍵操作液晶顯示屏的CO2晶格結(jié)構(gòu)
圖6 (b)CO2晶體結(jié)構(gòu)示意圖
如圖6(a)所示為用按鍵操作液晶顯示屏顯示的較復(fù)雜的CO2晶格結(jié)構(gòu)。圖中用紅色和藍(lán)色的LED燈分別表示C原子和O原子,一個C原子和兩個O原子便構(gòu)成一個CO2分子。CO2屬于分子晶體,每個CO2分子近鄰12個CO2分子(同層4個、上層4個、下層4個),每四個CO2分子可以抽象成一個等同點,故CO2晶體的結(jié)構(gòu)為簡立方結(jié)構(gòu),如圖6(b)所示。模型兼具科學(xué)性、易操作性、易維護性和實用性于一體,具有很好的實用價值和市場前景。
本工作設(shè)計制作的光立方模型是基于《固體物理學(xué)》中晶格結(jié)構(gòu)的表達(dá),利用LED燈表示晶格中的原子來直觀、立體地顯示晶格結(jié)構(gòu),同時加入的串口設(shè)置能使教師在科研中自主地設(shè)計其他晶格結(jié)構(gòu)。
LabVIEW軟件提供的控件面板具有與實際儀器相似的旋鈕、開關(guān)、指示燈及其他控制部件。設(shè)計者可輕松、便捷地編寫LED燈的亮暗,同時用按鍵控制液晶顯示屏的顯示,操作簡單,即使是初學(xué)者也能很好地使用此設(shè)備。
模型所使用的霧狀LED燈價格便宜,攜帶方便,一旦模型中的LED燈出現(xiàn)問題,可隨時進行更換;同時在設(shè)計晶格結(jié)構(gòu)代碼時,所使用的LabVIEW控制面板可對錯誤編碼進行實時矯正。
本工作設(shè)計制作的LED光立方完全可用于教學(xué)和科研中。在教學(xué)中能讓學(xué)生直觀、立體地理解晶體及相關(guān)物質(zhì)結(jié)構(gòu)的特征,同時也能激發(fā)學(xué)生的課程學(xué)習(xí)興趣;在科研中由于LED光立方加入的串口設(shè)置,使教師在科研中能自主設(shè)計其他晶格結(jié)構(gòu),而不必局限于現(xiàn)有的程序設(shè)置,為教師提供一個研究晶體結(jié)構(gòu)的工具。
目前國內(nèi)的高等院校在《固體物理學(xué)》教學(xué)中并無此類產(chǎn)品。類似的塑料模型結(jié)構(gòu),其一種晶格結(jié)構(gòu)的晶胞就要1000多元,它的三維拓展結(jié)構(gòu)更高達(dá)2500元以上,并且無法拆卸重組成其他的晶格結(jié)構(gòu)。本工作設(shè)計制作的LED光立方模型,其成本不足200元(包括 PCB電路板、LED燈、ATmega128芯片等其他元器件),同時模型可快捷、方便地表示七大晶系及復(fù)式晶格結(jié)構(gòu)。所以LED光立方在教學(xué)和科研方面均有很好的市場前景。
本文工作針對大學(xué)生在學(xué)習(xí)《固體物理學(xué)》等課程中對晶格結(jié)構(gòu)理解的困難,將軟件和硬件相結(jié)合,利用LED燈表示晶格中的原子,并利用軟件控制晶格結(jié)構(gòu)顯示,能簡單、真實地表達(dá)晶格結(jié)構(gòu)。在教學(xué)中能讓學(xué)生直觀、立體地理解晶體及相關(guān)物質(zhì)結(jié)構(gòu)的特征,同時也能激發(fā)學(xué)生的學(xué)習(xí)興趣;在科研中能給教師提供一個研究晶體結(jié)構(gòu)的有力工具,能自主設(shè)計其他晶格結(jié)構(gòu)??傊?,LED光立方成本低廉,功能可自由拓展,可廣泛應(yīng)用于相關(guān)教學(xué)、科研一線[14]。
[1]黃昆,韓汝琦.固體物理學(xué)[M].北京:高等教育出版社,1988:29-31.
[2]馮瑞.固體物理學(xué)大辭典[M].北京:高等教育出版社,1995:22-30.
[3]章天金,馬志軍,江娟,等.三維動畫技術(shù)在固體物理學(xué)教學(xué)中的應(yīng)用[J].沈陽師范大學(xué)學(xué)報,2007,25(4):454-456.
[4]崔麗彬,邱菊,趙潔,等.全息方法制作面心立方晶格結(jié)構(gòu)[J].物理實驗,2013,33(3):28-30.
[5]諶曉洪.固體物理學(xué)教學(xué)改革與實踐[J].成都紡織高等??茖W(xué)校學(xué)報,2011,28(1):45-47.
[6]談衛(wèi)星,胡建人.基于STM32的全彩LED顯示屏系統(tǒng)的設(shè)計[J].電子器件,2011,34(3):258-260.
[7]徐振方,孟艷花,王艷.基于AVR單片機的LED顯示屏控制系統(tǒng)的研究[J].照明工程學(xué)報,2010,21(2):77-80.
[8]楊富強,朱利強.基于單片機的LED點陣動態(tài)顯示系統(tǒng)[J].工業(yè)控制計算機,2013(1):101-102.
[9]王浩然,秦會斌.LED點陣屏顯示單元的設(shè)計與驅(qū)動控制[J].電子器件,2010,33(5):550-552.
[10]康志強,汪佳,湯勇明.基于FPGA的3D光立方設(shè)計[J].電子器件,2012,35(6):683-686.
[11]李行杰,李克儉,肖英.基于AVR單片機的8×8×8三維 LED 點陣設(shè)計[J].大眾科技,2013,165(15):42-44.
[12]唐健杰.基于HT1632C的3D光立方設(shè)計[J].電子技術(shù)與軟件工程,2013,8:29-30.
[13]Wan-Fu Huang.Designing a display unit to drive the 8×8LED dot-matrix displays[J].IEEE,2013,1(2):385-388.
[14]張成云.基于三角測量的三維激光掃描儀設(shè)計[J].大學(xué)物理實驗,2013,26(5):23-27.