由于本人能力有限,难免存在模糊或错误之处,希望见谅和指正。如果能够对你有点帮助,我会感到荣幸。
安装
有两种方法用来安装UR5功能包。第一种是直接使用二进制包来安装,第二种是在catkin工作空间编译源代码安装,具体安装细节如下。
二进制包安装
在支持的linux版本(Ubuntu 16.04(Xenial)以上,i386 和 amd64)和ROS版本上,
sudo apt-get install ros-$ROS_DISTRO-universal-robot
用已经安装的ROS版本,如hydro、indigo、kinetic或melodic来代替$ROS_DISTRO
编译源代码安装
有很多种可用的发布版对于ROS Hydro、Indigo和Kinetic。但是为了使用最近特性和进展,你可能会编译源代码来产生功能包。
注意:请更加倾向使用二进制包(看前面部分)对于编译源代码形式。源代码安装不会通过新的功能的发布版自动更新,需要更多的设置工作。
假设你已经在$HOME/catkin_ws创建了Catkin工作空间,并且源空间在 $HOME/catkin_ws/src。如果在要编译的机器上这些工作路径是不同的,请更新合适的路径。
在其他的例子中,来自源代码的功能包必须在catkin 工作空间编译。
cd $HOME/catkin_ws/src
#获得源代码(用你使用的ROS版本代替 ‘ $ROS_DISTRO’,如 melodic)
git clone -b $ROS_DISTRO-devel https://github.com/ros-industrial/universal_robot.git
cd $HOME/catkin_ws
#核对依懒项(用你使用的ROS版本代替 ‘ $ROS_DISTRO’,如 melodic)
rosdep update
Rosdep install --rosdistro $ROS_DISTRO --ignore-src --from-paths src
#编译
catkin_make
#激活这个工作空间
source $HOME/catkin_ws/devel/setup.bash
用法
连接真实的硬件 有很多可用的launch文件来唤醒真实的机器人,UR5或UR10。
如下是UR5指令,对于UR10,相应的简单替换前缀即可。
不要忘了激活正确的配置文件,请打开一个新的终端对于以下输入的每个命令。
为了唤醒新的机械臂,运行:
roslauch ur_bringup ur5_bringup.launch robot_ip:=IP_OF_THE_ROBOT [reverse_port:=REVERSE_PORT]
警告:
记住,请把手一直放在大的红色按钮上(紧急停止按钮)防止意外发生。
在真实的机械臂上使用moveit!
此外,你能使用moveit!来控制机械臂。
对于这两种机械臂有存在的moveit!配置包。
为了允许运动规划算法运行,需要设置moveit!节点。
roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch
为了运行moveit!运动规划插件,需要配置Rviz软件。
roslaunch ur5_moveit_config moveit_rviz.launch config:=true
注意:
正如moveit! 似乎很难发现UR所有关节限制[-2pi,2pi]的规划,有一个把关节限制到[-pi,pi]的关节限制版本。为了使用这个关节限制版本,简单使用launch文件语句’limited’,即
roslaunch ur_bringup ur5_bringup.launch limited:=true robot_ip:=IP_OF_THE_ROBOT [reverse_port:=REVERSE_PORT]
roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch limited:=true
roslaunch ur5_moveit_config move_rviz.launch config:=true
在gazebo模拟器上使用
有可用的launch文件来唤醒仿真机械臂,UR5或UR10
如下是UR5指令,对于UR10,相应的简单替换前缀即可。
不要忘了激活正确的配置文件,请打开一个新的终端对于以下输入的每个命令。
为了唤醒新的仿真机械臂,运行:
roslaunch ur_gazebo ur5.launch
为了运行moveit!运动规划插件,需要配置Rviz软件。
roslaunch ur5_moveit_configmoveit_rvit.launch config:=true
在虚拟机械臂上使用moveit!
再一次,你可以用moveit来控制虚拟机械臂
为了允许运动规划算法运行,需要设置moveit!节点。
roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true
注意:
正如moveit! 似乎很难发现UR所有关节限制[-2pi,2pi]的规划,有一个把关节限制到[-pi,pi]的关节限制版本。为了使用这个关节限制版本,简单使用launch文件语句’limited’,即
roslaunch ur_gazebo ur5.lanuch limited:=true
roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true limited:=true
roslaunch ur5_moveit_config moveit_rviz.launch config:=true