Dhawal2025 / awesome-ros2

The Robot Operating System Version 2.0 is awesome!

Home Page:https://fkromer.github.io/awesome-ros2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Awesome Robot Operating System 2 (ROS 2) Awesome

License: CC BY-NC-SA 4.0 Build Status

A curated list of awesome Robot Operating System Version 2.0 (ROS 2) resources and libraries.

Contents

Packages

Demostrations

  • adlink_ddsbot - The ROS 2.0/1.0 based robots swarm architecture (opensplice DDS). adlink_ddsbot
  • adlink_neuronbot - ROS2/DDS robot pkg for human following and swarm. adlink_neuronbot

Examples

Benchmarking

  • ros2_benchmarking - Framework for ROS2 benchmarking. ROS2 communication characteristics can be evaluated on several axes, quickly and in an automated way. ros2_benchmarking

Containerization

Ecosystem

Application layer

  • geometry2 - A set of ROS packages for keeping track of coordinate transforms. geometry2
  • cartographer real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations cartographer
  • vision_opencv - Packages for interfacing ROS2 with OpenCV vision_opencv
  • teleop_twist_keyboard - Generic Keyboard Teleop for ROS2 teleop_twist_keyboard
  • teleop_twist_joy - Simple joystick teleop for twist robots teleop_twist_joy
  • navigation - ROS2 Navigation stack navigation
  • diagnostics - Forked version of the original ROS1 Diagnostics for ROS 2 (currently diagnostics_updater only). diagnostics
  • robot_state_publisher - Forked version of the original ROS Robot State Publisher with all modifications to compile within a ROS2 Ecosystem. robot_state_publisher
  • common_interfaces - A set of packages which contain common interface files (.msg and .srv). common_interfaces
  • ros2_object_analytics - Object Analytics (OA) is ROS2 wrapper for realtime object detection, localization and tracking. ros2_object_analytics
  • ros2_intel_movidius_ncs - ROS2 wrapper for Movidius™ Neural Compute Stick (NCS) Neuronal Compute API. ros2_intel_movidius_ncs
  • apriltag2_node - ROS2 node for AprilTag detection. apriltag2_node
  • ros2-web-bridge - Bridging your browser to the ROS 2.0 ros2-web-bridge
  • ros2_message_filters - ros2_message_filters blends various messages based on the conditions that filter needs to met and derives from ROS2 porting of ROS message_filters. ros2_message_filters

"System" bindings

  • rclandroid - Android API for ROS2. rclandroid
  • rclnodejs - Node.js version of ROS2.0 client. rclnodejs
  • riot-ros2 - This project enables ROS2 to run on microcontrollers using the RIOT Operating System. riot-ros2

Driver layer

Client libraries

  • rclada - ROS Client Library for Ada. rclada
  • rclcpp - ROS Client Library for C++. rclcpp
  • rclpy - ROS Client Library for Python. rclpy
  • rcljava - ROS Client Library for Java. rcljava
  • rclnodejs - ROS Client Library for Node.js rclnodejs
  • rclobjc - ROS Client Library for Objective C (for iOS). rclobjc
  • rclc - ROS Client Library for C. rclc
  • ros2_rust - Rust bindings for ROS2 ros2_rust
  • ros2_dotnet - .NET bindings for ROS2 ros2_dotnet

Client libraries common

  • rcl - Library to support implementation of language specific ROS Client Libraries. rcl
  • system_tests - Tests for rclcpp and rclpy. system_tests
  • rcl_interfaces - A repository for messages and services used by the ROS client libraries. rcl_interfaces

IDL generators

RMW (ROS middleware)

  • rmw - Contains the ROS middleware API. rmw
  • rmw_connext_cpp - Implement the ROS middleware interface using RTI Connext static code generation in C++. rmw_connext_cpp
  • rmw_fastrtps_cpp - Implement the ROS middleware interface using eProsima FastRTPS static code generation in C++. rmw_fastrtps_cpp
  • rmw_opensplice_cpp - Implement the ROS middleware interface using PrismTech OpenSplice static code generation in C++. rmw_opensplice_cpp
  • rmw_coredx - CoreDX DDS integration layer for ROS2 tocinc/rmw_coredx
  • rmw_freertps - RMW implementation using freertps. tocinc/rmw_coredx
  • rcutils - Common C functions and data structures used in ROS 2 rmw
  • freertps - a free, portable, minimalist, work-in-progress RTPS implementation rmw

DDS communication mechanism implementations

  • Connext DDS - Connectivity Software for Developing and Integrating IIoT Systems 💲
  • Fast-RTPS - Implementation of RTPS Standard (RTPS is the wire interoperability protocol for DDS) Fast-RTPS
  • OpenSplice - Implementation of the OMG DDS Standard opensplice 💲
  • CoreDX DDS - Implementation of Twin Oaks Computing, Inc. 💲
  • freertps - A free, portable, minimalist, work-in-progress RTPS implementation. freertps

Build system (Linux)

  • meta-ros2 - ROS 2 Layer for OpenEmbedded Linux meta-ros2

Build system (ROS2)

  • ci - ROS 2 CI Infrastructure ci
  • ament_cmake_export_jars - The ability to export Java archives to downstream packages in the ament buildsystem in CMake. ros2_java
  • rmw_implementation_cmake - CMake functions which can discover and enumerate available implementations. rmw
  • rmw_implementation - CMake infrastructure and dependencies for rmw implementations rmw

Documentation

Community

Books

No books published yet

Courses

No courses existing yet

Presentations

Embedded World Conference 2018

ROS Industrial Conference 2017

  • micro Robot Operating System: ROS for highly resource-constrained devices Slides
  • ROS2 - it's coming Slides

ROSCon 2017

  • The ROS 2 vision for advancing the future of robotics development Slides Video
  • ROS2 Fine Tuning Slides Video
  • SLAM on Turtlebot2 using ROS2 Slides Video
  • Using ROS2 for Vision-Based Manipulation with Industrial Robots Slides Video

ROSCon 2016

ROSCon 2015

Papers

Podcasts

About

The Robot Operating System Version 2.0 is awesome!

https://fkromer.github.io/awesome-ros2

License:Other