劉季秋+彭森
摘 要:指南針是我國的四大發(fā)明之一,早期的指南針采用了磁化指針和方位盤的組合方式,這樣的指南針攜帶起來很不方便,且指示靈敏度上有一定不足,準(zhǔn)確性很差。本文通過對電子指南針基本工作原理的研究分析,采用磁阻(GMR)傳感器采集某一方向磁場強(qiáng)度,然后通過MCU控制器對其進(jìn)行處理并顯示上傳,達(dá)到了顯示當(dāng)前所指方向的目的。實(shí)際測試指南針模塊精度達(dá)到1°,能夠在LCD上顯示當(dāng)前方位,并能通過鍵盤控制上傳數(shù)據(jù)到上位機(jī)。這樣的指南針精度更高,更智能,在大大提高了精度的同時,也降低了成本和設(shè)計難度。
1 引言
指南針是用以判別方位的一種簡單儀器,又稱指北針。指南針的前身是中國古代四大發(fā)明之一的司南。主要組成部分是一根裝在軸上可以自由轉(zhuǎn)動的磁針。磁針在地磁場作用下能保持在磁子午線的切線方向上。磁針的北極指向地理的北極,利用這一性能可以辨別方向。
電子指南針系統(tǒng)是一個典型的單片機(jī)系統(tǒng),了解其工作原理及其信號處理流程有利于研究更加復(fù)雜的嵌入式系統(tǒng),特別是系統(tǒng)中采用進(jìn)口的磁傳感器及其相關(guān)信號的采集芯片更是有利于研究磁場傳感器的實(shí)現(xiàn)機(jī)理,以便將其更加廣泛的應(yīng)用。
2 工作原理
本系統(tǒng)采用磁阻(GMR)傳感器采集磁場強(qiáng)度,然后把磁場強(qiáng)度轉(zhuǎn)換成數(shù)字量,單片機(jī)再對這些數(shù)字量進(jìn)行處理,最后將處理得到的結(jié)果進(jìn)行顯示。
電子指南針的系統(tǒng)主要由前端磁阻傳感器、磁場測量專用轉(zhuǎn)換芯片、單片控制器、輔助擴(kuò)展電路、鍵盤、顯示模塊以及系統(tǒng)電源幾個部分組成。
整個系統(tǒng)中前端的磁阻傳感器負(fù)責(zé)測量地磁場的大小并將磁場的變化轉(zhuǎn)化為微弱的電流的變化,專用的磁場測量芯片負(fù)責(zé)把磁阻傳感器變化的電流(模擬量)轉(zhuǎn)換成微控制器可以識別的數(shù)字量,然后將該數(shù)字信號即采集到的數(shù)據(jù)通過SPI總線上傳給微控制器。微控制器將表征當(dāng)前磁場大小的數(shù)字量按照方位進(jìn)行歸一化等處理后通過直觀的LCD進(jìn)行方位顯示,同時可以通過鍵盤控制微控制器進(jìn)行相應(yīng)的操作,如將轉(zhuǎn)換后的數(shù)據(jù)通過串口的形式發(fā)送到上位機(jī)。整個系統(tǒng)中還包含了實(shí)時時鐘等一些輔助電路,使整個系統(tǒng)功能得到進(jìn)一步的擴(kuò)展,這使得電子指南針更具備實(shí)用價值。
3 電源電路
控制部分電路如圖1所示,其中包含了微控制器、LCD接口電路、端口上拉電阻、系統(tǒng)時鐘電路和指南針模塊接口電路。
整個微控制系統(tǒng)中采用了無源晶振的形式發(fā)生MCU所需要的時鐘信號。時鐘電路中的兩個電容用作補(bǔ)償,使得晶振更容易起振,頻率更加穩(wěn)定。系統(tǒng)的復(fù)位采用了上電復(fù)的形式,上電過程中微控制器復(fù)位引腳保證10ms以上的高電平就能可靠.的將微控制器復(fù)位。
4 串口邏輯電路
圖2為串口邏輯電路圖。由于單片機(jī)的TTL電平和RS-232協(xié)議的電平不同,需要MAX232進(jìn)行電平的轉(zhuǎn)換。在本次設(shè)計中還充分利用了串口的DTS信號作為單片機(jī)串口編程功能使能信號。整個通過串口DTR引腳控制在系統(tǒng)編程。電路如上圖所示。其中復(fù)位電平為高;EA引腳為低電平;PSEN引腳為低電平。
5 系統(tǒng)傳感器原理
圖3為系統(tǒng)方案圖。這部分組要完成對A/D轉(zhuǎn)換后得到的數(shù)據(jù)進(jìn)行格式封裝,并在上位MCU的控制下進(jìn)行數(shù)據(jù)傳輸。
該芯片內(nèi)部集成了3軸傳感器驅(qū)動電路,可以測量X,Y,Z三軸的磁場強(qiáng)度,Z軸的磁場強(qiáng)度可以用來校正水平面,使得X,Y軸的測量更為精確。
6 結(jié)論
本設(shè)計的主要任務(wù)是開發(fā)一個以MCS-52單片機(jī)為核心的電子指南針。本設(shè)計主要分為硬件部分和軟件部分,硬件部分著重考慮硬件電路的簡單使用性,所以盡可能簡化硬件電路,節(jié)省線路板的空間,達(dá)到硬件電路最優(yōu)化設(shè)計。軟件采用C程序語言編寫,采用模塊化設(shè)計思想,程序可讀性強(qiáng)。通過仿真、實(shí)驗(yàn)驗(yàn)證了系統(tǒng)的可行,達(dá)到設(shè)計要求。
本次設(shè)計采用了160×128點(diǎn)陣的單色液晶顯示屏(LCD)作為系統(tǒng)的顯示界面,具體的型號為PG160128,該LCM采用了T6963C控制芯片作為顯示控制核心。微控制器只需要對T6963C芯片進(jìn)行操作便可以完成對LCD屏的相關(guān)操作,使用非常方便。
參考文獻(xiàn)
[1].彭偉.單片機(jī)C語言程序設(shè)計實(shí)訓(xùn)100例[M].北京:電子工業(yè)出版社,2009
[2].周潤景.基于proteus的電路及單片機(jī)設(shè)計與仿真[M].北京:北京航空航天大學(xué)出版社,2010
[3].江世明.單片機(jī)原理及應(yīng)用[M].北京:中國鐵道出版社,2010
[4]郭天祥.新概念51單片機(jī)C語言教程[M].北京:電子工業(yè)出版社,2009.
[5]朱紅,趙琦.C++程序設(shè)計教程[M].北京:清華大學(xué)出版社,2009.
作者簡介
劉季秋,邵陽學(xué)院信息工程系電子科學(xué)與技術(shù)專業(yè)學(xué)生。
通訊作者(指導(dǎo)老師)
彭森,邵陽學(xué)院信息工程系教師。