当今科技高速发展的时代,人们越来越需要机器人去替代人来完成一些危险的任务,例如在科学探索以及救灾抢险中,经常会遇到一些危险或者人类无法轻易到达的地方。机器人避障是机器人技术中一项最基础也是关键的功能,它旨在让机器人行动过程中保证不发生碰撞,避免结构的过度老化、脱落。机器人避障技术的核心包括了传感器的选择和规划算法的选择。
一、机器人常用避障传感器
机器人避障的第一步,是让机器人能够感知周围环境。一般来说,我们需要通过传感器给机器人提供周围环境的参数指标。例如障碍物的尺寸、形状和位置等。目前避障使用的传感器各种各样,其特点和适用范围也不同。根据不同的原理,可分为:超声波传感器、红外传感器、激光传感器和视觉传感器等。
1)超声波传感器
超声波传感器的原理是:先发出超声波,然后检测反射波的延迟,根据声速计算目标与物体之间的距离。由于超声波在空气中的速度和湿度,温度有关,在实践中,需要考虑到这些因素的变化。另外,超声波传感器的有效距离,一般小于10m,并且会有最小约几十毫米的检测盲点,它只能用于小型项目。超声波传感器成本低廉,技术成熟,原理简单,是最常用的传感器。
2)红外传感器
红外传感器大多基于三角测量原理。发射器以一定的角度向待测物体发射红外光束,被物体反射回来后用另一个接收器检测到,会得到一个偏移值。利用几何关系可以根据发射角度计算得到传感器与物体的距离。常见的红外传感器的测量距离都比较近,小于超声波传感器的距离。另外,对于透明的物体(例如玻璃等)红外线会穿透的材质,红外传感器是无法检测距离的。
3)激光传感器
激光传感器原理类似前一个方法,只是用激光替代了红外线来测量距离。常用的测距方式是由发射器发出持续时间很短的脉冲激光,由接收器接收返回的信号,根据入射波与反射波的延时,测出与目标的实际距离。由于光速比声速快很多,这种测量方式往往用于大型测量,如航天研究中,而并不适合对精度要求很高的领域。
4)视觉传感器
视觉传感器利用多个传感器联合使用,通过复杂的算法模拟计算出物体的形状、速度、距离等。这种方法虽然探测范围比较宽阔,获取信息量也大,但是对机器人内置的处理器的要求比较高,且由于处理时间的存在,导致对环境的实时反应差。此外,它也会收到雾霾等光学因素的干扰。
二、服务机器人常用避障算法
目前移动类服务机器人的避障根据环境信息的掌握程度可以分为障碍物信息已知、障碍物信息部分未知或完全未知两种。传统避障方法主要实现机器人无碰撞全局路径规划,主要采用人工势场法、栅格法、自由空间法等算法。传统避障方法对障碍物信息己知时的避障问题处理尚可,但当障碍信息未知或者障碍是可移动的时候,传统的导航方法一般不能很好的解决避障问题或者根本不能避障。而实际生活中,绝大多数的情况下,机器人所处的环境都是动态的、可变的、未知的,为了解决上述问题,人们引入了计算机和人工智能等领域的一些算法。同时得益于处理器计算能力的提高及传感器技术的发展,在机器人平台上进行一些复杂算法的运算也变得容易,由此产生了一系列智能避障方法,比较热门的有:遗传算法、神经网络算法、模糊算法等。
三、服务机器人避障能力测试
服务机器人避障能力测试可分为两类:障碍物探测测试和障碍物规避测试。
1、障碍物探测测试
本测试的目的是判定机器人针对不同几何形状和材质障碍物时的探测能力和障碍物距离检测能力。障碍物参数一般基于制造商指定的最小和最大传感范围确定,机器人未必能识别到边界参数障碍物。
1)测试环境
测试区域应足够大,可容纳机器人和制造商声明的最大规定范围的障碍物,如图所示。机器人与障碍物之间不应有任何障碍物。测试环境的墙壁不应该有任何标记。
图 1 障碍物探测的测试布局
2)测试方法
测试时可包含六个规格障碍物,分别是松木墙面、玻璃墙面、松木桌、刚性桌、大圆柱、小圆柱。每次测试遵循以下测试方法:
A. 机器人处于初始位姿;
B. 将障碍物放置在制造商声明的最大规定范围后,由机器人检测障碍物的位置;
C. 将障碍物放置在最小规定范围后,由机器人测量障碍物的位置。
D. 将障碍物放置在相对于机器人的视线逆时针45°方向的直线上,重复步骤B和C。每次测量完成后,逆时针增加45°角,重复步骤D。当机器人到达初始位置时,程序停止。调整障碍物的方向,使其最大的一面面向机器人。通过移动机器人代替障碍物,可以实现障碍物的相对定位。
2、障碍物规避测试
本测试的目的是判定机器人通过停止或执行适当的规避动作来防止与静态或动态障碍物碰撞的能力。在障碍物与机器人的任何部分发生物理接触前,机器人必须停止。如发生避障动作,应按照制造商的规定,保持障碍物与机器人任何部件之间的最小距离。
1)测试环境
将机器人放置在初始位置,距离目标位置9个长度单位,平铺一层,如下图所示。静态障碍物和动态障碍物的动作如下图所示:
动作1:将障碍物放置在初始位置和目标位置之间,保持静止;
动作2:以与机器人运行路径垂直90°的方向,将障碍物移动到位置P2;
动作3:以与机器人运行路径垂直45°的方向,将障碍物移动到位置P3;
动作4:在机器人运行路径上,将障碍物移动到位置P1,以阻止机器人从初始位置到达目标位置。
图 2 测试布局与障碍物动作(俯视图)
为了体现人类典型的行走速度,建议障碍物的速度为1.6m/s,可采用移动平台或移动机器人替代。障碍物的动作须与机器人的动作同步,使其同时达到P1的位置。
2)测试方法
该测试可根据以上描述形成十种测试用例,每次测试应遵循以下测试方法:
A. 将机器人放置在初始位置P0,以制造商规定的给定场景额定速度和负载移动到目标位置PG。当机器人到达目标位置时,记录运行时间;
B. 在每次进行障碍动作1、2、3或4时,将机器人放置在初始位置P0,将障碍物放置在障碍动作初始位置;
C. 使机器人以制造商规定的给定场景额定速度和负载移动到目标位置PG,同时使障碍物分别依据障碍动作2、3或4要求移动至终点位置。障碍物的初始位置可以沿直线路径调整,以保证在障碍物以1.6 m/s的速度运动时,机器人和障碍物同时达到P1位置;
D. 当机器人到达目标位置时,记录运行时间。
如果机器人没有达到目标位置或在行进过程中碰到障碍物,则视为试验失败。针对一个特定的测试用例,从一开始至连续三次试验成功后,视为避障成功。如果前三次试验中至少有一次失败,则应将此测试视为失败。选取前三次试验成功后的平均无障碍运行时间为无障碍运行时间T0。选取前三次成功试验的最大带障碍运行时间为带障碍运行时间T1。延迟因子可定义为T1/T0的值。