URDF for Robot Modeling Python

Understanding robot modeling using URDF

Course Overview


As human beings, we learn from a very young age about our body’s structure: which bones and muscles are part of it, how they are connected, how we can move each part, etc.

For a robot, though, how can we know all this information? Well, this is exactly what URDF files are going to tell us. URDF files define the structure of a robot, the connection between all the different parts, etc.

In this course, you will understand how URDF files work, and how to create them for any robot.

Learning Objectives

  • Build a visual robot model with URDF
  • Add physical properties to a URDF Model (Collision, Frictions, etc.)
  • Use XACRO to clean up URDF files
  • Use URDF in the Gazebo-ROS ecosystem

Simulation robots used in this course

Gurdy robot, Jibo robot, Mira robot

ROS for Industrial Robot Course





6h 49m


ROS Basics, Python Basics, Basic mechanical knowledge, Basic understanding of how XML files work, Knowledge of how PIDs work

This course is part of this learning path:

What projects will you be doing?

[ROS Q&A] 168 - What are the differences between global and local costmap

Create your first URDF Model

Go from a physical robot to a visual virtual model

ROS Mini Challenge #2 - RViz

Adapt URDF for Gazebo Simulator

Add the collisions, inertias, and gazebo physical properties 



Use XACROs in order to simplify a URDF file


Create your own Jibo

Create a Jibo robot from scratch and simulate it in Gazebo

What you will learn

Course Syllabus

Unit 1: URDF Introduction
  • Practice First: Play with Jibo, Mira, and Gurdy Robots.
  • Why URDF Files are essential in Robotics.

7 min.

Unit 2: Building the Visual Robot Model with URDF
  • Create your first URDF Model
  • Add a 3D model to your URDF files

4 hrs.

Unit 3: Using URDF for Gazebo
  • Add physical properties to your URDF files.
  • Spam the URDF files into Gazebo.
  • Add a sensor to your URDF files

2 hrs. 30 min.

Unit 4: QUIZ: Create the URDF files for a Gurdy Robot from scratch
Unit 5: XACRO files

Learn how to optimize your URDF files using XACRO

2 hrs.

Unit 6: PROJECT: Create the URDF files for a Jibo Robot from scratch

Ready to get started?

Create an account to start learning

What’s next

People interested in this course also viewed


ROS Control 101


Create Your First Robot with ROS