王东
Published on 2025-02-24 / 5 Visits

【AI100问(55)】扫地机器人是如何工作的?

扫地机器人已经进入千家万户,默默担起打扫卫生的重任。那么,扫地机器人是如何工作的呢?


首先,机器人跟机器人差距还是挺大的。比如一些低端的机器人,扫地基本靠“蒙”,如图1(左)所示,低着头往前冲,直到撞着障碍物,换个方向继续冲。这种随机清扫方式显然比较低端,效率较低,如果房间小还可能,房间大了耗时就大了。高端的机器人还是有些头脑的,懂得规划路线。如图1(右)所示,机器人把房间的情况大致了解了以后,可以设计出一条合理的清扫路线,要有效提高工作效率,且保证能把该扫的地方都扫到。


图1:随机式清扫与规划式清扫 [2]

问题是如何规划一条合理的清扫路线。如果已经知道了房间的地图那还好,问题是刚买来的机器人对主人家的环境一无所知,脑子里根本没有地图的概念,也不知道自己身处何方。怎么办呢?人们给它装上一个传感器,让他能感知周围的环境。有了这个传感器(常见的有摄像头、激光雷达等),机器人在房间里溜达的时候就可以采集并利用收集到的信息构造一幅主人家的地图了,这一方法称为同步定位与地图构建算法 (Simultaneous Localization And Mapping,SLAM)。这类似于把一个人置于一个陌生环境,他开始对这个环境一无所知,但他有眼睛,可以观察,一边走一边把环境探索出来,并在脑海里形成地图。图2给出了一个机器人利用SLAM算法对陌生环境进行探索的过程。

图2:同步定位与地图构建(SLAM)算法[1]

有趣的是,这个SLAM算法可并不简单,自动驾驶汽车(图3)、无人机(图4)上都可以看到他的影子,用在扫地机器人身上,实在有点儿大材小用了。

图3:自动驾驶汽车中的SLAM算法 [4]

图4:无人机中的SLAM算法[3]

参考文献:

[1].https://static.wixstatic.com/media/efcc09_1a657de58bb0453bb55146cdb622a60b~mv2.gif

[2]. 知乎:扫地机器人如何选择最优的扫地路线?https://www.zhihu.com/question/22572281

[3]. The Importance of Mapping in Robotics, https://miro.medium.com/max/960/1*lP2Wb0sG5IZlO9Cod5T_8A.gif

[4].https://github.com/Akbonline/SLAMPy-Monocular-SLAM-implementation-in-Python