robots

This package provides basic structures and data exchange mechanisms that are building blocks for robotics support.

The primary data representation for robot models is based on the Unified Robot Description Format (URDF).

Note

A detailed description of the model is available on the URDF Model wiki. This package parses URDF v1.0 according to the URDF XSD Schema.

Model

The root of the model is the RobotModel class, which describes a robot consisting of a set of link elements, and a set of joint elements connecting the links together.

RobotModel

RobotModel is the root element of the model.

Joint

Representation of the kinematics and dynamics of a joint and its safety limits.

Link

Link represented as a rigid body with an inertia, visual, and collision features.

Geometric description

The robot itself as well as its links can be geometrically described using the following classes.

Origin

Reference frame represented by an instance of Frame.

Geometry

Geometrical description of the shape of a link.

Box

3D shape primitive representing a box.

Cylinder

3D shape primitive representing a cylinder.

Sphere

3D shape primitive representing a sphere.

Capsule

3D shape primitive representing a capsule.

MeshDescriptor

Description of a mesh.

Material

Material description.

Texture

Texture description.

Color

Color represented in RGBA.

Joint

The joint describes the kinematics and dynamics of the robot’s joint.

ParentLink

Describes a parent relation between a joint its parent link.

ChildLink

Describes a child relation between a joint and its child link.

Calibration

Reference positions of the joint, used to calibrate the absolute position.

Dynamics

Physical properties of the joint used for simulation of dynamics.

Limit

Joint limit properties.

Axis

Representation of an axis or vector.

Mimic

Description of joint mimic.

SafetyController

Safety controller properties.

Resources

Model descriptions usually do not contain embedded geometry information but only descriptions, filenames or URLs for externally hosted resources. For that purpose, this package provides various loader classes that help automate the processing of these resources.

AbstractMeshLoader

Basic contract/interface for all mesh loaders.

DefaultMeshLoader

Handles basic mesh loader tasks, mostly from local files.

GithubPackageMeshLoader

Loads resources stored in Github.

LocalPackageMeshLoader

Loads suport package resources stored locally.