Skip to content

Add kilted info and update workflows (backport #809) #810

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
May 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions .github/workflows/humble-semi-binary-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,8 @@ on:
jobs:
semi_binary:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master
strategy:
fail-fast: false
matrix:
ROS_DISTRO: [humble]
ROS_REPO: [testing]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
upstream_workspace: ros2_control_demos.${{ matrix.ROS_DISTRO }}.repos
ros_distro: humble
ros_repo: testing
upstream_workspace: ros2_control_demos.humble.repos
ref_for_scheduled_build: humble
2 changes: 1 addition & 1 deletion .github/workflows/rolling-binary-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
strategy:
fail-fast: false
matrix:
ROS_DISTRO: [rolling, jazzy]
ROS_DISTRO: [rolling, kilted, jazzy]
ROS_REPO: [main, testing]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rolling-docker-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
strategy:
fail-fast: false
matrix:
ROS_DISTRO: [rolling, jazzy]
ROS_DISTRO: [rolling, kilted, jazzy]
steps:
- uses: actions/checkout@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rolling-pre-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ jobs:
strategy:
fail-fast: false
matrix:
ROS_DISTRO: [rolling, jazzy]
ROS_DISTRO: [rolling, kilted, jazzy]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
5 changes: 2 additions & 3 deletions .github/workflows/rolling-semi-binary-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,9 @@ jobs:
strategy:
fail-fast: false
matrix:
ROS_DISTRO: [rolling, jazzy]
ROS_REPO: [testing]
ROS_DISTRO: [rolling, kilted, jazzy]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
ros_repo: testing
upstream_workspace: ros2_control_demos.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: master
38 changes: 19 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# ros2_control Demos
# ros2_control_demos

[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)

Expand All @@ -8,6 +8,7 @@ It consists of simple implementations that demonstrate different concepts. Choos
If you want to have rather step by step manual how to do things with `ros2_control` checkout the [ros-control/roscon2022_workshop](https://github.com/ros-controls/roscon2022_workshop) repository.

## Contributing

As an open-source project, we welcome each contributor, regardless of their background and experience. Pick a [PR](https://github.com/ros-controls/ros2_control_demos/pulls) and review it, or [create your own](https://github.com/ros-controls/ros2_control_demos/contribute)!
If you are new to the project, please read the [contributing guide](https://control.ros.org/rolling/doc/contributing/contributing.html) for more information on how to get started. We are happy to help you with your first contribution.

Expand All @@ -23,18 +24,15 @@ The following examples are part of this demo repository:

*RRBot* - or ''Revolute-Revolute Manipulator Robot'' - a simple position controlled robot with one hardware interface. This example also demonstrates the switching between different controllers.


* Example 2: [*DiffBot*](example_2)

*DiffBot*, or ''Differential Mobile Robot'', is a simple mobile base with differential drive.
The robot is basically a box moving according to differential drive kinematics.


* Example 3: ["RRBot with multiple interfaces"](example_3)

*RRBot* with multiple interfaces.


* Example 4: ["Industrial robot with integrated sensor"](example_4)

*RRBot* with an integrated sensor.
Expand Down Expand Up @@ -87,21 +85,21 @@ The repository is structured into `example_XY` folders that fully contained pack

The packages have following structure of subfolders:

- `bringup` - stores launch files and runtime configurations for demo robots.
- `description` - stores URDF (and XACRO) description files, rviz configurations and meshes for the example robots.
- `hardware` - stores implementations of example hardware components (interfaces).
- `controllers` (optional) - stores implementation of example controllers.
* `bringup` - stores launch files and runtime configurations for demo robots.
* `description` - stores URDF (and XACRO) description files, rviz configurations and meshes for the example robots.
* `hardware` - stores implementations of example hardware components (interfaces).
* `controllers` (optional) - stores implementation of example controllers.

The important files to check in each example are:

- `bringup/launch/<example_name>.launch.py` - launch file for the example
- `bringup/config/<example_name>_controllers.yaml` - parameters with controllers' setup for the example.
- `description/<example_name>.ros2_control.xacro` - XACRO file with `ros2_control`-URDF-tag with hardware setup and parameters.
- `description/<example_name>.urdf.xacro` - the main description for for the example used to generate URDF on the fly that is published on the `/robot_description` topic.
- `hardware/<example_name>.hpp` - header file of the example hardware component implementation.
- `hardware/<example_name>.cpp` - source file with the example hardware component implementation.
- `controllers/<example_name>.hpp` - header file of the example controller implementation.
- `controllers/<example_name>.cpp` - source file with the example controller implementation.
* `bringup/launch/<example_name>.launch.py` - launch file for the example
* `bringup/config/<example_name>_controllers.yaml` - parameters with controllers' setup for the example.
* `description/<example_name>.ros2_control.xacro` - XACRO file with `ros2_control`-URDF-tag with hardware setup and parameters.
* `description/<example_name>.urdf.xacro` - the main description for for the example used to generate URDF on the fly that is published on the `/robot_description` topic.
* `hardware/<example_name>.hpp` - header file of the example hardware component implementation.
* `hardware/<example_name>.cpp` - source file with the example hardware component implementation.
* `controllers/<example_name>.hpp` - header file of the example controller implementation.
* `controllers/<example_name>.cpp` - source file with the example controller implementation.

**NOTE** - The structure of packages, folders and files given in this repository is not recommended to be used for your robot. Usually you should have all of the above folders defined as separate packages with naming convention `<robot_name_or_type>/[bringup|description|hardware|controllers]`.
More standard structure can be found in [ros_control_boilerplate](https://github.com/PickNikRobotics/ros_control_boilerplate) repository from Dave Coleman or documentation on [ros_team_workspace](https://rtw.stoglrobotics.de/master/guidelines/robot_package_structure.html) from Stogl Robotics.
Expand All @@ -113,9 +111,11 @@ Those two world-known imaginary robots are trivial simulations to demonstrate an

ROS 2 Distro | Branch | Build status | Documentation
:----------: | :----: | :----------: | :-----------:
**Rolling** | [`master`](https://github.com/ros-controls/ros2_control_demos/tree/master) | [![Rolling Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml?branch=master) <br> [![Rolling Semi-Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml?branch=master) <br> | [Documentation](https://control.ros.org/master/index.html) <br> [API Reference](https://control.ros.org/master/doc/api/index.html)
**Jazzy** | [`master`](https://github.com/ros-controls/ros2_control_demos/tree/master) | [![Rolling Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml?branch=master) <br> [![Rolling Semi-Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml?branch=master) <br> | [Documentation](https://control.ros.org/master/index.html) <br> [API Reference](https://control.ros.org/jazzy/doc/api/index.html)
**Humble** | [`humble`](https://github.com/ros-controls/ros2_control_demos/tree/humble) | [![Humble Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-binary-build.yml/badge.svg?branch=humble)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-binary-build.yml?branch=humble) <br> [![Humble Semi-Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-semi-binary-build.yml/badge.svg?branch=humble)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-semi-binary-build.yml?branch=humble) <br> | [Documentation](https://control.ros.org/humble/index.html) <br>[API Reference](https://control.ros.org/humble/doc/api/index.html)
**Rolling** | [`master`](https://github.com/ros-controls/ros2_control_demos/tree/master) | [![Rolling Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-binary-build.yml?branch=master) <br> [![Rolling Semi-Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/rolling-semi-binary-build.yml?branch=master) | [Documentation](https://control.ros.org/rolling/doc/ros2_control_demos/doc/index.html)
**Kilted** | [`master`](https://github.com/ros-controls/ros2_control_demos/tree/master) | see above | [Documentation](https://control.ros.org/kilted/doc/ros2_control_demos/doc/index.html)
**Jazzy** | [`master`](https://github.com/ros-controls/ros2_control_demos/tree/master) | see above | [Documentation](https://control.ros.org/jazzy/doc/ros2_control_demos/doc/index.html)
**Humble** | [`humble`](https://github.com/ros-controls/ros2_control_demos/tree/humble) | [![Humble Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-binary-build.yml?branch=master) <br> [![Humble Semi-Binary Build](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-semi-binary-build.yml/badge.svg?branch=master)](https://github.com/ros-controls/ros2_control_demos/actions/workflows/humble-semi-binary-build.yml?branch=master) | [Documentation](https://control.ros.org/humble/doc/ros2_control_demos/doc/index.html)

## Acknowledgements

The project has received major contributions from companies and institutions [listed on control.ros.org](https://control.ros.org/rolling/doc/acknowledgements/acknowledgements.html)
1 change: 1 addition & 0 deletions ros2_control_demos-not-released.kilted.repos
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
repositories:
4 changes: 4 additions & 0 deletions ros2_control_demos.humble.repos
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,7 @@ repositories:
type: git
url: https://github.com/ros-controls/control_toolbox.git
version: humble
kinematics_interface:
type: git
url: https://github.com/ros-controls/kinematics_interface.git
version: humble
12 changes: 10 additions & 2 deletions ros2_control_demos.jazzy.repos
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ repositories:
ros2_control:
type: git
url: https://github.com/ros-controls/ros2_control.git
version: master
version: jazzy
ros2_controllers:
type: git
url: https://github.com/ros-controls/ros2_controllers.git
version: master
version: jazzy
gz_ros2_control:
type: git
url: https://github.com/ros-controls/gz_ros2_control.git
Expand All @@ -23,3 +23,11 @@ repositories:
type: git
url: https://github.com/ros-controls/control_toolbox.git
version: jazzy
ros2_control_cmake:
type: git
url: https://github.com/ros-controls/ros2_control_cmake.git
version: master
kinematics_interface:
type: git
url: https://github.com/ros-controls/kinematics_interface.git
version: jazzy
33 changes: 33 additions & 0 deletions ros2_control_demos.kilted.repos
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
repositories:
control_msgs:
type: git
url: https://github.com/ros-controls/control_msgs.git
version: master
realtime_tools:
type: git
url: https://github.com/ros-controls/realtime_tools.git
version: master
ros2_control:
type: git
url: https://github.com/ros-controls/ros2_control.git
version: master
ros2_controllers:
type: git
url: https://github.com/ros-controls/ros2_controllers.git
version: master
gz_ros2_control:
type: git
url: https://github.com/ros-controls/gz_ros2_control.git
version: rolling
control_toolbox:
type: git
url: https://github.com/ros-controls/control_toolbox.git
version: ros2-master
ros2_control_cmake:
type: git
url: https://github.com/ros-controls/ros2_control_cmake.git
version: master
kinematics_interface:
type: git
url: https://github.com/ros-controls/kinematics_interface.git
version: master
8 changes: 8 additions & 0 deletions ros2_control_demos.rolling.repos
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,11 @@ repositories:
type: git
url: https://github.com/ros-controls/control_toolbox.git
version: ros2-master
ros2_control_cmake:
type: git
url: https://github.com/ros-controls/ros2_control_cmake.git
version: master
kinematics_interface:
type: git
url: https://github.com/ros-controls/kinematics_interface.git
version: master
Loading