CodeRef
CodeRef
  • Software
    • VSCode
  • Midjourney_AI
    • Midjourney Cheat Sheet
  • aws
    • S3 Reference
    • Services
  • bash
    • .bashrc File Contents
    • CAN
    • _System Config File Locations
    • argument-length-limits
    • Conditionals
    • Data Structures
    • File Permissions
    • File Syncing
    • File System
    • Functions
    • General
    • Loops
    • My Functions
    • Networking
    • Number Operations
    • OpenVPN
    • Operators
    • Resource Management
    • Serial RS232
    • Spinning Wheel Animation
    • SSH
    • Text Operations
    • Environment Variables
  • cpp
    • ChatGPT | Pointers vs. References
    • arrays
    • Classes
    • Data Types / Structures
    • Enumerated Classes
    • Exception Handling
    • Function Objects
    • Functions
    • I/O
    • Loops
    • Macros
    • Namespaces
    • New Features
    • Pointers
    • Scope
    • Smart Pointers
    • Raw String Literals
    • Style Guide
    • Switch Case
    • Templating
    • How to Use tinyxml2
    • Useful Libraries
    • google-test
    • Conditionals
    • Rule of Three/Five
    • Optional Parameters
    • Keywords
    • Filesystem
    • Random
    • Casting
    • tools
  • git
    • Code Review Dependency Strategy
    • Git Bisect Guide
    • Git Reference
    • removing-cherry-picks
    • Useful Tools
    • Graphite Reference
  • js
    • functions
    • Javascript Reference
  • linux
    • Display
    • Dual Boot with Windows
    • File System
    • NVIDIA
    • Sending/Receiving TCP/UDP Messages in Ubuntu
    • dynamically_linked_binaries
  • markdown
    • Images
    • obsidian-reference
  • python
    • Classes
    • Exceptions
    • Functions
    • Operations
    • Python Reference
    • unittest_command-line-args
    • unittest_magicmock_GPT
    • unittest_mock
    • unittest_printing
    • unittest_subtest
    • useful-stuff
    • jupyter
    • poetry
  • ros
    • _ROS Cheat Sheet
    • Create New Workspace
    • Install ROS
    • Node Sample - Listener
    • Node Sample - Talker
    • Node Template
    • Setup
    • urdf
  • excel
    • excel-reference
  • windows
    • File System
    • WSL - Windows Subsystem for Linux
    • WSL
  • software_engineering
    • uncle_bob_lectures
      • Overview
      • Lesson 01 - Notes
  • web
    • Front End
    • Hugo
    • new_frontend_tools
  • sql
    • cheatsheet
Powered by GitBook
On this page
  • URDF Robot Models
  • Links
  • Joints
  1. ros

urdf

URDF Robot Models

(from Google Bard).

Code is XML.

Links

links

Joints

URDF (Unified Robot Description Format) defines six basic types of joints for constructing articulated robot models:

  1. Fixed joint: This joint represents a rigid connection between two links, allowing no movement between them.

    <joint name="fixed_joint" type="fixed">
    	<parent link="base_link"/>
    	<child link="link1"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    </joint>
  2. Revolute joint: This joint represents a rotational joint around a single axis. It allows for one degree of freedom (DOF), enabling rotation about the specified axis.

    <joint name="revolute_joint" type="revolute">
    	<parent link="base_link"/>
    	<child link="link1"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    	<axis xyz="0 0 1"/>
    	<limit lower="0" upper="${pi/2}" velocity="100" effort="100"/>
    </joint>
  3. Prismatic joint: This joint represents a translational joint along a single axis. It allows for one DOF, enabling translation along the specified axis.

    <joint name="prismatic_joint" type="prismatic">
    	<parent link="base_link"/>
    	<child link="link1"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    	<axis xyz="1 0 0"/>
    </joint>
  4. Continuous joint: This joint is a variant of the revolute joint, allowing for unlimited rotation around the specified axis. It also provides one DOF.

    <joint name="continuous_joint" type="continuous">
    	<parent link="base_link"/>
    	<child link="link1"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    	<axis xyz="0 0 1"/>
    </joint>
  5. Planar joint: This joint allows for two DOFs, enabling translation in the plane defined by two axes and rotation about the perpendicular axis.

    <joint name="planar_joint" type="planar">
    	<parent link="base_link"/>
    	<child link="link1"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    	<axis xyz="0 1 0"/>
    	<axis xyz="0 0 1"/>
    </joint>
  6. Floating joint: This joint represents a six-DOF joint that allows for unrestricted movement in space. It is typically used to represent the base link of a robot, as it has no fixed reference point.

    <joint name="floating_joint" type="floating">
    	<parent link="base_link"/>
    	<child link="world"/>
    	<origin xyz="0 0 0" rpy="0 0 0" />
    </joint>

Last updated 1 year ago