APP下载

基于蓝牙的CSAMT数据手机监测系统设计*

2014-03-21周文全孙彩堂周逢道刘长胜

电子技术应用 2014年6期
关键词:对数蓝牙预处理

周文全,孙彩堂,周逢道,刘长胜

(吉林大学仪器科学与电气工程学院,吉林长春130026)

可控源音频大地电磁测深CSAMT[1](Controlled Source Audio Magnetotellurics)法通过同步发射接收一组不同频率的信号,测量大地的复电阻频谱,从而得到地下不同深度介质电阻率的变化规律。

在CSAMT法勘探过程中,需要根据探测目标布置发射源。在接收端,要将仪器放置到各采集点,在大部分情况下,工作人员只能通过步行的方式将设备送到采集点。这些特点决定了对数据进行补测要浪费大量的人力和物力,因此,迫切需要能够在工作现场或远程实时监测采集的数据质量,以便工作人员及时发现采集过程中发生的问题并分析原因,尽早采取相应措施。

目前,加拿大凤凰公司的V8采用TDMA进行各站之间的数据传输;吉林大学仪器科学与电气学院自主研发的JLEMI[2]分布式采集系统采用了GPRS,可以在远程工作站实时监测采集的数据。这些方法依赖于移动网络,在信号质量不好的情况下工作会受到影响,甚至无法监测。

除了移动网络之外,现在应用比较广泛的无线传输技术[3]有ZigBee、红外线数据传输、WiFi等。但当前的手机中很少直接支持ZigBee,红外线数据传输方式要求进行传输的设备之间必须对准,而且中间不能有阻挡。蓝牙是一种支持设备短距离通信(一般10 m内)的无线电技术,采用分散式网络结构以及快跳频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4 GHz ISM频段,其数据速率为1 Mb/s,采用时分双工传输方案实现全双工传输,现在手机、平板电脑等基本都配置了蓝牙设备。

基于上述分析,本文采用蓝牙无线传输技术[4],实现了采集站与Android手机间的数据传输。通过在采集站中嵌入蓝牙模块,在采集数据的同时,将数据以特定格式发送到手机中,在手机端对接收到的数据进行预处理并实时显示。将该系统应用到JLEMI工作过程中,为工作人员带来了很多便利。

1 系统组成

图1 系统组成示意图

2 采集站

本系统中采集站[6]主要负责数据采集,并对采集的数据进行简单预处理,将原始数据和预处理结果保存到本地磁盘中。除此以外,还可以通过嵌入的蓝牙模块将预处理结果传输到手机端。

采集站启动后,首先开启蓝牙设备并监听手机端接入请求。当有手机接入后,开启新的线程并监听处理手机端发来的命令。如果手机端需要监测数据,则必须首先向采集站发送相应指令。当采集站收到指令后,读取采集到的数据,按照自定义的协议进行封装,并向手机端传输。在数据传输期间,手机可以通过向采集站发送命令,控制数据传输的暂停与退出。

采集站端采用了开源库bluecove[7]实现对蓝牙模块编程,并引入jdom.jar包实现对xml文件的读取与解析[8]。

3 手机端

当前应用比较广泛的手机操作系统包括Android、iOS、BlackBerry和Windows Phone等。市场研究公司Strategy Analytics在2013年11月1日发表报告称,2013年第3季度全球智能手机出货量在2012年同期的1.728亿部基础上增长45%,达到2.514亿部,其中Android市场份额为81.3%,成为现在的主流手机操作系统。因此本系统的手机端基于Android操作系统开发。

目前,市面上已经存在许多基于Android操作系统的应用软件,如基于蓝牙的健康服务终端应用软件、基于GPRS通信的远程监控应用软件以及基于各种通信协议的应用软件等,这些应用软件给现代生活带来了极大便利。

3.1 工作流程

本系统的手机端应用程序包含1个Service和2个Activity。其中Service在后台运行,其作用是监听本手机端的状态,当有事件产生时,与2个Activity产生交互,控制程序的运行。主Activity控制程序初始化、数据接收、预处理和曲线绘制;Activity2的作用是搜索周围的蓝牙设备,显示搜索结果,接受用户选择,并将选择结果传递给主Activity。手机端程序流程图如图2所示。

式(1)中H0为塌落前洞体最大高度,m;k为岩石松散(涨余)系数,灰岩k取1.2,黏土k取1.05本公式使用范围:适用于顶板为中厚层、薄层,裂隙发育,易风化的岩层,顶板有塌陷可能的溶洞,或仅知洞体高度时。公式如下:

(1)启动蓝牙

首先检查手机是否支持蓝牙,如果支持,则获取蓝牙适配器对象,并在AndroidManifest中申明蓝牙使用权限,开启蓝牙。

(2)搜索采集站蓝牙设备

在手机端搜索采集站蓝牙设备前,先要设置采集站端蓝牙设备可见,以便手机端发现采集站蓝牙设备进行配对。手机端通过使用BluetoothAdapter的startDiscovery()方法来搜索蓝牙设备,在这个过程中,系统会发送以下3个广播:

图2 手机端整体流程图

手机端可以注册相应的BroadcastReceiver对象来接收相应的广播,以便做出响应。

(3)请求建立连接

手机端搜索到采集站蓝牙设备后,可以获取其BluetoothService,然后利用listenUsingRfcomm_WithServiceRecord(String,UUID)方法获取对应的BluetoothSocket,最后调用BluetoothSocket的connect()方法请求连接。如果手机端的UUID同采集站蓝牙设备的UUID匹配,并且连接被采集站端蓝牙设备接受,则连接成功。

(4)接收指令和数据

请求连接成功后,手机端和采集站的蓝牙设备分别监听端口。当手机端向采集站发送一个读取数据指令,采集站收到该指令后,首先根据自定义的协议对数据进行封装,然后利用蓝牙协议传输到手机端。手机端的主Activity监听数据端口,当接收到数据后,对其进行解析,得到发送的原始数据,为后期的数据预处理和曲线绘制做准备。

(5)对接收到的数据进行绘图显示,其中可以通过选项来控制是否需要在显示之前对数据进行平滑。

3.2 曲线绘制

本系统选择开源类库Achartengine[9]作为绘图工具。该类库针对Android系统开发,易于二次开发,能够绘制折线图、饼状图、柱状图等多种曲线。在本系统中,数据以折线图的形式显示。

对于CSAMT数据曲线,由于发射频率和幅值都相差多个数量级,因此,需要以对数坐标的形式显示。而Achartengine不直接支持对数坐标,本文通过对坐标轴的改进,实现了自定义坐标轴,从而实现了数据的对数显示。主要步骤如下:

(1)将x轴改造为对数坐标

利用addXTextLabel函数实现x轴坐标转换,该函数的基本格式为:addXTextLabel(double x,String text),其中x为x轴坐标点,text为转换后显示在x点的坐标值,如果不显示,则可以设为空。x和text之间的关系为x=log10(text)。利用该方法,可以添加一系列的x轴对数坐标点。

(2)将y轴改造为对数坐标

原理和x轴相同,利用addYTextLabel(double y,String text)函数实现y坐标转换。

(3)数据显示

将接收到的数据转换成对数,并利用series.add()添加到绘图中显示。图3显示了手机中基于Achartengine绘制的数据曲线图。因为本系统所应用的采集站有4个通道,所以共有8条曲线,包括4条幅频特性曲线(上半部分)与4条相频特性曲线(下半部分)。

图3 采集数据的曲线图

Achartengine为静态绘图,为达到实时更新的动态效果,需要对其进行动态刷新,即每当有新数据到来时,便进行一次点集的更新和绘图的刷新。点触曲线中某点,可以显示该点对应的值,方便现场分析和判断。

3.3 曲线平滑滤波

CSAMT法测量过程中,容易受到噪声的干扰,在数据中出现“飞点”现象,会对后期的数据处理造成极大的干扰,甚至导致假结果。本文使用基于各向异性扩散的滤波方法[10]对数据进行预处理,算法模型为:

该方法以梯度的降函数做扩散速度,在梯度大的点扩散量较小,在梯度小的点扩散量较大,其优点是在滤除噪声的同时能保护曲线的局部特征。梯度的降函数相当于边界保护函数的作用,如式(2)所示:

其中,k为阈值参数。

利用该算法对数据进行平滑的效果如图4所示。

图4 基于各向异性扩散算法的数据平滑效果图

本文根据CSAMT法工作环境的特点,将蓝牙无线数据传输技术引入CSAMT法的数据采集过程中,手机端在接收到采集数据后可以进行平滑处理,并通过对Achartengine类库中坐标轴的改进,实现对数坐标显示,在实际应用中得到了较好的效果。本系统既有利于进行CSAMT数据的集中监测,也可以为现场工作人员观察数据采集质量、判断故障点提供参考和支持,提高其工作效率。本系统的应用可以使采集设备不再配备显示屏,有助于进一步减小体积,降低功耗。

蓝牙的数据传输距离有限,不能达到远距离数据监测的目的,下一步工作是基于GPRS或WiFi无线传输技术,实现手机中的远距离数据监测。

[1]汤井田,何继善.可控源音频大地电磁法及其应用[M].长沙:中南大学出版社,2005.

[2]张文秀.CSAMT与IP联合探测分布式接收系统关键技术研究[D].长春:吉林大学,2012.

[3]石明明,鲁周迅.三种无线通信协议综述[J].通信技术,2011,7(44):0072-0073.

[4]杨瑞.基于蓝牙通信的短信平台设计与实现[J].计算机应用与软件,2011,2(28):218-219.

[5]钱志宏,刘丹.蓝牙技术数据传输综述[J].通信学报,2012,4(33):0143-0152.

[6]陈健.宽频带时频电磁接收机关键技术研究[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.

猜你喜欢

对数蓝牙预处理
蓝牙音箱的直线之美
含有对数非线性项Kirchhoff方程多解的存在性
指数与对数
指数与对数
对数简史
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
基于预处理MUSIC算法的分布式阵列DOA估计
紧急:蓝牙指尖陀螺自燃!安全隐患频出
浅谈PLC在预处理生产线自动化改造中的应用