《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 一種分布式無(wú)線同步數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
一種分布式無(wú)線同步數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
2014年電子技術(shù)應(yīng)用第10期
嚴(yán)正國(guó),黎 偉,馬 龍
西安石油大學(xué) 光電油氣測(cè)井與檢測(cè)教育部重點(diǎn)實(shí)驗(yàn)室,陜西 西安710065
摘要: 介紹了一種分布式多點(diǎn)無(wú)線同步地震數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)方法。該系統(tǒng)以C8051F020單片機(jī)為主控芯片,利用GPS模塊提供的PPS信號(hào)實(shí)現(xiàn)分布式采集系統(tǒng)的同步,利用無(wú)線射頻模塊Xbee-Pro實(shí)現(xiàn)數(shù)據(jù)的無(wú)線傳輸。
中圖分類號(hào): TN92
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)10-0049-04
Distributed wireless synchronous data acquisition system design
Yan Zhengguo,Li Wei,Ma Long
The Key Laboratory of Photo Electricity Gas & Oil Logging and Detecting of Ministry of Education,Xi′an Shiyou University,Xi′an 710065,China
Abstract: This paper introduces a distributed multi-point wireless synchronous seismic data acquisition system design.The system takes C8051F020 single chip microcomputer as main control chip, using GPS module to provide the PPS signal to realize the synchronization of distributed acquisition system, using the radio frequency module Xbee -Pro to realize the wireless transmission of data.The whole system is controlled by PC real-timely. Experiments show that the system can realize strictly synchronous acquisition, the acquisition system works stably and its operation is simple, which has high engineering application value.
Key words : data collection;wireless transmission;acquisition system

0 引言

    數(shù)據(jù)采集是指從傳感器和其他待測(cè)設(shè)備等模擬和數(shù)字被測(cè)單元中自動(dòng)采集非電量或者電量信號(hào),送到上位機(jī)中進(jìn)行分析、處理。傳統(tǒng)數(shù)據(jù)采集系統(tǒng)大部分是基于有線的通用微型計(jì)算機(jī)數(shù)據(jù)采集系統(tǒng)。雖然有線數(shù)據(jù)采集系統(tǒng)采集精度高,能夠?qū)崿F(xiàn)同步數(shù)據(jù)采集,但也存在布線繁瑣、耗材多、造價(jià)高、功耗大、擴(kuò)展性能差等不足之處。本設(shè)計(jì)針對(duì)有線數(shù)據(jù)采集系統(tǒng)的不足,在保證數(shù)據(jù)的同步采集和允許誤差范圍前提下,提出了以單片機(jī)C8051F020微處理器為核心的無(wú)線分布式同步數(shù)據(jù)采集系統(tǒng)。

1 系統(tǒng)方案設(shè)計(jì)

    本分布式無(wú)線同步數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)包括通信控制中心與多個(gè)無(wú)線數(shù)據(jù)采集單元,系統(tǒng)總體框圖如圖1所示。通信控制中心主要由上位機(jī)和無(wú)線模塊組成,無(wú)線模塊與上位機(jī)之間通過(guò)USB接口連接。整個(gè)系統(tǒng)由上位機(jī)控制,可以遠(yuǎn)程實(shí)時(shí)配置系統(tǒng)參數(shù),控制無(wú)線數(shù)據(jù)采集單元實(shí)現(xiàn)數(shù)據(jù)的采集、接收、存儲(chǔ)和處理。

jcdl6-t1.gif

2 系統(tǒng)硬件設(shè)計(jì)

    由圖1可知,系統(tǒng)硬件電路設(shè)計(jì)主要包括通信控制電路和無(wú)線數(shù)據(jù)采集單元的設(shè)計(jì)。

2.1 通信電路控制電路設(shè)計(jì)

    通信控制電路的主要功能是將上位機(jī)發(fā)出的控制命令轉(zhuǎn)發(fā)給各無(wú)線數(shù)據(jù)采集單元,并接收無(wú)線數(shù)據(jù)采集單元回傳的數(shù)據(jù),發(fā)送到上位機(jī)進(jìn)行數(shù)據(jù)后期處理。系統(tǒng)通信電路主要由上位機(jī)與無(wú)線模塊之間的通信電路設(shè)計(jì)以及無(wú)線通信模塊與各無(wú)線數(shù)據(jù)采集單元之間的通信電路設(shè)計(jì)兩部分組成。

2.1.1 上位機(jī)與無(wú)線模塊電路設(shè)計(jì)

    上位機(jī)與無(wú)線模塊之間采用USB轉(zhuǎn)串口的通信連接,通過(guò)Silicon Laboratories公司的USB接口與RS232串口轉(zhuǎn)換器CP2102芯片實(shí)現(xiàn)[1]。USB轉(zhuǎn)RS-232串口電路設(shè)計(jì)如圖2所示。通過(guò)轉(zhuǎn)換電路,實(shí)現(xiàn)了USB端口的數(shù)據(jù)傳輸端(D-和D+)與RS-232串口的數(shù)據(jù)通信端(TXD和RXD)之間的通信。

jcdl6-t2.gif

    無(wú)線模塊選用美國(guó)DIGI公司的XBee-PRO RF模塊,該模塊操作在ISM 2.4 GHz,低功耗,低成本,高性能,而且使用簡(jiǎn)易。數(shù)據(jù)輸出DOUT接至CP2102的串口接收RXD,數(shù)據(jù)輸入DIN連接至CP2102的串口發(fā)送TXD。電路設(shè)計(jì)如圖3所示。

jcdl6-t3.gif

2.1.2 無(wú)線模塊與無(wú)線模塊通信

    在數(shù)據(jù)采集系統(tǒng)中使用無(wú)線模塊的透明傳輸模式,它起到替代串口線的作用。所有通過(guò)DIN引腳接收到的UART數(shù)據(jù)依次由RF模塊發(fā)送。收到RF數(shù)據(jù)時(shí),數(shù)據(jù)被直接送出到DOUT腳。相鄰無(wú)線模塊之間可以自組網(wǎng),以此拓寬無(wú)線通信的傳輸距離[2]

2.2 無(wú)線數(shù)據(jù)采集單元設(shè)計(jì)

    無(wú)線數(shù)據(jù)采集單元電路設(shè)計(jì)框圖如圖4所示,主控制單元為無(wú)線數(shù)據(jù)采集單元的核心,它控制采集系統(tǒng)的A/D轉(zhuǎn)換、GPS模塊和無(wú)線模塊。GPS模塊為系統(tǒng)提供位置信息、時(shí)鐘信息和秒脈沖PPS信號(hào),與主控單元通過(guò)異步串行端口進(jìn)行通信,實(shí)現(xiàn)時(shí)鐘、位置信息的接收,秒脈沖輸出PPS引腳接入主控單元的外部中斷源/INT0,控制無(wú)線數(shù)據(jù)采集系統(tǒng)同步采集[3]。

jcdl6-t4.gif

3 系統(tǒng)軟件設(shè)計(jì)

    為了使程序編寫、調(diào)試方便以及結(jié)構(gòu)清晰,軟件開發(fā)采用模塊化設(shè)計(jì),整個(gè)數(shù)據(jù)采集系統(tǒng)主要包括以下幾個(gè)模塊:主程序設(shè)計(jì)、數(shù)據(jù)采集程序設(shè)計(jì)、GPS程序設(shè)計(jì)和無(wú)線通信程序設(shè)計(jì)[4]

3.1 主程序設(shè)計(jì)

    系統(tǒng)主程序流程框圖如圖5所示。系統(tǒng)上電進(jìn)入初始化后,處于等待上位機(jī)下發(fā)命令狀態(tài)。各數(shù)據(jù)采集單元收到上位機(jī)下發(fā)的命令后進(jìn)行ID號(hào)匹配,只有ID號(hào)與上位機(jī)下發(fā)的ID號(hào)匹配才開始解析上位機(jī)下發(fā)的命令。解析成功之后執(zhí)行相應(yīng)的指令。

jcdl6-t5.gif

3.2 數(shù)據(jù)采集程序設(shè)計(jì)

    系統(tǒng)數(shù)據(jù)采集部分由地震檢波器將地震波信號(hào)轉(zhuǎn)換成電信,經(jīng)過(guò)調(diào)理電路放大、濾波等處理后,經(jīng)差分輸入接入A/D轉(zhuǎn)換,進(jìn)行模數(shù)轉(zhuǎn)換得到數(shù)字信號(hào)。A/D采集程序流程圖如圖6所示。系統(tǒng)通過(guò)GPS模塊的PPS信號(hào)使個(gè)數(shù)據(jù)采集單元進(jìn)行同步采集。

3.3 GPS程序設(shè)計(jì)

    GPS數(shù)據(jù)接收程序流程圖如圖7所示,圖中GPS_RX為GPS接收數(shù)據(jù)計(jì)數(shù)器。當(dāng)無(wú)線數(shù)據(jù)采集單元接收到上傳GPS命令時(shí),主程序中使能GPS數(shù)據(jù)接收,串口0中斷服務(wù)程序中接收GPS數(shù)據(jù),首先檢測(cè)GPS數(shù)據(jù)幀頭開始“$”,檢測(cè)到“$”后,開始接收串口0的數(shù)據(jù),接收到6個(gè)數(shù)據(jù)時(shí),判斷數(shù)據(jù)幀頭其余數(shù)據(jù)是否正確,正確的數(shù)據(jù)幀頭為“GPGGA”。如果數(shù)據(jù)幀頭接收正確,則其后的數(shù)據(jù)幀均接收到接收緩存數(shù)組;如果數(shù)據(jù)幀頭接收不正確,則清零GPS接收數(shù)據(jù)計(jì)數(shù)器GPS_RX,重新開始GPS數(shù)據(jù)接收。NMEA-0183標(biāo)準(zhǔn)語(yǔ)句格式幀結(jié)束為CR+LF,當(dāng)接收到0x0d和0x0a時(shí),說(shuō)明GPS數(shù)據(jù)已接收完。

jcdl6-t6-7.gif

3.4 無(wú)線通信程序設(shè)計(jì)

    為了保證無(wú)線數(shù)據(jù)采集單元能接收到上位機(jī)發(fā)送的命令,串口1一直處于打開狀態(tài)。命令接收程序流程圖如圖8所示。上位機(jī)下發(fā)命令為8 B,其中前4個(gè)字節(jié)為數(shù)據(jù)幀頭“$DZD”,第5個(gè)字節(jié)為ID號(hào),第6個(gè)字節(jié)為命令字,第7、8個(gè)字節(jié)為參數(shù)。如果數(shù)據(jù)幀頭接收正確,則其后的數(shù)據(jù)幀均接收到串口1接收數(shù)據(jù)數(shù)組;如果數(shù)據(jù)幀頭不正確,則清零命令接收計(jì)數(shù)器CMD_RX,重新開始命令接收[5]。

jcdl6-t8.gif

    無(wú)線數(shù)據(jù)采集單元上傳的數(shù)據(jù)包括GPS數(shù)據(jù)、數(shù)據(jù)采集單元狀態(tài)數(shù)據(jù)和有效數(shù)據(jù)。主控單元通過(guò)串口1將要上傳的數(shù)據(jù)發(fā)送給無(wú)線模塊,無(wú)線模塊轉(zhuǎn)發(fā)給上位機(jī)。GPS數(shù)據(jù)、狀態(tài)數(shù)據(jù)和有效數(shù)據(jù)上傳程序設(shè)計(jì)思想類似。

    上傳回上位機(jī)的有效數(shù)據(jù)包含觸發(fā)坐標(biāo)、起始時(shí)刻和有效數(shù)據(jù),3組數(shù)據(jù)之間通過(guò)回車符分開,3組數(shù)據(jù)的幀頭分別為“$CFZB”、“$QSSK”和“$YXSJ”, 每組數(shù)據(jù)幀頭后增加ID號(hào),再發(fā)送有效數(shù)據(jù)。

4 系統(tǒng)測(cè)試

    無(wú)線同步數(shù)據(jù)采集系統(tǒng)的測(cè)試分為兩個(gè)階段進(jìn)行。第一個(gè)階段為電路板測(cè)試,測(cè)試系統(tǒng)各部分功能是否正常;第二個(gè)階段為現(xiàn)場(chǎng)測(cè)試,測(cè)試系統(tǒng)在真實(shí)地理環(huán)境中數(shù)據(jù)采集的精確度、穩(wěn)定性和可靠性。

4.1 電路板測(cè)試

    系統(tǒng)單個(gè)無(wú)線數(shù)據(jù)采集單元調(diào)試中,測(cè)試電路ID號(hào)為2號(hào),系統(tǒng)上電后處于待機(jī)狀態(tài),調(diào)試軟件選擇COM口,配置波特率為57 600 b/s,測(cè)試上傳GPS和查詢狀態(tài)命令結(jié)果如圖9所示,左側(cè)窗口為ASCII碼顯示,右側(cè)窗口為16進(jìn)制顯示。通過(guò)調(diào)試端口發(fā)送上傳GPS命令, 命令16進(jìn)制顯示為“24 44 5A 44 02 12 00 00”,收到上傳的GPS數(shù)據(jù),包括ID號(hào)02、時(shí)間信息、經(jīng)緯度信息等;再發(fā)送查詢狀態(tài)命令“24 44 5A 44 02 44 00 00”,返回02號(hào)單元處于12命令狀態(tài)。通過(guò)測(cè)試1說(shuō)明,通信控制中心與無(wú)線數(shù)據(jù)采集單元之間的無(wú)線通信正常,無(wú)線數(shù)據(jù)采集單元上傳GPS命令和查詢狀態(tài)命令工作正常。

jcdl6-t9.gif

    系統(tǒng)采集數(shù)據(jù)的測(cè)試結(jié)果如圖10所示。等待GPS模塊信號(hào)穩(wěn)定后,發(fā)送啟動(dòng)采集命令“24 44 5A 44 02 77 00 00”,再發(fā)送查詢狀態(tài)命令,返回?cái)?shù)據(jù)表明02號(hào)單元處于采集狀態(tài)77,狀態(tài)正確,等待震動(dòng)觸發(fā)。若沒有觸發(fā)信號(hào),則發(fā)送上傳有效數(shù)據(jù)命令,返回?cái)?shù)據(jù)“NODATA”。若敲擊02號(hào)單元產(chǎn)生震動(dòng)信號(hào),則發(fā)送上傳有效數(shù)據(jù)命令,返回起始時(shí)刻,觸發(fā)坐標(biāo),還有200個(gè)(系統(tǒng)默認(rèn)上傳有效數(shù)據(jù)個(gè)數(shù)為200)有效數(shù)據(jù)。通過(guò)測(cè)試2說(shuō)明系統(tǒng)采集部分工作正常。

jcdl6-t10.gif

    系統(tǒng)設(shè)置參數(shù)的測(cè)試結(jié)果如圖11所示。上位機(jī)發(fā)送有效數(shù)據(jù)長(zhǎng)度設(shè)置命令“24 44 5A 44 02 66 00 64”,命令中66為命令字,參數(shù)為2 B,修改有效數(shù)據(jù)長(zhǎng)度為100,十六進(jìn)制表示為64。接著查詢狀態(tài),返回02號(hào)單元處于參數(shù)設(shè)置狀態(tài)66。然后再進(jìn)行數(shù)據(jù)采集,觀察有效數(shù)據(jù)長(zhǎng)度是否已修改,由返回?cái)?shù)據(jù)可見,有效數(shù)據(jù)長(zhǎng)度參數(shù)設(shè)置成功,返回有效數(shù)據(jù)100個(gè)。通過(guò)測(cè)試3說(shuō)明系統(tǒng)參數(shù)設(shè)置程序工作正常,能夠?qū)崿F(xiàn)參數(shù)的遠(yuǎn)程配置。

jcdl6-t11.gif

4.2 現(xiàn)場(chǎng)測(cè)試

    系統(tǒng)進(jìn)行了現(xiàn)場(chǎng)實(shí)地測(cè)試,測(cè)試多個(gè)無(wú)線數(shù)據(jù)采集單元能否實(shí)現(xiàn)數(shù)據(jù)的同步采集。將6個(gè)無(wú)線數(shù)據(jù)采集單元在1 m范圍內(nèi)排布成圓形,以保證無(wú)線數(shù)據(jù)采集單元能夠采集到震動(dòng)信號(hào)。通信控制中心距離無(wú)線數(shù)據(jù)采集單元5 m的地方。實(shí)驗(yàn)開始后,首先打開電源開關(guān),上傳GPS信號(hào),配置比較電壓值為100,有效數(shù)據(jù)長(zhǎng)度為200。發(fā)送采集數(shù)據(jù)命令,查詢系統(tǒng)狀態(tài),6個(gè)無(wú)線數(shù)據(jù)采集單元處于采集狀態(tài),在圓形中央人工激發(fā)震動(dòng),上位機(jī)下發(fā)上傳有效數(shù)據(jù)命令,接收有效數(shù)據(jù)。將接收的有效數(shù)據(jù)利用上位機(jī)測(cè)試軟件繪制成波形,如圖12所示。

jcdl6-t12.gif

  分析采集數(shù)據(jù)波形圖可知,6個(gè)無(wú)線數(shù)據(jù)采集單元的有效數(shù)據(jù)都接收完整,大于比較電壓的數(shù)據(jù)為震動(dòng)觸發(fā)數(shù)據(jù),在圖中為波形起伏部分。波形左側(cè)為單元ID號(hào),起始時(shí)刻和觸發(fā)坐標(biāo)。采集單元距離震源遠(yuǎn)近不同,從圖中數(shù)據(jù)可以看出觸發(fā)坐標(biāo)相差1~2個(gè)點(diǎn)。6個(gè)采集單元的起始時(shí)刻完全相同,都為“24907”,說(shuō)明起始時(shí)刻為2點(diǎn)49分07秒,07秒6個(gè)單元同步采集數(shù)據(jù)。為了驗(yàn)證系統(tǒng)的可靠性,現(xiàn)場(chǎng)做了多次觸發(fā)采集,結(jié)果基本相同。說(shuō)明系統(tǒng)能夠完成數(shù)據(jù)的無(wú)線同步采集,達(dá)到了預(yù)期設(shè)計(jì)目標(biāo)。

5 結(jié)論

    實(shí)驗(yàn)證明,該分布式無(wú)線同步數(shù)據(jù)采集系統(tǒng)能夠達(dá)到數(shù)據(jù)的同步采集和數(shù)據(jù)的無(wú)線傳輸。系統(tǒng)工作穩(wěn)定,操作簡(jiǎn)單,具有較高的工程使用價(jià)值,給基于分布式的系統(tǒng)設(shè)計(jì)提供了參考。

參考文獻(xiàn)

[1] 劉妍,馬艷娥,陳思.一種基于單片機(jī)串口的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子測(cè)試,2011,9(9):59-60.

[2] 詹新生,張江偉.基于AT89S51的無(wú)線數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2011,30(4):201-202.

[3] 堯鵬,謝志江,余中云.一種高精度數(shù)據(jù)采集無(wú)線傳輸系統(tǒng)硬件設(shè)計(jì)[J].重慶大學(xué)學(xué)報(bào)(自然科學(xué)版),2006,29(4):9-10.

[4] 陳湘平,房莉.基于ZigBee的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].測(cè)控自動(dòng)化,2009,25(4-1):99-100.

[5] 朱衛(wèi)華.基于單片機(jī)射頻收發(fā)器的無(wú)線數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].南華大學(xué)學(xué)報(bào)(理工版),2003,17(4):51-52.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。