Skip to content
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

Add ROS 2 Support to Behavior Metrics for PhD Thesis Research #699

Open
canveo opened this issue Jan 8, 2025 · 0 comments
Open

Add ROS 2 Support to Behavior Metrics for PhD Thesis Research #699

canveo opened this issue Jan 8, 2025 · 0 comments

Comments

@canveo
Copy link
Collaborator

canveo commented Jan 8, 2025

Add ROS 2 Support to Behavior Metrics for PhD Thesis Research

Issue Description

The Behavior Metrics tool currently supports ROS 1 but lacks functionality for ROS 2. As a PhD student under the supervision of Dr. Jose Maria Cañas, my research involves using ROS 2 Humble for simulations. Adding ROS 2 support to Behavior Metrics is crucial for evaluating performance metrics as part of my thesis on autonomous systems.

Motivation

  1. Enhanced Capabilities: ROS 2 offers significant improvements over ROS 1, such as enhanced real-time capabilities, better middleware (DDS), and widespread adoption in the robotics community.
  2. Relevance: Adding ROS 2 support will enable Behavior Metrics to remain relevant in modern robotics workflows and meet the needs of researchers working with ROS 2-based systems, including my own work.

Proposed Solution

  1. Refactor ROS 1-specific components to enable integration with ROS 2 using rclpy.
  2. Develop and test a modular implementation that ensures compatibility with both ROS 1 and ROS 2.
  3. Provide documentation and usage examples for ROS 2 environments.

Expected Impact

  • Behavior: Behavior Metrics will support collecting performance metrics from ROS 2-based simulations.
  • Environment: ROS 2 Humble.
  • Benefits: Researchers working with ROS 2 will be able to utilize Behavior Metrics seamlessly, expanding its usability and relevance.

Steps to Achieve

  1. Analyze the current codebase to identify ROS 1-specific components.
  2. Implement ROS 2 communication using rclpy.
  3. Test the implementation in a ROS 2 environment to ensure proper functionality.
  4. Update documentation and examples for ROS 2 usage.

Request for Feedback

  • Feasibility of adding ROS 2 support while maintaining ROS 1 compatibility.
  • Best practices for transitioning Behavior Metrics to dual ROS 1/ROS 2 support.
  • Suggestions for optimizing the implementation for real-time performance in ROS 2.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

1 participant