ROS Kortex is the official ROS package to interact with Kortex and its related products. It is built upon the Kortex API, documentation for which can be found in the GitHub Kortex repository.
You can download the latest Gen3 firmware from here and you can download the release notes from here.
- Robot Operating System (ROS) (middleware for robotics)
You can find the instructions to install ROS Kinetic (for Ubuntu 16.04) here.
Google Protocol Buffers is used by Kinova to define the Kortex APIs and to automatically generate ROS messages, services and C++ classes from the Kortex API .proto
files. The installation of Google Protocol Buffers is required by developers implementing new APIs with the robot. However, since we already provide all the necessary generated files on GitHub, this is not required for most end users of the robot.
If you have a specific use case that requires you to install it, you can follow the instructions provided at the end of this readme file. We recommend that you contact Kinova if you have any specific questions about this.
These are the instructions to run in a terminal to create the workspace, clone the ros_kortex
repository, install the necessary ROS dependencies and build the package:
mkdir -p catkin_workspace/src
cd catkin_workspace/src
git clone https://github.com/Kinovarobotics/ros_kortex.git
cd ../
rosdep install --from-paths src --ignore-src
catkin_make
source devel/setup.bash
The following is a description of the packages included in this repository.
This package contains all the header files and the libraries of the C++ Kortex API. The files are automatically downloaded from the Web and extracted when you catkin_make
if the kortex_api/include
and kortex_api/lib
folders are empty.
Note: Upon a new release of the API, it is important to delete the content of these two folders to make sure the new API gets downloaded and you don't get build errors when you catkin_make
.
A more detailed description can be found in the package subdirectory.
This package implements the simulation controllers that control the arm in Gazebo. For more details, please consult the README from the package subdirectory.
Note The ros_control
controllers for the real arm are not yet implemented and will be in a future release of ros_kortex
.
This package contains the URDF (Unified Robot Description Format), STL and configuration files for the Kortex-compatible robots. For more details, please consult the README from the package subdirectory.
This package implements a ROS node that allows communication between a node and a Kinova Gen3 Ultra lightweight robot. For more details, please consult the README from the package subdirectory.
This package holds all the examples needed to understand the basics of ros_kortex
. Most of the examples are written in both C++ and Python. Only the MoveIt! example is available exclusively in Python for now.
A more detailed description can be found in the package subdirectory.
This package contains files to simulate the Kinova Gen3 Ultra lightweight robot in Gazebo. For more details, please consult the README from the package subdirectory.
This metapackage contains the auto-generated MoveIt! files to use the Kinova Gen3 arm with the MoveIt! motion planning framework. For more details, please consult the README from the package subdirectory.
This folder contains the third-party packages we use with the ROS Kortex packages. Currently, it consists of two packages used for the simulation of the Robotiq Gripper in Gazebo. We use gazebo-pkgs for grasping support in Gazebo and roboticsgroup_gazebo_plugins to mimic joint support in Gazebo.
You can clone the Protocol Buffers repository from GitHub with this command:
git clone https://github.com/protocolbuffers/protobuf --branch 3.5.1.1 (you must use this specific version)
You can install Protocol Buffers by following these instructions.