为什么运动类APP偶尔会飘点?
现在喜欢户外跑步、骑行、越野、登山的人群越来越多, 选择咕咚APP作为运动辅助工具的人也在快速增加!
然而,因为每个人用的手机品牌各不相同,硬件配置也差异巨大,所以无论是咕咚还是其他运动类APP,在运动中都可能出现偶尔的记录误差或飘点的情况;甚至可能同一款手机原本没有误差,某些天突然不准,隔天又恢复正常。要了解这个现象产生的原因,还得从GPS卫星定位系统和手机本身来说起。
大致上说,GPS系统由三个部分组成:24颗卫星、地面控制系统和用户接收机。GPS导航系统的基本原理是测量出已知位置的卫星到用户接收机之间的距离,然后综合多颗卫星的数据就可知道接收机的具体位置。然而,由于用户接受机使用的时钟与卫星星载时钟并不总是同步,所以除了用户的三维坐标x、y、z外,还要引进一个Δt——即卫星与接收机之间的时间差作为未知数,然后用4个方程解出这4个未知数。因此,如果想知道接收机所处的位置,需要接收到不少于4个卫星的信号才可以。
说了定位的基本原理,那么哪些因素可能会导致飘点或者定位不准呢?
从上图可以看出:星历、天气、高楼、手机硬件都可能导致信号误差。
星历造成误差:前面说到,定位需要知道卫星的位置,而卫星的位置则是通过星历来确定。星历可以理解成一个函数,用这个函数可以根据当前的时间预测卫星的位置。这个函数当然不是完美的,也不是实时更新的。如果手机用了一个“过时”的函数(星历)来预测位置,就很容易出现飘点的情况。
天气造成误差:天气主要影响上图中的对流层折射。气温、气压、相对湿度等因素都会使信号的传播路径产生弯曲,从而使信号到达接收机的时间出现偏差,最终影响定位精度。
高楼造成误差:提到高楼造成的误差,就要提到多路径效应。多路径效应是指原始的信号经一些物体(诸如高楼)反射后再与原信号叠加产生的一种信号偏差,这也会影响到定位的精度。
因为以上提到的星历、天气都会随时间变化,所以才会出现平时定位准确,某些天却突然飘点的情况。
还有一个重要因素就是手机的硬件性能及所采用的GPS芯片好坏,即上图中的接收机噪声和误差。所以选择硬件性能更好的手机可以大大提升运动类APP的记录准确度和稳定性。
为了更好地评估各个品牌的手机是否适用于户外运动,咕咚运动实验室推出了手机运动指数(MPSI)评估系统,给广大跑步用户提供换机参考。
总而言之,了解了手机定位原理后,各位跑友今后遇到飘点时不必慌张,也许稍作等候即可恢复正常。也可选用更专业的运动手表或者更适合户外运动的手机,更好地记录每日运动数据。
P.S. 上面说的这些因素都是体系和硬件的原因,那么在硬件条件一致的情况下,APP软件可以做哪些方面的有限的优化和改进呢?请看下回分解。