Skip to content

Commit

Permalink
Restructuring ROS 2 Gem docs (o3de#2266)
Browse files Browse the repository at this point in the history
* First step towards the new structure. Some information updated

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* restructuring, update

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* added api reference link

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Applied review comments.

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Adjusted inactive links.

Signed-off-by: Michał Pełka <michal.pelka@robotec.ai>

* Commented out in-progress sections.

Signed-off-by: Michał Pełka <michal.pelka@robotec.ai>

* Apply suggestions from code review

Co-authored-by: Wojtek <125894910+wojtek-robotecai@users.noreply.github.com>
Signed-off-by: Michał Pełka <michalpelka@gmail.com>

* Further adjustments to review.

Signed-off-by: Michał Pełka <michal.pelka@robotec.ai>

* Adjusted to the review.

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

Co-authored by: Channele Mosquera <chanmosq@amazon.com>

* added class diagram link

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

---------

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>
Signed-off-by: Michał Pełka <michal.pelka@robotec.ai>
Signed-off-by: Michał Pełka <michalpelka@gmail.com>
Co-authored-by: Michał Pełka <michal.pelka@robotec.ai>
Co-authored-by: Michał Pełka <michalpelka@gmail.com>
Co-authored-by: Wojtek <125894910+wojtek-robotecai@users.noreply.github.com>
  • Loading branch information
4 people authored Mar 20, 2023
1 parent 19386f2 commit f402e6f
Show file tree
Hide file tree
Showing 11 changed files with 462 additions and 346 deletions.
2 changes: 1 addition & 1 deletion content/docs/user-guide/gems/reference/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ toc: true

| Gem | Description |
| - | - |
| [ROS 2](./ros2/) | The ROS 2 Gem provides integration with the [Robot Operating System (ROS) 2](https://docs.ros.org/en/rolling/index.html) library and enables design of simulation of robotics systems. |
| [ROS&nbsp;2](./robotics/ros2.md) | The ROS 2 Gem provides integration with the [Robot Operating System (ROS) 2](https://docs.ros.org/en/rolling/index.html) library and enables the design of the simulation of robotics systems. |

## Script

Expand Down
42 changes: 42 additions & 0 deletions content/docs/user-guide/gems/reference/robotics/ros2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
linkTitle: ROS 2
title: ROS 2 Gem
description: The ROS 2 Gem helps build robotic simulations with Robot Operating System (ROS) 2 in Open 3D Engine (O3DE).
toc: true
---

<!-- # O3DE ROS2 Gem -->

The **ROS 2 Gem** uses the [Robot Operating System (ROS)](https://docs.ros.org/en/rolling/index.htmml) to enable
robotic simulation in **Open 3D Engine (O3DE)**. The ROS 2 Gem has the following features:

* Direct and natural support of the ROS 2 ecosystem:
* Does not use any bridges to communicate between ROS and O3DE. A simulation node will function as any other ROS 2 node.
* Enables you to directly include ROS 2 headers and write ROS 2 code in O3DE.
* Having no bridge improves communication performance.
* Provides an easy way to include ROS 2 dependencies.
* Sensors:
* Are abstracted through the Sensor Component, which takes care of the publishing of sensor data and common settings such as frequency.
* Features several types of configurable, extendable sensors such as Lidar, Camera (including Depth channel), IMU, and GNSS.
* Utilities for automated handling of:
* Simulation time: - publishing `/clock`, with support for non-real time.
* Computing and publishing of transformation frames (`/tf`, `/tf_static`).
* Namespaces- allowing multi-robot simulation in O3DE by default!
* Validation for topic and namespace names.
* Dynamic spawning of robots through ROS 2 services.
* Robot Control Component:
* Provides a quick-to-use method of controlling your robot.
* Includes support for Twist and AckermannDrive message interfaces.
* Vehicle dynamics:
* Ackermann Steering subscribes to the message of type [AckermannDrive](http://docs.ros.org/en/api/ackermann_msgs/html/msg/AckermannDrive.html).
* Differential drive subscribes to the message of type [Twist](http://docs.ros.org/en/noetic/api/geometry_msgs/html/msg/Twist.html).
* URDF/XACRO (experimental).
* Allows robot imports from the URDF format.

## Related topics

| Topic | Description |
|-------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------|
| [Robotics in O3DE](/docs/user-guide/interactivity/robotics) | Learn about robotics in O3DE, including Gems, Templates and demos to help you get started. |
| [ROS 2 Gem Concepts and Structure](/docs/user-guide/interactivity/robotics/concepts-and-components-overview.md) | Overview of the concepts and structure of the ROS 2 Gem, including an overview of its components |
| [ROS 2 Gem API reference](/docs/api/gems/ros2) | Generated documentation for ROS 2 Gem's API reference. |
124 changes: 0 additions & 124 deletions content/docs/user-guide/gems/reference/ros2/_index.md

This file was deleted.

Loading

0 comments on commit f402e6f

Please sign in to comment.