GithubHelp home page GithubHelp logo

aws-robotics / aws-robomaker-small-warehouse-world Goto Github PK

View Code? Open in Web Editor NEW
313.0 20.0 94.0 9.45 MB

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

License: MIT No Attribution

CMake 100.00%
ros gazebo

aws-robomaker-small-warehouse-world's Introduction

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

aws-robomaker-small-warehouse-world's People

Contributors

ahtsan avatar amazon-auto avatar cheng-kevin avatar kapilpython avatar konduri avatar murphm8 avatar samuelgundry avatar wangvnn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aws-robomaker-small-warehouse-world's Issues

Error Code 12 Msg: Unable to find uri[model://warehouse_pallet3]

Bug:
Error message Error Code 12 Msg: Unable to find uri[model://warehouse_pallet3]
and lack of some models in the Gazebo (there are no small shelves).

Environment: Ubuntu 20.04, ROS 2 Foxy

Steps to reproduce:

  • clone aws-robomaker-small-warehouse-world to workspace
  • create .rosinstall file in the ROS2 workspace with
- git: {local-name: src/aws-robomaker-small-warehouse-world, uri: 'https://github.com/aws-robotics/aws-robomaker-small-warehouse-world.git', version: ros2}

inside (root level)

rosws update
rosdep install --from-paths . --ignore-src -r -y
colcon build
  • export GAZEBO_MODEL_PATH=pwd/models in the cloned package (branch: ros2)
  • gazebo worlds/no_roof_small_warehouse.world

Running this world directly (using ROS launcher) without robot works.

aws-robomaker-small-warehouse-world in ROS 2 Rolling has not been released on Ubuntu Jammy

The ROS 2 Rolling Ridley distribution recently migrated to Ubuntu 22.04 Jammy using the rosdistro migration tool.

This repository is one which failed to bloom during the migration because the gazebo dependency is not yet available in Ubuntu Jammy. Once the Jammy repositories and the rosdep database are updated it should be possible to release this repository in Rolling again by running bloom normally.

Packages which are not released in Rolling may not be automatically added to future stable ROS 2 distributions.

Support for Ignition?

Starting in 22.04 (ROS2 Humble; new LTS distribution being released on Monday) Gazebo no longer exists in the ROS ecosystem, its now only Ignition. As part of the migration from Gazebo to Ignition for Nav2, we'd like to use this as our default bringup. We have alot of work invested already to update all our tests and default bringup to use this work in Gazebo in a pending PR, but for the Humble migration it would need to be in Ignition.

I don't think its a huge amount of work, I believe all the assets should render OK, just minor updates to the world files and new ignition launch files

Why are Rolling Binaries Disabled?

The rolling binaries have been disabled to build for this package and therefore they're not available in Rolling after the migration to 22.04 since the last build was in February. Why is this disabled and can we re-enable it?

CC ros-navigation/navigation2#2797

Models keep crashing Gazebo

Hello I am on Ubuntu Jammy ROS2 humble and when I place any of your models inside it keeps saying Gazebo is not responding. Is there a fix to this

Release to Foxy / Galactic / Rolling

Hi,

We'd like to use this in Nav2 CI. In order to do so, we need this released as a package so that we can install it in our docker containers and have it be available for users to test within

[ROS2] Binaries do not properly export models / world paths

Launching the default example after installing the package

ros2 launch aws_robomaker_small_warehouse_world small_warehouse.launch.py

it fails to load because it cannot find the models or world files. This makes the package currently unusable since none of the launch files or loading of world / model files works properly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.