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