ROS-moveit!探索(3)webots和moveit!联合控制
webots版本:2021a ros版本:melodic
1.前言
在webots中使用外部控制器,通过moveit!控制universal_robots 机械臂。 此项目为Webots官方开源的功能包:github地址 注意:从这开始笔者已经将webots版本升级为2021a了。
2.安装ur_e_webots功能包
- 旧版本支持ROS的webots,如果没有可以从github上下载:下载地址
- 安装完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下创建新世界
- 根据以前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)下
5.UR5e在webots中的配置
因为这次使用的是webots中的外部控制器控制,所以需要将UR5e的控制器改成
<extern>
,笔者的配置如下图所示:6.测试运行
测试方法步骤如下面所示:
- 打开webots,打开刚刚创建的世界
- 打开以下launch文件,设置所必须的ROS参数并且连接Webots中的UR机械臂
$ roslaunch ur_e_webots ur5e.launch
启动成功后,webots会输出如下图指令: 如果不先打开webots,会出现以下图问题:
- 使用
universal_robot
功能包下的launch文件启动Moveit!$ roslaunch ur5_e_moveit_config ur5_e_moveit_planning_execution.launch
- 使用
universal_robot
功能包下的launch文件启动Rviz$ roslaunch ur5_e_moveit_config moveit_rviz.launch config:=true
运行效果
总结
本文也是基于笔者的学习和使用经验总结的,主观性较强,如果有哪些不对的地方或者不明白的地方,欢迎评论区留言交流~ Bye