Skip to content

CollaborativeRoboticsLab/capabilities2

Repository files navigation

Capabilities2

ROS ROS2 Jazzy C++ Open in Visual Studio Code License: MIT

A reimplementation of the capabilities package. This package is implemented using C++ and extends the capabilities package features.

System structure

System Structure

Entities

The main usage of capabilities2 will typically involve creating or customizing capabilities through providers, interfaces and semantic interfaces. These are stored as YAML, and for more information about definitions and examples, click the links:

Entity Description
Interfaces The main capability specification file
Providers The capability provider specification file provides a mechanism to operate the capability
Semantic Interfaces The semantic interface specification file provides a mechanism to redefine a capability with semantic information

Runners can be created using the runner API parent classes here. The capabilities service can be started using the capabilities2_server package.

Setup Information

Quick Startup information

Starting the Capabilities2 server

source install/setup.bash
ros2 launch capabilities2_server capabilities2_server.launch.py

Additional Information

Docs

For detailed information about the code, build the code documentation using Doxygen. see capabilities2_documentation.

# in the devcontainer
cd capabilities2_documentation
doxygen Doxyfile

Open capabilities2_documentation/html/index.html in a browser for Documentation.

Acknowledgements

This work is based on the capabilities package developed by the Open Source Robotics Foundation. github.com/osrf/capabilities.

Citation

If you use this work in an academic context, please cite the following publication(s):

Capabilities2 for ROS2: Advanced Skill-Based Control for Human-Robot Interaction

@inproceedings{10.5555/3721488.3721623,
    author = {Pritchard, Michael and Ratnayake, Kalana and Gamage, Buddhi and Jayasuriya, Maleen and Herath, Damith},
    title = {Capabilities2 for ROS2: Advanced Skill-Based Control for Human-Robot Interaction},
    year = {2025},
    publisher = {IEEE Press},
    booktitle = {Proceedings of the 2025 ACM/IEEE International Conference on Human-Robot Interaction},
    pages = {1067–1071},
    location = {Melbourne, Australia},
    series = {HRI '25}
}

About

A reimplementation of the capabilities interface for ROS2

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors