ROS package
Create working directory
mkdir -p ~/ MultiCobot-UR10-Gripper/src
cd ~/MultiCobot-UR10-Gripper/src
Warning: ROS Third-party packages.
No direct changes were made to the contents of ROS packages during the installation process. Any changes made to these packages were to accommodate ROS Kinetic during compilation.
- The licenses of each installed package have been respected. If there is a licensing issue due to an update, change, or other situation, please contact the authors to arrange for the package to be changed or removed from this repository.
Installation of third-party packages
Installation of third-party packages to be used in whole or in part.
Universal Robots
This package of Universal Robots serves as a base for the necessary changes that the project requires. The package provides modeling of branded robots, such as UR3, UR5, UR10, etc., as well as examples for use with other packages (MoveIt!
) and tools (Gazebo
). The modified files are detailed accordingly.
Clone the repository:
cd ~/MultiCobot-UR10-Gripper/src
git clone -b kinetic-devel https://github.com/ros-industrial/universal_robot.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
Robotiq_2finger_grippers
This Robotiq repository is used to add the gripper that the robot will use and the necessary drivers for its operation. This package is intended to communicate with the physical robot gripper, which is connected to the robot via USB. The functions of this package include communicating with the gripper via USB and providing a communication interface with ROS.
Clone the repository:
cd ~/MultiCobot-UR10-Gripper/src
git clone https://github.com/Danfoa/robotiq_2finger_grippers.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
Robotiq_85_gripper
This Robotiq repository is used to add the gripper to be used to the robot, as well as the drivers required for its operation. Similar to the previous package, but focusing on simulating Gazebo
grippers.
Clone the repository:
cd ~/MultiCobot-UR10-Gripper/src
git clone -b develop https://github.com/PickNikRobotics/robotiq_85_gripper.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
ros_control
This repository contains: “A set of packages that include controller interfaces, controller managers, transmissions and hardware_interfaces”.
Clone the repository:
cd ~/MultiCobot-UR10-Gripper/src
git clone -b kinetic-devel https://github.com/ros-controls/ros_control.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
ur_modern_driver
This repository is deprecated, but you must use it for compatibility with ROS Kinetic Kame. Contains drivers for Universal Robots robots (UR3/UR5/UR10) and is compatible with ros_control.
Clone the repository:
cd ~/MultiCobot-UR10-Gripper/src
git clone -b kinetic-devel https://github.com/ros-industrial/ur_modern_driver.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
A compilation error may occur with ROS Kinetic Kame. To fix this, you must modify the ur_hardware_interface.cpp file. Replace the contents of the file with the contents located here and recompile it.
gazebo-pkgs
This is a collection of plugins for Gazebo
. We are mostly interested in the plugin that allows grabbing objects.
Package dependencies:
- gazebo_ros
- eigen_conversions
- object_recognition_msgs
- roslint
- general-message-pkgs
Installation of package dependencies:
ROS uses Gazebo 7.x
sudo apt-get install -y libgazebo7-dev
Clone the repository of gazebo_ros_pkgs
cd ~/MultiCobot-UR10-Gripper/src
git clone -b kinetic-devel https://github.com/ros-simulation/gazebo_ros_pkgs.git
Clone the repository from eigen_conversions
cd ~/MultiCobot-UR10-Gripper/src
git clone -b indigo-devel https://github.com/ros/geometry.git
Clone repository of object_recognition_msgs
cd ~/MultiCobot-UR10-Gripper/src
git clone -b master https://github.com/wg-perception/object_recognition_msgs.git
Clone the roslint repository
cd ~/MultiCobot-UR10-Gripper/src
git clone -b master https://github.com/ros/roslint.git
Clone the repository of general-message-pkgs
cd ~/MultiCobot-UR10-Gripper/src
git clone -b master https://github.com/JenniferBuehler/general-message-pkgs.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep check --from-paths . --ignore-src --rosdistro kinetic
rosdep install --from-paths . --ignore-src --rosdistro kinetic -y
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
Clone repository gazebo-pkgs:
cd ~/MultiCobot-UR10-Gripper/src
git clone https://github.com/JenniferBuehler/gazebo-pkgs.git
Install all missing dependencies for ROS Kinetic Kame:
cd ~/MultiCobot-UR10-Gripper
rosdep update
rosdep install --rosdistro kinetic --ignore-src --from-paths src
Compile:
cd ~/MultiCobot-UR10-Gripper
catkin_make
During compilation you may get an error message asking you to compile to the C++11 standard:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
To fix this, you need to change the make
of catkin when building the project:
- Simply modify the
~/MultiCobot-UR10-Gripper/src/CMakeLists.txt
file and add add_compile_options(-std=c++11) to the beginning of the file as shown below.
# toplevel CMakeLists.txt for a catkin workspace
# catkin/cmake/toplevel.cmake
cmake_minimum_required(VERSION 3.0.2)
project(Project)
set(CATKIN_TOPLEVEL TRUE)
add_compile_options(-std=c++11)
[...]