Composer is a core component of the Eclipse Muto project, designed to automate large-scale logistics operations using autonomous vehicles and advanced robotics. The Composer acts as an orchestrator for ROS2 nodes, providing provisioning, self-healing, and dynamic management of ROS2 workspaces and applications.
You can visit Muto Docs to get a broader point of view about what Eclipse Muto is, what it aims to do and the future plans of it.
- Orchestration: Manages the lifecycle of ROS2 nodes and workspaces.
- Modular Architecture: Extensible design for adding custom plugins and functionalities.
- Dynamic Composition: Automatically provisions ROS2 nodes based on the stack data retrieved from the twin server.
- Provisioning: Manages the dependencies of the ROS2 workspaces with the help of
rosdep
and lets the user add custom installation
- ROS2 Humble (Tested on ROS2 Foxy and newer)
- Docker (for containerized operations)
- Python 3.7+
In ideal conditions, composer
should not work alone. It is a part of a greater system which is Eclipse Muto
. You could visit below links (which are just ROS2 packages essentially like composer) to get more information about Eclipse Muto:
After setting up the above and composer,
To set up composer
alone, refer to the installation section
mkdir $HOME/eclipse-muto/src -p
export MUTO_WS=$HOME/eclipse-muto/src
This document will assume that you have other parts of Eclipse Muto cloned under this workspace. (refer to getting started section)
cd $MUTO_WS/src
git clone https://github.com/eclipse-muto/composer.git
cd $MUTO_WS
rosdep install --from-path src --ignore-src -r -y
cd $MUTO_WS
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
You could refer to the launch documentation for this