文獻標識碼: A
文章編號: 0258-7998(2014)06-0007-03
可控源音頻大地電磁測深CSAMT[1](Controlled Source Audio Magnetotellurics)法通過同步發(fā)射接收一組不同頻率的信號,測量大地的復電阻頻譜,從而得到地下不同深度介質(zhì)電阻率的變化規(guī)律。
在CSAMT法勘探過程中,需要根據(jù)探測目標布置發(fā)射源。在接收端,要將儀器放置到各采集點,在大部分情況下,工作人員只能通過步行的方式將設(shè)備送到采集點。這些特點決定了對數(shù)據(jù)進行補測要浪費大量的人力和物力,因此,迫切需要能夠在工作現(xiàn)場或遠程實時監(jiān)測采集的數(shù)據(jù)質(zhì)量,以便工作人員及時發(fā)現(xiàn)采集過程中發(fā)生的問題并分析原因,盡早采取相應措施。
目前,加拿大鳳凰公司的V8采用TDMA進行各站之間的數(shù)據(jù)傳輸;吉林大學儀器科學與電氣學院自主研發(fā)的JLEMI[2]分布式采集系統(tǒng)采用了GPRS,可以在遠程工作站實時監(jiān)測采集的數(shù)據(jù)。這些方法依賴于移動網(wǎng)絡(luò),在信號質(zhì)量不好的情況下工作會受到影響,甚至無法監(jiān)測。
除了移動網(wǎng)絡(luò)之外,現(xiàn)在應用比較廣泛的無線傳輸技術(shù)[3]有ZigBee、紅外線數(shù)據(jù)傳輸、WiFi等。但當前的手機中很少直接支持ZigBee,紅外線數(shù)據(jù)傳輸方式要求進行傳輸?shù)脑O(shè)備之間必須對準,而且中間不能有阻擋。藍牙是一種支持設(shè)備短距離通信(一般10 m內(nèi))的無線電技術(shù),采用分散式網(wǎng)絡(luò)結(jié)構(gòu)以及快跳頻和短包技術(shù),支持點對點及點對多點通信,工作在全球通用的2.4 GHz ISM頻段,其數(shù)據(jù)速率為1 Mb/s,采用時分雙工傳輸方案實現(xiàn)全雙工傳輸,現(xiàn)在手機、平板電腦等基本都配置了藍牙設(shè)備。
基于上述分析,本文采用藍牙無線傳輸技術(shù)[4],實現(xiàn)了采集站與Android手機間的數(shù)據(jù)傳輸。通過在采集站中嵌入藍牙模塊,在采集數(shù)據(jù)的同時,將數(shù)據(jù)以特定格式發(fā)送到手機中,在手機端對接收到的數(shù)據(jù)進行預處理并實時顯示。將該系統(tǒng)應用到JLEMI工作過程中,為工作人員帶來了很多便利。
1 系統(tǒng)組成
本系統(tǒng)由CSAMT采集站與Android手機端組成,二者通過藍牙協(xié)議[5]進行數(shù)據(jù)和指令的傳輸,如圖1所示。其中采集站安裝Windows操作系統(tǒng),主要負責數(shù)據(jù)采集,并通過嵌入的藍牙模塊將采集的數(shù)據(jù)傳輸?shù)绞謾C端;手機端接收數(shù)據(jù),并對數(shù)據(jù)進行平滑預處理,然后以曲線的形式顯示在屏幕上,提供給工作人員進行實時監(jiān)測。
圖1 系統(tǒng)組成示意圖
2 采集站
本系統(tǒng)中采集站[6]主要負責數(shù)據(jù)采集,并對采集的數(shù)據(jù)進行簡單預處理,將原始數(shù)據(jù)和預處理結(jié)果保存到本地磁盤中。除此以外,還可以通過嵌入的藍牙模塊將預處理結(jié)果傳輸?shù)绞謾C端。
采集站啟動后,首先開啟藍牙設(shè)備并監(jiān)聽手機端接入請求。當有手機接入后,開啟新的線程并監(jiān)聽處理手機端發(fā)來的命令。如果手機端需要監(jiān)測數(shù)據(jù),則必須首先向采集站發(fā)送相應指令。當采集站收到指令后,讀取采集到的數(shù)據(jù),按照自定義的協(xié)議進行封裝,并向手機端傳輸。在數(shù)據(jù)傳輸期間,手機可以通過向采集站發(fā)送命令,控制數(shù)據(jù)傳輸?shù)臅和Ec退出。
采集站端采用了開源庫bluecove[7]實現(xiàn)對藍牙模塊編程,并引入jdom.jar包實現(xiàn)對xml文件的讀取與解析[8]。
3 手機端
當前應用比較廣泛的手機操作系統(tǒng)包括Android、iOS、BlackBerry和Windows Phone等。市場研究公司Strategy Analytics在2013年11月1日發(fā)表報告稱,2013年第3季度全球智能手機出貨量在2012年同期的1.728億部基礎(chǔ)上增長45%,達到2.514億部,其中Android市場份額為81.3%,成為現(xiàn)在的主流手機操作系統(tǒng)。因此本系統(tǒng)的手機端基于Android操作系統(tǒng)開發(fā)。
目前,市面上已經(jīng)存在許多基于Android操作系統(tǒng)的應用軟件,如基于藍牙的健康服務終端應用軟件、基于GPRS通信的遠程監(jiān)控應用軟件以及基于各種通信協(xié)議的應用軟件等,這些應用軟件給現(xiàn)代生活帶來了極大便利。
3.1 工作流程
本系統(tǒng)的手機端應用程序包含1個Service和2個Activity。其中Service在后臺運行,其作用是監(jiān)聽本手機端的狀態(tài),當有事件產(chǎn)生時,與2個Activity產(chǎn)生交互,控制程序的運行。主Activity控制程序初始化、數(shù)據(jù)接收、預處理和曲線繪制;Activity2的作用是搜索周圍的藍牙設(shè)備,顯示搜索結(jié)果,接受用戶選擇,并將選擇結(jié)果傳遞給主Activity。手機端程序流程圖如圖2所示。
圖2 手機端整體流程圖
(1)啟動藍牙
首先檢查手機是否支持藍牙,如果支持,則獲取藍牙適配器對象,并在AndroidManifest中申明藍牙使用權(quán)限,開啟藍牙。
(2)搜索采集站藍牙設(shè)備
在手機端搜索采集站藍牙設(shè)備前,先要設(shè)置采集站端藍牙設(shè)備可見,以便手機端發(fā)現(xiàn)采集站藍牙設(shè)備進行配對。手機端通過使用BluetoothAdapter的startDiscovery()方法來搜索藍牙設(shè)備,在這個過程中,系統(tǒng)會發(fā)送以下3個廣播:
ACTION_DISCOVERY_START:開始搜索
ACTION_DISCOVERY_ FINISHED:搜索結(jié)束
ACTION_FOUND:找到設(shè)備
手機端可以注冊相應的BroadcastReceiver對象來接收相應的廣播,以便做出響應。
(3)請求建立連接
手機端搜索到采集站藍牙設(shè)備后,可以獲取其BluetoothService,然后利用listenUsingRfcomm_WithServiceRecord(String, UUID)方法獲取對應的BluetoothSocket,最后調(diào)用BluetoothSocket的connect()方法請求連接。如果手機端的UUID同采集站藍牙設(shè)備的UUID匹配,并且連接被采集站端藍牙設(shè)備接受,則連接成功。
(4)接收指令和數(shù)據(jù)
請求連接成功后,手機端和采集站的藍牙設(shè)備分別監(jiān)聽端口。當手機端向采集站發(fā)送一個讀取數(shù)據(jù)指令,采集站收到該指令后,首先根據(jù)自定義的協(xié)議對數(shù)據(jù)進行封裝,然后利用藍牙協(xié)議傳輸?shù)绞謾C端。手機端的主Activity監(jiān)聽數(shù)據(jù)端口,當接收到數(shù)據(jù)后,對其進行解析,得到發(fā)送的原始數(shù)據(jù),為后期的數(shù)據(jù)預處理和曲線繪制做準備。
(5)對接收到的數(shù)據(jù)進行繪圖顯示,其中可以通過選項來控制是否需要在顯示之前對數(shù)據(jù)進行平滑。
3.2 曲線繪制
本系統(tǒng)選擇開源類庫Achartengine[9]作為繪圖工具。該類庫針對Android系統(tǒng)開發(fā),易于二次開發(fā),能夠繪制折線圖、餅狀圖、柱狀圖等多種曲線。在本系統(tǒng)中,數(shù)據(jù)以折線圖的形式顯示。
對于CSAMT數(shù)據(jù)曲線,由于發(fā)射頻率和幅值都相差多個數(shù)量級,因此,需要以對數(shù)坐標的形式顯示。而Achartengine不直接支持對數(shù)坐標,本文通過對坐標軸的改進,實現(xiàn)了自定義坐標軸,從而實現(xiàn)了數(shù)據(jù)的對數(shù)顯示。主要步驟如下:
(1)將x軸改造為對數(shù)坐標
利用addXTextLabel函數(shù)實現(xiàn)x軸坐標轉(zhuǎn)換,該函數(shù)的基本格式為:addXTextLabel(double x,String text),其中x為x軸坐標點,text為轉(zhuǎn)換后顯示在x點的坐標值,如果不顯示,則可以設(shè)為空。x和text之間的關(guān)系為x=log10(text)。利用該方法,可以添加一系列的x軸對數(shù)坐標點。
(2)將y軸改造為對數(shù)坐標
原理和x軸相同,利用addYTextLabel(double y,String text)函數(shù)實現(xiàn)y坐標轉(zhuǎn)換。
(3)數(shù)據(jù)顯示
將接收到的數(shù)據(jù)轉(zhuǎn)換成對數(shù),并利用series.add()添加到繪圖中顯示。圖3顯示了手機中基于Achartengine繪制的數(shù)據(jù)曲線圖。因為本系統(tǒng)所應用的采集站有4個通道,所以共有8條曲線,包括4條幅頻特性曲線(上半部分)與4條相頻特性曲線(下半部分)。
圖3 采集數(shù)據(jù)的曲線圖
Achartengine為靜態(tài)繪圖,為達到實時更新的動態(tài)效果,需要對其進行動態(tài)刷新,即每當有新數(shù)據(jù)到來時,便進行一次點集的更新和繪圖的刷新。點觸曲線中某點,可以顯示該點對應的值,方便現(xiàn)場分析和判斷。
3.3 曲線平滑濾波
CSAMT法測量過程中,容易受到噪聲的干擾,在數(shù)據(jù)中出現(xiàn)“飛點”現(xiàn)象,會對后期的數(shù)據(jù)處理造成極大的干擾,甚至導致假結(jié)果。本文使用基于各向異性擴散的濾波方法[10]對數(shù)據(jù)進行預處理,算法模型為:
該方法以梯度的降函數(shù)做擴散速度,在梯度大的點擴散量較小,在梯度小的點擴散量較大,其優(yōu)點是在濾除噪聲的同時能保護曲線的局部特征。梯度的降函數(shù)相當于邊界保護函數(shù)的作用,如式(2)所示:
其中,k為閾值參數(shù)。
利用該算法對數(shù)據(jù)進行平滑的效果如圖4所示。
圖4 基于各向異性擴散算法的數(shù)據(jù)平滑效果圖
本文根據(jù)CSAMT法工作環(huán)境的特點,將藍牙無線數(shù)據(jù)傳輸技術(shù)引入CSAMT法的數(shù)據(jù)采集過程中,手機端在接收到采集數(shù)據(jù)后可以進行平滑處理,并通過對Achartengine類庫中坐標軸的改進,實現(xiàn)對數(shù)坐標顯示,在實際應用中得到了較好的效果。本系統(tǒng)既有利于進行CSAMT數(shù)據(jù)的集中監(jiān)測,也可以為現(xiàn)場工作人員觀察數(shù)據(jù)采集質(zhì)量、判斷故障點提供參考和支持,提高其工作效率。本系統(tǒng)的應用可以使采集設(shè)備不再配備顯示屏,有助于進一步減小體積,降低功耗。
藍牙的數(shù)據(jù)傳輸距離有限,不能達到遠距離數(shù)據(jù)監(jiān)測的目的,下一步工作是基于GPRS或WiFi無線傳輸技術(shù),實現(xiàn)手機中的遠距離數(shù)據(jù)監(jiān)測。
參考文獻
[1] 湯井田,何繼善.可控源音頻大地電磁法及其應用[M].長沙:中南大學出版社,2005.
[2] 張文秀.CSAMT與IP聯(lián)合探測分布式接收系統(tǒng)關(guān)鍵技術(shù)研究[D].長春:吉林大學,2012.
[3] 石明明,魯周迅.三種無線通信協(xié)議綜述[J].通信技術(shù),2011,7(44):0072-0073.
[4] 楊瑞.基于藍牙通信的短信平臺設(shè)計與實現(xiàn)[J].計算機應用與軟件,2011,2(28):218-219.
[5] 錢志宏,劉丹.藍牙技術(shù)數(shù)據(jù)傳輸綜述[J].通信學報,2012,4(33):0143-0152.
[6] 陳健.寬頻帶時頻電磁接收機關(guān)鍵技術(shù)研究[D].長春:吉林大學,2012.
[7] BRUCE H,RANJITH A.Bluetooth for java[M].Berkeley:Apress,2003.
[8] 方躍堅,余枝強,翟磊,等.一種混合并行XML解析方法[J].軟件學報,2013,24(9):1196-1206.
[9] Google.Achartengine-Charting library for Android Google Project[EB/OL].(2010-08)[2013-12-10].http://code.google.com/p/achartengine.
[10] 嚴家斌,劉貴忠.基于各向異性擴散的ROBUST阻抗估計方法[J].地球物理學進展,2007,22(5):1403-1407.