ROS(八)ROS驱动UR机械臂

1 Ubuntu,最高16.04 安装ros- kinetic -universal-robot

2 下载ros-industrial/universal_robot包并构建catkin工程

sudo apt-get install ros-kinetic-universal-robot

cd catkin_ws/src

git clone -b kinetic https://github.com/ros-industrial/universal_robot.git

cd ..

rosdep install --from-paths src --ignore-src --rosdistro kinetic

catkin_make

3 刷新catkin工作空间

source ~/catkin_ws/devel/setup.bash

rospack profile

4 在仿真环境中使用UR3

roslaunch ur_gazebo ur3.launch

roslaunch ur3_moveit_config ur3_moveit_planning_execution.launch sim:=true

roslaunch ur3_moveit_config moveit_rviz.launch config:=true

5

universal_robot元数据包通过以太网连接与硬件通信。建立连接后,ROS-Industrial将上传一个用URScript编写的程序,即Universal Robots自己的类似Python的脚本语言。该程序负责监听通过ROS-Industrial的simple_messages包发送的消息,并将这些消息解释为硬件命令。

6 网络配置

下一步是确保您的硬件,控制计算机和机器人配置正确,以便彼此通信。请注意,默认情况下,禁用Universal Robot的网络功能。要启用网络连接,请使用UR的示教器导航到“设置机器人” - >“设置网络菜单”(如下面的附件所示)。

如果您是经验丰富的用户,请在记下机器人的IP地址后跳过本节的其余部分。

ROS(八)ROS驱动UR机械臂_第1张图片

关静态和动态(DHCP)IP分配的完整讨论超出了本教程的范围。如果您不确定自己的设置并且是在拥有IT部门的组织,请咨询他们。如果您使用路由器/交换机在自己的本地网络上进行实验,则可能是您正在使用DHCP。

如果您希望UR具有固定的Internet地址,请选择静态地址选项并手动输入所需的地址信息。如果您位于网络交换机或路由器后面,请参阅相关手册以查找兼容设置。输入后,您的信息会在离开页面前按“ 应用”按钮。

如果您希望快速使用网络路由器,并且不介意以后更改UR的IP地址的可能性,请选择DHCP,然后选择Apply。

在任何一种情况下,如果机器人似乎没有正确获取网络配置,请尝试重新启动控制器并再次按“ 更新”。一个有价值的调试工具是您的操作系统的ping命令。在计算机上打开终端(对于Windows,运行cmd.exe),然后输入

ping IP_OF_THE_ROBOT

如果没有发生任何事情或引发错误,则无法从计算机访问机器人。确保计算机和机器人上的网络设置正确无误,然后按UR控制器上的“ 更新 ”。

7描述机械臂到ROS

启动文件将尝试启动ur_description包。如果您还没有这样做,请立即安装。将xacro文件发送到参数服务器,以便驱动程序在运行时读取arm的描述。

universal_robotur10_moveit_config | ur3_moveit_config | ur5_moveit_config | ur_bringup | ur_description | ur_driver | ur_gazebo | ur_kinematics | ur_msgs

roslaunch ur_description ur5_upload.launch

roslaunch ur_description test.launch

将会加载ur的模型

8 更新驱动包文件

ur_driver但这个驱动只支持比较早的UR5机械臂控制器的版本,换句话说,ur_modern_driver更适合(如果你的UR5本体的控制箱的软件版本是3.0以上)

具体的步骤:

1)删除catkin_ws/src/universal_robot这个目录下的ur_driver文件夹,

2)然后下载ur_modern_driver(点击打开链接)

3)再解压,粘贴到原来的ur_driver这个文件夹的位置(把文件名更改为ur_modern_driver)。

4)接着cd ~/catkin_ws

5)最后catkin_make

9 实际链接

.roslaunch命令运行ur5_bringup.launch 启动连接

roslaunch ur_modern_driver ur5_bringup.launch robot_ip:=192.168.1.10 //这里IP是机械臂设置的静态IP

 

.运行其自带测试程序test_move.py可以移动机械臂

$ rosrun ur_modern_driver test_move.py

 

若要用Moveit在rviz中显示机械臂并且连接实体机械臂,则先运行

$ roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch

注意:这里如果想操作gazebo仿真的机械臂则先打开gazebo仿真$ roslaunch ur_gazebo ur5.launch

然后运行上面那条语句但需在后面加 sim:=true,即$ roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true

 

上面的执行文件成功后,在打开rviz就行了,运行下面的命令,就能用moveit操作机械臂

$ roslaunch ur5_moveit_config moveit_rviz.launch config:=true

参考链接

http://wiki.ros.org/universal_robot/Tutorials/Getting%20Started%20with%20a%20Universal%20Robot%20and%20ROS-Industrial

https://blog.csdn.net/fcc_bd_stars/article/details/78150729

https://blog.csdn.net/qq_37541593/article/details/81542153

 

你可能感兴趣的:(ros,ROS学习笔记)