《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于藍(lán)牙的CSAMT數(shù)據(jù)手機(jī)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
基于藍(lán)牙的CSAMT數(shù)據(jù)手機(jī)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
電子技術(shù)應(yīng)用2014年第6期
周文全,,孫彩堂,,周逢道,劉長(zhǎng)勝
(吉林大學(xué) 儀器科學(xué)與電氣工程學(xué)院,,吉林 長(zhǎng)春130026)
摘要: CSAMT 法野外探測(cè)工作中存在現(xiàn)場(chǎng)監(jiān)測(cè)數(shù)據(jù)不方便等問(wèn)題,。針對(duì)此問(wèn)題,通過(guò)在采集站中嵌入藍(lán)牙模塊,,在采集CSAMT數(shù)據(jù)的同時(shí),,利用藍(lán)牙協(xié)議將數(shù)據(jù)以特定格式傳輸?shù)紸ndroid手機(jī)端。在手機(jī)端,,首先基于各向異性擴(kuò)散算法實(shí)現(xiàn)對(duì)接收到數(shù)據(jù)的平滑濾波,,然后將數(shù)據(jù)以曲線的形式顯示在屏幕上,從而實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)監(jiān)測(cè),。該系統(tǒng)便于工作人員在測(cè)量過(guò)程中及時(shí)發(fā)現(xiàn)問(wèn)題,,在應(yīng)用中得到了較好的效果。
中圖分類號(hào): TN919
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)06-0007-03
Design of CSAMT data monitoring system in cellphone based on Bluetooth
Zhou Wenquan,Sun Caitang,,Zhou Fengdao,,Liu Changsheng
College of Instrumentation and Electrical Engineering, Jilin University, Changchun 130026,China
Abstract: In the work of CSAMT detection, the problem is that it is not convenient to monitor data in the field. To solve this problem, Bluetooth modules were embedded in the acquisition stations, so the system can transmit the CSAMT data to Android cellphone in certain format while collecting data. In the cellphone terminal, it firstly preprocesses received data using anisotropic smoothing algorithm, and then displays them on the screen in curve format, so the real-time data monitoring is realized. The system can help the persons to find out the problems in time, and it performs perfectly in application.
Key words : CSAMT method,;Android,;Bluetooth;curve smoothing,;real-time monitoring

       可控源音頻大地電磁測(cè)深CSAMT[1](Controlled Source Audio Magnetotellurics)法通過(guò)同步發(fā)射接收一組不同頻率的信號(hào),測(cè)量大地的復(fù)電阻頻譜,,從而得到地下不同深度介質(zhì)電阻率的變化規(guī)律,。

        在CSAMT法勘探過(guò)程中,需要根據(jù)探測(cè)目標(biāo)布置發(fā)射源,。在接收端,,要將儀器放置到各采集點(diǎn),在大部分情況下,,工作人員只能通過(guò)步行的方式將設(shè)備送到采集點(diǎn),。這些特點(diǎn)決定了對(duì)數(shù)據(jù)進(jìn)行補(bǔ)測(cè)要浪費(fèi)大量的人力和物力,因此,,迫切需要能夠在工作現(xiàn)場(chǎng)或遠(yuǎn)程實(shí)時(shí)監(jiān)測(cè)采集的數(shù)據(jù)質(zhì)量,,以便工作人員及時(shí)發(fā)現(xiàn)采集過(guò)程中發(fā)生的問(wèn)題并分析原因,盡早采取相應(yīng)措施,。
        目前,,加拿大鳳凰公司的V8采用TDMA進(jìn)行各站之間的數(shù)據(jù)傳輸;吉林大學(xué)儀器科學(xué)與電氣學(xué)院自主研發(fā)的JLEMI[2]分布式采集系統(tǒng)采用了GPRS,,可以在遠(yuǎn)程工作站實(shí)時(shí)監(jiān)測(cè)采集的數(shù)據(jù),。這些方法依賴于移動(dòng)網(wǎng)絡(luò),在信號(hào)質(zhì)量不好的情況下工作會(huì)受到影響,,甚至無(wú)法監(jiān)測(cè),。
        除了移動(dòng)網(wǎng)絡(luò)之外,現(xiàn)在應(yīng)用比較廣泛的無(wú)線傳輸技術(shù)[3]有ZigBee,、紅外線數(shù)據(jù)傳輸,、WiFi等。但當(dāng)前的手機(jī)中很少直接支持ZigBee,,紅外線數(shù)據(jù)傳輸方式要求進(jìn)行傳輸?shù)脑O(shè)備之間必須對(duì)準(zhǔn),,而且中間不能有阻擋。藍(lán)牙是一種支持設(shè)備短距離通信(一般10 m內(nèi))的無(wú)線電技術(shù),,采用分散式網(wǎng)絡(luò)結(jié)構(gòu)以及快跳頻和短包技術(shù),,支持點(diǎn)對(duì)點(diǎn)及點(diǎn)對(duì)多點(diǎn)通信,工作在全球通用的2.4 GHz ISM頻段,,其數(shù)據(jù)速率為1 Mb/s,,采用時(shí)分雙工傳輸方案實(shí)現(xiàn)全雙工傳輸,,現(xiàn)在手機(jī)、平板電腦等基本都配置了藍(lán)牙設(shè)備,。
        基于上述分析,,本文采用藍(lán)牙無(wú)線傳輸技術(shù)[4],實(shí)現(xiàn)了采集站與Android手機(jī)間的數(shù)據(jù)傳輸,。通過(guò)在采集站中嵌入藍(lán)牙模塊,,在采集數(shù)據(jù)的同時(shí),將數(shù)據(jù)以特定格式發(fā)送到手機(jī)中,,在手機(jī)端對(duì)接收到的數(shù)據(jù)進(jìn)行預(yù)處理并實(shí)時(shí)顯示,。將該系統(tǒng)應(yīng)用到JLEMI工作過(guò)程中,為工作人員帶來(lái)了很多便利,。
1 系統(tǒng)組成
        本系統(tǒng)由CSAMT采集站與Android手機(jī)端組成,,二者通過(guò)藍(lán)牙協(xié)議[5]進(jìn)行數(shù)據(jù)和指令的傳輸,如圖1所示,。其中采集站安裝Windows操作系統(tǒng),,主要負(fù)責(zé)數(shù)據(jù)采集,并通過(guò)嵌入的藍(lán)牙模塊將采集的數(shù)據(jù)傳輸?shù)绞謾C(jī)端,;手機(jī)端接收數(shù)據(jù),,并對(duì)數(shù)據(jù)進(jìn)行平滑預(yù)處理,然后以曲線的形式顯示在屏幕上,,提供給工作人員進(jìn)行實(shí)時(shí)監(jiān)測(cè),。

                                       

                                                                        圖1  系統(tǒng)組成示意圖

2 采集站
        本系統(tǒng)中采集站[6]主要負(fù)責(zé)數(shù)據(jù)采集,并對(duì)采集的數(shù)據(jù)進(jìn)行簡(jiǎn)單預(yù)處理,,將原始數(shù)據(jù)和預(yù)處理結(jié)果保存到本地磁盤中,。除此以外,還可以通過(guò)嵌入的藍(lán)牙模塊將預(yù)處理結(jié)果傳輸?shù)绞謾C(jī)端,。
        采集站啟動(dòng)后,,首先開(kāi)啟藍(lán)牙設(shè)備并監(jiān)聽(tīng)手機(jī)端接入請(qǐng)求。當(dāng)有手機(jī)接入后,,開(kāi)啟新的線程并監(jiān)聽(tīng)處理手機(jī)端發(fā)來(lái)的命令,。如果手機(jī)端需要監(jiān)測(cè)數(shù)據(jù),則必須首先向采集站發(fā)送相應(yīng)指令,。當(dāng)采集站收到指令后,,讀取采集到的數(shù)據(jù),按照自定義的協(xié)議進(jìn)行封裝,,并向手機(jī)端傳輸,。在數(shù)據(jù)傳輸期間,手機(jī)可以通過(guò)向采集站發(fā)送命令,控制數(shù)據(jù)傳輸?shù)臅和Ec退出,。
        采集站端采用了開(kāi)源庫(kù)bluecove[7]實(shí)現(xiàn)對(duì)藍(lán)牙模塊編程,,并引入jdom.jar包實(shí)現(xiàn)對(duì)xml文件的讀取與解析[8]。
3 手機(jī)端
        當(dāng)前應(yīng)用比較廣泛的手機(jī)操作系統(tǒng)包括Android,、iOS,、BlackBerry和Windows Phone等。市場(chǎng)研究公司Strategy Analytics在2013年11月1日發(fā)表報(bào)告稱,,2013年第3季度全球智能手機(jī)出貨量在2012年同期的1.728億部基礎(chǔ)上增長(zhǎng)45%,,達(dá)到2.514億部,其中Android市場(chǎng)份額為81.3%,,成為現(xiàn)在的主流手機(jī)操作系統(tǒng),。因此本系統(tǒng)的手機(jī)端基于Android操作系統(tǒng)開(kāi)發(fā)。
        目前,,市面上已經(jīng)存在許多基于Android操作系統(tǒng)的應(yīng)用軟件,如基于藍(lán)牙的健康服務(wù)終端應(yīng)用軟件,、基于GPRS通信的遠(yuǎn)程監(jiān)控應(yīng)用軟件以及基于各種通信協(xié)議的應(yīng)用軟件等,,這些應(yīng)用軟件給現(xiàn)代生活帶來(lái)了極大便利。
3.1 工作流程
        本系統(tǒng)的手機(jī)端應(yīng)用程序包含1個(gè)Service和2個(gè)Activity,。其中Service在后臺(tái)運(yùn)行,,其作用是監(jiān)聽(tīng)本手機(jī)端的狀態(tài),當(dāng)有事件產(chǎn)生時(shí),,與2個(gè)Activity產(chǎn)生交互,,控制程序的運(yùn)行。主Activity控制程序初始化,、數(shù)據(jù)接收,、預(yù)處理和曲線繪制;Activity2的作用是搜索周圍的藍(lán)牙設(shè)備,,顯示搜索結(jié)果,,接受用戶選擇,并將選擇結(jié)果傳遞給主Activity,。手機(jī)端程序流程圖如圖2所示,。

                                                           

                                                                            圖2  手機(jī)端整體流程圖
        (1)啟動(dòng)藍(lán)牙
        首先檢查手機(jī)是否支持藍(lán)牙,如果支持,,則獲取藍(lán)牙適配器對(duì)象,,并在AndroidManifest中申明藍(lán)牙使用權(quán)限,開(kāi)啟藍(lán)牙,。
        (2)搜索采集站藍(lán)牙設(shè)備
        在手機(jī)端搜索采集站藍(lán)牙設(shè)備前,先要設(shè)置采集站端藍(lán)牙設(shè)備可見(jiàn),以便手機(jī)端發(fā)現(xiàn)采集站藍(lán)牙設(shè)備進(jìn)行配對(duì),。手機(jī)端通過(guò)使用BluetoothAdapter的startDiscovery()方法來(lái)搜索藍(lán)牙設(shè)備,,在這個(gè)過(guò)程中,系統(tǒng)會(huì)發(fā)送以下3個(gè)廣播:
        ACTION_DISCOVERY_START:開(kāi)始搜索
        ACTION_DISCOVERY_ FINISHED:搜索結(jié)束
        ACTION_FOUND:找到設(shè)備
        手機(jī)端可以注冊(cè)相應(yīng)的BroadcastReceiver對(duì)象來(lái)接收相應(yīng)的廣播,,以便做出響應(yīng),。
        (3)請(qǐng)求建立連接
        手機(jī)端搜索到采集站藍(lán)牙設(shè)備后,可以獲取其BluetoothService,,然后利用listenUsingRfcomm_WithServiceRecord(String, UUID)方法獲取對(duì)應(yīng)的BluetoothSocket,,最后調(diào)用BluetoothSocket的connect()方法請(qǐng)求連接。如果手機(jī)端的UUID同采集站藍(lán)牙設(shè)備的UUID匹配,,并且連接被采集站端藍(lán)牙設(shè)備接受,,則連接成功。
        (4)接收指令和數(shù)據(jù)
        請(qǐng)求連接成功后,,手機(jī)端和采集站的藍(lán)牙設(shè)備分別監(jiān)聽(tīng)端口,。當(dāng)手機(jī)端向采集站發(fā)送一個(gè)讀取數(shù)據(jù)指令,采集站收到該指令后,,首先根據(jù)自定義的協(xié)議對(duì)數(shù)據(jù)進(jìn)行封裝,,然后利用藍(lán)牙協(xié)議傳輸?shù)绞謾C(jī)端。手機(jī)端的主Activity監(jiān)聽(tīng)數(shù)據(jù)端口,,當(dāng)接收到數(shù)據(jù)后,,對(duì)其進(jìn)行解析,得到發(fā)送的原始數(shù)據(jù),,為后期的數(shù)據(jù)預(yù)處理和曲線繪制做準(zhǔn)備,。
        (5)對(duì)接收到的數(shù)據(jù)進(jìn)行繪圖顯示,其中可以通過(guò)選項(xiàng)來(lái)控制是否需要在顯示之前對(duì)數(shù)據(jù)進(jìn)行平滑,。
3.2 曲線繪制
        本系統(tǒng)選擇開(kāi)源類庫(kù)Achartengine[9]作為繪圖工具,。該類庫(kù)針對(duì)Android系統(tǒng)開(kāi)發(fā),易于二次開(kāi)發(fā),,能夠繪制折線圖,、餅狀圖、柱狀圖等多種曲線,。在本系統(tǒng)中,數(shù)據(jù)以折線圖的形式顯示,。
        對(duì)于CSAMT數(shù)據(jù)曲線,,由于發(fā)射頻率和幅值都相差多個(gè)數(shù)量級(jí),因此,,需要以對(duì)數(shù)坐標(biāo)的形式顯示,。而Achartengine不直接支持對(duì)數(shù)坐標(biāo),,本文通過(guò)對(duì)坐標(biāo)軸的改進(jìn),實(shí)現(xiàn)了自定義坐標(biāo)軸,,從而實(shí)現(xiàn)了數(shù)據(jù)的對(duì)數(shù)顯示,。主要步驟如下:
        (1)將x軸改造為對(duì)數(shù)坐標(biāo)
        利用addXTextLabel函數(shù)實(shí)現(xiàn)x軸坐標(biāo)轉(zhuǎn)換,,該函數(shù)的基本格式為:addXTextLabel(double x,,String text),其中x為x軸坐標(biāo)點(diǎn),,text為轉(zhuǎn)換后顯示在x點(diǎn)的坐標(biāo)值,如果不顯示,,則可以設(shè)為空,。x和text之間的關(guān)系為x=log10(text),。利用該方法,,可以添加一系列的x軸對(duì)數(shù)坐標(biāo)點(diǎn)。
        (2)將y軸改造為對(duì)數(shù)坐標(biāo)
        原理和x軸相同,,利用addYTextLabel(double y,,String text)函數(shù)實(shí)現(xiàn)y坐標(biāo)轉(zhuǎn)換,。
        (3)數(shù)據(jù)顯示
        將接收到的數(shù)據(jù)轉(zhuǎn)換成對(duì)數(shù),并利用series.add()添加到繪圖中顯示,。圖3顯示了手機(jī)中基于Achartengine繪制的數(shù)據(jù)曲線圖,。因?yàn)楸鞠到y(tǒng)所應(yīng)用的采集站有4個(gè)通道,所以共有8條曲線,,包括4條幅頻特性曲線(上半部分)與4條相頻特性曲線(下半部分),。

                                  

                                                                  圖3  采集數(shù)據(jù)的曲線圖
        Achartengine為靜態(tài)繪圖,為達(dá)到實(shí)時(shí)更新的動(dòng)態(tài)效果,,需要對(duì)其進(jìn)行動(dòng)態(tài)刷新,,即每當(dāng)有新數(shù)據(jù)到來(lái)時(shí),便進(jìn)行一次點(diǎn)集的更新和繪圖的刷新,。點(diǎn)觸曲線中某點(diǎn),,可以顯示該點(diǎn)對(duì)應(yīng)的值,方便現(xiàn)場(chǎng)分析和判斷,。
3.3 曲線平滑濾波
        CSAMT法測(cè)量過(guò)程中,,容易受到噪聲的干擾,在數(shù)據(jù)中出現(xiàn)“飛點(diǎn)”現(xiàn)象,,會(huì)對(duì)后期的數(shù)據(jù)處理造成極大的干擾,,甚至導(dǎo)致假結(jié)果。本文使用基于各向異性擴(kuò)散的濾波方法[10]對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,,算法模型為:
      
       該方法以梯度的降函數(shù)做擴(kuò)散速度,,在梯度大的點(diǎn)擴(kuò)散量較小,在梯度小的點(diǎn)擴(kuò)散量較大,,其優(yōu)點(diǎn)是在濾除噪聲的同時(shí)能保護(hù)曲線的局部特征,。梯度的降函數(shù)相當(dāng)于邊界保護(hù)函數(shù)的作用,如式(2)所示:
      
其中,,k為閾值參數(shù),。
        利用該算法對(duì)數(shù)據(jù)進(jìn)行平滑的效果如圖4所示。

                                               圖4  基于各向異性擴(kuò)散算法的數(shù)據(jù)平滑效果圖
        本文根據(jù)CSAMT法工作環(huán)境的特點(diǎn),,將藍(lán)牙無(wú)線數(shù)據(jù)傳輸技術(shù)引入CSAMT法的數(shù)據(jù)采集過(guò)程中,,手機(jī)端在接收到采集數(shù)據(jù)后可以進(jìn)行平滑處理,并通過(guò)對(duì)Achartengine類庫(kù)中坐標(biāo)軸的改進(jìn),,實(shí)現(xiàn)對(duì)數(shù)坐標(biāo)顯示,,在實(shí)際應(yīng)用中得到了較好的效果。本系統(tǒng)既有利于進(jìn)行CSAMT數(shù)據(jù)的集中監(jiān)測(cè),,也可以為現(xiàn)場(chǎng)工作人員觀察數(shù)據(jù)采集質(zhì)量,、判斷故障點(diǎn)提供參考和支持,提高其工作效率,。本系統(tǒng)的應(yīng)用可以使采集設(shè)備不再配備顯示屏,,有助于進(jìn)一步減小體積,降低功耗,。
        藍(lán)牙的數(shù)據(jù)傳輸距離有限,,不能達(dá)到遠(yuǎn)距離數(shù)據(jù)監(jiān)測(cè)的目的,下一步工作是基于GPRS或WiFi無(wú)線傳輸技術(shù),,實(shí)現(xiàn)手機(jī)中的遠(yuǎn)距離數(shù)據(jù)監(jiān)測(cè),。
參考文獻(xiàn)
[1] 湯井田,何繼善.可控源音頻大地電磁法及其應(yīng)用[M].長(zhǎng)沙:中南大學(xué)出版社,,2005.
[2] 張文秀.CSAMT與IP聯(lián)合探測(cè)分布式接收系統(tǒng)關(guān)鍵技術(shù)研究[D].長(zhǎng)春:吉林大學(xué),,2012.
[3] 石明明,魯周迅.三種無(wú)線通信協(xié)議綜述[J].通信技術(shù),,2011,,7(44):0072-0073.
[4] 楊瑞.基于藍(lán)牙通信的短信平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2011,,2(28):218-219.
[5] 錢志宏,,劉丹.藍(lán)牙技術(shù)數(shù)據(jù)傳輸綜述[J].通信學(xué)報(bào),2012,,4(33):0143-0152.
[6] 陳健.寬頻帶時(shí)頻電磁接收機(jī)關(guān)鍵技術(shù)研究[D].長(zhǎng)春:吉林大學(xué),,2012.
[7] BRUCE H,,RANJITH A.Bluetooth for java[M].Berkeley:Apress,2003.
[8] 方躍堅(jiān),,余枝強(qiáng),,翟磊,等.一種混合并行XML解析方法[J].軟件學(xué)報(bào),,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] 嚴(yán)家斌,劉貴忠.基于各向異性擴(kuò)散的ROBUST阻抗估計(jì)方法[J].地球物理學(xué)進(jìn)展,,2007,,22(5):1403-1407.

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