众裁测评:室内定位专家的米家扫地机器人测评

我是创始人李岩:很抱歉!给自己产品做个广告,点击进来看看。  

众裁测评:室内定位专家的米家扫地机器人测评

文/墨轨迹科技CEO沈晓龙   

墨轨迹科技是一家专注室内位置技术与服务的科技公司,将为大家带来专业的小米扫地机器人的室内定位测评。本期测评产品来自搜狐众裁栏目提供的小米扫地机器人。

这些年LBS越来越深入的改善了我们的生活,无论是百度高德提供给我们的导航地图还是基于LBS才有实现可能的外卖,上门美容,上门美甲等O2O诸多应用. 随之而来更多的定位技术开始丰富现有的技术架构使得我们享受着更好的定位体验,其中有很多就是借鉴了机器人导航中的成果. 今天拿到了神秘的小米扫地机器人,作为一个室内定位技术从业者,就开始磨刀霍霍准备”蹂躏"一遍这蠢萌蠢萌的圆坨坨,测试一下传闻中的精妙绝伦的室内定位技术.这些年LBS越来越深入的改善了我们的生活,无论是百度高德提供给我们的导航地图还是基于LBS才有实现可能的外卖,上门美容,上门美甲等O2O诸多应用. 随之而来更多的定位技术开始丰富现有的技术架构使得我们享受着更好的定位体验,其中有很多就是借鉴了机器人导航中的成果. 今天拿到了神秘的小米扫地机器人,作为一个室内定位技术从业者,就开始磨刀霍霍准备"蹂躏"一遍这蠢萌蠢萌的圆坨坨,测试一下传闻中的精妙绝伦的室内定位技术.

   神机妙算,行业领先的SLAM算法

开始动笔写测评之前,也浏览了许多相关的文章,发现大家更多的从Industrial Design啊, 实用性啊, 硬件配置啊之类的角度去评价了小米扫地机器人. 那就让我们跟随着官网的截图进入一个相对冷僻的领域, SLAM软件算法的内容.

所谓的SLAM,也就是Simultaneous Localization And Mapping的简写. 简单来说, SLAM是一个在对未知环境的地图进行初始建设或者更新的过程的同时同步确定着机器人在这环境中所在的位置. 听起来是个诡异的先有鸡还是先有蛋的问题, 不过聪明的研究者们还是机智的想出了许多解决的方案, 起码在可控的环境中以可以容忍的时间代价是可以完成SLAM的目的的. 常用的算法包括了诸如粒子滤波(Particle Filter)和扩展式卡尔曼滤波(Extended Kalman Filter).而SLAM这种思想本身就是在有限的资源的条件下不追求完美的表现而是使得一些目的变得可行.很多发表过的方法用在了无人车啊,无人飞行器啊,无人水下载具啊,甚至有些用在了游走在人们体内的机器人身上.[1]

所以说起来跟Google无人车的底层逻辑一样也还真是这么回事, 我还真是没有办法告你吹牛皮呢.不过嘛,这套东西也是蛮久之前就也用在了扫地机器人身上了,核心其实就是诸多传感器的联动使得机器人有更丰富的数据去确认室内的情况和自己的位置. 只是用更加经济的成本, 小米也为我们奉上了这样一只具有感知功能的室内扫地机器人. 相较而言,盲扫机器人这种,大概就是:我蠢我也知道,但是我头硬啊,我怼墙怼桌子怼大腿,怼着怼着,我就顺便把地都扫了一遍.

那么下面让我们参考着Google X-Project负责人Sebastian Thrun的经典教材Probabilistic Robotics[2]和许多诸如SLAM For Dummies[3]之类的入门文档来看看小米扫地机器人又是如何像无人车一样,一边扫地一边扫描, 同时确定了自己位置和房间结构,SLAM起来的.

传感器配置

让我们再一次无耻的盗一下小米官网的图来讲解一下相关的情况, 其中包含了多种传感器来为我们的机器人提供感知世界的能力. 其中对于我们理解SLAM最有帮助的大概就是 LDS激光测距传感器, 超声雷达传感器, 里程计+陀螺仪/加速度计了. 这些也基本上是除去摄像头外许多无人驾驶载具的基础配置(LIDAR+SONAR+IMU).

首先是LDS激光测距传感器,这里也不太展开描述,上个Wikipedia上的动图一看便知:

而小米机器人上面装载的LDS以每秒钟5圈的速度在进行着扫描,于是在初始的时候,我们就会看到和扫地机器人关联上的手机上出现了一个这样的扫描图谱:

这样的过程说明了随着扫地机器人的行走, 周围环境中遮挡物和墙体等反映在了机器对于环境的理解中, 初始的时候可以看到,对于墙体的识别还是不错的.那么这具体是一个怎样的过程呢,我们简化一下SLAM里面的环节来看一下.

众裁测评:室内定位专家的米家扫地机器人测评

所以这里, 利用机器人装配的里程计, 扫地机器人的运动被记录, 而运动的方向则是根据陀螺仪及加速度计去进行互相校准之后实现的.

然后, 通过对于激光检测的结果, 我们将遮挡物抽象成路标, 并根据不同位置观测到的路标的情况去反复校验里程计和六轴运动传感器告知我们的设备的当前位置.

我们将其中的局部拿出来:

众裁测评:室内定位专家的米家扫地机器人测评

那么红色点就被识别为不确定性高的路标点,多为桌椅板凳的腿, 摊手, 这我也没什么办法, 谁叫环境就是这么复杂呢.

随后我们根据观察, 猜想也许下一步系统利用了一个叫做RANSAC (Random Sampling Consensus)的逻辑去将环境进一步抽象和还原. 将离散的路标点抽象成线条,并将线条作为路标点继续用于更新设备位置. 这一步, 我们将得到相对稳定的墙体等遮挡物的状况.

众裁测评:室内定位专家的米家扫地机器人测评

随后,基于EKF或其他方法, 系统将不断地同步更新设备自身的位置以及环境中路标的状况, 并基于此形成最终的关于地图的理解和自身未知的理解.

剩余的就是值得称道的路径规划逻辑,为了保证扫地的效率和覆盖的完整性, 首先机器人会规划出一个相对完整规则的区域, 之后再在这个区域内做折返扫描,每次一个机位的宽度保证了所有的地面都被有效的覆盖.这个过程非常的有效, 位置的误差大概在1m左右.

总的来说,小米扫地机器人在实现室内定位的过程中采用的都是非常成熟的技术方案, 然而这些稳定而成熟的技术方案,则为它提供了非常良好的对于室内场景的架构和把握能力. 尤其是这种触碰式的感应方式, 大大的增加了对于定位精准度的容错性. 不过对应的, 也带来了诸如遇到窗帘也不敢推动啊之类的问题. 但是我们所谓的用脸来试探这个场景本身就比盲走好了很多, 那么加上LDS系统和声呐系统, 就很好的解决了对于环境的感知能力. 而且通过软件层面的拉偏校准和硬件设计上的配合, 使得机器人的行走也落在了非常可控的范围内. 这样就给了这些基础的算法发挥的空间并且保持了相当强的鲁棒性( 嘛, 自然硬件上的一些小bug带来的非鲁棒就没有什么特别的办法了). 不过由于这种INS(Inertial Navigation System)和SLAM的运用, 由于Lidar和Sonar带来的最早也之后对于landmark的位置识别信息, 机器人无法在一瞬间就可以确定自己的位置, 而是需要一个过程慢慢的通过对于landmark的逐步观测来形成对环境的理解. 所以就会出现如果在机器人回家的路上把它抱起来并且带到离充电桩比较远的位置, 不仅之前对于室内环境建立的所有理解都会丢失, 而且机器人本身也会totally lost, 完全无法判断自己在哪以至于无法找到回家的路.

众裁测评:室内定位专家的米家扫地机器人测评

最后让我们看一下机器人跑出来的室内情况和我们实际的室内平面图, 由于比例和具体物品的位置摆放有些出入所以没有达成完美的匹配, 不过这横平竖直的线和超高的匹配率还是让人看了心情非常舒爽(强迫症的福音). 还是要大大的赞扬一下这实时传输的位置信息给我们带来的欢愉, 好啦, 这就是从我们的角度对这款长相可人的小机器人的理解和分析. 欢迎各位看官一起讨论.

随意打赏

小米米家扫地机器人米家扫地机器人发布米家扫地机器人米家机器人米家扫地
提交建议
微信扫一扫,分享给好友吧。