Android手机低功耗GPS导航软件设计与实现

2013-09-19 10:29李永忠刘彬彬
电子设计工程 2013年5期
关键词:低功耗功耗卫星

舒 俊,李永忠,刘彬彬

(江苏科技大学 计算机科学与工程学院,江苏 镇江212003)

随着移动互联网的高速发展,中国互联网络信息中心(CNNIC)在7月19日发布的《第30次中国互联网络发展状况统计报告》显示,在中国,中国互联网用户实现互联网接入的方式呈现出全新格局,在2012年上半年,通过手机接入互联网的网民数量达到3.88亿,相比台式电脑的3.8亿,手机成为中国互联网用户的第一大上网终端。

然而手机功能的日益丰富以及越来越好的用户体验给系统消耗出了一道难题。手机由电池供电,然而鉴于体积与重量的限制,电池容量有限。现在研究的最多的还是从显示屏、移动网络模块(GPRS/WiFi)、处理器等硬件设备上探寻低功耗方案。对手机低功耗的研究主要是针对这3个部件入手:A.K.Bhowmik等介绍了一种降低显示屏功耗的关键技术DPST[1];Arindam Mallik等则介绍了一种降低处理器功耗的关键技术 UDFS[2]。

当前,手机导航软件作为手机必备软件,GPS导航软件使得定位服务得到了广泛的推广。文中通过分析GPS导航软件工作原理以及功耗情况,并研究当前各大主流导航软件的功耗对系统总功耗的影响,结合结果评比各自的利与弊,并结合各自的优点提出一套低功耗管理导航软件。

1 GPS导航软件原理及功耗分析

1.1 GPS与A-GPS技术分析

GPS是英文Global Positioning System(全球定位系统)的简称。GPS系统是由空间部分、地面控制系统和用户设备部分构成的系统[3-4]。

1)GPS的空间部分是由24颗卫星组成(21颗工作卫星;3颗备用卫星),它位于距地表20 200 km的上空,均匀分布在6个轨道面上(每个轨道面4颗),轨道倾角为55°。卫星的分布使得在全球任何地方、任何时间都可观测到4颗以上的卫星,并能在卫星中预存导航信息,GPS的卫星因为大气摩擦等问题;随着时间的推移,导航精度会逐渐降低。

2)地面控制系统:地面控制系统由监测站(Monitor Station)、主控制站(Master Monitor Station)、地面天线(Ground Antenna)所组成,主控制站位于美国科罗拉多州春田市(Colorado Springfield)。地面控制站负责收集由卫星传回的信息,并计算卫星星历、相对距离,大气校正等数据。

3)用户设备部分:当接收机捕获到跟踪的卫星信号后,就可测量出接收天线至卫星的伪距离和距离的变化率,解调出卫星轨道参数等数据。根据这些数据,接收机中的微处理计算机就可按定位解算方法进行定位计算,计算出用户所在地理位置的经纬度、高度、速度、时间等信息。

A-GPS通过对网络基站信息和GPS信息的整合对移动台进行定位的一项技术。A-GPS系统是由传统的GPS系统和一个辅助服务器组成。在A-GPS网络中,通常可能由于受到接收器工作功率和地理位置的影响而不能获得理想的定位效果,这时接收器往往需要与较高功率的辅助服务器通信并接入网络。A-GPS系统结合了全球卫星定位系统GPS和移动基站两大系统,成功地解决了GPS覆盖的问题,可以在GSM/GPRS、WCDMA 和 CDMA2000 不同的网络环境中使用[5-6]。

A-GPS系统需要在手机内增加GPS接收模块,并且对手机天线进行特殊的改造,然而手机本身并不对位置信息进行处理,而是将接收到的GPS的原始信号解调,计算手机到唯心的伪距,并上传至移动通信网络,位置服务器根据传来的GPS伪距信息,与移动网络按照GPS的参考网络所产生的辅助数据(如差分校正数据、卫星运行状态等),并从数据库中查出手机的近似位置以及小区所在的位置信息传给手机,这时手机可以很快捕捉到GPS信号,这样的首次锁定时间TTFF将大大减小,一般仅需几秒的时间,与传统的GPS的2~3分钟的TTFF比较有了明显的优势,并且精度也提高到10米左右,要远远高于 GPS的测量精度[7-8]。

通过上述对GPS和A-GPS技术的介绍分析得出以下结论,如表1所示。表中还列出了它的一些缺点。

表1 GPS和A-GPS特点比较Tab.1 Characteristics comparison of GPS and A-GPS

1.2 功耗分析

GPS导航软件所产生的功耗大部分来自于GPS接收与发送数据。手机通常都使用A-GPS以改善灵敏度、首次锁定时间(TTFF)和降低每次定位能耗(EPF)。

当用户通过打开手机GPS导航软件进行定位检测时,通常设置用户所在位置的采样时间间隔为1至10分钟。通常先缓存接收到的定位相关信息,然后每隔20至30分钟上传到网络跟踪应用服务器。通过这种做法上传定位信息能耗相对较小,因为绝大部分的能耗是在GPS接收机接收单次定位信息时产生的(即EPF)。EPF相对于当前手机电池本身的容量来说是相当大(现在主流手机电池为3~4.2 V,容量在1 000~2 000 mAh)。一次手机定位EPF额外功耗由式1决定:

式中的Pbatt是在Fixed_int分钟间隔内手机导航软件进行一次GPS定位时电池产生的功耗。

在GPS定位采样时电池输出的电流可通过式2计算,式中Igps单位为毫安,3.7 V是电池的额定电压。

通常GPS的定位工作电流的大小在3.0~10 mA范围内。因此,假设每次定位所产生的能耗为500 ml,每间隔一分钟定位一次,通过式2可以计算定位工作电流是2.3 mA。因而,对于一个以3 mA待机的GSM手机,如果设定Fixed_int等于1分钟的话,将会产生一个明显的定位工作电流,这样带来的后果是手机待机时间直接缩短至一半。如果接收GPS信号受到阻碍,加上TTFF的时间很长,EPF相应地将会成比例地增加,导致用户电池待机时间相应大幅度减少。

由以上分析,在导航模式下,GPS射频模块消耗的能量最多。因此,通过EPF分析可知,可取的办法是最大限度的减少GPS操作时间。

GPS低功耗定位与传统定位之间最基本不同在于:GPS射频单元以一个固定时长工作,比如1ms,并且在计算出需要的定位信息之前就已经关闭了,然而这样处理对于低功耗定位来说存在着失败的风险,比如:当GPS SV的信号太弱的话就可能导致失败,因此在此情况下,转换成传统高能耗的定位模式就显得非常必要,这种情况下GPS接收器开启足够长的时间以便接收卫星信号和确定定位信息。

因此GPS导航软件需要通过对应用请求类型的分析,判断是否启动低功耗定位模式,并且需要特别注意当GPS导航软件启动低功耗定位模式工作时,但是定位失败了,这个时候就应该马上尝试传统定位。如果传统定位被设置为首选的工作模式时,当然这种情况下净能量消耗可能会增加。通过上面分析,GPS导航软件必须要有能力判断低功耗定位是否可以定位成功,这可以通过检测一系列的环境和其它变量来实现。例如,如果最近的一次启动定位功能并且定位成功在几分钟之前,且用于定位的sv的平均数C/N(载波信噪比)很高,则可以尝试低功耗定位模式。如果最终判断出需要的定位模式并且收集定位所需的辅助信息之后,导航软件将进行GPS定位处理,它通过发送一个制造方特定的信息格式的开始处理信号给GPS引擎,它包括相关的控制参数和辅助数据。

2 低功耗导航软件的设计与实现

2.1 对比四大导航软件功耗

本节通过实验模拟户外使用地图软件来比较各个导航软件的功耗,并分析结果总结各自的优劣,本节的最后通过分析研究设计一款集各大软件之长于一身的低功耗导航软件。

实验的四大导航软件分别是:高德地图,谷歌地图,百度地图,SOSO地图。实验方法说明:

1)参见实验的导航软件全部预先下载离线地图包;

2)开启移动数据和GPS,并将亮度调至最大;

3)每个软件运行25分钟,期间进行定位、地点搜索、路径规划等常用操作;

4)25分钟后记录系统总耗电以及地图软件的耗电量,记录完毕后清空耗电量数据并进行下一款软件测试。

实验测试结果截图如下所示。

图1 高德地图Fig.1 Autonavi

图2 谷歌地图Fig.2 Google map

图1~4是四大导航软件耗电量对比图。

图5是各个软件应用耗电量:

图6是各个软件运行时系统CPU总耗电量。

图3 百度地图Fig.3 Baidu map

图4 SOSO地图Fig.4 SOSO map

图5 各个软件应用耗电量对比图Fig.5 Contrast diagram of power consumption of each software after experiments

图6 各款软件测试后CPU总耗电量对比图Fig.6 Contrast diagram of each software’s total power consumption on CPU after experiments

通过上面实验测试各个软件的功耗情况,高德地图无愧是功耗最小的导航软件。但是对于高德地图还是有它的不足之处。比如并不用每次开启软件都自动开启GPS定位功能,可能不久之前开启过,进入程序之后观察现在的位置是不是当前用户所在的位置,再决定是否需要定位当前位置;可以改进的是通过建立数据库记录历史搜索的位置,下次如果需要的话直接调用即可;导航过程中设置GPS定位时间间隔Fix_int更长,从式2可以看出时间间隔越长EPF就小。

2.2 导航软件的设计与实现

结合上面对导航软件提出的需要改进的3点以及前面章节对导航软件工作原理的阐述以及功耗分析,开发了一款低功耗导航软件。

该软件基于高德地图Android API而编写的,它是一套简单的地图应用开发调用接口,可支持地图显示与操作、兴趣点搜索、地图编码与基站定位等功能。

软件的业务流程图以及软件主界面截图如下。

图7 软件的业务流程图Fig.7 NS transaction flow diagram

图8 软件主界面截图Fig.8 NS main UI screenshot

本软件测试结果截图如图9所示。

从截图中数据可以看出在相同的测试条件下,JUSTNavi导航软件的耗能要明显小于其他的软件,经过优化并结合合理的操作习惯使得功耗明显降低了,显然已经达到了本论文的要求,验证了它的可行性与低功耗特性。

3 结束语

文中通过研究GPS的工作原理,并比较传统定位与低功耗定位的优缺点,最后通过测试四大最流行导航软件功耗,总结还需要进一步优化的地方,结合上述分析结果编写一款低功耗导航软件。虽然JUSTNavi实现了低功耗这一特性,但是鉴于本软件仅仅实现了最基本的功能,而没有涉及到核心的算法,比如路径规划所需要研究的最短路径的计算等等,以后的工作需要进一步研究。

图9 本文开发的低功耗导航软件测试结果截图Fig.9 Test results screenshots of low power consumption NS developed in this paper

[1]Bhowraik A K,Brenan R J.System-level Display Power Reduction Technologies for Portable Computing and Communications Devices[C]//Orlando, Florida, USA,2007.

[2]Mallik A,LinBin,Memik G,et a1.User-driven frequency sealing[J].IEEE Computer Architecture Letters,2006,5(2):16.

[3]王惠南.GPS导航原理与应用[M].北京:科学出版社,2005.

[4]金国雄,刘大杰,施一民,等.卫星定位的应用与数据处理[M].上海:同济大学出版社,1994.

[5]窦刚谊,梁向飞.一种高性能GPS接收机的设计[J].科学技术与工程,2007,7(6):1150-1153.

DOU Gang-yi,LIANG Xiang-fei.High performance GPS receiver design[J].Science Technology and Engineering,2007,7(6):1150-1153.

[6]陈俊勇.新世纪的卫星大地测量和地球科学[J].地球科学进展,2003(2):175-177.

CHEN Jun-yong.The new century satellite geodetic survey and earth science[J].Advances in Earth Sciences,2003(2):175-177.

[7]沈志伟,余敬东.GPS接收机的迭代处理技术研究[J].通信技术,2010,43(8):73-75.

SHEN Zhi-wei,YU Jing-dong. GPS receiver iterative processing technology research[J].Communication Technology,2010,43(8):73-75.

[8]徐尽,孟雷.GPS定位技术应用[J].通信技术,2008,41(12):63-65.

XU Jin,MENG Lei.GPS positioning technology application[J].Communication Technology,2008,41(12):63-65.

猜你喜欢
低功耗功耗卫星
基于任务映射的暗硅芯片功耗预算方法
miniSAR遥感卫星
一种高速低功耗比较器设计
静止卫星派
一种宽带低功耗四合一接收机设计
一种用于6LoWPAN的低功耗路由协议
低功耗技术在驾驶行为管理模块中的应用
揭开GPU功耗的面纱
Puma" suede shoes with a focus on the Product variables
数字电路功耗的分析及优化