国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于PIC單片機和AD7705的高精度信號采集系統(tǒng)設(shè)計

2011-03-14 12:39張存善
電子設(shè)計工程 2011年2期
關(guān)鍵詞:寄存器高精度增益

劉 偉 ,張存善

(1.中國人民解放軍93756部隊 天津 300130;2.河北工業(yè)大學(xué) 信息工程學(xué)院,天津 300130)

在工業(yè)現(xiàn)場測試過程中,由于生產(chǎn)中的各種參數(shù)的測試數(shù)據(jù)對生產(chǎn)過程具有重要的意義,因此對各種測試數(shù)據(jù)精度要求較高。而對于傳統(tǒng)的傳感器,比如壓阻式、應(yīng)變橋式、熱電偶、熱電阻、電容式以及壓電式傳感器,輸出的一般是毫伏級的微弱模擬信號,溫度特性差,而且在傳輸過程中信噪比明顯降低[1]。因此需要設(shè)計高精度穩(wěn)定性強的信號采集系統(tǒng)進行采集。然而采用以往的積分型和逐次比較型A/D實現(xiàn)高精度信號采集的難度較大且成本很高。近年來興起的Σ-Δ A/D轉(zhuǎn)換技術(shù)卻能以較低的成本獲取極高的分辨率。AD7705便是一款比較典型的高性能16位Σ-Δ A/D轉(zhuǎn)換芯片。

本設(shè)計采用AD7705為A/D轉(zhuǎn)換器,配合8位高性能PIC單片機PIC18F458組成高精度信號采集系統(tǒng)。硬件電路設(shè)計方面在單片機與AD7705典型應(yīng)用電路的基礎(chǔ)上做了改進,加入了光電隔離、電壓檢測復(fù)位等電路,使系統(tǒng)采集信號的精準度和可靠性都有了很大的提高,軟件設(shè)計方面給出了關(guān)鍵部分的程序清單。目前該系統(tǒng)已經(jīng)成功應(yīng)用于某智能儀表中,在工業(yè)現(xiàn)場的表現(xiàn)良好。

1 關(guān)鍵器件選型

1.1 AD7705概述

AD7705芯片是帶有自校正功能的Σ-Δ16位A/D轉(zhuǎn)換器,如圖1所示。它包括由緩沖器和增益可編程放大器(PGA)組成的前端模擬調(diào)節(jié)電路、∑-Δ調(diào)制器以及可編程數(shù)字濾波器等,能直接將傳感器的不同擺幅范圍內(nèi)的信號放大到接近A/D轉(zhuǎn)換器的滿標度電壓附近再進行A/D轉(zhuǎn)換,還可選擇輸入模擬緩沖器,以及自校準和系統(tǒng)校準方式。此外它還具有高分辨率、寬動態(tài)范圍、校準、低功耗及優(yōu)良的抗噪聲性能,因此非常適用于儀表測量和工業(yè)控制等領(lǐng)域[2]。

圖1 AD7705功能框圖Fig.1 Functional block diagram of AD7705

1.2 PIC18F458的特點

作為中高端的8位PIC系列單片機,PIC18F458是高性能的RISC CPU。具有高達2 MB的程序存儲器;4 KB的數(shù)據(jù)存儲器;高達10 MIPS的執(zhí)行速度;DC~40 MHz時鐘輸入;4~10 MHz帶PLL鎖相環(huán)有源晶振/時鐘輸入;16位寬指令,8位寬數(shù)據(jù)通道;帶優(yōu)先級的中斷;8×8單周期硬件乘法器。

該款單片機不僅集成了強大的外圍功能模塊 (增強型捕捉輸入功能、脈寬調(diào)制(PWM)輸出部件、I2C和SPI接口以及可尋址的通用同步/異步接收發(fā)送器(USART)串行通信接口),而且因其特殊的單片機特性(自振式看門狗、可編程代碼保護功能、休眠省電方式等)及先進的flash技術(shù)(低功耗、高增強型flash技術(shù),全靜態(tài)設(shè)計,2.0~5.5 V寬范圍的工作電壓,工業(yè)級和擴展級溫度范圍),可以適用各種工業(yè)控制場合[3]。

本系統(tǒng)使用PIC18F458作為主控制芯片,選取此芯片與AD7705配合組建信號采樣系統(tǒng),不僅是因為PIC18F458自身配備的主同步串行端口MSSP具有SPI工作方式,而且更重要的是該單片機的高性能能夠?qū)Σ杉降男盘栠M行更加有效的處理,便于系統(tǒng)的進一步擴展。

2 系統(tǒng)設(shè)計

2.1 硬件電路設(shè)計

該系統(tǒng)設(shè)計用于采集氧電勢和溫度的模擬信號,二者分別是氧傳感器和K型熱電偶的輸出信號。其中氧電勢信號的輸出范圍是0~1.25 V,溫度信號的輸出范圍是 0~50 mV,系統(tǒng)原理框圖如圖2所示。

圖2 信號采集系統(tǒng)原理框圖Fig.2 Principle block diagram of signal collecting system

2.1.1 AD7705及前端采集電路

圖3 AD7705及前端采集電路Fig.3 Circuit of AD7705 and front-end acquisition

圖3為AD7705的外圍電路及系統(tǒng)的前端采集電路。氧電勢和溫度信號首先要進入濾波電路去除干擾雜波然后進行精密放大,這里采用低功耗雙運算放大器MCP602和反饋電阻組成放大電路,MCP602具有偏置電流低、運行速度快、開環(huán)增益高以及滿幅輸出等特點,而且其很寬的帶寬非常適用于A/D轉(zhuǎn)換器的驅(qū)動放大器[4]。由于提供給AD7705的基準電壓是2.5 V,調(diào)節(jié)反饋電阻使氧電勢和溫度放大后的信號V_01和V_02都在0~2.5 V之間。

基準電壓在AD7705的外圍電路中最為重要,它直接影響數(shù)據(jù)采集的精準度,這里采用的是高精度2.5 V參考電壓源MCP1525,它采用先進的 CMOS電路設(shè)計和 EPROM存儲方式,在時間和溫度穩(wěn)定性上具有明顯優(yōu)勢,并且在工業(yè)級溫度范圍-40~+85°C范圍內(nèi)可正常工作,為系統(tǒng)信號采集的精準度提供有力保障。

值得注意的是在設(shè)計AD7705印刷板電路時必須講究布線技巧,布線的好壞直接影響數(shù)據(jù)轉(zhuǎn)換精度,甚至?xí)鹦酒ぷ魇С?。?jīng)驗表明,AD7705應(yīng)該布設(shè)在一個相對獨立和集中的區(qū)域,數(shù)字區(qū)和模擬區(qū)盡可能在底面分開布線,模擬接地與數(shù)字接地應(yīng)只在一個點連接在一起,所有電源都要加電容去耦電路,電容器盡可能靠近芯片的電源輸入端。

2.1.2 光電隔離電路

為了提高通訊接口在工業(yè)現(xiàn)場的抗干擾能力,采用光電隔離器件是一種簡單而有效的方法,這里采用的是高速光耦6N136,如圖4所示,它能夠在對通訊接口進行光電隔離的同時不會影響通訊速率,可以使系統(tǒng)在不降低采集效率的情況下提高可靠性[5]。由于光耦兩側(cè)的電源和地是要完全分開的,因此設(shè)計了兩路電源,使6N136能達到最佳隔離效果。在設(shè)計印刷板電路時要特別注意6N136底下不能走數(shù)據(jù)線,這樣會引入干擾導(dǎo)致數(shù)據(jù)采集跳動。

圖4 光電隔離電路Fig.4 Photoelectric isolation circuit

2.1.3 單片機復(fù)位電路

由于工業(yè)現(xiàn)場環(huán)境復(fù)雜,簡單的RC復(fù)位電路在強干擾情況下會使單片機復(fù)位引腳電壓意外跌落,造成單片機工作不正常。為了解決這一問題,這里采用電壓檢測復(fù)位芯片HT7044,它能夠檢測4.5 V的固定電壓并具有穩(wěn)壓功能,可以滿足系統(tǒng)設(shè)計穩(wěn)定性的要求[6],如圖5所示。

圖5 單片機復(fù)位電路Fig.5 Microcontroller reset circuit

2.2 軟件設(shè)計

AD7705內(nèi)部只有一套模數(shù)轉(zhuǎn)換電路,通道1和通道2的選擇通過軟件設(shè)置進行切換,實際應(yīng)用中往往需要對不同通道采取不同的增益,動態(tài)地對AD7705進行增益、通道設(shè)置,很靈活方便地達到這一目的。使用AD7705之前,首先要對所有寄存器進行設(shè)置,才能保證器件正常工作。在實際使用中,首先選擇模擬輸入模式(單極性還是雙極性)、是否需要緩沖、時鐘分頻和輸出更新速率;根據(jù)外部輸入信號的幅度來決定設(shè)置器件的增益值。

該系統(tǒng)中的AD7705在應(yīng)用中選擇輸入通道單極性、初始增益等于1、數(shù)據(jù)更新速率為500 Hz。AD7705的讀寫操作嚴格按照時序進行,圖6和圖7給出了AD7705的讀和寫時序圖。根據(jù)實際確定所有參數(shù)以后,對AD7705芯片進行設(shè)置,參數(shù)設(shè)置方法比較獨特,在設(shè)置參數(shù)之前,首先對通信寄存器進行一次寫操作,來決定下一個是什么樣的寄存器和什么樣的操作內(nèi)容,再進行下一步的參數(shù)寫入,圖8給出了AD7705初始化及讀取數(shù)據(jù)流程圖,讀者可參考下面的AD7705初始化程序。

圖6 AD7705讀時序圖Fig.6 Diagram of read cycle timing

圖7 AD7705寫時序圖Fig.7 Diagram of write cycle timing

圖8 AD7705初始化及讀取數(shù)據(jù)流程圖Fig.8 Flow chart of AD7705 initialization and reading data

START_ad7705()

void START_ad7705()

{

uchar i;

AdDin=1;AdClk=1;

for(i=0;i<40;i++) {AdClk=0;AdClk=1;}/* 防止接口迷失,通信寄存器返回到等待寫狀態(tài)*/

WBYTE_ad7705 (0x21); /* 寫 CH1 clock register*/

WBYTE_ad7705 (0x07); /*2.4576 MHz 時 鐘 ,500Hz 數(shù)據(jù)更新速率*/

WBYTE_ad7705(0x11); /* 寫 CH1 setup register*/

WBYTE_ad7705(0x44); /* 單極性,無緩沖,自校準模式,增益為1*/

Delay_1ms(50); /* 延時 */

}

void WBYTE_ad7705(uchar bytew)

{

uchar i;

AdClk=1;AdDin=1; /*開始 */

for(i=0;i<8;i++)

{

AdClk=0;

if(bytew&0x80)AdDin=1; /*輸入數(shù)據(jù)位 */

else AdDin=0;

AdClk=1;

bytew=bytew<<1;

}

AdDin=1;AdClk=1; /*結(jié)束 */

}

初始化以后,單片機就可以從模數(shù)轉(zhuǎn)換器中讀數(shù)據(jù),讀取數(shù)據(jù)之前必須確定數(shù)據(jù)寄存器的狀態(tài),DRDY引腳處于低電平時表示數(shù)據(jù)轉(zhuǎn)換已經(jīng)完成,可以讀取數(shù)據(jù)。為了便于讀者理解,給出讀數(shù)據(jù)寄存器的函數(shù)原代碼如下:

uint RWORD_ad7705(uchar channel)

{

uchar i;uint AD16bit=0;

if(0==channel) WBYTE_ad7705(0x38);/* 選擇通道 */

if(1==channel) WBYTE_ad7705(0x39);

while(1==AdReady);/*等待數(shù)據(jù)準備好 */

AdClk=1;AdDin=1;

for(i=0;i<16;i++)

{

AD16bit=AD16bit<<1;

AdClk=0;

if(1==AdDout) AD16bit++;/* 讀取數(shù)據(jù)位 */

AdClk=1;

}

AdDin=1;AdClk=1;

return AD16bit; /*返回讀數(shù)*/

}

3 結(jié)束語

該系統(tǒng)實現(xiàn)了高效率和高精度的信號采集,具備很強的抗干擾能力。目前已經(jīng)成功應(yīng)用于某智能儀表,使智能儀表在工業(yè)現(xiàn)場采集信號精度得到提高的同時控制精度也相應(yīng)得到提高,并且儀表運行的可靠性和安全性得以增強,實現(xiàn)了一定的應(yīng)用價值,具有非常廣闊的應(yīng)用前景。

[1] 陳勇鋼.AD7705高精度數(shù)據(jù)采集的實現(xiàn)[J].國外電子測量技術(shù),2006,25(1):38-40.CHEN Yong-gang.The precision data acquisition based on AD7705[J].Foreign Electronic Measurement Technology,2006, 25(1):38-40.

[2] Analog Devices,Inc.AD7705/AD7706 Data Sheet[EB/OL].(2006). http://www.analog.com/static/imported -files/data_sheets/AD7705_7706.pdf.

[3] 陳楊楊.基于PIC18F458單片機的LCD顯示[J].儀表技術(shù),2005(4):52-53.CHEN Yang-yang,LED display based on PIC18F458 SCM[J].Instrument Technique, 2005(4):52-53.

[4] 李源鴻.十六位模數(shù)轉(zhuǎn)換器AD7705及其應(yīng)用[J].成都信息工程學(xué)院學(xué)報,2003,18(3):281-286.LI Yuan-hong.16 analog-digital converter AD7705 and its application[J].Chengdu University of Information Technology,2003,18(3):281-286.

[5] 高廷正.基于PIC18F458和AD7705的信號采集系統(tǒng)[J].儀器儀表用戶,2008(6):68-70.GAO Ting-zheng.The data acquisition system based on PIC18F458 and AD7705[J].Instrument Users,2008(6):68-70.

[6] 許廣賓.AD7705在智能數(shù)字儀表中的應(yīng)用[J].機械與電子,2008(17):413-414.XU Guang-bin.The application of intelligent digital instrument based on AD7705[J].Mechanical and Electronic,2008(17):413-414.

猜你喜歡
寄存器高精度增益
STM32和51單片機寄存器映射原理異同分析
基于增益調(diào)度與光滑切換的傾轉(zhuǎn)旋翼機最優(yōu)控制
Lite寄存器模型的設(shè)計與實現(xiàn)
基于單片機的程控增益放大器設(shè)計
基于Multisim10和AD603的程控增益放大器仿真研究
高精度PWM式DAC開發(fā)與設(shè)計
高精度PWM式DAC開發(fā)與設(shè)計
高抗擾高精度無人機著艦縱向飛行控制
船載高精度星敏感器安裝角的標定
基于高精度測角的多面陣航測相機幾何拼接
蕲春县| 光山县| 土默特右旗| 乐都县| 万州区| 临洮县| 虞城县| 铜梁县| 长沙市| 隆尧县| 卓尼县| 安达市| 邹平县| 达日县| 平定县| 收藏| 崇文区| 桦川县| 泗洪县| 祁门县| 犍为县| 筠连县| 岳阳市| 莲花县| 张家口市| 通州区| 桂东县| 尼勒克县| 惠来县| 乌兰浩特市| 高碑店市| 普定县| 高平市| 广宁县| 清水县| 北宁市| 明光市| 邹城市| 射洪县| 焦作市| 清新县|