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地址后跳过本节的其余部分。
有关静态和动态(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_robot: ur10_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