Let’s summarize what you should do in this project to create a simulation world for all your projects in this Robotics Software Engineer Nanodegree Program.
- Build a single floor wall structure using the Building Editor tool in Gazebo. Apply at least one feature, one color, and optionally one texture to your structure. Make sure there's enough space between the walls for a robot to navigate.
- Model any object of your choice using the Model Editor tool in Gazebo. Your model links should be connected with joints.
- Import your structure and two instances of your model inside an empty Gazebo World.
- Import at least one model from the Gazebo online library and implement it in your existing Gazebo world.
- Write a C++ World Plugin to interact with your world. Your code should display “Welcome to ’s World!” message as soon as you launch the Gazebo world file.
These tasks are just the basic requirements for you to pass the project! Feel free to have fun designing and importing multiple models.
.Project1 # Build My World Project
├── CMakeLists.txt # Link libraries
├── images # Output in Gazebo
│ ├── image1.jpg
│ ├── image2.jpg
│ ├── image3.jpg
│ └── image4.jpg
├── model # Model files
│ ├── Building
│ │ ├── model.config
│ │ └── model.sdf
│ └── HumanoidRobot
│ ├── model.config
│ └── model.sdf
├── README.md
├── script # Gazebo World plugin C++ script
│ └── welcome_message.cpp
└── world # Gazebo main World containing models
└── UdacityOffice.world
- Clone this repo
- Make welcome_message.cpp executable under script directory
chmod +x script/welcome_message.cpp
- Create a build directory and compile the code
mkdir build
cd build
cmake ../
make
export GAZEBO_PLUGIN_PATH=${GAZEBO_PLUGIN_PATH}:<your workspace>/build
- Launch the world file in Gazebo to load both the world and the plugin
cd script
gazebo UdacityOffice.world