Expand description
§Robot-description-builder 🦀
A Rust Crate for create (valid) Robot descriptions
robot-description-builder
is a Rust crate for creating robot descriptions in multiple formats, like URDF, for use in various robotics and simulation applications such as ROS and Gazebo Simulator.
§Installation
robot-description-builder
can be installed from Crates.io using the following command:
$ carge add robot-description-builder
§Features
- Support for the Full URDF spec, fully compatible starting at ROS Indigo. (
Transmission
s are different before ROS Indigo, other features should work)- Support for all base URDF geometry types:
Box
,Cylinder
,Sphere
andMesh
.
- Support for all base URDF geometry types:
- Mirroring of Kinematic chains.
- Easy cloning/renaming Kinematic chains by changing the
group_id
.
🚧UNDER CONSTRUCTION: EXPAND FEATURE LIST🚧
§Compatibility chart
Spec | Support | State |
---|---|---|
URDF | ✔/🔩 | Fully supported TRANSMISIONS ARE CURRENTLY INCORRECT |
URDF Gazebo | 🔩/❌ | Extension unsupported, Base URDF compatibility avaible |
SDF | ❌ | Planned |
§Using robot-description-builder
It is recommended to import only the items needed from the function or import the crate as rdb
, since the crate name (robot_description_builder
) is quite long.
use robot_description_builder as rdb;
use rdb::prelude::*;
// TODO: EXPAND
🚧UNDER CONSTRUCTION: EXAMPLE🚧
§Documentation
The documentation for this Rust Crate can be found on docs.rs.
🚧UNDER CONSTRUCTION: DOCUMENTATION IS UNFINISHED🚧
§Roadmap
- Improve documentation.
-
Add shorthand
Link
constructors. - Add (partial) support for SDFormat.
- Add support for the Gazebo URDF extension support.
- (Optional) Add (partial) support for the MIT Drake URDF extension
§Lessons
🚧UNDER CONSTRUCTION: ADD LESSONS/DESIGN DECISIONS🚧
§License
robot-description-builder
is licensed under the MIT license.
Modules§
- errors
- Error-types used in
robot-description-builder
. - helper_
functions - identifiers
- TODO: GLOBAL DOCS
- joint_
data - TODO: Pub(crate) for now pub(crate) PUB FOR NOW FOR DOC TESTS????
- link_
data - All datatypes which a link can hold.
- linkbuilding
- material
- The
Material
System - prelude
- to_rdf
- The infrastructure to describe a
Robot
in a robot description format.
Structs§
- Chained
- A Wrapper to indicate if the current builder is a chain.
- Joint
- Joint
Builder - Kinematic
Tree - A representation of a basic Kinematic structure.
- Link
- A
Link
in a Kinematic Structure. - Robot
- Smart
Joint Builder - Transform
- A
Transform
type to represent the transform from the parent coordinate system to a new coordinate system.
Enums§
- Joint
Type - An enum to represent the the types of
Joint
. - Mirror
Axis - A
MirrorAxis
enum to represent a plane to mirror about.
Traits§
- Kinematic
Interface - A trait which allows for the existance of multiple different Kinematic Structures, such as
Robot
andKinematicTree
.