/aws-robomaker-sample-application-open-source-rover

This ROS1 Kinetic sample application for the Open Source Rover from JPL NASA

Primary LanguagePythonMIT No AttributionMIT-0

AWS RoboMaker Sample Application - Open Source Rover

This sample application demonstrates and end-to-end robotics system with the Open Source Rover from NASA JPL. It includes a URDF file modeled after the popular open source project. To learn more about the open source rover, check it out here

RoboMaker sample applications include third-party software licensed under open-source licenses and is provided for demonstration purposes only. Incorporation or use of RoboMaker sample applications in connection with your production workloads or a commercial products or devices may affect your legal rights or obligations under the applicable open-source licenses. Source code information can be found here.

Requirements

  • ROS Kinetic - Other versions may work, however they have not been tested
  • Colcon - Used for building and bundling the application.

Build

Pre-build commands

sudo apt-get update
rosdep update

Robot

cd robot_ws
rosws update
rosdep install --from-paths src --ignore-src -r -y
colcon build

Simulation

cd simulation_ws
rosws update
rosdep install --from-paths src --ignore-src -r -y
colcon build

Run

Launch the application with the following commands:

Running Robot Application

source robot_ws/install/local_setup.sh
roslaunch martian_detector martian_detector.launch

Running Simulation Application

source simulation_ws/install/local_setup.sh
roslaunch rover_gazebo main_with_objects.launch

Using this sample with RoboMaker

You first need to install colcon-ros-bundle. Python 3.5 or above is required.

pip3 install -U setuptools
pip3 install colcon-ros-bundle

After colcon-ros-bundle is installed you need to build your robot or simulation, then you can bundle with:

# Bundling Robot Application
cd robot_ws
source install/local_setup.sh
colcon bundle

# Bundling Simulation Application
cd simulation_ws
source install/local_setup.sh
colcon bundle

This produces the artifacts robot_ws/bundle/output.tar and simulation_ws/bundle/output.tar respectively. You'll need to upload these to an s3 bucket, then you can use these files to create a robot application,
create a simulation application, and create a simulation job in RoboMaker.

ROS Nodes launched by this Sample

Nodes created by this sample

/motion
/notifier
/object_detector

Running the demonstration and workshop

To roam around the simulated mars world and find martians, you can use the teleop_twist_keyboard commands by running the following statement in your terminal:

rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Full instructions on how to setup the AWS cloud infrastructure and run the demo can be found at: https://www.robomakerworkshops.com.

License

MIT-0 - See LICENSE.txt for further information

How to Contribute

Create issues and pull requests against this Repository on Github