urdf-fundamentals

Create and validate URDF robot descriptions for ROS 2 simulations.

18|2|Updated Apr 20, 2026
One-click install
npx skills add https://github.com/wimblerobotics/ros2-copilot-skills --skill urdf-fundamentals-wimblerobotics
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: urdf-fundamentals
Source: https://github.com/wimblerobotics/ros2-copilot-skills/tree/main/urdf-fundamentals
Command: npx skills add https://github.com/wimblerobotics/ros2-copilot-skills --skill urdf-fundamentals-wimblerobotics

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Compose and validate URDF robot descriptions to ensure correct structure, clear hierarchy, and accurate portrayal of links, joints, visuals, collisions, and inertial elements.

Core Features & Use Cases

  • URDF structure understanding: Learn to model a robot using the <robot> root, links, and joints with clear parent-child relationships.
  • Element specifics: Define base_link, wheel or head links, and their associated <visual>, <collision>, and <inertial> data.
  • Validation & conventions: Ensure tree coherence, correct REP 103 conventions, and simple validation workflows for ROS 2 simulations.

Quick Start

Create a minimal URDF for a two-link robot using base_link and head_link as shown.

Frequently Asked Questions about urdf-fundamentals

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a URDF robot description for ROS 2 simulations?

To create a URDF robot description, you model the robot using a <robot> root element, define links with <visual>, <collision>, and <inertial> data, and connect them with joints in clear parent-child relationships for ROS 2.

What is the correct parent-child relationship structure when validating URDF tree coherence?

Validating URDF tree coherence requires ensuring all links and joints form a valid tree with correct parent-child relationships, preventing disconnected branches or cycles within the robot description hierarchy.

How do I define links and joints in a minimal URDF file?

You define links and joints in a minimal URDF by specifying elements like base_link and head_link, attaching associated <visual>, <collision>, and <inertial> properties, and connecting them via joint definitions.

Why do my URDF kinematics fail REP 103 conventions in ROS 2?

URDF kinematics fail REP 103 conventions when coordinate frame orientations and axis definitions do not align with the standard axis conventions required for consistent robot behavior in ROS 2 simulations.

Does URDF syntax require both visual and collision elements for every link?

URDF syntax does not strictly require both elements, but defining <visual> and <collision> data for links ensures accurate rendering and physical interaction modeling during robot simulations.

Can I use URDF for robot descriptions without adding inertial elements?

You can technically omit inertial elements, but including <inertial> data for each link is essential for accurate dynamic simulations and satisfying complete URDF validation checks.