论文部分内容阅读
机械臂的运动规划是机器人学的基本问题之一,其研究内容是如何寻找一条轨迹,使机械臂沿着这条轨迹运动,可以从起始姿态运动到目标姿态,或者使机械臂的末端运动到目标点,并且保证机械臂运动过程中的安全性。当环境中存在障碍物时,传统的运动规划算法通常会通过生成无碰轨迹来保证安全性。然而在障碍物较多较拥挤的杂乱环境中,可能无法找到一条无碰轨迹。因而杂乱环境中的运动规划问题是一个挑战。针对上述问题,本文提出了面向可推挤障碍物的机械臂运动规划算法(后文简称推挤运动规划),其核心思想是通过推动障碍物,机械臂可以从障碍物之间的空隙中挤过去,运动到目标位置。该算法的优势有两点:其一是通过推挤障碍物,改变了自由空间的分布,可以解决部分无碰运动规划无法解决的问题;其二是当机械臂从障碍物之间挤过时,推动障碍物的动作是顺带完成的,提高了效率。针对推挤运动规划算法,本文从模型建立、规划算法设计等多个方面进行了研究:(i)提出了推挤运动规划的概念,研究了机械臂推挤障碍物的交互过程及交互过程中的风险,并提出了交互过程的两种模型。本文提出的第一种模型称为风险分布模型。风险分布模型描述了推挤过程中机械臂和障碍物的相对位置,与障碍物被损坏的风险之间的关系。本文首先给出了针对不同类型的障碍物以及不同推挤运动下的风险分布模型的建模方法,然后在实验中验证了该模型的有效性。本文提出的第二种模型称为推挤运动模型。利用该模型,可以在已知障碍物初始位姿和机械臂运动轨迹的前提下,可以预测出障碍物的运动轨迹。针对推挤运动模型,本文采用基于模型学习的方法,通过机械臂反复推挤障碍物来训练学习该模型中的参数,从而避免了人工建模带来的误差。然后在仿真和实验中测试了该模型的精度,验证了其有效性。(ii)提出了基于风险分布模型的机械臂运动控制及运动规划算法。首先利用本文提出的语义地图创建的方法,识别环境中的物体,再根据事先建立好的每个物体的风险分布模型,创建环境的风险分布地图。然后利用风险分布地图,通过基于势场法的运动控制或基于采样的运动规划方法,控制机械臂适当的穿过低风险的区域,回避高风险的区域,实现安全推挤障碍物以使机械臂末端到达目标点的目的。通过仿真和实验,验证了基于风险分布的机械臂运动控制及规划算法的有效性,并通过和传统方法的对比,证明了该方法的优势。(iii)提出了基于模型学习的推挤运动规划算法。在人工建立风险分布模型的过程中,由于存在一些假设和简化,导致模型存在误差。针对这一问题,提出了通过学习的方法建立推挤运动模型,避免了人工建模的误差。首先本文设计了通过反复推挤障碍物获取训练数据集,再用训练数据集估计模型参数的方法,然后本文提出了模型库的反馈更新方法以提高模型的精度。利用该推挤运动模型,可以在任务规划时,根据机械臂的轨迹和障碍物的初始位姿,预测出障碍物的运动轨迹,从而判断机械臂轨迹的安全性,最终实现推挤运动规划。通过仿真和实验,验证了基于模型学习的推挤运动规划算法的有效性,并通过和传统方法的对比,证明了该方法的优势。