基于Android平台的远程温度监测系统客户端设计

2013-06-21 09:43赵军喜苟红松杨立新
隧道建设(中英文) 2013年3期
关键词:服务器端客户端远程

赵军喜,苟红松,杨立新

(中铁隧道集团有限公司技术中心,河南洛阳 471009)

0 引言

我国冻土区分布非常广泛,其中多年冻土区面积有215万km2,占国土总面积的22.4%,我国大部分的寒区隧道都存在不同程度的冻害问题[1]。随着我国铁路、公路建设事业的不断发展,寒冷地区隧道的抗防冻问题日益受到工程界的关注和重视。隧道温度场测试是分析寒区隧道冻害规律的关键,寒区隧道温度场测试具有测试断面多、测点分散、环境恶劣等特点。目前隧道常用的测试方法主要分3种类型:人工测试、单机数据采集系统和GPRS/CDMA温度采集系统,采用人工测试存在工作量大、测试结果误差大等问题;单机数据采集系统是采集仪定期对测点温度进行采集和存储,管理人员在一定的时间间隔后进行拷贝的方式;GPRS温度采集系统采用传感器和数据采集仪进行监测数据的采集,通讯模块通过GPRS或CDMA远程传输数据,室内电脑终端发送指令及接收数据,并进行数据的分析和后处理[2-3],GPRS采集无疑是其中最好的测试方法。随着智能手机和3G网络的快速发展和普及,智能手机应用到远程地温监测中的条件已经成熟,在GPRS远程温度监测的基础上开发出一套基于Android平台的远程温度监测系统客户端软件将可以实现监测人员在任何时间、任何地理位置的实时监测,降低监测人员劳动强度和监测成本,提高监测水平。

1 远程地温监测系统框架设计

无线远程温度监测系统由传感器、数据采集分站、Web服务器、GPRS无线传输模块、服务器端软件、数据库、电脑客户端软件和手机客户端软件构成,系统结构图如图1所示。

图1 无线远程温度监测系统结构示意图Fig.1 Structure of temperature remote-monitoring system

1)传感器及数据采集分站安装在隧道内进行围岩温度场及气温测试,传感器选用A级的PT-100温度传感器,数据采集分站采用ATMC51系列单片机以及辅助电路构成小型微机检测系统,实现对温度传感器的温度测试及向上位机的通讯。

2)GPRS数据转发模块一般安装在隧道洞口通信信号比较稳定的位置,用于数据采集分站与服务器端数据的转发,本系统选用的是北科驿唐科技MD-609 G高性能GPRS DTU。

3)Web服务器上安装的服务器端软件通过与数据采集分站、数据库进行数据交互,定期将采集到的温度数据存入数据库,并根据用户端的请求将数据库中的历史数据传输给客户端。服务器端及电脑客户端程序采用java语言开发,数据库采用MySQL软件。

2 Android的系统架构

Android系统采用了软件堆层的架构,分为4层,从下到上分别是Linux内核层、系统运行库层、应用框架层和应用程序层[4]。Android操作系统的主要组成部分如图2所示。Android另外提供了 SDK(Software Develop Kit,软件开发包)以及上层封装好的java接口API(Application Programming Interface,应用程序编程接口),软件开发商和个人用户都可以使用这些开放的接口和开发包自行开发需要的应用软件[5]。

3 手机客户端的设计与实现

手机客户端作为远程温度监测系统的重要功能部分主要包括系统登录、用户管理、系统运行状况查看、历史曲线查看、实时监测数据查看和报表发送等。与以往的PC桌面系统程序相比,Android手机客户端开发中手机客户端与服务器的数据交互以及数据的可视化相对复杂些,如图3所示。

3.1 Android手机客户端与服务器的数据交互

Android系统运行资源相对于PC系统非常有限,如内存、频率和显示界面,所以与桌面系统的开发惯例相比,Android系统与服务器进行远程数据交互时一般很少采用加载数据库驱动,直接对数据库进行操作的方式。Android系统与Web服务器进行数据交互时主要采用以下方法:1)基于 Http协议获取数据方法[6-7];2)基于 SAOP 协议获取数据方法,以及其他一些方法,具体的实现方式又有很多种。本系统采用第1种方法,其工作原理是客户端的请求通过浏览器网页提交给Web应用服务器,应用服务器将接收到的数据提交给服务器端逻辑进行处理,再将结果输出至Web页面,客户端程序访问网站的URL拿到数据并进行解析处理。本系统服务器端采用java技术、Struts2框架、Tomcat 7.0.33 Web应用服务器,服务器端根据客户端请求将相应的数据以xml页面的形式发送至浏览器。客户端对网站地址进行访问后,将获取的xml数据进行解析并存储到本地Sqlit数据库中。以下是部分代码。

3.2 手机客户端的数据可视化

数据可视化是运用计算机图形学和图像处理技术,将数据转换为图形或图像在屏幕上显示出来,并进行交互处理的理论、方法和技术通过图形化的方式,对信息进行清晰、有效地传达与沟通[8]。在远程温度监测系统手机客户端中,为了让用户更加直观地对监测数据进行查看和分析,需要运用可视化技术进行相关图表的绘制。在Android平台上实现可视化,可以通过Android自带的二维和三维Open DLP,虽然都能满足绘图的基本需要,但是本系统选用一个针对Android程序开发的开源图表类库AChartEngine,主要因为其方便,自定义性更强,也无需重写很多函数和类。远程温度监测系统客户端进入主页面后,点击列表中的曲线分析功能选项进入曲线分析页面。用户可以对各监测点的数据进行查看,从而更加直观、清晰地分析和判断。图4为历史曲线查看界面,图5为数据报表查看界面。

图4 历史监测曲线查看Fig.4 Interface of historic monitoring curve checking

图5 历史监测报表查看Fig.5 Interface of historic monitoring table checking

4 结论与体会

基于Android平台,采用C/S模式开发了远程地温监测系统客户端软件,实现了远程实时监测、历史曲线分析和历史数据报表查看等功能,实现了监测人员在任何时间、任何地理位置的实时监测。通过对客户端程序的测试和在吉图珲客专北屯1号隧道、北屯2号隧道围岩温度场监测中的实际应用,表明应用本系统不仅可以降低监测人员的劳动强度和监测成本,而且可以提高监测水平。

[1] 夏才初,张国柱,曹诗定,等.寒区公路隧道防冻保暖技术及其发展趋势[C]//2009年全国公路隧道学术会议论文集.兰州:中国公路学会,2009:13-19.(XIA Caichu,ZHANG Guozhu,CAO Shiding,et al.Antifreeze and warmth retention technology and developing trend of road tunnel in frigid areas[C]//Proceedings of National Conference on Road Tunnel in 2009.Lanzhou:Ching Highway& Transportation Society,2009:13 -19.(in Chinese))

[2] 徐飞,雷斌.GPRS远程通信在远程地温监测系统中的应用[J].电子测量技术,2007(10):186 - 189.(XU Fei,LEI Bin.Application of GPRS communication in remote terra temperature[J].Electronic Measurement Technology,2007(10):186 -189.(in Chinese))

[3] 孙宝臣,杜彦良,李剑芝,等.基于GSM-R的青藏铁路冻土地温自动监测系统[J].铁道学报,2009,31(5):125 -129.(SUN Baochen,DU Yanliang,LI Jianzhi,et al.Automatic permafrost temperature monitoring system of Qinghai-Tibet railway based on GSM-R network[J].Journal of the China Railway Society,2009,31(5):125 - 129.(in Chinese))

[4] 吴晶.Android手机端远程监控系统的设计与实现[D].上海:上海交通大学软件工程学院,2012:1-64.(WU Jing.Application software design for webcam monitor system in Android mobile platform[D].Shanghai:School of Software,Shanghai Jiaotong University,2012:1-64.(in Chinese))

[5] Meier Reto.Professional Android application development[M].Indianapolis:John Wiley & Sons Inc.,2008:409.

[6] 刘平.Android手机访问服务器的一种数据交互方法[J].电子设计工程,2010(9):96-98,102.(LIU Ping.Effective data interactive method from Android cell phone accessing Web App Server[J].Electronic Design Engineering,2010(9):96 -98,102.(in Chinese))

[7] 王绍祥,邵玉斌,龙华,等.Android手机与数据库的一种数据交互方法[J].郑州轻工业学院学报:自然科学版,2011(6):28 -30.(WANG Shaoxiang,SHAO Yubin,LONG Hua,et al.A data interactive method of Android cell phone and database[J].Journal of Zhengzhou University of Light Industry:Natural Science,2011(6):28 - 30.(in Chinese))

[8] 刘勘,周晓峥,周洞汝.数据可视化的研究与发展[J].计算机工程,2002,28(8):1 -2.(LIU Kan,ZHOU Xiaozheng,ZHOU Dongru.Data visualization research and development[J].Computer Engineering,2002,28(8):1 - 2.(in Chinese))

猜你喜欢
服务器端客户端远程
让人胆寒的“远程杀手”:弹道导弹
远程工作狂综合征
Linux环境下基于Socket的数据传输软件设计
如何看待传统媒体新闻客户端的“断舍离”?
远程诈骗
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Qt的安全即时通讯软件服务器端设计
客户端空间数据缓存策略