文獻(xiàn)標(biāo)識碼: B
文章編號: 0258-7998(2012)10-0072-03
在地球物理勘探領(lǐng)域,,地震波勘探越來越受到地質(zhì)工作者的青睞,,地震波數(shù)據(jù)的正確采集因此顯得非常重要。地震信號由于其自身的固有特征,,動態(tài)范圍需在120 dB左右,,頻帶需要在10 Hz~1 kHz左右,對采集卡提出了較高要求,,而且隨著城市化進(jìn)程的加劇,,測試環(huán)境的背景噪聲也越來越復(fù)雜,這給地震數(shù)據(jù)的采集帶來了新的問題,,同時也給采集卡提出了更高的要求,。因此需要采用更高精度的ADC技術(shù)和更加嚴(yán)格的數(shù)字濾波技術(shù)對信號進(jìn)行處理,才能得到理想的采集數(shù)據(jù)[1],。目前國內(nèi)相應(yīng)的儀器均采用國外進(jìn)口,,為了有所突破,本文對此技術(shù)進(jìn)行的相應(yīng)研究,,通過CS3301,、CS5272以及CS5376和STM32相連,構(gòu)成了一套地震數(shù)據(jù)采集卡,,采集在地震勘探過程中的地震波信號,,并通過網(wǎng)絡(luò)接口傳遞給上位機(jī),以LabVIEW作為軟件平臺對數(shù)據(jù)進(jìn)行實時監(jiān)測,、處理以及分析,。
1 系統(tǒng)的硬件結(jié)構(gòu)框圖
系統(tǒng)的硬件結(jié)構(gòu)框圖如圖1所示,硬件電路主要包括前端運放CS3301,、24位ADC芯片CS5372,、數(shù)字濾波芯片CS5376、網(wǎng)絡(luò)接口芯片ENC28J60以及STM32F103ZE芯片的最小系統(tǒng)和相關(guān)模塊之間的接口電路,。
1.1 STM32F103ZE硬件模塊
本系統(tǒng)采用ST(意法半導(dǎo)體)公司生產(chǎn)的STM32F103ZE作為核心控制模塊,。STM32F103ZE是基于最新Cortex-M3內(nèi)核的32位高速ARM微處理器,功耗比較低,工作頻率經(jīng)過PLL倍頻后最高可以達(dá)到72 MHz。它擁有512 KB Flash,,64 KB SRAM,,外圍接口相當(dāng)豐富,擁有2個SPI接口,完全滿足設(shè)計的要求,。STM32F103ZE作為本系統(tǒng)的控制核心,直接通過兩個SPI接口分別控制CS5376和ENC28J60工作狀態(tài)以及數(shù)據(jù)采集,、處理和發(fā)送過程。首先將CS5376濾波處理過后的數(shù)據(jù)傳遞給ENC28J60,再通過網(wǎng)線與上位機(jī)通信,。在本數(shù)據(jù)采集系統(tǒng)中,,STM32F103ZE外接8 MHz時鐘,經(jīng)過內(nèi)部PLL倍頻至72 MHz[2],。
1.2 CS3301,、CS5372及CS5376硬件接口模塊
CS3301、CS5372和CS5376是Cirrus Logic公司生產(chǎn)的專用于地震數(shù)據(jù)采集的一組套片,,需要一起配合使用,,CS5372是基于△-Σ技術(shù)的24位ADC調(diào)制芯片,它對信號進(jìn)行抽取調(diào)制后變成“1”的比特流,,然后送至數(shù)字濾波芯片CS5376進(jìn)行濾波處理后形成24位數(shù)據(jù)輸出,。前端的信號調(diào)理電路采用CS3301,它是差分運放,,增益可控,,用它進(jìn)行前端阻抗匹配以及放大倍數(shù)的控制。對應(yīng)的電路接口圖如圖2和圖3所示,。圖2中,,CS3301通過MUX0和MUX1選擇輸入通道,GAIN0~GAIN2控制增益,。這些控制信號都接入STM32,,由STM32進(jìn)行控制。電阻R1,、R2,、R3、R4和電容C1,、C2組成信號輸入耦合電路,。其中電阻R1、R2的作用是匹配信號內(nèi)阻,;電容C1,、C2起隔直作用;電阻R3,、R4組成運放偏置電流回路,。隔直電容C1、C2在隔斷直流信號的同時,,也隔斷了部分低頻信號,。如果想讓預(yù)定頻率的信號通過,則C1,、C2和R3,、R4的大小必須合適,。另外CS3301、CS5372均需要外接時鐘信號,它們直接由數(shù)字濾波芯片CS5376產(chǎn)生,這樣有利于在數(shù)據(jù)處理時嚴(yán)格控制信號的同步性,。
1.3 STM32和ENC28H60硬件接口模塊
在本課題中設(shè)計中,,網(wǎng)卡芯片采用Microchip(微芯)公司生產(chǎn)的ENC28J60。該芯片是目前全球最小封裝的以太網(wǎng)控制器,。目前市場上大部分以太網(wǎng)控制器采用的封裝均超過80引腳,而符合IEEE802.3協(xié)議的ENC28J60只有28引腳,,這既能提供相應(yīng)的功能,又可以大大簡化相關(guān)設(shè)計,,并減小電路板的空間,精簡相應(yīng)的程序設(shè)計開發(fā),。此外,,ENC28J60 以太網(wǎng)控制器采用業(yè)界標(biāo)準(zhǔn)的SPI 串行接口,只需4條連線即可與主控單片機(jī)連接。這些功能加上由Microchip 免費提供的,、用于單片機(jī)的TCP/IP軟件堆棧,,使之成為目前市面上最小的嵌入式應(yīng)用以太網(wǎng)解決方案[3]。
ENC28J60芯片內(nèi)部集成了網(wǎng)絡(luò)變壓器和用作指示的LED,因此電路中不再需要接網(wǎng)絡(luò)變壓器,。由于ENC28J60是基于SPI 接口的以太網(wǎng)控制芯片,因此其與嵌入式系統(tǒng)的接口非常簡單,只需將ENC28J60的SPI接口與STM32F103ZE的SPI接口按照標(biāo)準(zhǔn)的SPI接口方式連接即可,。
2 系統(tǒng)的軟件設(shè)計
2.1 STM32軟件設(shè)計
STM32F103ZE采用MDK作為開發(fā)環(huán)境。系統(tǒng)采集軟件由主程序和若干子程序構(gòu)成,子程序包括SPI1控制CS5376,,SPI2控制ENC28J60,, 數(shù)據(jù)采集程序框圖如圖4所示。
在STM32軟件設(shè)計中需要包含對網(wǎng)絡(luò)接口芯片ENC28J60和數(shù)字濾波芯片CS5376的初始化,。ENC28J60和CS5376均采用SPI接口,,因此需要對STM32F103的兩個SPI接口——SPI1和SPI2分別初始化。這里不再贅述,。
2.2 LabVIEW上位機(jī)軟件設(shè)計
本課題采用了LabVIEW作為上位機(jī)軟件開發(fā)平臺,。它使用圖形化編程語言——G語言進(jìn)行編程,功能強(qiáng)大而使用靈活,,分前面板和后面板兩部分來進(jìn)行設(shè)計,。前面板是圖形化顯示界面,后面板是模塊連接圖,。在本課題的設(shè)計中,,使用了LabVIEW后面板數(shù)據(jù)通信控件協(xié)議中的4個函數(shù)[3],將分別介紹如下,。
該函數(shù)是用來打開地址或者網(wǎng)絡(luò)端口或服務(wù)器的TCP連接,。比如說打開192.168.1.1端口號為80的TCP連接。該函數(shù)是用來匹配IP地址是否是目標(biāo)板的IP地址,,如果是則連接成功,,不是則返回錯誤信號。該函數(shù)中的地址要與其建立連接的目標(biāo)板的地址一致。該地址可以為IP句點符號格式,,例如192.168.1.1或者主機(jī)名,。如未指定地址,LabVIEW將建立與本地計算機(jī)的連接,;遠(yuǎn)程端口或服務(wù)名稱可以接受數(shù)字或字符串輸入,。遠(yuǎn)程端口或服務(wù)名稱是要與其確立連接的端口或服務(wù)的名稱。
在本課題中目標(biāo)板的端口號選用5 000端口,。
函數(shù)3:讀取TCP數(shù)據(jù) (函數(shù)),,如圖7所示。
當(dāng)LabVIEW和目標(biāo)板建立連接后,,該函數(shù)用來讀取數(shù)據(jù)以及控制讀取數(shù)據(jù)的字節(jié)數(shù),。在本課題中一次讀取的字節(jié)數(shù)控制為4 096 B。剛好為一個AD采樣存儲空間的大小,。
函數(shù)4:關(guān)閉TCP連接(函數(shù)),如圖8所示,。該函數(shù)是實現(xiàn)關(guān)閉TCP連接。
在本課題中LabVIEW前面板框圖如圖9所示,,后面板如圖10所示,。在前面板中輸入目標(biāo)板的地址192.168.1.30,端口為5 000,,讀取的字節(jié)數(shù)為4 096,。打開/停止鍵控制打開和關(guān)閉TCP連接。
由于剛開始不知道數(shù)據(jù)傳輸?shù)母袷?,所以使用網(wǎng)絡(luò)調(diào)試助手進(jìn)行數(shù)據(jù)觀測,。
通過觀測發(fā)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)包是按照字節(jié)進(jìn)行發(fā)送的,也就是說下位機(jī)中的24 bit AD采樣數(shù)據(jù)分4個字節(jié)發(fā)送,,先發(fā)送低字節(jié),,然后發(fā)送高字節(jié),因此需要將發(fā)送的數(shù)據(jù)進(jìn)行整合處理,。相應(yīng)的整合電路如圖11所示,。
先將低2字節(jié)的數(shù)據(jù)直接拿出來,高2字節(jié)的數(shù)據(jù)乘以65 535后與低2 bit的數(shù)據(jù)進(jìn)行疊加形成新的數(shù)據(jù),。這個新的數(shù)據(jù)就是一次AD轉(zhuǎn)換的結(jié)果,,轉(zhuǎn)換成float型數(shù)據(jù),也就是乘以參考電壓除以2的N次方減1,,將相應(yīng)的數(shù)據(jù)傳送給顯示控件進(jìn)行顯示,。在試驗過程中用AD采樣標(biāo)準(zhǔn)三角波和標(biāo)準(zhǔn)正弦波。從顯示的曲線可以看出,,系統(tǒng)可以完全地進(jìn)行采樣并且正確地顯示,。
本課題提出了一種基于STM32和LabVIEW的地震數(shù)據(jù)采集卡的設(shè)計,,實現(xiàn)了信號的遠(yuǎn)程監(jiān)測,用戶通過登錄服務(wù)器即可實現(xiàn)信號的遠(yuǎn)程監(jiān)控,。經(jīng)實驗測試,,采集卡通信穩(wěn)定,信號采集精度高,,并且使用方便,。非常適合遠(yuǎn)程中低頻信號的監(jiān)測,具有很好的應(yīng)用前景,。
參考文獻(xiàn)
[1] 何正淼,,宋克柱,湯家俊,等. 24位ADC在地震數(shù)據(jù)采集中的應(yīng)用[J].數(shù)據(jù)采集與處理,,2005,20(2):244-248.
[2] 彭剛,秦志強(qiáng).基于ARM Cortex-M3的STM32系列嵌入式微控制器應(yīng)用實踐[M].北京:電子工業(yè)出版社,,2011.
[3] 劉建超.單片機(jī)與Internet網(wǎng)絡(luò)的通信應(yīng)用研究[D].濟(jì)南:山東師范大學(xué),2007.
[4] 吳成東,孫秋野,盛科. LabVIEW虛擬儀器程序設(shè)計及應(yīng)用[M].北京:人民郵電出版社,,2008.