自主导航机器人在工业和服务领域有越来越多的应用。除机器人本体之外,其核心模块包含感知、建图、定位、导航、调度等模块。
感知模块
一般指传感器技术。机器人常用的传感器有激光雷达、视觉传感器等。激光雷达可分为单线和多线激光雷达,价格相对昂贵。随着计算机视觉和人工智能的发展,视觉传感器被越来越多的应用在机器人上。视觉传感器分为普通相机和深度相机。普通相机只包含环境的纹理(深度、彩色)信息。深度相机则包含场景的深度信息,故又称之为三维相机。由于其信息丰富和成本原因,深度传感器几乎是机器人的*传感器,甚至部分shouji也选配深度传感器,用作3D人脸识别和AR应用。
深度传感器包括双目结构光和TOF技术。双目结构光是通过投影投射出一定编码的光源,通过双目相机采集的结果进行视差计算,结合摄像机参数获得深度。双目拍摄的是带有很多特征或编码的图像,因此很容易进行特征匹配。而TOF技术是通过计算飞行时间获取的距离。两种方法使用场合不同,结构光技术适用于高精度、对实时性要求不高的场合;TOF技术得益于高帧率和鲁棒性,故更适用于实时的三维重建和定位建图。蓝芯科技通过自主研发的算法和SDK,可以根据应用场合为客户提供不同配置的传感器,如体积测量,物品定位和位姿检测等。
建图与定位
通俗的说,传感器是机器人的眼睛,导航模块则是机器人的大脑。导航模块使机器人能够认识、感知、探索周围环境。导航主要包含定位(Location)、建图(Mapping)和路径规划(Path Planning)三个主要部分。其中定位和建图模块通常被称为SLAM(Simultaneous Localization and Mapping,同时定位与建图)。SLAM一般分为激光SLAM和视觉SLAM。
应用在机器人领域的激光雷达一般为单线激光雷达,主要在二维平面上进行建图和和定位。多线激光雷达更多的应用在自动驾驶领域。激光雷达的建图方案是依赖二维的轮廓线进行匹配和拼接,完成场景的轮廓图重建。激光地图一般是珊格化,利用ICP算法同现有地图轮廓进行匹配,达到位姿定位的效果。由于仅有二维信息,激光方案的弊端也显而易见,即在处理长走廊和环境变化时容易定位失败。
视觉SLAM技术是计算机视觉、机器人领域的研究热点。除了机器人导航之外,SLAM技术同时也是AR领域和核心技术。视觉SLAM的原理和GPS类似,通过相机获取空间纹理信息,结合相机参数反推出机器人当前位置。然而视觉SLAM技术在服务机器人、物流等领域的应用存在诸多的挑战性。比如环境变化、光照变化、场景纹理缺失等。
图一 zhenkong相机空间模型抽象
为提高视觉SLAM技术的稳定性,建图和定位过程一般会加入IMU作为辅助,同时采用深度相机直接获取纹理特征的3D信息。全景相机也广泛应用在SLAM技术中。随着深度学习的逐渐成熟,许多研究者提出了语义SLAM的方案并取得了一定的应用。
路径规划和运动控制
运动规划指机器人导航的规划方案,即机器人如何在环境中行走。路径规划分为全局路径规划和局部路径规划。全局路径规划主要指在地图中一个目标点,规划出全局路径,机器人的行走轨迹依赖于此路径。常用算法包括A-star、Dijkstar、Voronoi等算法。局部路径规划是在全局规划的基础上,结合局部障碍物等信息,通过电机对机器人进行运动控制,如DWA算法。实际场景中,路径规划根据需求有诸多变化,包括固定点规划、固定路线规划、短距离规划、远离障碍物规划方案等。
物流和服务机器人使用多的是双轮差动的方式完成行走和转弯。局部路径规划实时向电机发送线速度和角速度,达到行走的目的。
避障
避障系统是机器人运行安全的保障。常用避障方案有激光雷达、深度相机、超声波、红外传感器等。这些方案各有优劣,机器人应根据应用场合和自身特定,选择合适的避障方案。超声波传感器通过发射一个锥面检测前方是否有障碍物,一般适合应用在倒车雷达,并不适合自动导航机器人;红外传感器较多的应用在扫地机器人上。工业和服务领域使用的机器人则广泛使用激光雷达的避障方案。
调度系统
调度系统负责机器人的任务分配、调度、运行维护。包括多任务写作,相互避障等。运行维护包括自动充电、检测报警等。多机调度技术在应用场景很大且机器人数目变多时起到关键作用。多机调度首先保证提供接口给用户使用,同时在任务较多时保证调度的效率,选择不错的调度方案供用户使用。
多机调度技术在应用场景很大且机器人数目变多时起到关键作用。多机调度首先保证提供接口给用户使用,同时在任务较多时保证调度的效率,选择不错的调度方案供用户使用。