定位模式:
外部单片机控制模式(常见于AT固件客户):
开机 -> 搜星 -> 定位成功 -> 上报 -> 关机
780E自行控制模式(常见于二次开发客户,AT用户也可以使用):
开机 -> 搜星 -> 定位成功 -> 模块休眠,关闭GPS电源,但是备电不关 -> 需要定位时,热启动 -> 模块休眠,关闭GPS电源,但是备电不关 ->循环
低功耗方式的示例(LUA)
780EG Luatos的测试示例下载
两种模式优劣对比:
外部单片机控制模式:
优点:思路简单,功耗计算固定
缺点:不是最优解,且实际操作起来会发现每一次定位都需要至少30S左右,GPS搜星时间长,功耗较高
780E自行控制模式:
优点:功耗至少可降低为外部单片机控制模式的50%
缺点:功耗计算需要分段,需要工程师对GNSS[1]各种启动方式(冷启动[2]、热启动[3]、温启动[4])以及部分定位常见名词(例如星历[5]、AGPS[6]、有源天线[7]、无源天线[8]、半边天以及开拓地带[9]、定位纠偏[10]、重捕[11])有一个基础认知,且有耐心去设计
如何最大程度的减少功耗:
一、天线选型阶段:
1.尽可能选择无源天线
无源天线对PCB版要求较高,走线的线宽、线长、线序等都有一定要求。但是无源天线不会额外消耗电流。
2.有源天线选型
有源天线后面接了低噪放[12] (低噪声放大器),需要外部供电,内部低噪放的好坏直接影响了价格和功耗,实际测试了两款有源天线一款单价40元一款单价在8块左右,单测天线的功耗,40的那款平均功耗在4ma左右,8块的那款功耗直接飙到了42ma。
关于GPS天线的选型和设计方面可以参考这篇文章(https://doc.openluat.com/wiki/21?wiki_page_id=2614)
二、搜星阶段:
以有源天线+开阔地带举例:正常冷启动需要大约35S,780EG测试的搜星(捕获状态)功耗平均在68ma,如果有AGPS的话,可以将定位时间缩短在15S左右。由于AGPS需要连接两个服务器,一个基站定位服务器一个星历下载服务器,所以在计算使用AGPS的冷启动时,不能仅当作做冷启动捕获状态15S来算,还要加上基站定位一次和请求星历服务器一次的功耗(数据稍后测试,需要测的是所有情况下的AGPS功耗),但即使是加上了AGPS额外的功耗,也要比冷启动所需功耗低。
所以建议客户搜星阶段,启用AGPS来减少搜星时间,进而降低整体功耗。
三、定位成功后:
部分客户可能会觉得,反正定位已经成功了,数据也发送给服务器了,我的应用也只是半个小时或者10多分钟才发一次定位数据给服务器,不如直接把780EG关机,由单片机/780EG内部定时器控制模块开关机,这样更省电些,实则不然。
首先,如果由外部单片机控制780EG关机,直接断掉了780EG的vbat电压,则无法给内部预留的热启动管脚VBACKUP供电,直接影响就是,每次开机都需要重新进入冷启动,功耗较大,且本身4G模块开机重新驻网的功耗也比较大。
所以推荐用户在定位成功后,不要直接给780EG关机,建议给780EG发送休眠指令,进入您想要的休眠模式,(注:首次冷启动定位成功以后建议延迟两分钟,延迟时间取决于天线质量和当前区域星数的多少,2分钟到15分钟均为正常时间,主要目的是为了搜到完整的星历给GNSS模块)
这样可以使780EG内部的GNSS模块下次启动时进入热启动或者温启动,方便减少搜星所需时间,进一步降低功耗,关于休眠模式的介绍可以访问airpsm.cn,详细浏览我们的三种休眠模式,选择适合您的模式进入适合您的功耗最优解。
四、热启动/温启动阶段:
如果您的应用中包含以下场景,那么热启动或者温启动是更适合您的方案
1.定时定位,且上下两次定位间隔短不超过1小时,可以使用热启动
2.定时定位,且上下两次定位间隔短不超过4小时,可以使用温启动
3.非定时定位,但是定位期间,上下两次定位时间间隔小于1小时,可以使用热启动
4.非定时定位,但是定位期间,上下两次定位时间间隔小于4小时,可以使用温启动
如果上下两次定位间隔超过1分钟且不大于4小时的情况下,可以直接关闭GPS电源,但是不要关闭备电(GPIO23,AT/LUA版本都是默认拉高,用户无需操作,注意休眠状态下不要关闭GPIO23即可)
五、其他情况
如果您的的应用为非实时定位,例如共享单车/电动车/汽车、老人/小孩/宠物定位器、等既需要工作时实时定位又有不定时休眠状态下可能被唤醒场景,可能需要多种方式共用,例如:
通过GPIO触发唤醒780EG,随后重新打开内部GPS电源,此种方式常见于定位器行业,例如小孩睡觉时不移动或者开锁检测,直接进入指定的休眠模式,给GPS电源关闭,等到 GPIO唤醒后再打开GPS,此时可根据休眠时间的长短,自主决定定位模式为热启动还是冷启动+AGPS
几种常见的定位所需功耗实测:
测试标准:《北斗/全球卫星导航系统(GNSS) 定位设备通用规范》www.beidou.gov.cn
一、静止测试
测试条件满足测试标准章节的5.3节中关于测试场地场地的描述
无源天线开阔地带,1分钟定位一次,并且发送包含经纬度在内的20字节数据给服务器,PSM+模式实测功耗。(此种模式可以采用GPS热启动)
该功耗分为四个部分:
第一部分,从开机到定位(冷启动)以及连接服务器发送定位成功后20字节数据。该段功耗数据如下
第二部分,有GPS任务,无网络发送任务,GPS处于追踪状态 目的是使星历完整。此段时间需要客户自行测试得到最佳的时间长度,推荐时间2分钟,最长为16分钟,该段功耗数据如下
第三部分,无GPS任务,无网络发送任务,纯粹的PSM+模式休眠。该段功耗数据如下
第四部分,热启动GPS到定位成功后,发送给服务器。此后每次定时唤醒的功耗均如下图所示
总计耗时2分40秒,此段整体功耗为
如客户希望计算自己使用场景下的功耗,可以按如下公式计算
第一部分的固定功耗,因为这一段是所有模式无法降低的,所以就按34S定位成功并且发送给了服务器的642.191uaH来计算
第二部分此段由测试这段时间为60s(客户自行设定的延迟搜星状态时间长短计算 t1),功耗为730.212uAh。
第三部分由客户自行决定休眠时间长短,也就是(1.5353/60)休眠时间(单位:S)计算出的uah
第四部分因中间休眠唤醒到热启动定位成功再到发送数据给服务器这段时间可能会受测试环境影响,取到的最低功耗值为89.908uAh,建议取中间平均值,本段就按113.9229uAh来计算
设 发送次数为F,第二部分设定的搜星延迟时间为t1,休眠时间为t2
则 780EG进入PSM+以后的功耗计算公式为642.191+(730.212/60)t1+0.0256t2+113.9229F单位uah
例:间隔一分钟休眠,唤醒后发送一次数据,测试一小时。
t1=搜星延迟休眠时间60s,则 t2=16060,F=59
最低值功耗:642.191+(730.212/60)60+0.02563600+89.908*59 = 6769.135uah
平均值功耗:642.191+(730.212/60)60+0.02563600+113.923*59 = 8186.020uah
本次测试的全段数据都可在该文档中查看:https://doc.openluat.com/wiki/50?wiki_page_id=5062
名词解释:
[1]GNSS:混合定位,不同于GPS定位,狭义上讲的GPS系统,单指美国的24颗GPS卫星以及地面上1个主控站、3个数据注入站和5个监测站及作为用户端的GPS接收机组成的一整套系统。GNSS是指通过观测GNSS卫星获得坐标系内绝对定位坐标的测量技术。 GNSS是所有导航定位卫星的总称,凡是可以通过捕获跟踪其卫星信号实现定位的系统,均可纳入GNSS系统的范围。国内用户接触最多的应该是美国的24颗GPS卫星,以及中国的北斗卫星(截至到2023年5月17日10时49分,中国已有五十六颗北斗导航卫星),其余还有俄罗斯GLONASS、欧盟GALILEO、 日本的准天顶卫星系统、印度的IRNSS(独立的区域导航系统,覆盖印度领土及周边1500 km范围内,提供定位精度优于20米的服务)等其余定位系统。
[2]冷启动:指在一个陌生的环境下启动GPS,直到GPS芯片和可用卫星联系并且计算出坐标的过程。以下几种情况开机均属冷启动:
- 初次开机使用时;
- 电池耗尽导致GPS芯片内星历信息丢失时;
- 关机状态下将接收机移动1000公里以上距离。
也就是说,冷启动是通过硬件方式的强制性启动,因为物理距离较远,或者时间间隔很久,GPS芯片已经把内部的星历信息清除掉,或者内部的星历信息完全失效。GPS接收机失去卫星参数,或者已经存在的参数和实际接收到卫星参数相差太多,导致GPS芯片无法靠星历快速搜星,所以必须从新获得卫星提供的坐标数据。
这也是很多定位器(譬如车载定位器)启动后,搜星时间长、定位耗时久的原因
[3]热启动:指在上次关机的地方没有过多移动过,且距离上次定位时间小于2个小时。再次定位时,GPS芯片通过软件的方式,可以继续使用之前的星历快速搜星,实现秒定位。PS:普通的GNSS芯片,星历最长有效期为12小时,故此星历过期后,GPS芯片无法使用星历实现快速定位。(780E内部的GNSS芯片,GPS星历文件能保持4小时, BD的星历文件能保持1小时,且无法保存星历文件,所以需要外部写入)
[4]温启动:指距离上次定位时间超过2个小时的启动,搜星定位时间介于冷启动和热启动之间的情况。
譬如某时间使用过GPS定位实现3D FIX,GPS芯片内部生成星历(或者外部灌入AGPS数据),那么在2小时内启动GPS芯片进行定位的行为就属于温启动。启动后,GPS芯片首先会输出上次的位置信息。因为上次关机前的经纬度和高度已知,但由于关机时间过长,卫星状态发生了变化,之前3D FIX时的卫星接受不到了,所以星历中参数中的若干颗卫星已经和GPS接收机失去了联系,GPS芯片需要继续搜星补充位置信息,所以搜星的时间要长于热启动,短于冷启动。
[5]星历:是用于描述太空飞行体位置和速度的表达式———两行式轨道数据系统。卫星、航天器或飞行体一旦进入太空,即被列入NORAD卫星星历编号目录。列入NORAD卫星星历编号目录的太空飞行体将被终生跟踪。卫星、火箭残骸等飞行体成为太空垃圾时,仍被列入NORAD卫星编号目录,直到目标消失。卫星星历以开普勒定律的6 个轨道参数之间的数学关系确定飞行体的时间、坐标、方位、速度等各项参数,具有极高的精度。卫星星历能精确计算、预测、描绘、跟踪卫星、飞行体的时间、位置、速度等运行状态;能表达天体、卫星、航天器、导弹、太空垃圾等飞行体的精确参数;能将飞行体置于三维的空间;用时间立体描绘天体的过去、现在和将来。卫星星历的时间按世界标准时间(UTC)计算。卫星星历定时更新。
[6]AGPS:辅助全球卫星定位系统(英语:Assisted Global Positioning System,简称:AGPS)指的是一种GPS的运行方式。它可以利用地面基地站的资讯,配合传统GPS卫星,让定位的速度更快。
[7]有源天线:通常对于设备或车载机而言,由于设备与GPS接收模块之间往往有距离,考虑到安装的便利性可能会有超过1米的距离,在这种情况下我们只能选择有源GPS天线,由于天线长度的信号衰减需要进行补偿,一般有两级低噪声放大器(LNA)进行天线前端信号放大,放大后的信号经电缆输出,电缆同步提供LNA所需要的直流电压
由于天线收到的信号在有源天线接受头内完成信号接受与天线放大,并且远离GPS设备或其他电器设备,干扰源最小,而且安装位置由于天线距离延长安装位置可以选择非常理想的环境,所以实际使用时往往感觉信号较强。
[8]无源天线:使用无源GPS天线时,由于只有一个陶瓷片接收天空的卫星信号,直接连接到模块的RF-IN脚,这种联接方式结构简单,而且标准的25254的陶瓷片成本低廉,技术成熟,占空体积小,适合于强调紧凑型空间GPS导航产品,蓝牙GPS,手机GPS及其他小型GPS消费类产品。
这种天线的布局是从天线的引脚直达模块的RF-IN脚,这根导线需要进行50欧阻抗匹配,而且在天线附近不能有电磁干扰,对PCB的设计及整机的EMI设计要求较高,但如果设计得优良的无源天线GPS产品同样有非常好的表现效果,而且功耗比较低,无需考虑天线自身的功耗。
[9]半边天以及开拓地带:GPS卫星运行在距地36000KM的轨道上,信号强度相当弱(GPS 卫星的功率有多大?)。GPS的民用C/A码从卫星发出来的时候信号只有27W左右,达到地球的时候在-158.5dBW以上。用对数形式表示可能不直观,换算成十进制等于将近0.0000000000000001W,相当小。所以,只有室外开阔的、无遮挡、晴好的地方,才能搜到更多的卫星,SNR值更高(阴天都会有影响哦),GPS芯片才能更快、更好的实现定位。
半边天一般指楼宇内窗边,打开窗户,只能搜到一半天空的卫星。
[10]定位纠偏:OpenLuat 的所有GNSS模块均使用国际标准 WGS-84 坐标系,所以开发者在国内常见地图定位时,会发现与实际情况有几十米甚至上百米的误差。这并非模块问题, 而是国内地图采用了非标坐标系所致。
国内常见地图如高德地图使用 GCJ-02 坐标系, 百度地图使用 BD-09 坐标系,故此开发者需要对模块输出的经纬度进行加偏处理,才能在国内的地图上实现精确定位,坐标转换可在合宙提供的坐标转换网站上直观的展示处理
[11]重捕:是指接收终端在丢失所接收信号状态下,从重新接收到信号开始,至终端设备输出符合定位精度要求的定位结果所需的时间。失锁重捕时间反映了在接收机信号失锁,定位中断后重新恢复定位的速度。失锁重捕时间短的接收机在易中断环境中(如隧道等)的定位性能好,因此失锁重捕时间可以有效评估车载终端的性能
[12]低噪声放大器:主要用于接收信号的前端,放大天线从空中接收到的微弱信号,降低噪声干扰,以供系统解调出所需的信息数据。
[13]RTK(Real - time kinematic,实时动态)载波相位差分技术,指实时处理两个测量站载波相位观测量的差分方法,将基准站采集的载波相位发给用户接收机,进行求差解算坐标。RTK的精度可到厘米或厘米级。