UR5工作空间建立和模拟环境下的配置和初步实现实际通信的步骤(ROS-kinetic)

本文介绍了在ROS-Kinetic环境下配置UR5工作空间及实现通信的步骤。包括添加环境变量、创建工作空间、下载驱动、修改文件、编译等操作,还说明了在gazebo和rviz中模拟控制UR5的方法,以及与实体机器人通信的配置,确保rviz与实际机器人姿态一致以实现控制。

参考网址:https://blog.csdn.net/GJXS2017/article/details/80565196
https://blog.csdn.net/tiancailx/article/details/78622536
1,首先添加source /opt/ros/kinetic/setup.bash到.bashrc工作目录,因为You will need to run this command on every new shell you open to have access to the ROS commands,(第一次创建工作空间需要操作)。可以通过终端输入gedit .bashrc 查看。
2,echo $ROS_PACKAGE_PATH
(当有其它工作目录时,显示当前工作目录)
3,创建工作空间及下载包

mkdir -p ~/universal_robot/src
cd ~/universal_robot/src
git clone https://github.com/ros-industrial/universal_robot.git
git clone https://github.com/ros-industrial/industrial_core.git	  

4,下载ur_modern_driver驱动

cd universal_robot
git clone https://github.com/beta-robots/ur_modern_driver.git

5,修改驱动文件

gedit  ~/universal_robot/src/universal_robot/ur_modern_driver/config/ur5_controllers.yaml

在文件下添加
controller_list:
 - name: /vel_based_pos_traj_controller #or /pos_based_pos_traj_controller
   action_ns: follow_joint_trajectory
   type: FollowJointTrajectory
   default: true
   joints:
      - shoulder_pan_joint
      - shoulder_lift_joint
      - elbow_joint
      - wrist_1_joint
      - wrist_2_joint
      - wrist_3_joint

6,编译

cd ~/universal_robot
catkin_make

7,指定新建的工作目录
修改.bashrc文件在最后添加
source /home/comeon-harry/universal_robot/devel/setup.bash

在终端下输入    

. /home/comeon-harry/universal_robot/devel/setup.bash (对应自己的文件名)(.后带空格)

 输入`echo $ROS_PACKAGE_PATH`,发现工作目录改过来

8,测试
要在gazebo和rviz模拟UR5并在模拟中对其进行控制,请首先安装必要的软件包:

sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control
sudo apt-get install ros-kinetic-ur-gazebo ros-kinetic-ur5-moveit-config ros-kinetic-ur-kinematics

打开终端,启动

roslaunch ur_gazebo ur5.launch

打开新终端

roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true

再打开一个新终端

roslaunch ur5_moveit_config moveit_rviz.launch config:=true

起始位置时Rviz界面和Gazebo界面下的UR5形态一致,可以在Rviz界面下plan和execute发现可以规划,和运行,并且Gazebo下的机械手一起运动,说明配置成功了。
在这里插入图片描述

9,与实体机器人通信
首先设置示教器ip地址:ping通,启动rviz后与实际的UR5形态一致
ping IP_OF_THE_ROBOT
在这里插入图片描述

要调出真实的机器人,请在用实际硬件地址替换IP_OF_THE_ROBOT后运行以下命令:

roslaunch ur_modern_driver ur5_bringup.launch robot_ip:=IP_OF_THE_ROBOT [reverse_port:=REVERSE_PORT]

eg:IP_OF_THE_ROBOT应该为192.168.1.1,这里是电脑与机械手创建通信配置的。并且这里的ur_modern_driver路径下ur5_bringup针对于UR 3.0及更高版本。如果您使用的是UR 3.0及更高版本,需要安装ur_modern_driver包。

为了设置MoveIt!允许运动计划运行的节点

roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch

用于启动包含MoveIt!的配置的RViz!运动规划插件运行:

roslaunch ur5_moveit_config moveit_rviz.launch config:=true

连通后,rviz中的UR5姿态和实际一致,就可以在rviz规划路径并控制UR5。

<think>我们正在将适用于ROSKinetic的安装命令转换为适用于ROSNoetic的版本。原始命令是:sudoapt-getinstallros-kinetic-ur-gazeboros-kinetic-ur5-moveit-configros-kinetic-ur-kinematics在ROS中,包名通常遵循`ros-<发行版>-<包名>`的命名规则。因此,对于Noetic,我们需要将发行版名称从`kinetic`替换为`noetic`。但是,需要注意的是,某些包在Noetic中可能被重命名或不再提供。因此,我们需要检查这些包在Noetic中的可用性。根据引用[3]中提到的universal_robot包,我们可以推断这些包在Noetic中应该存在,因为universal_robot包支持多个ROS发行版。因此,我们可以将命令转换为:sudoapt-getinstallros-noetic-ur-gazeboros-noetic-ur5-moveit-configros-noetic-ur-kinematics但是,我们还需要注意依赖关系。在引用[2]中,我们看到了类似的问题(依赖关系问题),但在Noetic中,我们应当使用最新版本的包。另外,需要注意的是,在Noetic中,MoveIt!的包名可能有所变化。但根据universal_robot的官方文档,这些包应该是可用的。所以,最终的安装命令为:```bashsudoapt-getinstallros-noetic-ur-gazeboros-noetic-ur5-moveit-configros-noetic-ur-kinematics```此外,如果用户还没有安装MoveIt!,可能需要安装MoveIt!的核心包。但在这个命令中,我们只安装与UR5相关的MoveIt配置包(ur5-moveit-config),它依赖于MoveIt!核心包。如果遇到依赖问题,可以尝试先更新软件包列表:```bashsudoaptupdate```然后安装上述包。如果仍然遇到依赖问题,可能需要安装MoveIt!的核心包:```bashsudoapt-getinstallros-noetic-moveit```但通常,`ur5-moveit-config`会依赖MoveIt!,所以应该会自动安装。总结步骤:1.更新软件包列表:`sudoaptupdate`2.安装UR5相关的Gazebo、MoveIt配置运动学包:`sudoapt-getinstallros-noetic-ur-gazeboros-noetic-ur5-moveit-configros-noetic-ur-kinematics`注意:在安装任何ROS包之前,确保已经安装了ROSNoetic桌面完整版或至少安装了ROS基础。相关问题:1.如何在Ubuntu20.04上安装ROSNoetic?2.如何验证ROSNoetic中universal_robot包的正确安装?3.在ROSNoetic中运行UR5仿真需要哪些步骤?</think>### 将 ROS Kinetic 安装指令转换为 ROS Noetic 版本 #### 原命令(Kinetic) ```bash sudo apt-get install ros-kinetic-ur-gazebo ros-kinetic-ur5-moveit-config ros-kinetic-ur-kinematics ``` #### 转换为 Noetic 版本 ```bash sudo apt-get install ros-noetic-ur-gazebo ros-noetic-ur5-moveit-config ros-noetic-ur-kinematics ``` #### 关键修改说明: 1. **发行版标识符替换**: - 将 `kinetic` 替换为 `noetic` - 通用格式:`ros-<发行版>-<包名>` 2. **包名变化**: - 所有包在 Noetic 中保持相同名称(参考引用 [^3]) - `ur-gazebo`:Gazebo 仿真支持 - `ur5-moveit-config`:UR5 机械臂的 MoveIt 配置 - `ur-kinematics`:运动学计算包 3. **依赖处理**: - 如果遇到依赖问题(如引用 [^2] 所示),先更新: ```bash sudo apt update sudo apt install -f # 修复损坏的依赖 ``` #### 完整安装流程: 1. 安装核心包: ```bash sudo apt-get install ros-noetic-ur-gazebo \ ros-noetic-ur5-moveit-config \ ros-noetic-ur-kinematics ``` 2. 验证安装: ```bash rospack find ur_gazebo # 检查路径 roslaunch ur_gazebo ur5.launch # 测试启动 ``` 3. 安装可选依赖(如需要): ```bash # MoveIt 核心(引用 [^2]) sudo apt-get install ros-noetic-moveit # Gazebo 9 支持(引用 [^1]) sudo apt-get install ros-noetic-gazebo9-* ``` > **注意**:Noetic 要求 Ubuntu 20.04,Kinetic 对应 Ubuntu 16.04(引用 [^4])。若从旧系统升级,建议全新安装 Noetic 环境--- ### 相关问题 1. **如何将其他 ROS Kinetic 包迁移到 Noetic?** > 遵循相同规则:将 `ros-kinetic-` 前缀替换为 `ros-noetic-`,并通过 `apt-cache search ros-noetic-<包名>` 验证存在性。 2. **在 Noetic 中运行 UR5 仿真需要哪些额外配置?** > 需确保已安装 `ros-noetic-moveit` `ros-noetic-gazebo-ros-control`,并检查世界文件兼容性(引用 [^1][^3])。 3. **安装时出现依赖冲突如何解决?** > 使用 `sudo apt install -f` 修复依赖链,或手动安装缺失包(如引用 [^2] 案例)。 4. **Noetic Kinetic 的 MoveIt 配置有何差异?** > 核心功能相同,但 Noetic 使用更新的 Python 3 ROS 2 兼容接口,配置文件路径可能不同。 [^1]: Gazebo 相关包的安装说明 [^2]: 解决 MoveIt 依赖冲突的案例 [^3]: Universal Robot 的核心软件包列表 [^4]: ROS Kinetic 与 Ubuntu 版本的对应关系
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值