当你在陌生城市的马路上打开导航,跟着语音提示往前走时,有没有想过一个问题:手机是怎么“知道”你正走在马路的左边还是右边的?它明明只能接收到天上的卫星信号,又没有长眼睛,却能精确到让你不用乱穿马路,这背后其实是一套挺巧妙的系统在工作。
首先要搞清楚一个常识:普通的定位其实没那么准。我们平时看到的定位蓝点,误差范围大概在十几米到几十米之间。这个精度足够判断你是在哪条街上,但要分清你是在路的这一侧还是那一侧,就不够用了。想象一下,一条双向六车道的大马路,宽度可能有二三十米。如果定位误差有十几米,那你明明在路左边,手机也可能以为你在中间甚至右边。所以,要解决“左右”的问题,第一步就是把定位变得更准。
现在不少手机已经支持一种更精确的定位方式。它不只是接收卫星信号,还会参考地面的参考站来修正误差,把精度从十几米缩小到一两米甚至更小。这样一来,手机就能大致判断出你是靠近马路左侧还是右侧。但光靠这个还不够,因为城市里高楼多、天桥多,卫星信号容易被遮挡或反射,造成定位飘移。明明站在路左边,信号一跳,蓝点可能就飘到对面去了。
这时候,手机里那些不起眼的传感器就派上用场了。现在的智能手机几乎都装有加速度计和陀螺仪,它们能感知你的移动方向、速度,甚至是你有没有拐弯。比如你刚刚从路边商店走出来,过马路到了对面,传感器会记录下这个横向移动。即使卫星信号一时半会儿没反应过来,导航也能根据这些运动数据推测出你已经在马路另一侧了。
最后,导航软件还会结合地图数据做一次智能判断。它把你走过的轨迹和地图上的道路结构进行对比:如果你从左边接近路口,刚刚有过一个向右的转弯动作,系统就会把你“吸附”到最可能的那一侧车道上。综合这些技术,手机就能比较有把握地告诉你:请走马路右侧,准备右转。所以下次路过路口时,不妨留意一下手机屏幕上的那个小蓝点——它远远不止是一颗点,而是综合了卫星、传感器和地图算法后,对你真实位置的一次精准推测。