吕 君
(义乌工商职业技术学院 机电信息学院, 浙江 金华 322000)
随着科技的快速发展和智能化时代的到来,国民生活品质的提升和我国老龄化进程的加快,机器人技术得到迅速发展,其应用普及程度也不断提高。当前,机器人的功能日益强大,种类不断丰富,智能型、家用型、服务型机器人逐渐被人们青睐,且已融入人们的日常生活之中[1]1。与传统工业机器人不同,人们对家用服务智能机器人不仅有美观性、交互性、安全性等方面的要求,而且要求其能与人类在同一自然空间密切配合、有效协作,并能通过自主学习来提高操作技能,自然地与人交互,以实现真正的人机共融发展。
在人机共融的环境下,家用机器人与人之间的交互已经由单向性向双向性转变。机器人需要理解人类下达的操作任务,并通过自主感知、规划与执行来完成操作任务;使用者也应该理解和接受机器人的操作策略和运动轨迹,并对机器人的运行给予必要的指导。这种机器人与人的交互最终形成人机融合的信息闭环。机器人拟人化操作是实现人机交互的重要技术之一。针对家庭复杂的服务使用情境,为了完成繁杂的任务,机器人的技术水平需要不断提升,需要相关机构不断研究家用服务机器人的拟人化操作机理,设计合理的机器人双臂功能特性和评价指标,使机器人在人机共融场景下能与人进行更加自然的交互[2]1 340-1 353。
国内外政府、企业、高校和研究机构等创新主体都高度重视双臂服务机器人的产业化发展,均在不断地投入人力、物力和财力,开展拟人化双臂机器人的应用研究。目前,国内外已有几十种典型的拟人化双臂机器人[2]1 340-1 353 [3]2 138-2 145 [4]1-4 [5]2 464-2 470 [6]4 528-40533 [7]431-436 [8]2,其发展历程大致可分为三个阶段(参见图1)。
图1 拟人化双臂机器人发展历程及其特点图示
如图1所示:第一阶段为20世纪70年代至90年代,此时的机器人以面向简单任务而研发的双臂机器人为主。这一时期的双臂机器人一般由两个低自由度机械臂组成,两个机械臂相互独立,双臂之间基本无法共享数据和信息,双臂自主运动规划和协同操作能力非常薄弱。第二阶段为21世纪00年代,此时的双臂机器人在系统结构设计上开始拟人化,成为一个完整的机器人系统。两条手臂具有一定的自主运动规划与协同操作能力,可以在同一系统下进行通信,并共享数据。第三阶段从2010年至今,拟人化双臂机器人开始走进人类的工作和生活,并且可以在工作状态下与人进行近距离的安全接触。它的双臂具有拟人化结构和冗余自由度构形,能够实现简单的自主运动规划和双臂协同规划,并且能够与人进行简单的协同作业。
从发展历程看,拟人化双臂机器人由起初的数量少、自由度低、缺乏自主运动规划和双臂协同操作规划,到现在数量较多,能够实现自主运动规划和双臂协同操作规划,并且能够与人近距离接触和协同作业,在功能和性能上都有很大提升。但是,在执行动态不确定和非结构化场景下的复杂操作任务时,拟人化双臂机器人的操作过程往往比较繁琐,并且规划的运动轨迹具有随机性,离真正的拟人化操作还存在较大的差距。
机器臂运动规划是机器人领域非常重要而经典的问题[9]7-9。目前,已经有许多规划算法可以用来解决移动机器人的运动规划问题[10]10-15。例如,势场法、路径图法、粒子群算法、神经网络等智能算法。然而,这些算法很难适用于机械臂运动规划问题,其主要原因是:(1)机械臂运动规划是一个高维构形空间(configuration space)下的运动规划问题,其构形空间的维度等于机械臂的自由度个数。而高维构形空间下的运动规划面临着巨大的搜索计算量问题,并且随着维度的增加,构形空间搜索所需的计算量会以指数级增长,该问题被证明是一个PSPACE-hard问题。(2)机器人运动规划一般需要将笛卡尔空间下的障碍物映射为机器人构形空间的障碍区域,进而在构形空间中寻找一条能够连接起始构形和目标构形且不经过障碍区域的路径,这需要很大的计算量。
目前,机械臂避障运动规划算法主要有人工势场法、随机采样运动规划、启发式搜索运动规划和轨迹优化运动规划4大类(参见图2)。
图2 常用机械臂避障运动规划方法及其优缺点图示
如图2所示:人工势场法是最早用于机械臂运动规划的方法,虽然具有运算速度快、实时性好等优点[11]90-98,但这种方法容易陷入局部最优陷阱问题,常常导致运动规划失败。随机采样运动规划具有效率高、简单易实现的特点,且能高效求解高维空间运动规划问题,是一种最适合用于机械臂运动规划的方法[12]56-77。然而,RRT、PRM及其改进算法所规划的路径具有随机性,且每次都各不相同[2]1 340-1 353 [3]2 138-2 145。因此,2011年有人提出RRT*和PRM*算法,认为其能在足够多的时间里规划出一条最优路径[13]846-984。但是,运用这类算法找到最优路径需要大量的计算时间和计算量,且目前仍然难以在较短时间内搜索到最优路径。启发式搜索运动规划方法主要通过启发式搜索来寻找最短路径,目前已能有效求解7自由度机械臂的运动规划问题[14]305-320,但对高维度运动规划问题,其搜索效率不高,并且搜索路径取决于启发式函数的定义。轨迹优化运动规划将机械臂运动规划问题表述为一个轨迹优化的过程,它通过最优控制算法寻找一条连接起始构形与目标构形的最短关节运动轨迹,使得机器人能够最大限度地远离障碍物并保证关节运动的平滑性[15]4 030-4 035 [16]4 569-4 574。但该方法仅能保证所规划的关节轨迹具有局部最优性,不能保证全局最优性。
当接到完成复杂任务的指令时,机器人需要通过规划对该复杂任务进行自主分解,生成从任务的初始状态到目标状态的动作序列。由于需要左、右臂同时执行操作任务,因此,双臂机器人在任务规划过程中,还需要对左、右臂进行合理的任务分配,使得各项任务能够通过左、右臂之间的协同操作,被快速高效地完成。该过程称为“双臂协同操作规划”[17]442-453 [18]4 238-4 243。
双臂协同操作规划的核心在于操作策略的求解,即如何结合任务本身和操作环境信息来规划机器人左、右臂的操作序列。求解的方法为根据任务中被操作物体的起始和目标位姿信息,直接选择一种最优操作策略[5]2 464-2 470。但这种方法仅适用于简单或特定的静态任务分配问题,难以解决复杂的动态任务分配问题。根据任务规划与运动规划之间的运行方式,可将双臂动态任务分配问题归纳为以下两种:
基于几何约束的任务规划要求机器人在任务规划过程中同时考虑运动规划,即在任务规划过程中考虑无碰撞路径是否存在[19]1 134-1 151 [20]447-454 [21]1-30 [22]890-927 [23]229-265 [24]346-352。例如,机器人放置物体的位置可能导致新的物体无法放置,且在放置物体的同时需要考虑新物体放置的可行性[23]229-265。基于几何约束的任务规划方法的特点在于,当任务规划终止时,整个运动规划也同时完成。然而,复杂任务往往具有很多操作序列,其几何约束关系非常复杂,往往难以分析求解。
与基于几何约束的任务规划不同,基于几何回溯的任务规划将任务规划与运动规划分开考虑[25]639-646 [26]1 575-1 590。它首先通过任务规划在抽象的任务空间中搜索一系列能够完成该操作任务的离散行为动作,然后通过机器人运动规划算法寻找能够完成该行为动作的无碰撞可行路径;若运动规划失败,其会将结果反馈给任务规划算法进行重新规划,迭代上述过程直至找到一条能够使机器人双臂到达目标状态的可行路径。基于几何回溯的任务规划方法采用的是“试错”方式,虽然规划效率较高,但其运行性能取决于优先操作策略的选择,若优先策略规划失败,则整个操作规划将陷入局部最优陷阱,需要回溯重新规划。
目前,机械臂运动规划大多通过在机器人构形空间中搜索无碰撞几何路径来实现,其关注点在于搜索最短可行路径,很少考虑拟人化运动的特点,如运动路径应具有一致性、最优性、平滑性、避关节极限和灵活避障等特点。为了让机械臂能够具有类似于人类手臂动作的运动轨迹,需要针对机械臂拟人化运动规划开展研究,使得拟人化双臂机器人在完成操作任务的过程中,不仅能够规划出一条安全无碰撞的机械臂关节运动轨迹,而且能保证规划的运动轨迹具有一致性、最优性、平滑性、避关节极限和灵活避障等拟人化运动的特点。具体如下:(1)通过分析操作任务的约束条件,建立机械臂末端执行器路径规划的数学模型,进而设计一种基于操作空间搜索的路径规划算法,从而计算出机械臂末端执行器在操作空间中的无碰撞运动路径。(2)根据所规划的末端运动路径,通过逆运动学求解方法,寻找能够跟踪该末端运动路径的机械臂关节运动轨迹。(3)设计一种基于拟人化操作的运动学指标函数,通过对该指标函数的优化,使得优化后的关节运动轨迹具有一致性、最优性、平滑性、避关节极限和灵活避障等拟人化运动特点。目前,主要有以下两种机械臂拟人化运动规划:
1.二维场景下的平面机械臂避障运动规划 结合碰撞检测和任务空间启发式搜索的机械臂运动规划算法CCTS-ARA*,在任务空间中采用启发式搜索算法ARA*寻找机械臂末端路径,并通过基于梯度投影法的逆运动学,求解出与环境障碍物无碰撞的关节路径。同时,采用关节碰撞检测来判断该关节路径是否有效,以避免任务空间规划过程中遇到的局部最优陷阱。例如:CCTS-ARA*算法为二维场景下9自由度平面机器人仿真实验所规划的结果(参见图3)。CCTS-ARA*算法能够规划出一条躲避局部最优陷阱的关节路径,使得平面机械臂能够成功地移动到目标位置。
图3 CCTS-ARA*算法下的机械臂运动轨迹仿真实验结果图示
2.任务约束下的机械臂运动规划 基于直接投影法的随机采样运动规划算法,可有效求解仿人机械臂末端位姿在任务约束下的运动规划问题。与基于迭代投影的运动规划算法相比,该方法具有规划效率高、跟踪精度高等优点。图4、5、6为该方法分别就“保持水平姿态移动水杯任务”“无碰撞路径跟踪任务”和“双臂闭链约束任务”所规划的结果(参见图4、图5、图6)。
图4 保持水平姿态移动水杯任务实验图示
图5 无碰撞路径跟踪任务实验图示
图6 双臂闭链约束任务实验图示
根据被操作物体位姿信息直接选择左臂或右臂操作,是一种局部最优的路径规划方法。但是,当任务具有较多操作序列或在执行过程中有新任务动态加入时,该方法往往难以获得最优解,反而导致双臂操作过程显得繁琐与固化,不具备拟人化的协同操作特点。为了让双臂机器人能够具有类似于人类手臂动作的双臂操作策略,可以有针对性地开展双臂拟人化的协同操作规划研究,使机器人在面向较多操作序列或动态变化的复杂操作任务时,能够求解出符合人类动作习惯的双臂最优操作策略。具体路径如下:(1)根据人类分解任务的逻辑方法,构建任务分解知识库。(2)分析各子任务的所有可行性双臂操作策略,进而构建整个操作任务的双臂操作策略图。(3)设计一种拟人化操作的评价函数,对机械臂的操作进行赋值计算,并通过图搜索方法,从所有策略中选择一条最优操作策略。
利用双臂协同操作规划与运动规划并行运行算法框架的双臂协作运动规划器,在双臂协同操作规划阶段找出求解任务的一个或多个操作策略,使得机器人能够适应不确定环境与任务下的规划任务,并具有灵活可靠等特点。其可通过不同场景下物体抓取放置任务来验证该算法框架的有效性。图7为物体抓取放置任务的双臂操作策略图,双臂机器人自适应地选择不同的操作策略来完成操作任务(参见图7)。
图7 抓取放置任务的双臂操作策略图示
在面向动态不确定或非结构化场景下的复杂操作任务时,若想让拟人化双臂机器人像人类那样利用双臂,就需要从以下两个方面入手:(1)通过机械臂运动规划,安全自主地规划出能够完成操作任务且符合人类运动特点的运动路径,使得机器人的运动能够被预测或预见,从而设计一种拟人运动规划算法,实现机械臂在感知场景下的拟人化运动,这是当前需要解决的重要问题之一。(2)基于几何回溯任务规划方法规划的双臂拟人化协同操作策略,往往取决于初始策略的选择,其求解的策略不能保证最优性。因此,如何从最优操作策略求解角度,设计一种能够求解出最优操作策略的拟人双臂协同操作规划方法,是当前需要解决的另一个重要问题。