Description
Description
This issue is related to the submission to NASA Space ROS Sim Summer Sprint Challenge 2024.
Team lead Freelancer username: azmyin12
Submission Title: Integrating O3DE with Space ROS for an Accurate Physics Simulation of the Curiosity Rover: A Case Study
Related PR: #183
Note to judges: I was unsure how to categorize my submission since it simultaneously brings in a new simulator engine, new assets and a new demo environment altogether. Therefore, I opted to the route of creating a new image based on a customized Dockerfile from space_robot
image. Please note about 70 - 80 Gb of free space is require and the computer needs to have an NVIDIA GPU.
Motivation
At ROSCon2023, Robotec.ai demonstrated a large warehouse fullfilment demo (short-version here) containing multiple AMRs, Cobots and human collaborators working together in a photo realistic simulation. This was achieved using the Open 3D Engine, an open-source, Apache 2.0 licensed, modular game engine that utilizes NVIDIA's open-source, Apached 2.0 licensed, PhysX 5.1 physics engine paired with the open-sourced Atom renderer. More details can be found here.
Space rovers like the Curiosity Rover, are very expensive scientific equipment that must go through extensive testing in NASA JPL's Mars Yard. These tests include endurance tests for suspensions, wheels, and mobility on uneven and unknown terrains. Additionally these rovers needs to perform critical tasks such as autonomous driving, object manipulation, path-planning in the absence of human teleportation due to the Earth-Mars communication lag.
Objective
Given the favorable nature of Open 3D Engine's licensing, rapidly developing ROS 2 support and a need for robust, accurate, scalable versatile simulator that incorporates well-understood physics libraries, my submission to this contest is a docker image whose primary purpose is to serve as a test vessel for a case study on the effectiveness, setup complexity, asset generation requirements, and challenges of using Open 3D Engine for space robotics applications, specifically a mobile manipulators like the Curiosity rover.
This image demonstrates the native integration of O3DE with the Space ROS stack by showcasing a new testing environment inspired by the Mars Yard. The picture below shows the environment with the Curiosity rover and several new assets (still a work in progress, will be finalized before September 11th Deadline).
Note the high-fidelity rendering and accurate simulation of wheel-obstacle-suspension interactions. Numerous scenarios can already be envisioned in the test environment i.e. image Curiosity rover transporting a small scientific cargo (little ROSBot) back to its twin, MAGGIE, in building 336 by maneuvering around various obstacles and environmental hazards.
My hope is that this study and demo will highlight the various advantages, benefits, and challenges in using a full 3D game engine for robotics simulations. I would like to conclude by expressing my gratitude to NASA and the Space ROS team for hosting this challenge.
Deliverables
My submission will include
- A new docker image that integrates O3DE with Space-ROS via ROS 2 Gem.
- A complete O3DE project called
RobotSim
that comes with two new new asset Gems,NasaCuriosityRoverGem
andMarsYardGem
. - Instructions on running the demo.
- A short report detailing my experience with O3DE, its usefulness to NASA and major challenges that needs to be addressed.
- [if time permits] build instructions for native build in the host Ubuntu machine.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
No status
Activity