豹小秘

  相信屏幕前的各位看官应该都有过扫地的经历,回想一下扫地的过程,可以分解为两个主要的动作:走到某个位置;将其打扫干净。与之相应的,作为人类扫地劳动的替代者——扫地机器人也包含两个主要的系统:自主导航系统和清扫系统。

  如果说清扫系统是扫地机器人冠以“扫地”之名的本钱,是扫地机器人之心;那么自主导航系统就是它冠以“机器人”之名的底气,是扫地机器人之脑。如果没有自主导航系统,那么它只能被称为“扫地机器”而不是“扫地机器人”。下面就让我们具体来看一下扫地机器人的“底气”是怎么产生的。

  机器人导航的三个经典问题

  说到机器人的自主导航,简单来说可以归结为由MIT教授JohnJ.Leonard和原悉尼大学教授Hugh Durrant-Whyte提出的三个问题:

  (1)Where am I?

  (2)Where I am going?

  (3)How should I go there?

  第一个问题是机器人的定位问题,即如何根据现在观测到的和前面已知的信息,判断机器人在当前环境中的位置。第二个和第三个问题,实际上就是指定一个目标,然后规划一定的路径来实现这个目标。对一般的移动机器人来说,这个目标是一个点,即点到点导航。而对扫地机器人来说,其目标不是到达某一点,而是遍历某一个区域,以实现对房间的清扫。今天让我们先来看一下第一个问题,即扫地机器人的定位。

  定位是包括扫地机器人在内的移动机器人自主导航中最基本的环节,也是完成任务必须解决的问题。说到定位,大家首先想到的可能是GPS定位、基站定位等常用的室外定位。

  与之不同,扫地机器人的定位都是室内定位,其要求定位精度高(最少在亚米级),实时性好,GPS、基站定位等方法无法满足。扫地机器人定位总体上可以分为相对定位和绝对定位,下面我们分别来看。

  相对定位法

  航位推算法(Dead-Reckoning Method)是一种经典的相对定位法,也是扫地机器人目前最为广泛使用的一种定位方法。它利用机器人装备的各种传感器获取机器人的运动动态信息,通过递推累计公式获得机器人相对初试状态的估计位置。航位推算较常使用的传感器一般有:码盘,惯性传感器(如陀螺仪、加速度计)等。

  码盘法一般使用安装在车轮上的光电码盘记录车轮的转数,进而获得机器人相对于上一采样时刻位置和姿态的改变量,通过这些位移量的累积就可以估计机器人的位置。码盘法优点是方法简单、价格低廉,但其容易受标定误差、车轮打滑、颠簸等因素影响,误差较大。但是由于码盘价格便宜,简单易用,可用于机器人较短时间距离内的位置估计。

  惯性传感器使用陀螺仪和加速度计得到机器人的角加速度和线加速度信息,通过积分获得机器人的位置信息。一般情况下,使用惯性传感器的定位精度高于码盘,但是其精度也要受陀螺仪漂移、标定误差、敏感度等问题影响。无论是使用码盘还是惯性传感器,它们都存在一个共同的缺点:有累积误差,随着行驶时间、距离的不断增加,误差也不断增大。因此相对定位法不适合于长时间、长距离的精确定位。