Antoni-Robotec fc0e50e7a4 Warehouse automation gem (#440) 1 anno fa
..
Assets 7a5a8475c8 Fixes to Ros2ProjectTemplate, remove unused prefab, fix to non-unity builds (#303) 2 anni fa
Code fc0e50e7a4 Warehouse automation gem (#440) 1 anno fa
Registry 4f6d296ddb Addressed feedback for URDF Import using SDFormat PR 1 anno fa
docs eac24a42eb Merge commit '46679f90b23607223e7ba68db9989cd7e9564033' into wjunhao/gitflow_230425_o3de_extras 2 anni fa
.clang-format 029eb9b3b7 Add .clang-format file (#104) 2 anni fa
.gitignore eacec1924e Added workspace folder to gitignore 2 anni fa
.licenserc.yaml 30e7b3788f Add CodeChecks workflow (#109) 2 anni fa
CMakeLists.txt 58a041bb51 Addressed code review comments 2 anni fa
CONTRIBUTING.md ecad2845c7 First version of Contribution Guide (#98) 2 anni fa
README.md 295030f248 Reference the new location for documentation (#314) 2 anni fa
gem.json d5726250fd use PrimitiveAssets Gem to visualize primitives (#485) 1 anno fa
preview.png dc731e6397 Added missing preview.png 2 anni fa

README.md

O3DE ROS2 Gem

With the ROS2 Gem you can develop robotic simulations with ROS (Robot Operating System) 2 in Open 3D Engine (O3DE).

Access the the whole ROS2 Gem documentation by clicking here. Other sections in this README link to specific parts of the provided documentation.

Features

  • Direct and natural support of ROS2 ecosystem:
    • No bridges. Your simulation node will function as any other ROS2 node.
    • This is also good for performance
    • Easy way to include ROS2 dependencies.
  • Sensors:
    • Sensor Component serving as a handy abstraction.
    • Example implementations of Lidar, Camera, IMU sensors.
    • Including a few Assets and prefabs which are ready to use.
  • Automated handling of:
    • Simulation time, publishing /clock supporting non-real time.
    • Publishing of transformation frames (/tf, /tf_static).
    • Validation for topic and namespace names.
  • Robot Control Component:
    • A quick to use method of controlling your robot with Twist messages.
    • Can be used with custom LUA scripting.

For a "feel" of these features, see an example project which uses this Gem to run navigation stack.

Example project

You can test the O3DE ROS2 Gem with the Robot Vacuum project. It will allow you to run a robot navigation simulation. All necessary assets are included.

Installation

Refer to this part of the documentation to configure your project with the ROS2 Gem.

Learn about ROS2 Gem

Visit this part of the documentation to learn about the ROS2 Gems Concepts and Structure. Additionally you can learn about ROS 2 Concepts here.

How to create your own robotic simulation

Refer here to access a list of steps guiding you through the creation of your own simulation.

Importing robots

Access this part of the documentation to learn about importing robots from common formats such as the Unified Robot Description Format (URDF).

Troubleshooting

If you have any problems with the ROS2 Gem, visit here for troubleshooting guides and suggestions.

User Guides

If you plan on contributing please follow the Pull Request Publishing guide. For those using the Clion IDE we advise to follow the Development in Clion guide.

Acknowledgements

This project was originally developed by Robotec.ai in cooperation with AWS Game Tech and AWS RoboMaker.