户外设备跑偏,很少是路的问题。等到它压上绿化带、蹭到花坛边,人才发现它对自己站在哪儿这件事,早就错了一段。这类情况一直不好解决,是因为它长得不像故障:机器没报错,任务没中断,只是越走越歪。
在开阔地,卫星定位能定得很准,前提是解算状态稳。这个状态不结实:头顶遮挡一变、周围反射一多,就会掉到另一个档位,精度一下子粗起来。
麻烦在于掉档不报警。机器照样算坐标,照样走线,只是每走一段就差一点。一趟户外作业动辄一两个钟头,攒下来,原本贴着边走的活,慢慢变成压着边。
判据在轨迹上:把一天的路线导出来,跟地图上的规划线叠在一起看。同一路段反复往同一侧偏出去、偏到路面外,就是定位在降级,不是轮子跑偏。这种偏有方向、有规律;轮子跑偏是左右乱偏,还带着打滑的痕迹。
树荫的麻烦不只是挡头顶,还有反射。树叶枝干对信号是半透的,一部分穿过去,一部分弹回来,机器收到的是同一颗卫星走了几条路的信号,算出来的位置自然偏。
楼间更典型:一侧高楼遮掉半边天,能用的卫星少了,剩下的还挤在一侧,几何分布散不开,纵向上的误差被放大。
园区里这样的位置到处都是:林荫道、景观廊架下、楼与楼之间的窄通道、树池边。设备在这些地方恰好要贴边作业,位置越难定,活反而越细。
判据看后台的定位状态指示。它从稳的那一档掉下去,就该换手段;指示一直显示稳、而轨迹已经偏出去,说明这个状态判断本身就不可信。
接的手段有三种,配合着用。
惯性是一种。靠陀螺和加速度计推算短距离位移,几秒钟内很准,时间一长就漂。它管的是过渡,不是替代——过渡期内必须有别的源接上,接不上就别让它继续走。
里程计是另一种。用周边的几何特征做匹配,树、栏杆、路灯、建筑外立面都能当参照。它的短板是场景重复:两侧长着一样的行道树,匹配很容易认错段落,要靠前后位姿约束拉回来。
还有一种是预埋或标定的地标。在关键节点摆反光板、标识牌、地面特征点,机器经过时校正一次。布设不复杂,点位要选对:转弯处、出入口、长直道的中点,这三处各校正一次,比在直道上校正十次都管用。
这是户外设备出事偏多的边界。坡道下去,卫星几步之内归零,地面从沥青变水泥,光从室外变室内,环境特征全换掉。
进库前没把位姿锁住,进去就只能凭惯性摸索,走出一段之后偏差大到认不出自己在哪;出坡道时又撞上同样剧烈的场景切换,重新定位可能失败。
判据:库口设一个减速与确认点,机器到那里必须完成一次坐标锁定,锁不上就不进;库内把速度压得很低。出库后允许它重新找自己,超过合理时间还找不到,按安全停处理,等人接手,不许它自己硬走。
户外设备危险的状态不是停摆,是自信地走错。所以策略上要允许它主动降级、主动停。
判据有三条,都得在现场试出来:定位置信度掉下去,先减速;一段时间没恢复,原地停住并上报自己的坐标;等不到人接管,退回上一处确认过可靠的位置。
这三条要写进参数里,不能只写在说明书上。验收时做一次遮挡测试:在开阔地正常作业中,用挡板遮住天线一会儿,看它是不是按减速、停、上报的节奏来。全程没有反应,说明这些策略没启用。
还有一条现实的:园区里孩子会追着机器跑,园路窄,两边是绿化和水景。贴边作业本身就是细活,定位一旦偏出去,贴边就变成压边,精度问题到头来会变成安全问题。
户外的定位不是一个模块的事,是几套手段互相接力的过程。卫星好的时候没人注意它,一旦拐进树荫,能不能马上换手、换手之后误差会不会攒起来、攒到一定程度敢不敢停,这三件事决定它在园区里是干活还是添乱。看设备别只看开阔地,找个有树荫的转角,让它走三趟,看三条轨迹重不重合。