Skip to content

Sentience-Robotics/lucy_control_panel_package

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Lucy Control Panel Package

REST API backend for managing robot joints via URDF files in ROS 2


📌 Overview

The Lucy Control Panel Package is a ROS 2 package that provides a REST API backend for the Lucy Control Panel project. This package enables remote management and control of robot joints through a web-based interface by exposing robot capabilities via RESTful endpoints.

The package integrates with ROS 2's robot description framework, parsing URDF (Unified Robot Description Format) files to dynamically generate API endpoints for each controllable joint. This allows for real-time monitoring and control of robot actuators through HTTP requests, making it easy to integrate with web applications, mobile apps, or other external systems.


🚀 Features

  • REST API Server: Embedded HTTP server providing RESTful endpoints for robot control
  • URDF Integration: Automatic parsing of robot URDF files to discover available joints and capabilities
  • Joint Control: Real-time position, velocity, and effort control for robot joints
  • Status Monitoring: Live feedback on joint states, positions, and health status
  • ROS 2 Native: Full integration with ROS 2 ecosystem including topics, services, and parameters
  • Web Interface Compatible: Designed to work seamlessly with the Lucy Control Panel frontend
  • Configurable: Flexible configuration options for different robot platforms and setups

🛠️ Installation & Usage

Prerequisites

  • ROS 2 (Humble or later)
  • Python 3.8+
  • Valid URDF file for your robot

Installation

# Clone the repository into your ROS 2 workspace
cd ~/ros2_ws/src
git clone https://github.com/Sentience-Robotics/lucy_control_panel_package.git

# Build the package
cd ~/ros2_ws
colcon build --packages-select lucy_control_panel_package

# Source the workspace
source install/setup.bash

Quick Start

# Launch the REST API server
ros2 launch lucy_control_panel_package lucy_api.launch.py

# The API will be available at http://localhost:8080
# Use with the Lucy Control Panel frontend for full functionality

📖 Documentation

For more details on API endpoints, configuration options, and integration guides, visit the Sentience Robotics documentation.


🔗 Related Projects


📜 Code of Conduct

We value the participation of each member of our community and are committed to ensuring that every interaction is respectful and productive. To foster a positive environment, we ask you to read and adhere to our Code of Conduct.

By participating in this project, you agree to uphold this code in all your interactions, both online and offline. Let's work together to maintain a welcoming and inclusive community for everyone.

If you encounter any issues or have questions regarding the Code of Conduct, please contact us at [email protected].

Thank you for being a part of our community!


🤝 Contributing

To find out more on how you can contribute to the project, please check our CONTRIBUTING.md


📜 License

This project is licensed under the GNU GPL V3 License. See the LICENSE file for details.


🙌 Acknowledgments

  • 🎉 InMoov Project – Original design by Gael Langevin
  • 🎉 ROS 2 Community – For the excellent robotics framework
  • 🎉 All contributors to the InMoov and ROS communities

📬 Contact


ROS 2 Humble Contributor Covenant

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published