• Stars
    star
    345
  • Rank 122,750 (Top 3 %)
  • Language CMake
  • License
    MIT No Attribution
  • Created over 4 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

This Gazebo world is well suited for organizations who are building and testing robot applications for warehouse and logistics use cases.

AWS RoboMaker Small Warehouse World

Gazebo01

AWS Robomaker Small Warehouse World on Gzweb

Gzweb01

This Gazebo world is well suited for organizations who are building and testing robot applications for warehouse and logistics use cases.

3D Models included in this Gazebo World

Model (/models) Picture
aws_robomaker_warehouse_Bucket_01 Model: Buckets
aws_robomaker_warehouse_ClutteringA_01, aws_robomaker_warehouse_ClutteringC_01, aws_robomaker_warehouse_ClutteringD_01 Model: Box Clusters
aws_robomaker_warehouse_DeskC_01 Model: Desk
aws_robomaker_warehouse_GroundB_01 Model: Ground Paint
aws_robomaker_warehouse_TrashCanC_01 Model: Humans
aws_robomaker_warehouse_Lamp_01 Model: Ceiling Lamp
aws_robomaker_warehouse_PalletJackB_01 Model: Pallet Jack
aws_robomaker_warehouse_ShelfD_01, aws_robomaker_warehouse_ShelfE_01, aws_robomaker_warehouse_ShelfF_01 Model: Pallet Jack

Building and Launching the Gazebo World with your ROS Applications

  • Create or update a .rosinstall file in the root directory of your ROS workspace. Add the following line to .rosintall:

    - git: {local-name: src/aws-robomaker-small-warehouse-world, uri: 'https://github.com/aws-robotics/aws-robomaker-small-warehouse-world.git', version: master}
    
  • Change the directory to your ROS workspace and run rosws update

  • Add the following include to the ROS launch file you are using:

    <launch>
    <!-- Launch World -->
    <include file="$(find aws_robomaker_small_warehouse_world)/launch/small_warehouse.launch"/>
    ...
    </launch>
  • Build your application using colcon

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

Example: Running this world directly in Gazebo without a ROS application

To open this world in Gazebo, change the directory to your ROS workspace root folder and run:

cd aws-robomaker-small-warehouse-world
export GAZEBO_MODEL_PATH=`pwd`/models
gazebo worlds/small_warehouse.world

Example: Running this world on Gazebo headless and running the UI on Gzweb

Tested in ROS Kinetic/Melodic, Gazebo 7/9 with node version 8.11.3/10.22.1

To open this world in Gzweb, There are two steps,

  1. In a terminal, change to your ROS workspace root folder and run gzserver with the small warehouse world:
cd aws-robomaker-small-warehouse-world
export GAZEBO_MODEL_PATH=`pwd`/models
gzserver worlds/small_warehouse.world
  1. In another terminal, setup and run GzWeb
  • Install GzWeb by following the official documentation:

    Important:

  • Deploy GzWeb

    • Approach 1: Copy all the Gazebo models from small-warehouse world to gzweb/http/client/assets/, and run the deploy script
    cp -r ~/aws-robomaker-small-warehouse-world/models/. ~/gzweb/http/client/assets
    cd ~/gzweb
    export GAZEBO_MASTER_URI="http://localhost:11345" # change localhost to IP address of the gzserver machine
    npm run deploy
    npm start
    • Approach 2: without copying the Gazebo models, export Gazebo model path and run the deploy script with -m local
    cd aws-robomaker-small-warehouse-world
    export GAZEBO_MODEL_PATH=`pwd`/models
    cd ~/gzweb
    export GAZEBO_MASTER_URI="http://localhost:11345" # change localhost to IP address of the gzserver machine
    npm run deploy --- -m local
    npm start

Example: Running this world directly using ROS without a simulated robot

To launch this base Gazebo world without a robot, clone this repository and run the following commands. Note: ROS and gazebo must already be installed on the host.

# build for ROS
rosdep install --from-paths . --ignore-src -r -y
colcon build

# run in ROS
source install/setup.sh
roslaunch aws_robomaker_small_warehouse_world view_small_warehouse.launch

Visit the AWS RoboMaker website to learn more about building intelligent robotic applications with Amazon Web Services.

Notes

  • Lighting might vary on different system(s) (e.g brighter on system without CPU and darker on system with GPU)
  • Adjust lighting parameters in .world file as you need

More Repositories

1

aws-robomaker-hospital-world

This Gazebo world is well suited for organizations who are building and testing robot applications in hospitals.
Python
191
star
2

aws-robomaker-small-house-world

A house world with multiple rooms and furniture for AWS RoboMaker and Gazebo simulations.
CMake
191
star
3

aws-robomaker-robotics-curriculum

Introductory robotics curriculum
HTML
92
star
4

aws-robomaker-bookstore-world

A bookstore world with shelving and tables for AWS RoboMaker and Gazebo simulations
CMake
68
star
5

ros2-launch-file-migrator

This package takes a ROS1 XML launch file and converts it to a ROS2 Python launch file
Python
57
star
6

aws-robomaker-sample-application-helloworld

Demonstrates the structure of ROS projects that work with AWS RoboMaker by creating a robot spinning in an empty world.
Shell
46
star
7

aws-robomaker-racetrack-world

A mini racetrack world for developing and testing robots with AWS RoboMaker and Gazebo simulations.
CMake
44
star
8

rosbag-uploader-ros1

ROS packages for uploading rosbags to AWS cloud services.
C++
30
star
9

aws-iot-bridge-example

Examples and information about integrating ROS with AWS IoT using the mqtt_bridge package.
CMake
25
star
10

kinesisvideo-encoder-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
24
star
11

kinesisvideo-ros2

ROS packages for facilitating the use of AWS cloud services.
C++
22
star
12

kinesisvideo-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
20
star
13

aws-robomaker-sample-application-cloudwatch

Use AWS RoboMaker and demonstrate monitoring robot health and operational metrics with AWS CloudWatch.
Python
20
star
14

tts-ros1

ROS packages for facilitating text-to-speech and the use of Amazon Polly.
Python
19
star
15

ROS2-SecTest

ROS2 package that demonstrates ways to exploit vulnerabilities in ROS systems.
C++
17
star
16

cloudwatchlogs-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
16
star
17

health-metrics-collector-ros2

ROS2 node that collects metrics about system resource consumption and publishes them to a topic to be emitted to CloudWatch Metrics.
C++
16
star
18

cloudwatchmetrics-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
12
star
19

lex-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
11
star
20

tts-ros2

ROS packages for facilitating the use of AWS cloud services.
Python
11
star
21

kinesisvideo-encoder-ros2

ROS packages for facilitating the use of AWS cloud services.
C++
10
star
22

health-metrics-collector-ros1

This is a node for ROS1 that collects metrics about cpu usage and publishes them to a topic to be pushed to CloudWatch Metrics.
C++
10
star
23

cloudwatchmetrics-ros2

ROS packages for facilitating the use of AWS cloud services.
C++
10
star
24

kinesisvideo-encoder-common

ROS packages for facilitating the use of AWS cloud services.
C++
9
star
25

utils-common

ROS packages for facilitating the use of AWS cloud services.
C++
8
star
26

aws-robomaker-bundle-support-library

A Library in Go that supports download and extraction of colcon-bundle format. https://github.com/colcon/colcon-bundle
Go
8
star
27

utils-ros2

ROS2 common packages for facilitating the use of AWS cloud services.
C++
8
star
28

cloudwatchlogs-ros2

ROS packages for facilitating the use of AWS cloud services.
C++
7
star
29

turtlebot3-description-reduced-mesh

Reduced 3D models of the TurtleBot3 for simulation and visualization
CMake
7
star
30

aws-robomaker-simulation-ros-pkgs

ROS packages for use with an AWS RoboMaker simulation
Shell
6
star
31

ros-book-sample-code

C++
5
star
32

cloudwatch-common

ROS packages for facilitating the use of AWS cloud services.
C++
4
star
33

kinesisvideo-common

ROS packages for facilitating the use of AWS cloud services.
C++
4
star
34

monitoringmessages-ros1

ROS packages for facilitating the use of AWS cloud services.
CMake
4
star
35

lex-ros2

ROS packages for facilitating the use of AWS cloud services.
C++
4
star
36

travis-scripts

contains scripts for building sample applications and AWS ROS cloud extensions.
Shell
4
star
37

utils-ros1

ROS packages for facilitating the use of AWS cloud services.
C++
3
star
38

lex-common

ROS packages for facilitating the use of AWS cloud services.
C++
1
star
39

aws-robomaker-github-actions

TypeScript
1
star
40

monitoringmessages-ros2

ROS packages for facilitating the use of AWS cloud services.
CMake
1
star