kuka_drivers repository

Repository Summary

Checkout URI https://github.com/kroshu/kuka_drivers.git
VCS Type git
VCS Version master
Last Updated 2024-04-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

README

ROS2 KUKA Drivers

This repository contains ROS2 drivers for all KUKA operating systems.

Github CI SonarCloud
Build Status Quality Gate Status

Requirements

The drivers require a system with ROS installed. It is recommended to use Ubuntu 22.04 with ROS humble. Iron Irwini has breaking changes in the moveit API, thus it is not yet supported. It is also recommended to use a client machine with a real-time kernel, as all three drivers require cyclic, real-time communication. Due to the real-time requirement, Windows systems are not recommended and covered in the documentation.

Installation

The driver is not available as a binary package, building from source is necessary.

Create ROS2 workspace (if not already created).

mkdir -p ~/ros2_ws/src

Clone KUKA ROS2 repositories.

cd ~/ros2_ws/src
git clone https://github.com/kroshu/kuka_drivers.git
vcs import < kuka_drivers/upstream.repos

Install and initialize rosdep (if not already done)

sudo apt install python3-rosdep
sudo rosdep init

Install dependencies using rosdep.

cd ~/ros2_ws
rosdep update
sudo apt upgrade
rosdep install --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y

Build all packages in workspace.

cd ~/ros2_ws
colcon build

Source workspace.

# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source ~/ros2_ws/install/setup.bash

Getting Started

Documentation of this project can be found on the repository's Wiki page.

If you find something confusing, not working, or would like to contribute, please read our contributing guide before opening an issue or creating a pull request.

CONTRIBUTING

Issue tracking

If you have questions, suggestions or found a bug, feel free to open an issue. When filing an issue, please check open issues to make sure somebody else hasn't already reported it. Please try to include as much information as you can, including: - A reproducible test case or series of steps - The version/commit hash of our code being used - Any modifications you've made relevant to the bug - Anything unusual about your environment or deployment

Please do not add labels to the issue, that should be handled by the maintainers.

Contributing

Contributions via pull requests are much appreciated. Before sending us a pull request, please ensure that:

  • Your PR addresses only one issue
  • Your PR has a descriptive title and a short summary
  • All pipelines are green, including
    • Industrial CI
    • Sonarcloud
    • Spell checks
    • Linters

To send us a pull request, please: - Discuss the proposed changes with the maintainers, preferably in an issue - Fork the repository - Modify the source focusing on the specific change you are contributing - Ensure that local tests pass (colcon test and pre-commit run) - Pay attention to any automated CI failures reported in the pull request, and stay involved in the conversation

Licensing

Any contribution that you make to this repository will be under the Apache 2 License, as dictated by that license:

5. Submission of Contributions. Unless You explicitly state otherwise,
   any Contribution intentionally submitted for inclusion in the Work
   by You to the Licensor shall be under the terms and conditions of
   this License, without any additional terms or conditions.
   Notwithstanding the above, nothing herein shall supersede or modify
   the terms of any separate license agreement you may have executed
   with Licensor regarding such Contributions.