智能手机定位监控系统的设计
GPS业界流行这样一句话,"GPS的应用只受到人们想象力的限制".目前GPS的民用领域已经包括了陆地运输、海洋运输、民用航空、通信、测绘、建筑、采矿、农业、电力系统、医疗应用、科研、家电、娱乐等多个领域,而大家所熟知的汽车导航也只不过是其中的应用之一,2007年,我国GPS已经进入了一个全面爆发期。
目前市场上GPS相关产品已经很多,但由于各方面技术限制,普遍存在一些严重问题:大多数产品针对专用的硬件平台,成本高、可移植性差;系统开发难度大、开发周期长、软件支持少[2];采用本地地图,地图数据库更新困难。
本文针对上述问题,充分利用现有技术,整合各种现有资源,设计了基于Windows Mobile通用平台和网络电子地图的位置查询系统。该系统通信部分采用SMS实现,具有地图数据更新获取方便、使用简单、成本低、操作方便等优点。
1 总体设计方案
Windows Mobile,是 Microsoft 用于 Pocket PC 和 Smartphone 的软件平台。Windows Mobile 将熟悉的 Windows 桌面扩展到了个人设备中。Windows Mobile是微软为手持设备推出的"移动版Windows",使用Windows Mobile操作系统的设备主要有PPC手机、PDA、随身音乐播放器等。Windows Mobile操作系统有三种,分别是Windows Mobile Standard、Windows Mobile Professional,Windows Mobile Classic.目前常用版本Windows Mobile 6.1,最新的版本是6.5.
系统从功能上可以分为Pocket PC监控中心和Pocket PC监控对象两部分。监控对象主要功能为接收GPS信号、提取所需信息和响应监控中心的监控命令。监控中心通过短消息(SMS)向监控对象发送监控命令,接收来自监控对象的数据并对接收来的数据进行处理。为了更好地显示监控对象所在位置,监控中心同时采用Google地图和Mapabc地图2种网络电子地图。网络电子地图数据通过HTTP协议从Google地图或Mapabc地图服务器上实时下载。系统框图如图1所示。
系统主要设计功能如下:
(1)在Windows Mobile平台上实现了GPS定位;
(2)网络电子地图实时下载、显示、拖动、放大/缩小;
(3)监控对象的位置查询与显示;
(4)实现了对监控对象的声音监控。
2 PPC监控对象设计与实现
相对于PDA,PPC是一种狭隘得多的概念,专指使用微软Windows Mobile系列操作系统的PDA.最早的Windows Mobile操作系统是Poceket PC 1.0,一款不怎么成功的操作系统,但PPC由此得名。随后的Poceket PC 2002、Windows Mobile 2003、Windows Mobile 2003 SE都是非常成功的操作系统。
2.1 GPS定位数据提取的实现
传统GPS编程通过串口通信接收NMEA(National Marine Electronics Association)语句,然后通过解析NMEA语句[3]提取经纬度信息实现。应用程序独占GPS设备,即同一时刻只允许一个应用程序访问GPS设备。
本文采用Windows Mobile提供的GID接口实现(GPS Intermediate Driver)。GID是一个位于应用程序和GPS设备中间层的设备驱动。使用GID时,允许多个应用程序同时使用GPS设备(所有的应用程序都通过GID间接访问GPS设备),不需要解析NMEA语句,且可以使用相同的代码访问几乎所有类型的GPS设备[4].
采用GID实现的主要步骤为:
(1)引用gpsapi.dll.GID是一套在Mobile Device上的本地代码,在。NET Compact Framework平台上使用,需要采用跨平台调用技术,引用相应的应用程序接口。
(2)用CreateEvent创建Windows CE事件对象,这样当有GPS设备获取了新的数据或者设备状态改变时就能收到通知。
(3)使用GPSOpenDevice与GID建立一个连接。如果GPS设备关闭,则启动GPS设备。
(4)通过调用WaitForMultipleObjects(如果仅有一个事件则调用WaitForSingleObject),等待GPS设备获取新的位置数据或设备状态改变事件发生;当GPS设备获取了新的位置数据时,调用GPSGetPosition取回位置信息。当GPS设备状态改变时,调用GPSGetDeviceState取回设备状态信息。
(5)重复第(4)步,直到不再需要GPS信息。
(6)调用GPSCloseDevice关闭与GID的连接。如果这个连接是GID唯一的连接,则GID自动关闭GPS设备。GPS设备耗电相当大,因此当不再需要访问GPS设备时要关闭与GID的连接。
GID全称:Group Identification 群体身份是一个通用的、适应性强和用户界面友好的图形用户界面,用于几何模拟、数据输入、模型转换、网格和可视化的结果,对所有类型的数值仿真包都适用。 一般多用于比如网游封测时期的账号,或者就是一些带有共享性质的资源使用者的帐号。
2.2 短消息发送与接收实现
短消息收发一般采用AT(Attention)指令实现,本系统采用Pocket Outloo
- 智能手机简介(06-06)
- 关于智能型手机电源管理系统的设计与应用(09-28)
- 高通发布45纳米Snapdragon芯片组(05-07)
- 独立AP架构为智能手机设计增加自由度(05-07)
- 瑞芯推出三款多媒体智能手机芯片解决方案(05-22)
- 智能手机全键盘控制器及其编程(08-08)