文獻(xiàn)標(biāo)識(shí)碼: B
文章編號(hào): 0258-7998(2011)02-0078-04
利用超聲波對(duì)路橋等建筑進(jìn)行結(jié)構(gòu)檢測(cè)時(shí)通常都需要在大空間范圍內(nèi)進(jìn)行數(shù)據(jù)采集,傳統(tǒng)的數(shù)據(jù)采集方式是將遠(yuǎn)端各個(gè)傳感器的模擬信號(hào)通過電纜引入近端數(shù)據(jù)采集板卡,由具有多路A/D轉(zhuǎn)換功能的數(shù)據(jù)采集板卡進(jìn)行模數(shù)轉(zhuǎn)換并送入上位機(jī)。長(zhǎng)距離的傳輸模擬信號(hào)容易引入較大的噪聲,降低系統(tǒng)的精度。隨著嵌入式以太網(wǎng)技術(shù)的發(fā)展,可以將數(shù)據(jù)采集節(jié)點(diǎn)直接放在各個(gè)傳感器附近進(jìn)行數(shù)據(jù)采集,將轉(zhuǎn)換完的數(shù)字信號(hào)通過TCP/IP協(xié)議傳入中心控制節(jié)點(diǎn)。本文設(shè)計(jì)了一個(gè)基于TCP/IP協(xié)議的高精度多路數(shù)據(jù)采集系統(tǒng),該系統(tǒng)以TMS320VC5X系列的DSP器件為主控芯片,可以進(jìn)行大空間范圍的高精度數(shù)據(jù)采集。另外,超聲回波信號(hào)通常具有較大的動(dòng)態(tài)范圍,基于傳統(tǒng)運(yùn)放的放大技術(shù)不能對(duì)信號(hào)的動(dòng)態(tài)范圍進(jìn)行限制,這使得A/D轉(zhuǎn)換的精度降低。本文提出了一種基于預(yù)采樣的自動(dòng)增益電路,可以將輸入信號(hào)調(diào)整到A/D轉(zhuǎn)換器的最佳輸入范圍內(nèi),提高了A/D轉(zhuǎn)換的精度。
1 系統(tǒng)總體設(shè)計(jì)和性能
1.1 系統(tǒng)的總體設(shè)計(jì)
本系統(tǒng)分為中心控制節(jié)點(diǎn)和若干數(shù)據(jù)采集節(jié)點(diǎn)。系統(tǒng)的拓?fù)浣Y(jié)構(gòu)為總線型結(jié)構(gòu),節(jié)點(diǎn)間以TCP/IP協(xié)議進(jìn)行通信。系統(tǒng)開始工作后首先由中心節(jié)點(diǎn)以UDP廣播報(bào)的形式向所有的數(shù)據(jù)采集節(jié)點(diǎn)發(fā)出開始采集命令,數(shù)據(jù)采集節(jié)點(diǎn)接到命令后同步開始數(shù)據(jù)采集,采集完一個(gè)包的數(shù)據(jù)后按照預(yù)定的格式以UDP報(bào)的形式將數(shù)據(jù)發(fā)送給中心控制節(jié)點(diǎn)。為解決總線型結(jié)構(gòu)通信中常遇到的網(wǎng)絡(luò)擁塞問題,本系統(tǒng)將每個(gè)數(shù)據(jù)采集節(jié)點(diǎn)所發(fā)送的第一個(gè)包設(shè)計(jì)為不同的長(zhǎng)度,分支節(jié)點(diǎn)1在采集完n1個(gè)點(diǎn)后發(fā)送,分支節(jié)點(diǎn)2在采集完n2個(gè)點(diǎn)后發(fā)送,…分支節(jié)點(diǎn)N在采集完nN個(gè)節(jié)點(diǎn)后發(fā)送。以后的數(shù)據(jù)包都是等長(zhǎng)的,這就分散了網(wǎng)絡(luò)的負(fù)載,使得發(fā)生網(wǎng)絡(luò)擁堵的幾率大大降低[3]。中心控制節(jié)點(diǎn)負(fù)責(zé)將接收到的數(shù)據(jù)保存入SD卡中。系統(tǒng)的總體框圖如圖1所示。
1.2 系統(tǒng)性能指標(biāo)
根據(jù)實(shí)際需要,本數(shù)據(jù)采集系統(tǒng)的技術(shù)指標(biāo)如下:(1)數(shù)據(jù)采集節(jié)點(diǎn)數(shù) 1~48道可調(diào);(2)每個(gè)通道最大采樣率:大于100 KS/s;(3)采樣精度:24位;(4)道間串?dāng)_抑制比:大于70 dB;(5)采集信號(hào)動(dòng)態(tài)范圍:120 dB; (6)每通道的最大傳輸速率:10 Mb/s;(7)儀器噪聲:最大15 μV。
2 系統(tǒng)硬件設(shè)計(jì)
2.1數(shù)據(jù)采集節(jié)點(diǎn)硬件設(shè)計(jì)
數(shù)據(jù)采集節(jié)點(diǎn)采用TMS320VC5402A DSP芯片作為主控芯片,其最高處理能力可以達(dá)到160 MIPS,具有16 K×16 bit的片上RAM,片上配置了3個(gè)多通道緩沖串口(可配置為SPI模式),具有快速的中斷響應(yīng)能力,同時(shí)具有多種低功耗模式,這些特性滿足了系統(tǒng)實(shí)時(shí)性和低功耗的要求,同時(shí)其價(jià)格相對(duì)低廉,有利于降低系統(tǒng)的成本。模數(shù)轉(zhuǎn)換芯片采用24位高精度A/D轉(zhuǎn)換芯片AD7767,AD7767采用SPI接口,最高采樣頻率可達(dá)128 kS/s,在最高工作頻率下的功耗僅為15 mW。網(wǎng)絡(luò)通信芯片采用RTL8019AS芯片,將RTL8019AS芯片的AUI接口與同軸電纜驅(qū)動(dòng)芯片DP8392連接,可實(shí)現(xiàn)基于10Base2的細(xì)同軸電纜通信。數(shù)據(jù)采集節(jié)點(diǎn)的框圖如圖2所示。
2.2 自動(dòng)增益模塊設(shè)計(jì)
在很多場(chǎng)合下,例如超聲檢測(cè),地質(zhì)勘探都需要達(dá)到很高的采集精度,目前的24位A/D轉(zhuǎn)換芯片實(shí)際上并不能真正的達(dá)到24位,同時(shí)輸入的模擬信號(hào)往往具有很大的動(dòng)態(tài)范圍,不能處于A/D轉(zhuǎn)換芯片的最佳轉(zhuǎn)換范圍,因此,本系統(tǒng)采用了基于預(yù)采樣和可編程放大器的自動(dòng)增益電路,以提高系統(tǒng)的轉(zhuǎn)換精度。前端自動(dòng)增益模塊的框圖如圖3所示。
要采集的模擬信號(hào)首先經(jīng)過放大倍數(shù)為1的高精度運(yùn)放OPA227,以提高信號(hào)的輸入阻抗,減小A/D轉(zhuǎn)換器對(duì)信號(hào)的影響。然后將信號(hào)送入8位的高速A/D轉(zhuǎn)換器TLC5510,進(jìn)行預(yù)采樣,將轉(zhuǎn)換完的結(jié)果送入CPLD進(jìn)行編碼,小信號(hào)對(duì)應(yīng)較大的放大階碼,大信號(hào)對(duì)應(yīng)較小的放大階碼。用此放大階碼控制可編程增益放大器PGA103,達(dá)到自動(dòng)增益的目的。同時(shí)DSP讀取CPLD產(chǎn)生的放大階碼,和AD7767采得的數(shù)據(jù)一起保存,提高采集的精度。
2.3 中心控制節(jié)點(diǎn)的設(shè)計(jì)
中心控制節(jié)點(diǎn)主要實(shí)現(xiàn)控制各個(gè)數(shù)據(jù)采集節(jié)點(diǎn)、接收采集的數(shù)據(jù)并保存入SD卡的功能。中心控制節(jié)點(diǎn)的設(shè)計(jì)框圖如圖4所示。
由于中心控制節(jié)點(diǎn)要承擔(dān)較為繁雜的控制任務(wù),并且要保存較大的數(shù)據(jù), 所以它的主控芯片采用TMS320VC5509 ADSP芯片。TMS320VC5509A可以在200 MHz的主頻下穩(wěn)定工作,具有128 KB的片上RAM,同時(shí)可以擴(kuò)展4 M×16 bit的片外SDRAM,具有支持SD模式和DMA傳輸?shù)腟D卡控制器,有利于系統(tǒng)的集成,減小系統(tǒng)的體積。網(wǎng)絡(luò)通信接口的設(shè)計(jì)與數(shù)據(jù)采集節(jié)點(diǎn)相同。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 中心控制節(jié)點(diǎn)軟件設(shè)計(jì)
中心控制節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括兩點(diǎn),一是控制數(shù)據(jù)采集節(jié)點(diǎn)的開始與停止,二是接收并保存數(shù)據(jù)采集節(jié)點(diǎn)發(fā)送的數(shù)據(jù)。由于系統(tǒng)的通信采用的是基于面向無連接的UDP數(shù)據(jù)報(bào)協(xié)議,并且系統(tǒng)所掛的分支數(shù)據(jù)采集節(jié)點(diǎn)數(shù)是可選擇的,所以為了確保數(shù)據(jù)的正確傳輸和確定系統(tǒng)所掛的分支節(jié)點(diǎn)數(shù),在工作開始的階段增加了一個(gè)握手的過程。首先數(shù)據(jù)采集節(jié)點(diǎn)在上電初始化后向中心節(jié)點(diǎn)發(fā)送建立連接請(qǐng)求,中心節(jié)點(diǎn)在接收到連接請(qǐng)求后保存該節(jié)點(diǎn)的IP地址,并檢測(cè)是否有足夠的內(nèi)存資源,若內(nèi)存夠,則向相應(yīng)節(jié)點(diǎn)發(fā)送連接成功數(shù)據(jù)報(bào),若內(nèi)存資源不夠,則發(fā)送連接失敗數(shù)據(jù)報(bào)。握手過程進(jìn)行后中心控制節(jié)點(diǎn)發(fā)送開始采集廣播報(bào),隨后各個(gè)數(shù)據(jù)采集節(jié)點(diǎn)開始數(shù)據(jù)采集。為了及時(shí)接收數(shù)據(jù)采集節(jié)點(diǎn)的數(shù)據(jù),中心節(jié)點(diǎn)將接收子程序放入中斷中,在非中斷期間進(jìn)行SD卡的寫操作。中心控制節(jié)點(diǎn)的軟件流程圖如圖5所示。為了保證系統(tǒng)的實(shí)時(shí)性,在對(duì)SD卡的操作中并未應(yīng)用文件系統(tǒng),而是將DSP中各個(gè)緩沖區(qū)的內(nèi)容依次寫入SD卡的相鄰地址中,這樣若系統(tǒng)所掛的數(shù)據(jù)采集節(jié)點(diǎn)為N個(gè),則第i個(gè)節(jié)點(diǎn)的兩幀數(shù)據(jù)中間相隔N-1個(gè)數(shù)據(jù)幀。在讀取SD的上位機(jī)中編寫相應(yīng)的軟件便可正確讀取每一個(gè)數(shù)據(jù)采集節(jié)點(diǎn)的數(shù)據(jù)。
3.2 數(shù)據(jù)采集節(jié)點(diǎn)軟件設(shè)計(jì)
3.2.1 數(shù)據(jù)格式的設(shè)計(jì)
每一個(gè)采樣點(diǎn)的數(shù)據(jù)采用32位長(zhǎng)整形來存儲(chǔ),包括24 bit的A/D采樣轉(zhuǎn)換結(jié)果,4 bit的放大階碼,其余位用0填充。UDP報(bào)除去數(shù)據(jù)鏈路層的包頭,有效的負(fù)載為46~1 500 B,再除去UDP的首部8 B和IP的首部20 B,這樣一個(gè)UDP幀的有效最大負(fù)載為1 472 B。因?yàn)樵谥行墓?jié)點(diǎn)寫入SD卡的過程中沒有采用文件系統(tǒng),所以需要在數(shù)據(jù)幀中添加必要的輔助信息,為此在每個(gè)包后附加一個(gè)8 bit的節(jié)點(diǎn)號(hào)信息和和一個(gè)24 bit的數(shù)據(jù)包號(hào)信息,這樣除每個(gè)數(shù)據(jù)采集節(jié)點(diǎn)發(fā)送的第一幀為避免沖突而采用不同的幀長(zhǎng)度外,每一個(gè)UDP幀發(fā)送45個(gè)采樣點(diǎn)的數(shù)據(jù),具體的數(shù)據(jù)格式如圖6所示。
3.2.2 數(shù)據(jù)采集節(jié)點(diǎn)工作流程
數(shù)據(jù)采集節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括按照中心控制節(jié)點(diǎn)的命令進(jìn)行采集以及將采集到的數(shù)據(jù)進(jìn)行封裝并發(fā)送到中心控制節(jié)點(diǎn)。首先在上電初始化后,和中心節(jié)點(diǎn)進(jìn)行握手,握手成功后,等待開始采集命令,接到開始采集命令后開始采集,在A/D轉(zhuǎn)換完成中斷中進(jìn)行轉(zhuǎn)換數(shù)據(jù)和放大階碼的讀取,在非中斷期間發(fā)送數(shù)據(jù)到中心控制節(jié)點(diǎn)。由于A/D轉(zhuǎn)換芯片輸出兩次轉(zhuǎn)換數(shù)據(jù)的時(shí)間間隔較小,并不能保證在這段時(shí)間中數(shù)據(jù)被完全發(fā)送,新的轉(zhuǎn)換數(shù)據(jù)可能會(huì)覆蓋掉未發(fā)送的數(shù)據(jù)。因此采用“乒乓”操作技術(shù),在分支節(jié)點(diǎn)的DSP中開辟兩個(gè)發(fā)送緩沖區(qū),當(dāng)一個(gè)發(fā)送緩沖區(qū)滿的時(shí)候?qū)/D轉(zhuǎn)換數(shù)據(jù)寫入另一個(gè)數(shù)據(jù)緩沖區(qū),同時(shí)發(fā)送此緩沖區(qū)中的數(shù)據(jù)。這樣,數(shù)據(jù)只要在兩個(gè)緩沖區(qū)同時(shí)寫滿之前發(fā)送完成就不會(huì)造成數(shù)據(jù)的丟失。具體的流程圖如圖7所示。
4 實(shí)驗(yàn)結(jié)果及結(jié)論
為了驗(yàn)證本系統(tǒng)的性能,對(duì)已知的正弦波信號(hào)源進(jìn)行采集,并和MPS-140801多路數(shù)據(jù)采集卡進(jìn)行對(duì)比。MPS-140801采集卡在一塊板卡上集成了八路數(shù)據(jù)采集通路,將遠(yuǎn)端傳感器的模擬信號(hào)引到近端經(jīng)過放大后進(jìn)行采集。
實(shí)驗(yàn)時(shí)數(shù)據(jù)傳輸?shù)木嚯x為50 m。測(cè)試信號(hào)是峰值為2 V,頻率為20 kHz的正弦波。
圖8為本文設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)的采集結(jié)果,圖9為MPS-140801數(shù)據(jù)采集卡的采集結(jié)果。
通過采集到的波形可以明顯看出,經(jīng)過長(zhǎng)距離的傳輸后,MPS-140801數(shù)據(jù)采集卡采集的數(shù)據(jù)混入了較多的噪聲。計(jì)算得出本文設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)信噪比比MPS-140801數(shù)據(jù)采集卡的信噪比提高了近20 dB,從而驗(yàn)證了本系統(tǒng)較傳統(tǒng)的數(shù)據(jù)采集卡具有較高的精度。
本文設(shè)計(jì)的基于TCP/IP協(xié)議的數(shù)據(jù)采集系統(tǒng)實(shí)現(xiàn)了數(shù)據(jù)采集和傳輸?shù)娜虜?shù)字化,同時(shí)采用基于預(yù)采樣的自動(dòng)增益處理技術(shù),大大提高了系統(tǒng)的精度,從而具有較高的實(shí)用價(jià)值。
參考文獻(xiàn)
[1] 王霞,李淑民,裴培,等. 基于ADS8364的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2009,35(7):95-97.
[2] 黃超,李俊,林錦國(guó). 基于DSP的多通道數(shù)據(jù)采集電路[J]. 儀表技術(shù)與傳感器,2008,26(10):83-87.
[3] 游雪峰,文玉梅,李平. 以太網(wǎng)分布式數(shù)據(jù)采集同步和實(shí)習(xí)傳輸研究[J]. 儀器儀表學(xué)報(bào),2006,27(4):384-388.
[4] 李宏佳,徐曉曉,魏權(quán)利. 基于ARM和SD卡的嵌入式文件系統(tǒng)研究與設(shè)計(jì)[J]. 電子設(shè)計(jì)應(yīng)用, 2007(7): 92-94.
[5] 薛紅娟,江河海,張飛軍. 基于DSP和ADS8615的數(shù)據(jù)采集系統(tǒng)[J]. 數(shù)據(jù)采集與處理, 2009,24(10):286-289.