陳 杰,陳 蕩, 熊 雄
(武漢工程大學電氣信息學院,湖北 武漢 430074)
隨著檢測技術和控制技術的發展,傳感器與單片機及顯示屏構成的測控系統得到了廣泛的應用[1],功能也越來越強大.單片機價格低、可靠性高、易擴展、控制功能強和易于開發等優點在這類測控系統中發揮出了很強大的功能.該系統首先通過傳感器把非電量參數轉化為電壓,然后通過單片機進行實時數據采集及預處理,最后在顯示器或者顯示屏上顯示出來.
為提高磁感應強度采集與顯示的有效性和降低其成本,本設計采用霍爾傳感器SS495A作為前端進行數據采集,然后經放大器AD620進行信號放大后輸送到單片機C8051F350進行數據處理,由于單片機C8051F350自帶模/數轉換器(Analog to Digital Converter,以下簡稱:ADC),所以不需要設計模/數(Analog to Digital,以下簡稱A/D)轉換電路,最后將信號在顯示屏上顯示出來.
系統構架比較簡單,可以分為3個部分:第一部分是數據的采集,由霍爾傳感器產生電壓信號[1],通過放大器AD620把信號進行差分放大;第二部分是信號的處理,信號被輸送到單片機,在單片機內部進行A/D轉換及相關數據處理;第三部分是信號的顯示,在顯示屏LCD1602顯示電壓值.整體框圖如圖1所示.

圖1 系統整體框圖Fig.1 Overall block diagram of system
一般一個系統存在模擬器件與數字器件,各個器件所需的電源電壓也不盡相同.本設計中霍爾傳感器、放大器以及液晶顯示屏的工作電壓都是5 V,而單片機的工作電壓是3.3 V,故需要額外的電壓轉換電路,其電源電壓轉換的電路如圖2所示,電壓轉換電路芯片選用AMS1117-3.3,其中5 V電壓用VCC來表示,3.3 V電壓用VDD來表示.

圖2 電源電壓轉換電路圖Fig.2 Circuit diagram of power supply voltage conversion
霍爾傳感器是根據霍爾效應制成的一種傳感器,主要實現磁電轉換,用于與磁場相關的運動參量的檢測,將物體的各種非電量參數轉變為電壓輸出,在檢測和自動控制中得到了大量的應用[2].集成電路技術的發展使得集成霍爾傳感器占據了霍爾傳感器的主體市場,主要生產公司有Honeywell公司、Siemens公司、Melexis公司等.集成霍爾傳感器憑借其體積小、頻響寬、動態特性好等特點[2],得到外界的一致好評.
本設計采用的是Honeywell公司的SS495A線性霍爾傳感器,它是一種高精度的集成霍爾傳感器,對外圍設備要求簡單、使用壽命長并且應用廣泛.該霍爾傳感器的工作原理為:相對放置兩塊極性相同的磁鐵,以磁場強度B=0處作為位移x的參考原點,則x=0時B=0,磁場電壓即霍爾電勢Uh=0.當磁鐵間的霍爾元件移動到x處時,Uh的大小由x處的磁場強度決定.用Kh表示霍爾電壓與位移的比例系數即霍爾元件靈敏度,由公式Uh=KhIB可知:保持電流I不變,則dUh/dx=IKhdB/dx=KhI=K,積分后得Uh=Kx,即霍爾電勢與位移成比例.所以磁場梯度越大,磁場變化越均勻,靈敏度也就越高,電壓和位移的線性越好[1].最后由霍爾傳感器輸出端輸出電壓輸送到放大器輸入端.
AD620是一款高精度低功耗儀表放大器(最大工作電流僅1.3 mA),在模擬電路中得到了廣泛應用.AD620具有高精度(最大非線性度40 ppm)、低失調電壓(最大50 μV)和低失調漂移(最大0.6 μV/℃)特性,非常適合電子秤和傳感器等精密數據采集系統的應用.由于其功耗低、尺寸小的特點可以作為電池供電及便攜式(或遠程)應用的理想之選.AD620僅需要一個外部電阻來設置增益,增益變化范圍可以從為1變換至1 000,因而作為前置放大器使用效果非常好.此外,AD620還非常適合多路復用應用,其建立時間為15 μs,能夠實現每通道一個儀表放大器的設計[3].其封裝引腳圖如圖3所示,通常采用8引腳小輸出線集成電路或雙列直插式封裝.

圖3 AD620封裝引腳圖Fig.3 Pin diagram of AD620 package
該系統采用的單片機是新華龍公司生產的C8051F350單片機,屬于完全集成的混合信號片上系統型單片機.其具有全速、非侵入式的在系統調試接口,故該系統采用C2下載口下載程序;24位單端/差分ADC,從而不需要外部A/D轉換電路;增強型UART和SPI串行接口,4個通用的16位定時器,高精度可編程的24.5 MHz內部振蕩器,片內上電復位、VDD監視器和溫度傳感器,片內電壓比較器,17個輸入輸出(Input/Output,以下簡稱:I/O)端口等功能[4-6].
C8051F350內部有一個全差分位ADC,該ADC具有在片校準功能.ADC可以使用內部的基準電壓,也可以用外部差分電壓作基準,該系統采用的是外部基準電壓.在ADC0中包含一個可以設置8種增益的可編程增益放大器,最大增益可達128倍.ADC的差分輸入與8個外部引腳及內部溫度傳感器可以由模擬多路選擇器相連接.與內部輸入緩沖器相連的變送器可以由其提供輸入阻抗[4-6].該設計由AIN0.0與放大器輸出端相連采集信號,經過一定的數據處理顯示在顯示屏上.
根據霍爾傳感器與單片機的特點,電路圖連接如圖4所示,單片機的AIN0.0與放大器相連,用于數據的采集.單片機的P1.3位連接一發光二極管用于單片機上電的指示,單片機P1.0~P1.2分別與LCD1602的RS、R/W、使能端E連接,用于對顯示屏的控制,單片機的P0.0~P0.7分別與LCD1602的DB0~DB7相連接,用于數據傳輸.
在圖4中,由于單片機自帶振蕩器,故不需要設計外部振蕩器.單片機的AGND、AV+、P2.0、RST口用于與C2仿真器的連接,下載程序到單片機進行在線調試,其中RST用作復位.放大器的正相輸入端需要與穩壓器相連接,本設計選取的穩壓芯片是LM385BZ-2.5,用于差分放大.各電阻電容值的選取如圖4所示.

圖4 系統電路原理圖Fig.4 System circuit diagram
基于C8051F350單片機的信號采集與顯示系統實現的功能更加強大,指令系統更加簡單,軟件設計采用C語言編程實現,軟件開發環境采用Silicon Laboratories IDE.
主程序流程如圖5所示,當手動按下開關S1時程序開始運行,進行初始化,初始化主要包括對各寄存器的狀態進行初始化,對單片機I/O端口、內部晶振的初始化以及對液晶顯示屏進行初始化.主程序進行數據的采集、模/數轉換以及結果的顯示.單片機采用中斷方式運行,當顯示屏的信號被單片機接收到時,中斷服務程序就被執行,單片機就會對傳送過來的模擬電壓信號進行A/D轉換,并向顯示屏發送數據并顯示出來.

圖5 主程序流程圖Fig.5 Flow diagram of main program
以下僅給出A/D轉換中斷服務子程序:
void ADC0_ISR (void) interrupt 10
{
static LONGDATA rawValue;
unsigned long mV;
while(!AD0INT);
AD0INT = 0;
rawValue.Byte[Byte3] = 0x00;
rawValue.Byte[Byte2] = (unsigned char)
ADC0H;
rawValue.Byte[Byte1] = (unsigned char)
ADC0M;
rawValue.Byte[Byte0] = (unsigned char)
ADC0L;
mV = rawValue.result / 6710;
}
本設計測量的是磁感應強度,而磁感應強度是由位移決定的,故需要標定位移量記錄數據來得到相應的結果,其中單片機基準電壓選取為2.5 V.
當保持磁鐵N極不變時,移動霍爾傳感器,測得位移-電壓的數據如表1所示.
當保持磁鐵S極不變時,移動霍爾傳感器,測得位移-電壓的數據如表2所示.

表1 磁鐵N極不變的位移-電壓關系Table 1 Displacement-voltage relationship of magnet N pole unchanged

表2 磁鐵S極不變的位移-電壓關系Table 2 Displacement-voltage relationship of magnet S pole unchanged
從表1和表2中可知:雖然磁感應強度的檢測受外界電波干擾等因素的影響,輸出信號輸出誤差在所難免,但仍然能準確地測量出來,測量的位移可以達到10 mm,無論怎么移動霍爾傳感器,在一定范圍內,電壓會隨著位移的變化而變化,從而很好地驗證了此方案的有效性.根據圖5所示的流程和選取的位移量,用C語言編程實現,在開發環境中進行編輯和裝載,并通過燒錄器把HEX文件燒錄到單片機中,按下開關S1.保持S極不變,位移量分別為5 mm和1 mm時,在顯示屏LCD1602上顯示的霍爾電壓分別為2.56 V和3.23 V,如圖6(a)和圖6(b)所示;保持N級不變,位移量分別為5 mm和1 mm時,在顯示屏LCD1602上顯示的霍爾電壓分別為2.46 V和3.23 V,如圖6(c)和圖6(d)所示.


圖6 霍爾電壓效果圖Fig.6 Effect diagram of hall voltage
從表1、表2和圖6可以看出,當位移量為5 mm時,所測得的數據與顯示屏上顯示的電壓一致;當位移量為1 mm時,所測得的數據與顯示屏上顯示的電壓有一定的偏差,但偏差很小,可以忽略不計,從而驗證了此方案的可行性.通過測試驗證,預計設計目標均已達到,設計非常成功.
C8051F350單片機與SS495A霍爾傳感器信號采集與顯示系統的設計,實現了一種簡單的磁感應強度檢測方式,本方案可應用于一些簡單的設備如筆記本電腦閉合時磁感應的檢測、磁懸浮列車磁感應的檢測等.本方案實現的成本相對低廉,檢測的準確性高,將會得到越來越廣泛的應用.
參考文獻:
[1] 林游,張俊杰,易凡.霍爾傳感器信號采集與顯示系統設計[J]. 現代電子技術,2009,32(4):191-194.
[2] 張欣,陸申龍. 新型霍爾傳感器的特性及在測量與控制中的應用[J]. 大學物理,2002,21(10):28-31.
[3] 曹軍. 儀器放大器AD620性能及其應用[J]. 電子器件,1997,20(3):62-66.
[4] 鹿玲,袁寶山,李業德. 基于C8051F350的超市電子計價秤的設計[J]. 山東理工大學學報:自然科學版,2009,23(3):81-84.
[5] 徐國棟,鄭洪波,楊列坤,等. 高精度智能壓力傳感器的系統設計[J]. 可編程控制器與工廠自動化,2009(9):110-113.
[6] 楊宇林,白日昌. 利用動態TDMA無線通信網絡技術實現建筑物內部消防警報系統的聯動監控[J]. 遼寧建材,2011(12): 44-46.