基于智能電子自旋共振儀的信號測量與監(jiān)控系統(tǒng)
摘要:在研究基于智能電子自旋共振儀的普通高校近代物理實驗上,設(shè)計了一種適合智能電子自旋共振儀的基于單片機和PC機的數(shù)據(jù)傳輸系統(tǒng),并實現(xiàn)串口與嵌入式單片機數(shù)據(jù)透明傳輸?shù)挠布B接和軟件編程,實際效果表明該系統(tǒng)數(shù)據(jù)采集準(zhǔn)確,并達到了實時監(jiān)測實驗數(shù)據(jù)的目的,同時系統(tǒng)自動生成圖文并茂的實驗報告,避免了手工輸入時產(chǎn)生的誤差。
關(guān)鍵詞:電子自旋共振儀;嵌入式單片機通信;信號采集與監(jiān)控;智能
電子自旋共振現(xiàn)象被發(fā)現(xiàn)于本世紀(jì)四十年代后期,經(jīng)過幾十年的研究發(fā)展,它與核磁共振,鐵磁共振,光泵磁共振等形成了一個新的學(xué)科——磁共振波譜學(xué)。作為一項實用技術(shù),它在化學(xué)、物理、生物和醫(yī)學(xué)等方面獲得了廣泛的應(yīng)用,近年來,與計算機技術(shù)結(jié)合,為人類作出了巨大的貢獻。
文中涉及的是普通高校近代物理實驗-電子自旋共振實驗,在實驗中要求觀察電子自旋共振現(xiàn)象,觀察順磁離子對共振信號的影響,測量DPPH(自由基二苯基三硝基苯肼)中電子的g因子(hv=gJμB),并利用電子自旋共振測量地球磁場的垂直和水平分量。其中準(zhǔn)確的獲得這些實驗數(shù)據(jù)是非常重要的,文中提出利用PC機與嵌入式單片機通信傳輸數(shù)據(jù),并且將采集到的數(shù)據(jù)繪制成可視化的共振譜線圖,通過讀取共振譜線的坐標(biāo)值來獲得實驗所需要的數(shù)據(jù),同時將實驗數(shù)據(jù)生成實驗報告。大大提高了實驗的精度和自動化。
1 智能電子自旋共振儀
智能電子自旋共振儀優(yōu)越于傳統(tǒng)的電子自旋共振儀,它用單片機系統(tǒng)來判斷共振點,用亥姆霍茲線圈取代傳統(tǒng)的螺線管線圈來測量磁場強度B0,測量準(zhǔn)確、便捷。
為了觀測到共振現(xiàn)象,需要使用一個高頻探頭,其振蕩線圈為被測物DPPH提供能級躍遷所需的能量(hv),當(dāng)產(chǎn)生共振時,振蕩器的能量被樣品吸收,振蕩幅度會發(fā)生變化,該變化經(jīng)過檢波和低頻放大后輸出,即可在外接示波器或PC機上觀察到共振峰(亦稱為共振譜線)。儀器前端采用邊緣振蕩器來探測共振信號,信號經(jīng)檢波放大后送波形變換模塊,產(chǎn)生CMOS電平的信號脈沖,然后送往微處理器的I/O口,由軟件來計算矩形脈沖的寬度,當(dāng)峰信號出現(xiàn)等間距時,相鄰脈沖的寬度相等,此時即判定B0已調(diào)準(zhǔn)并給出讀取數(shù)據(jù)的指示,同時將該數(shù)據(jù)放入內(nèi)存。
2 信號測量
2.1 通信原理
實驗儀器中嵌入了AT89C52單片機(下位機),負(fù)責(zé)數(shù)據(jù)采集、處理和控制。PC監(jiān)控機(上位機)進行現(xiàn)場可視化檢測,它們之間采取主從串行通信方式。PC機上的串行通信通過端口RS232的RTS信號進行二進制數(shù)據(jù)的收發(fā)轉(zhuǎn)換與傳輸。下位機中串行數(shù)據(jù)從TXD引腳按規(guī)定的波特率輸出,接收數(shù)據(jù)時監(jiān)視RXD引腳,一旦出現(xiàn)“0”位,按規(guī)定的波特率將外圍設(shè)備送來的數(shù)據(jù)存儲。但是,在8051單片機的內(nèi)部有一個全雙工的異步串行I/O口,它的輸入和輸出使用5 V邏輯而不是RS-232電壓,所以連接時用MAX485專用芯片進行轉(zhuǎn)換。如圖1所示單片機與外設(shè)串口通信原理圖。
2.2 數(shù)據(jù)通信程序設(shè)計
2.2.1 通信協(xié)議
本系統(tǒng)串行通信采用異步通信方式。協(xié)議如下:
1)一幀數(shù)據(jù)由1位起始位、8位數(shù)據(jù)位、無奇偶校驗位、1位停止位共10位組成。
2)波特率設(shè)為2 400 bps。單片機串行口按方式1工作,波特率由定時器T1控制。
PC機串口波特率通過VB通訊控件的Settings屬性設(shè)置,為保證數(shù)據(jù)傳送的準(zhǔn)確性,兩者的波特率必須一致。
2.2.2 下位機通信及程序設(shè)計
單片機可以采用中斷方式或查詢RI(接受中斷標(biāo)志位)或TI(發(fā)送中斷標(biāo)志位)方式進行數(shù)據(jù)通信。本系統(tǒng)采用查詢方式,在定時器T2中斷子程序中查詢RI,一旦檢測到RI=1則轉(zhuǎn)入接受數(shù)據(jù)子程序,在子程序中單片機讀取從上位機發(fā)送的通信指令、讀取記錄個數(shù)等數(shù)據(jù),經(jīng)校驗正確后,即從ATC256存儲器中將歷史記錄數(shù)據(jù)上傳給PC機。
Uchar comReceive(void)
{ while(RI==0)//表示未接收,需等待
RI=0;//接收完后清除換下一數(shù)據(jù)
Return(SBUF)
2.2.3 上位機通信及程序設(shè)計
上位機利用Visual Basic8.0編程。用VB8.0開發(fā)串行通信程序有2種方法,一種是利用Windows的API函數(shù);另一種是采用VB8.0的通信控件MSComm。利用API函數(shù)編寫串行通信程序較為復(fù)雜,需要掌握大量的通信知識,其優(yōu)點是可實現(xiàn)的功能更豐富、應(yīng)用面更廣泛,適合于編寫較為復(fù)雜的低層次通信程序。而VB8.0的MSComm通信控件提供了標(biāo)準(zhǔn)的事件處理函數(shù)、事件、方法,并通過控件屬性對串口參數(shù)進行設(shè)置,比較容易地解決了串口通信問題。
本系統(tǒng)采用事件驅(qū)動方式進行串口通信設(shè)計。
該實驗接收從單片機發(fā)來的電流值等數(shù)據(jù),并賦予數(shù)組。部分代碼如下:
至此,該實驗系統(tǒng)中數(shù)據(jù)的采集工作就完成了,下一步將把采集的數(shù)據(jù)可視化監(jiān)控,利用上位機完成實驗中磁場,g因子等各種計算。
3 信號監(jiān)控
從單片機采集到的數(shù)據(jù)傳送到PC機的存儲數(shù)組中,然后將每組數(shù)據(jù)繪制成共振譜線,并且通過讀取共振譜線的坐標(biāo)值來獲得實驗數(shù)據(jù)。在VB中實時曲線的繪制一般借助于Timer控件來完成,使用Timer控件,定期將智能電子自旋共振儀中監(jiān)測到的數(shù)據(jù)送往pic_main,而曲線的繪制一般畫成折線圖,采用PictureBox1的Line方法繪制。用Line方法可以在窗體或圖片框上繪制一條直線或繪制一個矩形。
Line方法的一般格式:
[對象名.]Line(x1,y1)-(x2,y2)[,顏色]
其中,(x1,y1)為始點坐標(biāo);(x2,y2)為終點坐標(biāo);顏色可以使用RGB函數(shù),規(guī)定畫線或畫矩形的顏色。部分代碼如下:
4 實驗報告的生成
本系統(tǒng)實驗結(jié)束后,電子自旋共振實驗報告由系統(tǒng)自動生成一張WORD文檔。避免了傳統(tǒng)的手工輸入時產(chǎn)生的誤差。實驗報告的信息內(nèi)容:姓名、標(biāo)題、表格、圖表、日期、實驗計算及測量結(jié)果等。
4.1 新建文檔
Documents集合包含所有打開的文檔。要新建一篇文檔,可使用Add方法將一個Document對象添至Documents集合。
新建文檔的方法之一是使用Add方法。Add方法將返回Document對象,該對象引用新文檔。
4.2 添加文本
接下來,向空文檔中添加文本,這將使用Paragraphs集合對象來完成此項工作。以下代碼向文檔某處添加一個段落并設(shè)置本段落格式:
電子自旋共振實驗系統(tǒng)中生成的WORD文檔除了基本信息外還包含一些表格信息,表格信息部分代碼如下:
5 實驗結(jié)果
由于智能電子自旋共振儀器嵌入了單片機系統(tǒng),許多數(shù)據(jù)的采集由計算機自動完成,大大提高了實驗效率,實驗誤差極小。通過嵌入式單片機與PC機間的通信實現(xiàn)數(shù)據(jù)的傳輸,在PC機上直觀的刻畫出實驗的共振譜線圖,如圖2(共振譜線)所示,圖中第1個波峰值和第3個波峰值相同,此時取坐標(biāo)C0和C1的值,計算g因子和磁場等數(shù)值。同時自動生成實驗文檔進行保存或打印,如圖3(實驗報告)所示。
6 結(jié)束語
利用Visual Basic的事件驅(qū)動方式可以很方便地開發(fā)智能電子自旋共振儀的數(shù)據(jù)采集與監(jiān)控系統(tǒng),此系統(tǒng)利用PC機強大的監(jiān)控和管理功能,通過監(jiān)控機與嵌入式單片機進行通信,實時獲取實驗數(shù)據(jù)。同時通過鼠標(biāo)讀取共振譜線圖的坐標(biāo)值來獲得實驗中磁場計算、g因子計算等各種計算所需的數(shù)據(jù),避免了手工添加時的誤差。并且生成了圖文并茂的實驗報告,同時該系統(tǒng)模型也可以被應(yīng)用到磁場共振波譜學(xué)的其他領(lǐng)域。