《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 24位高精度磁傳感器數(shù)據(jù)采集系統(tǒng)的設計
24位高精度磁傳感器數(shù)據(jù)采集系統(tǒng)的設計
來源:電子技術應用2014年第5期
郭熙寶, 曹大平
(武漢大學 物理科學與技術學院, 湖北 武漢430072)
摘要: 設計一種用于磁傳感器的三路24位高精度數(shù)據(jù)采集系統(tǒng),要求三路噪聲均低于20 μV,系統(tǒng)總功耗低于1 mA。系統(tǒng)采用三片AD7192同步進行A/D轉換,采集和處理磁傳感器前置模擬電路的信號,微控制器采集所得的數(shù)據(jù),處理后發(fā)送到上位機進行處理分析。軟件仿真及硬件測試結果表明,該系統(tǒng)完全達到了設計要求。
中圖分類號: TP274
文獻標識碼: B
文章編號: 0258-7998(2014)05-0077-04
Design of 24 bit high-precision magnetic sensor data acquisition system
Guo Xibao, Cao Daping
School of Physics and Technology, Wuhan University, Wuhan 430072, China
Abstract: A kind of three channels and 24 bits high-precision magnetic sensor data acquisition system was designed, it is required that the noise of all channels are less than 20 ?滋V and the power consumption of the system is lower than 1 mA. In this system , three AD7192 data acquisition chips are slected to do the A/D conversion ,they can collect and analysis signals,after that, micro controller collect the data,in that, they are analyzed. As all this,data are sent to the PC for subsequent processing analysis.Software simulation and hardware test shows that the system quite fit the bill of high accuracy.
Key words : data acquisition system; AD7192; A/D conversion; magnetic sensor

 高精度磁傳感器用于在大的地球背景磁場下,探測微弱的目標磁場變化信號,需要使用高分辨率、低功耗的模數(shù)轉換器(ADC)。本文介紹了一種基于Σ-Δ模數(shù)轉換器的高精度磁傳感器數(shù)據(jù)采集系統(tǒng)的設計,該數(shù)據(jù)采集系統(tǒng)可以采集、處理和發(fā)送磁傳感器前置模擬電路發(fā)送來的X、Y、Z三路模擬信號。與其他數(shù)據(jù)采集系統(tǒng)相比,該系統(tǒng)具有分辨率高、轉換速度快、功耗低等優(yōu)點。文中給出系統(tǒng)各模塊電路和軟件的設計,并給出了系統(tǒng)的性能測試結果,在此基礎上對整個系統(tǒng)進行評價。
1 主要器件選擇
    本文討論的高精度數(shù)據(jù)采集系統(tǒng)應用于磁傳感器模擬信號的采集和處理。磁傳感器接收外界的磁信號,輸出相應的模擬信號,數(shù)據(jù)采集系統(tǒng)負責采集此模擬信號,并處理、發(fā)送。為了獲得磁傳感器輸出的微弱信號,數(shù)據(jù)采集系統(tǒng)必須符合高精度、低功耗、規(guī)模小、轉換速率快等設計指標。
    常用的模數(shù)轉換器類型主要有積分型ADC、逐次逼近型ADC、并行/串并行比較型ADC和&Sigma;-&Delta;型ADC等。積分型ADC由于轉換精度依賴于積分時間,因此轉換速率極低。逐次比較型ADC在低分辯率(<12位)時價格便宜,但高精度(>12位)時價格很高。并行/串并行比較型ADC轉換速率極高,但電路規(guī)模極大,價格高。&Sigma;-&Delta;型ADC具有分辨率高、轉換速度快、電路規(guī)模小、功耗低、價格便宜等優(yōu)點,能夠很好地達到設計要求。在眾多的&Sigma;-&Delta;型ADC中,AD7192抗干擾能力強,接口方便,價格低,因此選擇AD7192作為模數(shù)轉換芯片。AD7192 [1]是一款適合高精度精密測量的低噪聲、24位&Sigma;-&Delta; 型模數(shù)轉換器 (ADC)。由于采用&Sigma;-&Delta;技術[2],使得整個A/D芯片具有精度高、抗干擾能力強、噪聲小和線性讀取好的優(yōu)點,在片內功能全開的情況下,電流為4.35 mA。
    微控制器對整個系統(tǒng)的功耗和性能起著決定性的作用,為達到設計要求,必須選用功耗低、性能穩(wěn)定的微處理器。在本系統(tǒng)中微控制器采用PIC24FV32KA304[3],該器件采用了16位改進型哈佛架構,引入了Microchip超低功耗的理念,該器件帶有內部時鐘,同時具有打盹模式操作和基于指令的三種節(jié)能模式,這一系列的功能,大幅度地降低了器件的功耗。
2 系統(tǒng)組成與各部分功能
 本系統(tǒng)設計主要分為硬件設計和軟件設計兩部分。其中硬件設計主要包括數(shù)據(jù)采集模塊、微控制器、電源模塊、數(shù)據(jù)發(fā)送模塊等。軟件設計主要包括各器件的初始化模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)發(fā)送模塊、數(shù)據(jù)顯示模塊等。系統(tǒng)結構框架圖如圖1所示。

    首先在微控制器PIC24FV32KA304的控制下,3片AD7192芯片分別將采集到的模擬信號轉換成數(shù)字信號,然后微控制器PIC24FV32KA304讀取數(shù)字信號,并處理此數(shù)字信號,將其轉化為所需要的數(shù)據(jù),最后微控制器通過串口將數(shù)據(jù)發(fā)送到上位機,在上位機上通過VB顯示、處理和分析,實現(xiàn)目標磁場變化信號的顯示。
3 系統(tǒng)硬件設計
3.1 數(shù)據(jù)采集模塊

    數(shù)據(jù)采集模塊由3片AD7192和外圍電路組成。如圖2所示,X路輸入為待轉換的模擬信號,AINCOM接地。AD7192以偽差分模式采集外部的模擬信號。信號與芯片的AIN1腳連接,信號的參考地與芯片的AINCOM連接,輸入的模擬電壓值為兩者之差。偽差分輸入減小了信號源與設備的參考地電位(地環(huán)流)不同所造成的影響,提高了測量的精度。AD7192的15腳REFIN1+為正基準輸入,16腳REFIN1-為負基準輸入,REFIN1+輸入可以是AVDD與AGND+1 V之間的任意值,REFIN1-輸入可以是AGND與AVDD-1 V之間的任意值,基準電壓(REFIN1+-REFIN1-)最大為AVDD。在此設計中,REFIN1+接2.048 V外部標準電壓,REFIN1-直接與地相連,基準電壓值即為2.048 V。AD7192與PIC24FV32KA304之間通過SPI串行通信。AD7192 的SPI串行接口包含3個信號:DIN、SCLK和DOUT/RDY。DIN 線路用于將數(shù)據(jù)傳輸至片內寄存器中;DOUT/RDY 則用于從片內寄存器中獲取數(shù)據(jù);SCLK 是器件的串行時鐘輸入,所有數(shù)據(jù)傳輸(無論是 DIN 上還是DOUT/RDY 上)均相對于 SCLK 信號進行。CS用于選擇器件,設計中有3片AD7192, 微控制器在讀取轉換結果時,必須使用片選信號CS來選擇不同AD7192。


3.2 微控制器
    微控制器通過SPI串行接口向AD7192發(fā)送指令和讀取數(shù)據(jù)。其中微控制器的SDO1、SCK1、SDI1分別與AD7192的DIN、SCLK 和DOUT/RDY相連。為了降低系統(tǒng)的功耗,微控制器的振蕩器選用PIC24FV32KA304的內部帶后分頻的8 MHz 快速RC振蕩器,在軟件中,可以設置此振蕩器的分頻系數(shù),使振蕩頻率降低為2 MHz。從微控制器的OSCO引腳輸出時鐘信號CLKIN作為AD7192的振蕩源,連接在AD7192的MCLK2引腳上。系統(tǒng)工作時,微控制器PIC24FV32KA304將初始化命令發(fā)送至AD7192,AD7192接收到初始化命令后,開始工作,將采集到的模擬信號轉換成數(shù)字信號。微控制器等待上位機發(fā)送的報文頭,當接收到報文頭以后,微控制器判斷報文頭是否正確,如果錯誤,微控制器繼續(xù)等待接收報文頭;如果正確,則微控制器讀取AD7192轉換后的數(shù)字信號并處理。處理結束后微控制器將數(shù)據(jù)發(fā)送給上位機顯示軟件,在上位機上通過VB顯示、處理和分析,發(fā)送結束后微控制器和AD7192進入休眠,以降低功耗。休眠一段時間(大約400 ms)后,喚醒微控制器和AD7192,進入下一次轉換。PIC24FV32KA304與AD7192的連接電路如圖2所示,圖中X為輸入的模擬信號。
3.3 電源模塊
    該系統(tǒng)采用ADP150作為穩(wěn)壓源,為系統(tǒng)提供3.3 V的穩(wěn)定電壓。PIC24F32KA304器件引腳的最大電壓為3.6 V,不能承受5 V 電壓。故選用3.3 V電壓。ADP150是一款超低噪聲(9 &mu;V)、低壓差線性調節(jié)器,采用2.2 V至5.5 V電源供電,電路如圖3所示。

3.4 數(shù)據(jù)發(fā)送模塊
    微控制器與上位機之間采用RS-485接口方式進行數(shù)據(jù)傳輸。圖5為數(shù)據(jù)發(fā)送模塊電路圖。圖中MAX3471的/RE(2)、DE(3)引腳并接在一起由微控制器控制,當DE/RE為低電平時,處于接收狀態(tài),A、B的差分信號經(jīng)MAX3471轉換成單端信號由微控制器的串行口線RXD接收;當DE/RE為高電平時,微控制器串口線TXD發(fā)送出的數(shù)據(jù)經(jīng)MAX3471轉換為差分信號發(fā)送出去。在差分線A、B上并接120 &Omega;的終端電阻,用以吸收信號反射。

   為了減小系統(tǒng)的體積,在設計印制電路板時,采用四層板。為了降低系統(tǒng)噪聲,提高系統(tǒng)的穩(wěn)定性和精度,在元器件布局和電路板走線時,需要遵循以下規(guī)則[4]:
    (1)電路板模擬部分與數(shù)字部分分離,并限制在電路板的一定區(qū)域內。當距離很近時,中間要用地線隔開。
    (2)元器件在整個板面上應緊湊分布,盡量縮短元器件間的布線長度。屬于同一模塊的器件,要就近放置。
    (3)加寬電源線和地線。數(shù)字地和模擬地分開,在電源入口處單點匯集。
    (4)輸入和輸出盡量避免相鄰平行,電路板相鄰兩個信號層的導線應相互垂直、斜交或彎曲走線。印制導線拐角一般選擇45&deg;,或采用圓弧拐角。
4 系統(tǒng)軟件設計
    本系統(tǒng)軟件主要包括初始化模塊、數(shù)據(jù)采集處理模塊、數(shù)據(jù)發(fā)送模塊、數(shù)據(jù)顯示模塊等。其中初始化模塊、數(shù)據(jù)采集處理模塊、數(shù)據(jù)發(fā)送模塊是在MPLAB IDE編譯器上用C [5]語言編寫,數(shù)據(jù)顯示模塊在Visual Basic[6]環(huán)境下編寫。
    初始化模塊,主要是系統(tǒng)各個功能模塊初始化,包括微控制器端口初始化,UART串口初始化,SPI初始化,AD7192初始化等,初始化結束后,系統(tǒng)即進入工作狀態(tài),采集并轉換模擬信號。轉換結束, 輸出轉換輸出碼[1],ADC配置為單極性工作模式,輸出碼為自然(直接)二進制碼;零差分輸入電壓對應的碼為000&hellip;&hellip;000,中間電平電壓對應的碼為100&hellip;&hellip;000,滿量程輸入電壓對應的碼為111&hellip;&hellip;111。任意模擬輸入電壓的輸出碼可以表示為式(1):
    輸出碼=(2N&times;AIN&times;Gain)/VREF    (1)
其中,AIN為模擬輸入電壓,Gain為電壓增益設置,此處設置為1,VREF為參考電壓(2.048 V),N=24。
    數(shù)據(jù)采集處理模塊,主要是編程使微控制器通過SPI通信讀取AD7192的轉換結果,并進行簡單處理,得到需要的數(shù)據(jù)。AD7192轉換結束后,產(chǎn)生一個32位的數(shù)據(jù),其中高8位是狀態(tài)位,屏蔽高8位的狀態(tài)位后,剩下的24位數(shù)據(jù)即為所得的數(shù)據(jù)位(輸出碼)。由任意模擬輸入電壓輸出碼表達式反推可得模擬電壓AIN。
 在數(shù)據(jù)發(fā)送模塊中,微控制器通過UART串口通信,將所得的模擬電壓值AIN通過UART通信發(fā)送到上位機,在上位機上通過數(shù)據(jù)顯示模塊顯示、處理。然后微控制器和AD7192進入休眠狀態(tài),等待下一次轉換。程序框圖如圖6所示?!?/p>

 

 

5 系統(tǒng)性能測試
5.1 系統(tǒng)功耗測試

    由于AD7192和PIC24FV32KA304自身功耗比較低,在設計中,又使用了單片機內部振蕩器作為AD7192和PIC24FV32KA304的時鐘信號,并且工作結束即讓AD7192和PIC24FV32KA304進入休眠狀態(tài),所以系統(tǒng)的功耗很低。通過數(shù)字電流表顯示,系統(tǒng)平均功耗為0.8 mA,低于系統(tǒng)設計要求的1 mA。
5.2 系統(tǒng)噪聲測試
    在輸入模擬電壓為零的情況下,上位機Visual Basic上顯示的圖形即為系統(tǒng)噪聲圖。圖7為在Visual Basic上顯示的X路數(shù)據(jù)采集系統(tǒng)的噪聲(Y路、Z路噪聲和X路基本一致),其中橫坐標表示測試時間,一格為1 min。縱坐標表示數(shù)據(jù)采集系統(tǒng)的自噪聲,單位為&mu;V,從圖中可以看出系統(tǒng)自噪聲峰值基本在10 &mu;V左右,低于系統(tǒng)設計要求的20  &mu;V。

    本系統(tǒng)采用了內置低噪聲、24位&Sigma;-&Delta; 型模數(shù)轉換器AD7192,保證了系統(tǒng)的高精度、低噪聲。采用微控制器PIC24FV32KA304內部快速RC振蕩器作為微控制器和AD7192的振蕩器,有效降低了系統(tǒng)的功耗。多次測量結果顯示,該系統(tǒng)完全滿足了高精度、低噪聲、低功耗的要求, 可以作為磁傳感器的數(shù)據(jù)采集系統(tǒng)使用。
參考文獻
[1] Analog Device. AD7192. 4.8 kHz, Ultralow Noise, 24 bit  Sigma-Delta ADC with PGA[Z]. 2009:1-38.
[2] 張靜,羅丁利. &Sigma;-&Delta;ADC原理及應用[J].火控雷達技術,2006(3):10-13.
[3] PIC24FV32KA304.General Purpose,16-Bit Flash Microcon  trollers with XLP Technology[Z], 2002:165-172.
[4] 李俊婷. 計算機輔助電路設計與protel DXP[M].北京:高等教育出版社,2010:61-64.
[5] 譚浩強. C程序設計[M]. 北京:清華大學出版社,2005:281-318.
[6] 譚浩強.Visual Basic程序設計教程[M].北京:清華大學出版社,2006:13-47.

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。