APP下载

基于ROS 的机械臂建模与路径规划仿真

2021-07-16朱建军张博文王明园

科学技术创新 2021年19期
关键词:插件建模机械

朱建军* 张博文 王明园

(吉林化工学院信息与控制工程学院,吉林 吉林 132022)

由于传统机械臂控制系统进行轨迹规划都要靠人工示教,没有自主感知、自主规划的功能[1]。相应的机械臂智能控制技术急需不断的发展,本文基于安诺机器人公司生产的V6PLUS 桌面机械臂作为研究对象,利用机器人系统工具箱,通过构建虚拟机械臂模型及仿真过程的运动可视化功能,得出机械臂各关节末端的速度- 位移曲线,并对物品抓取过程进行了路径规划,通过仿真得到各关节的参数与末端的关系,结果表明该方法有助于机械臂的运动控制系统的快速仿真与实现,为V6PLUS 桌面机械臂的控制研究提供了思路。

1 仿真环境配置

1.1 ROS 系统

ROS 最初是与机器人公司Willow Garage 合作应用于斯坦福大学人工智能实验室的个人机器人项目[2]。2010 年以开放源码的形式发布了ROS 框架,适应了当今的开源软件和分布式协作的软件潮流,以为机器人研发提供代码重用支持为主要目标。ROS 包括开发工具、应用功能、通信机制、生态系统四个部分,支持并融合了很多著名的开源项目,支持C、C++、Python、Java 等多种编程语言,最大程度上实现代码共享[3]。

1.2 机械臂模型定制与仿真环境搭建

URDF(Unified Robot Descriptin Format)是一种使用XML 格式描述运动学特征的机械臂模型文件[4],包含两种参数,即连杆(link)参数与关节(joint)参数。本文对实验室所开发的六自由度机械臂进行建模,在Solidworks 中使用拉伸切除等方法按照与实际机械臂1:1 的比例绘制机械臂三维模型,以自由度为要素、关节为界将机械臂划分为七个部分,并在机械臂关节处插入基准轴。各部件图如图1。

图1 六自由度机械臂各部件装配图

使用Solidworks 中sw2urdf 插件,并根据实际情况,明确连杆(link)与关节(joint)两项参数,确定装配体装配关系参数(关节类型、关节轴向、关节变量、关节限位),并明确关节与连杆之间的父子关系,如图4 所示,通过控制关节(joint)达到控制机械臂模型的目的。 通 过 使 用 MoveIt 中 moveit setup assistant 插件配置URDF 模型,使导入的机械臂URDF 模型文件转化为SRDF 文件,并创建出MoveIt 功能包,具体步骤过程如图2所示。

图2 MoveIt 配置流程图

2 机械臂路径规划

2.1 路径规划算法

本文采用RRT-Connect (基于双向扩展平衡的连结型双树)算法进行实验,它是一种基于采样的路径规划算法[5]。其原理是每次规划以状态空间中的一个初始点作为根节点,并通过随机采样逐渐增加叶节点的方式,生成一个随机扩展树,与此同时在目标点也作为一个根节点生长出一个随机扩展树,当两个随机树相互连接,便可在随机树中找到一条以树节点组成的从初始点到目标点的路径规划。其原理图如图3。

图3 RRT-Connect 原理图

图4 机械臂的位姿变化与实时仿真

2.2 路径规划仿真

设置机械臂初始姿态为x=0,y=0,z=0,w=1,目标姿态为x=0.114,y=-0.012,z=-0.174,w=0.978,使用使用planning scene插件在机械臂初始位姿与目标位姿之间设置一个长、宽、高为1m、0.3m、0.01m 的长方体与一个半径为0.1m,高为0.2m 的圆柱体共同组成的障碍,使机械臂进行路径规划时必须要避开障碍物,分别在有、无障碍物的情况下进行试验,如图4。

使用Rqt_plot 命令订阅机械臂六个关节角度位置变量并通过曲线图显示,得到具体路径规划变化信息,角度单位为弧度制,横坐标为时间,纵坐标为角度,如图5 所示。

图5 关节角度变化曲线

在有障碍和无障碍物的条件分别实现了机械臂在自主移动和自主避障到达目标位置的仿真实验,实验结果表明通过RRT-Connect 算法可以有效地和准确地实现对机械臂运动路径地规划和控制。

3 结论

本文使用ROS 平台对安诺V6PLUS 机械臂进行开发与研究,利用URDF 文件进行3D 建模,实现了机械臂的快速建模的方法。分析MoveIt 软件架构及路径规划的实现机制并利用RRT-Connect 算法形象展现了机械臂避障时的运动过程。结合Rviz 仿真环境,使在不具备真实机械臂的环境条件下也可对机械臂进行运动规划,并完成了机械臂进行避障的路径规划与仿真。通过分析对比在有、无障碍时关节角度变化的曲线变化,验证了运动规划结果的合理性,为机械臂的控制研究提供了思路,也为在复杂环境下进行路径规划算法的进一步改进提供了直观的方法。

猜你喜欢

插件建模机械
基于FLUENT的下击暴流三维风场建模
基于CTK插件框架的太赫兹人体安检系统软件设计
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
调试机械臂
求距求值方程建模
自编插件完善App Inventor与乐高机器人通信
基于OSGi的军用指挥软件插件机制研究
基于PSS/E的风电场建模与动态分析
简单机械
基于jQUerY的自定义插件开发