Skip to content

This demonstrates the structure of a ROS project that works with RoboMaker by creating a robot connecting to AWS Iot Core in an empty world.

License

Notifications You must be signed in to change notification settings

nmatsui/robomaker_awsiotcore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWS RoboMaker Sample Application - connect AWS IoT Core

This demonstrates the structure of a ROS project that works with RoboMaker by creating a robot connecting to AWS Iot Core in an empty world.

This application is modified by Nobuyuki Matsui[email protected]. The original source code is here : aws-robomaker-sample-application-helloworld.

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 on a Robot

    source robot_ws/install/local_setup.sh
    roslaunch hello_world_robot deploy_rotate.launch
  • Running Robot Application Elsewhere

    source robot_ws/install/local_setup.sh
    roslaunch hello_world_robot rotate.launch
  • Running Simulation Application

    source simulation_ws/install/local_setup.sh
    roslaunch hello_world_simulation empty_world.launch

Using this sample with RoboMaker

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

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/build/output.tar.gz and simulation_ws/build/output.tar.gz 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

/rotate

ROS Topics used by this Sample

/clock
/cmd_vel

License

MIT-0 - See LICENSE.txt for further information

How to Contribute

Create issues and pull requests against this Repository on Github

About

This demonstrates the structure of a ROS project that works with RoboMaker by creating a robot connecting to AWS Iot Core in an empty world.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published