Skip to main content
This guide explains how to add 3D objects from the Gazebo Fuel model database into your TurtleBot Maze simulation environment.

Download models

Browse and download models from the Gazebo Fuel database. Place downloaded model folders into the models directory of your workspace:
Models folder in the TurtleBot Maze workspace showing downloaded Gazebo models

Edit the world file

Manually edit the sim_house_enhanced.sdf.xacro file located at:
tb_worlds/worlds/sim_house_enhanced.sdf.xacro
File explorer showing the tb_worlds/worlds directory with sim_house_enhanced.sdf.xacro highlighted

Insert objects into the world

Add <include> blocks to the SDF file for each object you want to place. Each object needs:
  • A <uri> pointing to the model (e.g., model://AirportBench)
  • A unique <name> (duplicate names cause errors)
  • A <pose> specifying position (x y z roll pitch yaw)
SDF xacro file showing include blocks for AirportBench, beer, and cricket ball models with pose coordinates
Positioning tips:
  • Benches are inserted at z = -0.29 to make them low enough to be visible
  • Adjust the z coordinate so objects are at a sufficient height to be seen by the robot’s camera
  • Every object must have a unique name or the simulator will throw an error

Model folder structure

Each downloaded model must have the correct directory structure inside the models folder:
Model directory structure showing meshes, thumbnails, model.config, and model.sdf files
A valid model folder contains:
  • meshes/ — 3D mesh files
  • thumbnails/ — preview images
  • model.config — model metadata
  • model.sdf — model definition
Some models from the Fuel database may not be compatible with your Gazebo version. If a model fails to load, try a different one from the database rather than spending time debugging compatibility issues.