ROS-moveit!探索(3)webots和moveit!联合控制

ROS-moveit!探索(3)webots和moveit!联合控制

webots版本:2021a
ros版本:melodic

1.前言

在webots中使用外部控制器,通过moveit!控制universal_robots 机械臂。
此项目为Webots官方开源的功能包:github地址
注意:从这开始笔者已经将webots版本升级为2021a了。

2.安装ur_e_webots功能包

  1. 旧版本支持ROS的webots,如果没有可以从github上下载:下载地址
  2. 安装完webots2021a后的操作方法,如下:
$ cd catkin_ws/src
$ cp -r $WEBOTS_HOME/projects/robots/universal_robots/resources/ros_package/ur_e_webots .
$ cd ..
$ rosdep update
$ rosdep install --from-paths src --ignore-src --rosdistro $ROS_DISTRO
$ catkin_make
$ source devel/setup.bash

3.安装universal_robots功能包

仅仅安装完这个还不够,还需要安装universal_robots功能包,他提供了universal_robots 机械臂的URDF文件、RVIZ和moveit!的启动整合文件。
可以按照我上一节的内容进行下载:ROS-moveit!探索(2)universal_robot例程

4.webots下创建新世界

  1. 根据以前webots联合ROS实战案例(二)中第一节创建新世界的方法添加以下节点:
  • TexturedBackground和TexturedBackgroundLight在(PROTO nodes(webots projects) ->objects->backgrounds)下
  • RectangleArena在(PROTO nodes(webots projects)> ->objects->floors)下
  • UR5e在(PROTO nodes(webots projects)> ->robots->universal robots)下
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PpJOq6lA-1612614719372)(1.png)]

5.UR5e在webots中的配置

因为这次使用的是webots中的外部控制器控制,所以需要将UR5e的控制器改成<extern>,笔者的配置如下图所示:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vp0acylh-1612614719374)(2.png)]

6.测试运行

测试方法步骤如下面所示:

  1. 打开webots,打开刚刚创建的世界
  2. 打开以下launch文件,设置所必须的ROS参数并且连接Webots中的UR机械臂
$ roslaunch ur_e_webots ur5e.launch

启动成功后,webots会输出如下图指令:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2WC5a3ib-1612614719376)(3.png)]

如果不先打开webots,会出现以下图问题:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MUIDe74Q-1612614719378)(4.png)]

  1. 使用universal_robot功能包下的launch文件启动Moveit!
$ roslaunch ur5_e_moveit_config ur5_e_moveit_planning_execution.launch
  1. 使用universal_robot功能包下的launch文件启动Rviz
$ roslaunch ur5_e_moveit_config moveit_rviz.launch config:=true

运行效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tEvsfpFm-1612614719380)(1.gif)]

总结

本文也是基于笔者的学习和使用经验总结的,主观性较强,如果有哪些不对的地方或者不明白的地方,欢迎评论区留言交流~

✌Bye

猜你喜欢

转载自blog.csdn.net/xiaokai1999/article/details/113730319
今日推荐