UR5机械臂仿真实例(三)3 末端添加robotiq夹爪 [ubuntu20.04+ROSnoetic+gazebo11]

本文详细介绍了如何在rviz和gazebo环境中配置UR5机械臂并添加Robotiq2F85夹爪,包括修改urdf文件、安装Moveit、配置参数、生成碰撞矩阵,以及设置规划组、末端执行器等步骤。

【ur5机械臂末端添加robotiq 2f 85夹爪】

分别给出以下场景的实现过程:

一、实现rviz中ur5与robotiq85的连接和控制

二、实现gazebo中ur5与robotiq85的连接和控制

三、Moveit配置实现rivz与gazebo的联合控制【本文】

三、Moveit配置实现rivz与gazebo的联合控制

(一)修改ur.xacro

在使用moveit时需要导入机械臂模型,我们使用的是fmauch_universal_robot/ur_gazebo/urdf/ur.xacro。

修改完成的基础上,将fmauch_universal_robot/ur_gazebo/urdf/ur.xacro中的

<xacro:arg name="joint_limit_params" default=""/>
<xacro:arg name="physical_params" default=""/>
<xacro:arg name="kinematics_params" default=""/>
<xacro:arg name="visual_params" default=""/>

改为

<xacro:arg name="joint_limit_params" default="$(find ur_description)/config/ur5/joint_limits.yaml"/>
<xacro:arg name="physical_params" default="$(find ur_description)/config/ur5/physical_parameters.yaml"/>
<xacro:arg name="kinematics_params" default="$(find ur_description)/config/ur5/default_kinematics.yaml"/>
<xacro:arg name="visual_params" default="$(find ur_description)/config/ur5/visual_parameters.yaml"/>

为参数设置默认值,以直接调用。

(二)安装和启动moveit

sudo安装对应版本的moveit,我的ROS版本是noetic

sudo apt-get install ros-noetic-moveit 

启动roscore

roscore

打开新终端,启动moveit配置助手

cd ~/catkin_ws
catkin_make
source devel/setup.bash
rosrun moveit_setup_assistant moveit_setup_assistant

(三)配置moveit

1. Start加载模型

点击Create New Moveit Configuration Package,点击Browse,选择catkin_ws/src/fmauch_universal_robot/ur_gazebo/urdf/ur.xacro,打开。

点击Load Files,窗口右侧出现机械臂和夹爪模型。

2. Self-Collisions碰撞检测矩阵

点击Generate Collision Matrix,生成碰撞检测矩阵。

3. Virtual Joints虚拟关节

Add Virtual Joint,设置虚拟关节将机械臂base_link连接到world。

4. Planning Groups设置规划组

Add Group,分别添加两个group:

manipulator(机械臂):Kinematic Solver(动力学求解器)使用moveit自带的KDLKinematicsPlugin,其他使用默认配置;Add Kin. Chain,添加连杆chain;Add Joints,添加关节。

gripper(夹爪):使用默认配置;Add Joints,添加关节。

5. Robot Poses定义姿势

可以定义一些姿势。

6. End Effectors末端执行器

将gripper设置为末端执行器。(当只有机械臂时,tool0为末端执行器。)

7. Passive Joints被动关节

8. Controllers控制器

首先,点击Auto Add FollowJointsTrajectoryControllers For Each Planning Group自动生成controllers。

为了实现moveit对gazebo中机械臂的控制,我们需要确保命名空间一致,即控制器名称要统一。参考fmauch_universal_robot/ur_gazebo/config/ur5_controllers.yaml,设置两个controllers的Name和Type。

9. Simulation

跳过。

10. 3D Perception

跳过。

11. 作者信息Author Information

填写作者姓名和邮箱。

12. Configuration Files生成配置文件

 选择路径,生成ur5_gripper_moveit_config包。

(四)启动launch

首先,打开fmauch_universal_robot/ur_gazebo/launch/ur5_bringup.launch,将gui_controller注释掉。

<!-- <node name="gui_controller" pkg="rqt_joint_trajectory_controller" type="rqt_joint_trajectory_controller" /> -->

然后,启动gazebo仿真、启动moveit运动规划、启动rviz。

cd ~/catkin_ws
catkin_make
source devel/setup.bash
roslaunch ur_gazebo ur5_bringup.launch
roslaunch ur5_gripper_moveit_config move_group.launch
roslaunch ur5_gripper_moveit_config moveit_rviz.launch config:=true

(五)运行结果

MotionPlanning选择PlanningGroup为gripper,在Joints中调整关节角度至目标位置,点击Plan&Execute,完成运动规划及gazebo中夹爪的运动控制。

MotionPlanning选择PlanningGroup为manipulator,拖动末端规划球或在Joints中调整关节角度至目标位置,点击Plan&Execute,完成运动规划及gazebo中机械臂的运动控制。

### 安装 Gazebo 11 与 ROS Noetic 的兼容性 Ubuntu 20.04 是 ROS Noetic 的官方支持平台,而 Gazebo 11 是该系统中默认支持的 Gazebo 版本。与 Gazebo 9 相比,Gazebo 11 提供了更多的功能改进和性能优化,包括更强大的物理引擎、增强的传感器支持以及更好的图形渲染能力。在 ROS Noetic 环境中,Gazebo 11 与 ROS 的集成更加紧密,能够更好地支持机器人仿真任务,如视觉引导抓取、Mavros offboard 模式飞行仿真等[^1]。 ### 安装步骤与命令 在 Ubuntu 20.04 系统中安装 Gazebo 11 可以通过官方软件仓库直接完成,无需手动编译。首先,确保系统已安装 ROS Noetic,并配置好 ROS 环境。接下来,执行以下命令安装 Gazebo 11 及其开发包: ```bash sudo apt-get update sudo apt-get install gazebo11 libgazebo11-dev ``` 为了实现 ROS 与 Gazebo 的集成,还需要安装 ROS 的 Gazebo 插件包: ```bash sudo apt-get install ros-noetic-gazebo-ros-pkgs ros-noetic-gazebo-ros-control ``` 这些命令会自动处理依赖关系,确保 Gazebo 11 与 ROS Noetic 的兼容性[^1]。 ### 配置 ROS 工作空间 安装完成后,需要配置 ROS 工作空间以支持 Gazebo 仿真。创建一个 ROS 工作空间并初始化: ```bash mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ catkin_make ``` 在工作空间中,可以添加 Gazebo 相关的 ROS 包,例如 `levelManager`,并通过 `roslaunch` 启动 Gazebo 仿真环境: ```bash roslaunch levelManager lego_world.launch ``` 如果工作空间的路径或名称发生更改,需要清理之前的构建文件并重新编译: ```bash cd ~/catkin_ws/ catkin clean catkin_make ``` 这种配置方式能够确保 Gazebo 11 在 ROS Noetic 环境中正常运行,并支持复杂的仿真任务[^3]。 ### 相关问题 1. 如何在 Ubuntu 20.04 中手动安装 Gazebo 9 并与 ROS Noetic 集成? 2. ROS Melodic 和 ROS Noetic 在 Gazebo 插件开发方面有何不同? 3. Ubuntu 18.04Ubuntu 20.04 的系统依赖管理有何区别?
评论 17
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值