论文部分内容阅读
由于机械臂可代替人工生产流水线作业从而提高工作效率的特点在工业生产中被广泛使用,但如今机械臂大多按设定好的方法执行目标抓取任务,在工作完成度以及执行效率方面仍有待提高。因此,本文将提出基于ROS机器人操作系统的机械臂视觉伺服运动控制的方法,从而加强机械臂工作的的准确率与智能化。
ROS机器人操作系统的灵活性与便捷性将为本文工作提供良好的实验环境,因此将选用ROS作为本文仿真实验平台,在ROS中进行机械臂的仿真运动控制,最后移植到真实机械臂系统上。首先对ROS框架进行简要描述,分析ROS相关要点及设计原理,分析本文基于ROS的机械臂软件框架。在SolidWorks中建立本文机械臂模型,借助插件sw2urdf将三维模型转化成相应的URDF模型文件并剖析URDF模型文件的实现机制。使用MoveIt配置助手setup assistant针对机械臂模型做一系列的配置并且完成编译,并在Rviz三维可视化平台中显示出机械臂模型。建立本文机械臂坐标系并算得D-H参数,并且计算出本文机械臂运动学正逆解,为后续机械臂轨迹规划部分研究工作做准备。
其次,在MoveIt中对机械臂进行运动控制。简要分析了MoveIt的框架与实现机制。分析MoveIt中的运动规划器与运动场景规划,为后续机械臂轨迹规划做铺垫。针对MoveIt中传统运动学求解器求解速度很慢且失败率高的弊端,更换为适合本文机械臂特性的运动学求解器IKFast。在关节空间下使用了抛物线过渡线性插值法与多项式插值方法来完成机械臂轨迹规划。在笛卡尔空间下,使用空间直线与空间圆弧两种轨迹插补方法对机械臂进行轨迹规划,并在ROS中进行仿真,解算出各个关节角度的变化量与误差曲线,进而完成机械臂多轨迹连续运动,首先规划两段轨迹间过渡运动,再扩展到非对称轨迹规划,实现始末位置机械臂运动速度不为零的连续多段轨迹规划。
再次,对MoveIt中的OMPL运动规划算法库实现架构进行分析。在OMPL运动规划算法库中选取适合本文机械臂的避障路径规划RRT算法。对传统RRT算法进行简要分析,针对传统RRT算法的不足,本文在节点拓展、路径优化环节提出合理的改进。分别在二维环境与六维机械臂环境下进行传统RRT算法与改进后RRT算法的对比实验。经过大量的实验分析比对,从实验结果中可以明确看出改进后的RRT算法相较于传统算法效率有较大的提升,使得本文机械臂能够在障碍物环境下完成自主规划。
最后,配合Kinect深度摄像头搭建机械臂视觉抓取系统,在ROS平台下对Kinect摄像头内参标定,基于摄像头的内参标定结果,进行机械臂的手眼标定。根据本文机械臂末端为自由旋转关节,使用眼在手外的标定方法。结合ROS与OpenCV联合基于颜色阈值识别目标物体的中心抓取位姿点,使用Object_grabber包实现机械臂对目标物体的抓取任务。联合MoveIt与Gazebo在仿真环境下实现机械臂的目标抓取。最终,在真实环境下实现机械臂对目标物体的抓取并基于目标物体颜色的不同完成分拣工作。
ROS机器人操作系统的灵活性与便捷性将为本文工作提供良好的实验环境,因此将选用ROS作为本文仿真实验平台,在ROS中进行机械臂的仿真运动控制,最后移植到真实机械臂系统上。首先对ROS框架进行简要描述,分析ROS相关要点及设计原理,分析本文基于ROS的机械臂软件框架。在SolidWorks中建立本文机械臂模型,借助插件sw2urdf将三维模型转化成相应的URDF模型文件并剖析URDF模型文件的实现机制。使用MoveIt配置助手setup assistant针对机械臂模型做一系列的配置并且完成编译,并在Rviz三维可视化平台中显示出机械臂模型。建立本文机械臂坐标系并算得D-H参数,并且计算出本文机械臂运动学正逆解,为后续机械臂轨迹规划部分研究工作做准备。
其次,在MoveIt中对机械臂进行运动控制。简要分析了MoveIt的框架与实现机制。分析MoveIt中的运动规划器与运动场景规划,为后续机械臂轨迹规划做铺垫。针对MoveIt中传统运动学求解器求解速度很慢且失败率高的弊端,更换为适合本文机械臂特性的运动学求解器IKFast。在关节空间下使用了抛物线过渡线性插值法与多项式插值方法来完成机械臂轨迹规划。在笛卡尔空间下,使用空间直线与空间圆弧两种轨迹插补方法对机械臂进行轨迹规划,并在ROS中进行仿真,解算出各个关节角度的变化量与误差曲线,进而完成机械臂多轨迹连续运动,首先规划两段轨迹间过渡运动,再扩展到非对称轨迹规划,实现始末位置机械臂运动速度不为零的连续多段轨迹规划。
再次,对MoveIt中的OMPL运动规划算法库实现架构进行分析。在OMPL运动规划算法库中选取适合本文机械臂的避障路径规划RRT算法。对传统RRT算法进行简要分析,针对传统RRT算法的不足,本文在节点拓展、路径优化环节提出合理的改进。分别在二维环境与六维机械臂环境下进行传统RRT算法与改进后RRT算法的对比实验。经过大量的实验分析比对,从实验结果中可以明确看出改进后的RRT算法相较于传统算法效率有较大的提升,使得本文机械臂能够在障碍物环境下完成自主规划。
最后,配合Kinect深度摄像头搭建机械臂视觉抓取系统,在ROS平台下对Kinect摄像头内参标定,基于摄像头的内参标定结果,进行机械臂的手眼标定。根据本文机械臂末端为自由旋转关节,使用眼在手外的标定方法。结合ROS与OpenCV联合基于颜色阈值识别目标物体的中心抓取位姿点,使用Object_grabber包实现机械臂对目标物体的抓取任务。联合MoveIt与Gazebo在仿真环境下实现机械臂的目标抓取。最终,在真实环境下实现机械臂对目标物体的抓取并基于目标物体颜色的不同完成分拣工作。