当前位置:首页 > 新闻 > 正文

自主定位导航技术在商用服务机器人中的应用与挑战

发布时间: 2018-06-25 17:32   作者: 陈士凯   来源: 人工智能杂志

  近些年来,随着该技术的不断成熟以及所依赖硬件低成本化的深入,带有自主定位导航技术的智能机器人逐渐开始普及并进入人们的日常视线当中。而在商用场合下的服务机器人因为其应用特点,对于自主定位导航有着天然的硬性需求。本文将针对该类机器人场景的特点,介绍自主定位导航技术在其中的应用情况以及所面临的挑战。

  一、智能服务机器人行业现状

  有别于工作在环境固定且用户多受过专业训练的工业、专业机器人,智能服务机器人所面向的环境一般事先未知,而且使用者本身未必具备相关专业经验。这就奠定了智能服务机器人本身必须具备更高的智能来应对环境带来的挑战。

  从使用场景划分,智能服务机器人可以分为面向家庭的消费类服务机器人以及面向公共商用环境的商用服务机器人两大类。其各自的典型代表如图1所示:

  从图1中可以发现,相对于家庭环境,商用环境下实际得到应用的服务机器人种类相对较多。由于商业应用场合更加关注效率和产出比,服务机器人可在一定程度上具备降低劳动成本的潜力而被重视,其成本可一定程度地被商用市场所接受。而相比家庭环境,个人消费者用户对于机器人的成本更加敏感,这将制约包括自主定位导航在内的实用化技术的应用,从而也限制了能得到应用的机器人种类。

  不过值得注意的是,近些年来,智能清洁机器人作为家庭环境中的服务机器人代表品类,已经取得了爆发式的发展。

  二、自主定位导航技术的现状

  自主定位导航技术按照所实现的功能进行划分的话,可包含图3内容。

  每个部分在实际工作当中是紧密联系在一起的,图4展示了一个典型的自主定位导航系统内部各组件的框架。

  地图构建和数据表达

  地图构建是机器人实现在当前环境中自主导航行动的前提。环境地图一方面可以帮助机器人配合自身的传感器进行实时定位,同时也用于后续展开行动时,导航过程的路径规划。

  虽然环境地图也可以通过事先人为绘制并提供给机器人设备,但由于这类人为绘制的地图大多与真实场景存在区别,而且与机器人传感器所观测的数据存在区别,因此在实际应用中存在挑战。

  由机器人自主绘制的地图会随着使用的传感器特性以及地图构建算法和表现方式的不同而存在区别。图5中分别展示了使用激光雷达(LIDAR)并使用Occupancy Map方式绘制的环境障碍物地图、直接使用激光雷达数据表达的环境3D点云地图以及仅记录了环境中特征信标位置关系的特征地图。

  不同的传感器和地图类型组合产生的地图表示各有其优缺点和适用环境。总的来说,采用Occupancy Map的地图数据由于直接表征了环境中障碍物的出现概率情况,因此非常适合用于后期的导航和路径规划使用。这类地图也是目前服务机器人导航中的事实标准。而3D点云地图由于能比较精确地刻画空间信息,因此多作为3D重建和空间勘探的初期原始地图表达方式,但数据量巨大,不适合机器人等机载运算能力和存储空间有限的场合。对于特征地图,由于采用稀疏的存储方式,因此适合编码较大空间场景,且能比较快速地进行回环检测(loop closure),但是缺点是这类地图相对不够直观,难以用于导航。

  实时空间定位

  就像人们在陌生的地点需要借助GPS定位了解自身位置一样,机器人在工作过程中同样需要能够获得自身的实时空间定位信息。不过大部分服务机器人工作在室内,GPS这类传统的定位手段并不适用。并且机器人应用对于定位信息的实时性要求也较高,很多情况要求定位系统的位姿更新频率高于100Hz。这就需要为机器人应用设计新的定位手段。

  提供实时定位功能的本质是使用何种传感器并配合何种算法。从传感器的安装方式来看,可将定位传感器安装在机器人自身,也可通过在外部环境中安装传感器或者特定设备来获取定位信息。

  1.航迹推算法

  传统上,可以使用安装在机器人轮组中的里程计以及惯性导航单元(IMU)来检测机器人一段时间内的相对位移和转动,并进行累计来推导机器人某一时刻的相对于开始时刻的相对位置。这种依靠自身传感器增量数据进行位置推测的方式叫做航迹推算(Dead reckoning)。虽然比较容易实现且成本相对较低,但其缺点是由于里程计和IMU存在累计误差的现象,长时间工作将导致定位误差逐渐增大。如果没有额外的定位数据作为修正,将最终导致定位数据失效。

  因此实际应用中,很少直接将使用航迹推算得到的位置信息用于定位。但在实际行业应用中,航迹推算却几乎是必不可少的环节。这是因为里程计或者IMU自身刷新频率比较高,一般都可实现100Hz-10kHz的更新频率。而这类传感器这几年成本也有了非常明显的降低。在行业使用中,会在较短的时间间隔内,使用采用里程计以及IMU获得的相对位置信息对当前位置进行估计推测。而在相对长的时间间隔内,运用其他的定位手段获得相对更加精确的空间定位并对之前的航迹推算位置估计进行修正。

  2.空间信标定位

  为了避免前述航迹推算带来的定位精度因累计误差而逐步降低的问题,最直观的办法是利用空间中已经布置的参考物进行信标定位。通过对观测机器人自身相对于这些参照物的相对位置关系即可实现在空间环境中完成绝对位置定位。它的好处是定位误差不会像航迹推算那样持续增加,而是会维持在一个预先定义的误差上限当中。

  目前行业内典型的信标定位有UWB(Ultra-wideband)、基于蓝牙的iBeacon和RFID标签的定位。以UWB为例,它的工作原理几乎与GPS一致。机器人上安装的信标接收器接收预先布置在环境中的固定信标基站的信号,通过飞行时间法(Time-of-Flight,TOF)来推测自身距离这些基站信标的位置,从而实现空间定位。在典型情况下,UWB可以在室内实现亚米级别的定位精度。

  传统上,采用信标定位的缺点在于需要在环境中布设大量的基站设备。这将带来一定的部署和维护困难,并且导致成本上升。同时,信标定位的刷新频率传统上受制于硬件实现,难以实现提高。但近些年来,行业内开始使用计算机视觉的方式,通过提取存在于环境中的特征画面数据来进行定位。这样就很好地规避了传统信标定位需要环境进行提前布置的缺点。同时定位更新频率也有了大幅的提高。虽然目前这类方式还受制于诸如摄像头拍摄稳定性和算法鲁棒性等问题,但已经在例如vSLAM等技术中广泛应用。

  3.基于地图匹配的定位和蒙特卡洛定位法(Monte-Carlo Localization, MCL)

  为了克服航迹推算造成的误差累计问题,另一种定位方式是将机器人的传感器数据与预先绘制的环境地图进行匹配,从而完成定位。只要当时的传感器数据足以让匹配算法在地图上找到正确的配对位置,就可以保障定位精度在固定的上限内。相比于信标定位方式,基于地图匹配的定位方法无需在环境中预先布置特殊设备,因此实际产品应用中更加受到青睐,也是目前机器人定位的首选方式。

  不过这种定位方式的误差是由地图本身的构建精确度以及匹配算法的鲁棒性决定的。如果出现地图与真实环境存在偏差,或者匹配算法出现错误的匹配,则将导致定位错误。

  为了克服上述问题,目前行业内常见的作法是采用蒙特卡洛定位法(Monte-Carlo Localization,MCL),将基于当前的传感器数据对地图进行匹配比对后,使用粒子滤波器,将机器人可能出现在地图上的位置按照概率的强弱进行标注和调整。进而可以较为有效地抑制因为出现偶发的错误匹配而导致定位失效的问题。

  因为其实现简易可靠性强,目前MCL方式的定位是机器人行业内进行定位的主流方式。但是当环境地图与现实环境出现较大的偏差时,MCL也将可能失效,导致定位错误。

  同步定位和建图(SLAM)

  在很多实际工作中,往往自主地图构建和实时定位是要求同时进行的。如前文介绍,如果没有额外的环境信标定位设施的帮助,机器人要进行精确可靠的空间定位就需要依赖已经构建的环境地图。但是如果机器人第一次在一个位置环境中展开工作时,环境地图并没有被构建。此时就需要机器人首先能够自主地绘制出环境地图。不过显而易见的是,要自主地绘制出一定精确的环境地图,是需要有精确的定位信息做支撑的。

  为了解决上述难题,就需要使用同步定位和建图(SLAM)技术。该技术方案可以很好地解决上述的两难问题,正因为此,目前SLAM已经成为机器人进行自主建图和定位的标准技术。国内外机器人行业内也涌现了不少以SLAM为核心技术支柱的公司,如国内的SLAMTEC。

  从某种意义上,激光雷达传感器其高精度、高实施性的特点,成为了SLAM方法的首选传感器。采用激光雷达的SLAM技术可以绘制高精度的环境地图,并且因为地图数据直接记录了环境的障碍物情况,因此地图内容可直接用于后续机器人导航和路径规划,并且比较直观,易于人理解。

  由于目前激光雷达SLAM是行业内应用的主流,在后文的介绍中,如不特殊说明,均以采用激光雷达的SLAM方式为默认进行介绍。

  运动规划和控制

  自主定位导航的另一方面在于如何控制宿主自主地在环境中进行运动,并合理地安排运动轨迹、实时规避各类障碍物。这部分的工作是由运动规划和对应的控制算法完成的。

  针对服务机器人应用的这个共性需求,运动规划和控制算法一般可概括为完成如下的多个层次。其中全局路径规划是最上层的运动规划逻辑,它按照机器人预先记录的环境地图并结合机器人当前位姿以及任务目标点的位置,在地图上找到前往目标点最快捷的路径。随后,相关计算结果交由下一层的局部路径规划算法细化,当环境出现变化或者上层规划的路径不利于机器人实际行走时(比如机器人无法按照规划的路径完成特定转弯半径的转向),局部路径规划将做出微调。最后,这部分的规划结果最终转化成为具体的硬件控制信号(对于轮式机器人而言,可以是每个驱动轮组的速度分量)来实际驱动机器人移动。

  相关的传感器

  传感器是实现自主定位导航的必要器件。虽然它们并不直接参与相关算法的处理过程,但是其提供的数据特性却很大程度上决定了所使用的导航定位算法的实现方式以及可提供的工作性能。因此,机器人采用何种传感器用于自主定位导航一直是业内讨论的重点。一般来说,传感器的选择受制于如下因素:

  ·与使用环境的适用性

  每种传感器均有其特定工作指标,如对激光雷达而言,最大测量半径是衡量其性能的关键指标之一。如果将一个探测半径最大是10米的激光雷达应用在工作于非常空旷的厂房的机器人中,或许就是不合适的。同样,如果机器人要求在黑暗环境中工作,配备了只能接受可见光的视觉成像传感器也是不合适的。

  ·产品形态

  机器人产品本身的造型、运动特性也会制约传感器选择。

  ·成本

  当选用的传感器可以很好地满足上述指标后,成本就是决定其是否能最终选用的衡量因素了。实际上这也是目前制约导航定位技术普及的核心因素。历史上,由于激光雷达高昂的成本,导致无法最终在实际产品中使用。因此,近些年,低成本激光雷达产品的研发成为了行业内的一大趋势。另一方面,仅依靠视觉传感器的导航方案也是目前学术界的一大研究热点,其背后能有效地降低传感器成本也是推动因素之一。

以上内容精选于《人工智能》杂志第四期

  本文作者

  陈士凯

  上海思岚科技有限公司(SLAMTEC)创始人兼CEO。 毕业于上海交通大学,现任中国服务机器人产业联盟副主席,从事机器人自主定位导航及激光雷达传感器的研究和应用。2013年在RoboPeak团队的基础上创立了思岚科技(SLAMTEC),并带领公司将自主研发的激光雷达和核心自主定位导航方案实现全球化应用,目前业务辐射20多个国家和地区,服务超过2000家客户。

  思岚科技产品线包括:面向消费领域的激光雷达RPLIDAR系列、模块化的SLAM自主定位导航系统SLAMWARE系列以及通用型服务机器人开发平台ZEUS系列。

  欲阅读完整文章,可通过以下方式购买《人工智能》杂志!

  订阅2018年《人工智能》杂志6期共计360元

  银行转账:北京赛迪出版传媒有限公司

  开户行及账号:北京银行北洼路支行20000030565000007701154

  银行转账,请备注:人工智能

  接收详细信息请发到:aiview@ccidmedia.com;或是添加客服微信:13601092749

收藏