引 言
數(shù)據(jù)采集是DSP最基本的應(yīng)用領(lǐng)域,本文設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)利用TI公司的TMS320F2812 DSP芯片。該芯片的主要特點(diǎn)有:150 MI/s(百萬(wàn)條指令/秒)的執(zhí)行速度使得指令周期減小到6.67ns,從而提高了控制器的實(shí)時(shí)控制能力;采用哈佛總線結(jié)構(gòu),具有高性能的32位的CPU,在一個(gè)周期內(nèi)能夠?qū)崿F(xiàn)32位×32位或兩個(gè)16位×16位的乘法累加操作,具有快速中斷響應(yīng)與處理能力;TMS320F2812應(yīng)用大量外設(shè)接口簡(jiǎn)化了電路設(shè)計(jì);提供了足夠的處理能力,使一些復(fù)雜的實(shí)時(shí)控制算法的應(yīng)用成為可能。
USB是現(xiàn)在應(yīng)用廣泛的一種高速通用串行總線協(xié)議。本文利用Philips公司的PDIUSBD12芯片。將USB協(xié)議應(yīng)用于以DSP為核心的嵌入式系統(tǒng),可以大大提高DSP系統(tǒng)與計(jì)算機(jī)的通信能力,從而拓寬DSP的應(yīng)用范圍。本文利用DSP和USB設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng),符合三維感應(yīng)測(cè)井多通道數(shù)據(jù)采集的需要。
數(shù)字采集系統(tǒng)設(shè)計(jì)
數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)框圖如圖1所示,主要包括DSP、前置放大電路、信號(hào)調(diào)理電路、USB通訊接口,由于三維感應(yīng)測(cè)井有3個(gè)Z軸向接收線圈和7組三分量接收線圈構(gòu)成,所以采用了7組多路開(kāi)關(guān)。在一個(gè)數(shù)據(jù)采集系統(tǒng)中,A/D轉(zhuǎn)換器是采集系統(tǒng)的核心。在基于TMS320F2812的數(shù)據(jù)采集系統(tǒng)中,選用了芯片嵌入式的ADC模塊。
圖1 三維感應(yīng)測(cè)井?dāng)?shù)據(jù)采集系統(tǒng)結(jié)構(gòu)框圖
信號(hào)調(diào)理電路
由于本采集系統(tǒng)用于三維感應(yīng)測(cè)井中,它對(duì)信號(hào)采集的精度要求高,因?yàn)楸徊尚盘?hào)頻率較高,采樣通道多,所以結(jié)果分析對(duì)原始數(shù)據(jù)的依賴(lài)性強(qiáng)。本設(shè)計(jì)信號(hào)調(diào)理電路分為前置放大器、帶通濾波器、程控增益放大器、陷波器四部分。
前置放大器設(shè)計(jì)
前置放大器的噪聲系數(shù)對(duì)整個(gè)采集系統(tǒng)的噪聲特性具有重要的影響。因?yàn)樗a(chǎn)生的噪聲會(huì)被后續(xù)各級(jí)放大器逐級(jí)放大,所以在選擇放大器時(shí)低噪聲指標(biāo)非常重要。在研制低噪聲放大器時(shí),應(yīng)該抓住低噪聲這個(gè)關(guān)鍵指標(biāo)來(lái)分析、計(jì)算并設(shè)計(jì)電路。目前,可用噪聲指標(biāo)比較好的集成電路來(lái)設(shè)計(jì)低噪聲放大電路。
由于測(cè)井時(shí)被采信號(hào)一般為微伏級(jí),因此本設(shè)計(jì)采用INA128儀用差分放大器,它的最大輸入失調(diào)電壓為50μV,溫度系數(shù)為0.5μV/℃,最大輸入失調(diào)電流為5nA,同時(shí)還有很寬的電源電壓范圍,可以在±2.25V到±18V的供電電壓范圍內(nèi)穩(wěn)定工作。電壓增益可以通過(guò)外接電阻改變,在1腳和8腳之間外接不同的電阻R,電壓增益可以在0-10000的范圍內(nèi)變化,其計(jì)算公式為。當(dāng)電壓增益大于100時(shí),INA128的輸入共模抑制比達(dá)到120dB,對(duì)輸入信號(hào)的共模干擾起到了很好的抑制作用。
用MAX267 設(shè)計(jì)帶通濾波器
在三維感應(yīng)測(cè)井中所設(shè)定的有用信號(hào)的帶寬為20kHz到250kHz,因此選用MAX267設(shè)計(jì)一種帶通增益放大器。MAX267內(nèi)部含有2個(gè)獨(dú)立的二階開(kāi)關(guān)電容帶通濾波器,它有12個(gè)可編程輸入端,其中F0~F4為濾波器中心頻率設(shè)置輸入端,分別接低電平或高電平,可以將中心頻率設(shè)置為時(shí)鐘頻率的1/10,另外Q0~Q6為品質(zhì)因數(shù)設(shè)置輸入端,分別接低電平或高電平,可以在0.5~64 之間設(shè)置濾波器的品質(zhì)因數(shù)。因此,不需要外加任何元件,而僅需外部時(shí)鐘就可以實(shí)現(xiàn)帶通濾波功能,使用極為方便。帶通特性曲線如圖2所示。
圖2 帶通特性曲線
其傳遞函數(shù) G(S)為:
在上式中,HOPB是ω=ω0時(shí)的輸出帶寬值,且ω0 =2πf。
fL和fH分別為:
其中
程控增益放大器設(shè)計(jì)
程控放大器是在DSP的控制下,將初級(jí)放大的信號(hào)放大到ADC的轉(zhuǎn)化區(qū)間內(nèi),以提高儀器的動(dòng)態(tài)范圍和靈敏度??紤]到器件的低頻噪聲特性和提高共模抑制比等因素,選擇了PGA204、PGA205組合,其共模抑制最高可達(dá)120dB。本設(shè)計(jì)采用了兩級(jí)程控反向差分的方法,并且兩級(jí)程控放大采用直接耦合差動(dòng)連接的方式。原理如圖3示。
圖3 兩級(jí)程控放大級(jí)聯(lián)原理圖
其中兩個(gè)級(jí)聯(lián)的第一級(jí)程控差分放大器由兩片PGA205實(shí)現(xiàn),兩片PGA205的輸出分別作為PGA204的正負(fù)輸入端,于是就構(gòu)成了第二級(jí)程控差分放大器。PGA204的可控放大倍數(shù)為1,10,100,1000;PGA205的可控放大倍數(shù)為1,2,4,8。所以,級(jí)聯(lián)后程控放大部分的可控放大倍數(shù)可有16種組合方式。
陷波器設(shè)計(jì)
50Hz的工頻干擾是數(shù)據(jù)采集系統(tǒng)中不可避免的,它會(huì)嚴(yán)重影響到前方和主放的穩(wěn)定性。所以此處利用高性能器件MC33171構(gòu)成50Hz陷波器,MC33171具有寬頻帶和較高的轉(zhuǎn)換速率。圖4為基于MC33171的50Hz陷波器電路,在圖示的元件數(shù)值下,通過(guò)改變兩個(gè)電阻R的值和一個(gè)電容C的值,可獲得陷波頻率,其數(shù)值為:f=1/4πRC。取R=16K,C=0.1μF可得陷波頻率為50Hz。
圖4 陷波器電路
A/D采樣設(shè)計(jì)
TMS320F2812的ADC模塊
TMS320F2812芯片中集成了一個(gè)12位A/D轉(zhuǎn)換模塊。為了滿(mǎn)足系統(tǒng)多傳感器的需求,F(xiàn)2812的A/D轉(zhuǎn)換模塊有16個(gè)通道,可配置為兩個(gè)8通道模塊,這樣就形成了兩個(gè)A/D轉(zhuǎn)換器。在內(nèi)部邏輯的控制下,用戶(hù)可同時(shí)啟動(dòng)這兩個(gè)或是其中某一個(gè)A/D轉(zhuǎn)換模塊。
F2812的ADC模塊是嵌入式的,它與傳統(tǒng)的A/D相比具有以下特點(diǎn):A/D模塊的硬件資源配置好了之后,用戶(hù)可以用軟件指令隨時(shí)啟動(dòng)A/D采樣,并獲得A/D轉(zhuǎn)換的結(jié)果。同傳統(tǒng)A/D不同的是,采集功能單元的硬件資源配置還有一部分是通過(guò)軟件完成的。
在TMS320F2812芯片中,A/D轉(zhuǎn)換單元的模擬電路包括前向模擬多路開(kāi)關(guān)(MUX)、采樣/保持(S/H)電路、A/D轉(zhuǎn)換內(nèi)核以及其他模擬輔助電路。A/D轉(zhuǎn)換單元的數(shù)字電路包括可編程轉(zhuǎn)換序列器、結(jié)果寄存器、與模擬電路的接口等。圖5為ADC模塊的構(gòu)成框圖。
圖5 ADC模塊構(gòu)成框圖
ADC模塊功能包括:
1)內(nèi)置雙采樣/保持(S/H)的12位A/D轉(zhuǎn)換模塊,模擬輸入為0-3V。
2)同時(shí)或順序采樣模式。
3)快速轉(zhuǎn)換時(shí)間,可運(yùn)行在25MHz的數(shù)模轉(zhuǎn)換時(shí)鐘或12.5MSPS。
4)多輸入通道達(dá)16通道。
5)自動(dòng)排序能力。一次可執(zhí)行多達(dá)16通道的“自動(dòng)抓換”。
6)兩個(gè)獨(dú)立的可選擇8個(gè)模擬通道的排序器(SEQ1和SEQ2)可獨(dú)立工作于雙排序器模式,或級(jí)聯(lián)后工作在可選擇16個(gè)模擬轉(zhuǎn)換通道的排序器模式。
7)可分別訪問(wèn)的16個(gè)結(jié)果寄存器用來(lái)保存轉(zhuǎn)換結(jié)果。
輸入模擬電壓轉(zhuǎn)換為數(shù)字值可由下式得到:
其中,ADCLO是A/D轉(zhuǎn)換低電壓參考值。
8)使用多個(gè)觸發(fā)信號(hào)啟動(dòng)數(shù)模轉(zhuǎn)換(SOC),比如:
- S/W:軟件立即啟動(dòng)。
- EVA:時(shí)間管理器EVA(在EVA中有多個(gè)時(shí)間源可以啟動(dòng)轉(zhuǎn)換)。
- EVB:時(shí)間管理器EVA(在EVB中有多個(gè)時(shí)間源可以啟動(dòng)轉(zhuǎn)換)。
9)在雙排序模式下,EVA和EVB觸發(fā)器可各自獨(dú)立的出發(fā)SEQ1和SEQ2。
10)中斷控制方式靈活,可在每次轉(zhuǎn)換結(jié)束或每隔一次轉(zhuǎn)換結(jié)束發(fā)出中斷。
數(shù)據(jù)采集系統(tǒng)A/D采樣設(shè)計(jì)
本系統(tǒng)信號(hào)輸入設(shè)計(jì)為24路。DSP本身的A/D輸入通道是16路,所以要外接多路模擬轉(zhuǎn)換器進(jìn)行擴(kuò)展。在電路設(shè)計(jì)中,使用3條DSP的A/D輸入通道ADCINA0- ADCINA2,每一通道掛接一片8輸入1輸出多路模擬轉(zhuǎn)換器4051,這樣就可以擴(kuò)展為24路模擬信號(hào)輸入。為了減小信號(hào)通道之間切換帶來(lái)的串?dāng)_,需在通道切換后加放大器減小信號(hào)輸入阻抗,為了減小A/D轉(zhuǎn)換產(chǎn)生的誤差,用兩路己知信號(hào)電平輸入引入信號(hào)參考,提高采集精度。
圖6展示了TMS320F2812內(nèi)嵌的A/D轉(zhuǎn)換模塊與輸入信號(hào)之間的接口。
圖6 A/D模塊與信號(hào)接口
對(duì)于每一個(gè)轉(zhuǎn)換,CONVxx位確定采樣和轉(zhuǎn)換的外部模擬量引腳。使用順序采樣模式時(shí),CONVxx的4位都用來(lái)確定輸入引腳,最高位確定采用哪個(gè)采樣并保持緩沖器,其他3位定義偏移量。例如,如果CONVxx的值是0001b,ADCINA1就被選為輸入引腳。如果CONVxx的值是1111b,ADCINB7被選為輸入引腳 。
TMS320F2812 ADC的精度校正
理想情況下,F(xiàn)2812的ADC模塊轉(zhuǎn)換方程為y =x ? mi,x=輸入電壓×4095/3,y為輸出計(jì)數(shù)值。在實(shí)際中,ADC的誤差不可避免,定義有增益誤差和失調(diào)誤差的轉(zhuǎn)換方程為y=x ? ma±b,式中ma為實(shí)際增益,b為失調(diào)誤差。F2812的ADC理想狀態(tài)與實(shí)際轉(zhuǎn)換精度較差的主要原因是存在增益誤差和失調(diào)誤差,因此必須對(duì)這兩種誤差進(jìn)行補(bǔ)償。校正方法如下:選用ADC的任意兩個(gè)通道作為參考輸入通道,分別提供給它們已知的直流參考電壓作為輸入(兩個(gè)電壓不能相同),通過(guò)讀取相應(yīng)的結(jié)果寄存器獲取轉(zhuǎn)換值,求得校正增益和校正失調(diào),再利用這兩個(gè)值對(duì)其他通道的轉(zhuǎn)換數(shù)據(jù)進(jìn)行補(bǔ)償,從而提高了ADC模塊轉(zhuǎn)換的精準(zhǔn)度。圖7顯示了如何利用方程獲取ADC的校正增益和校正失調(diào)。
圖7 理想轉(zhuǎn)換與實(shí)際ADC轉(zhuǎn)換
TMS320F2812與PDIUSBD12接口設(shè)計(jì)
TMS320F2812與PDIUSBD12之間采用并口連接方式,并且都工作在3V電壓下,給PDIUSBD12分配一個(gè)片選,可以通過(guò)讀寫(xiě)地址對(duì)其進(jìn)行操作,它們之間的電氣連接不需要特殊處理,按照管腳功能一一對(duì)應(yīng)連接即可。圖8是TMS320F2812與PDIUSBD12的硬件連接圖。
圖8 TMS320F2812與PDIUSBD12的硬件連接圖
系統(tǒng)軟件設(shè)計(jì)
該數(shù)據(jù)采集系統(tǒng)可以通過(guò)USB接口直接與PC機(jī)相連,在CCS集成開(kāi)發(fā)環(huán)境下通過(guò)JTAG接口來(lái)調(diào)試、燒寫(xiě)程序,可使用C語(yǔ)言來(lái)實(shí)現(xiàn)。
主程序流程
圖9是系統(tǒng)主程序流程圖。在系統(tǒng)上電之后,先對(duì)DSP的時(shí)鐘等系統(tǒng)參數(shù)進(jìn)行初始化,然后對(duì)片上A/D、I/O、存儲(chǔ)器設(shè)備等進(jìn)行初始化,再對(duì)USB設(shè)備初始化,之后程序進(jìn)入循環(huán)等待主機(jī)通過(guò)USB口發(fā)送命令,然后對(duì)命令進(jìn)行相應(yīng)處理。
圖9 系統(tǒng)主程序流程圖
A/D轉(zhuǎn)換流程
在使用TMS320F2812的內(nèi)嵌A/D轉(zhuǎn)換器進(jìn)行數(shù)據(jù)采集時(shí),首先對(duì)A/D進(jìn)行初始化,并且設(shè)置中斷程序入口地址,通過(guò)Timer中斷的配置控制采樣頻率。在開(kāi)啟中斷后,程序進(jìn)入中斷服務(wù)子程序,它將A/D轉(zhuǎn)換結(jié)果讀入數(shù)組Ad_data1[ ]中,并重新啟動(dòng)A/D,進(jìn)行數(shù)據(jù)轉(zhuǎn)換,如此循環(huán)往復(fù)。流程圖如圖10所示。
圖10 系統(tǒng)程序流程圖
結(jié)束語(yǔ)
本文利用TMS320F2812與PDIUSBD12相結(jié)合,設(shè)計(jì)了一套三維感應(yīng)測(cè)井探測(cè)器的數(shù)據(jù)采集系統(tǒng)。其接口電路簡(jiǎn)單,采集精度高,可完成對(duì)24路通道的同時(shí)采樣和順序采樣,并且能對(duì)單通道實(shí)行多次采樣。系統(tǒng)還采用了USB接口,采集到的數(shù)據(jù)經(jīng)過(guò)處理后,通過(guò)USB上傳到主機(jī),由上層軟件進(jìn)一步處理,從而能夠更有效地測(cè)得油井中的油氣分布。