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