This Gazebo world is well suited for organizations who are building and testing robot applications for warehouse and logistics use cases.
-
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
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
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,
- 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
- In another terminal, setup and run GzWeb
-
Install GzWeb by following the official documentation:
Important:
- The recommended NodeJS versions are 4 up to version 8.
- Watch out for conflicting installations of Node/NodeJS
- See Troubleshooting section for other issues
-
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
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.
- 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