Main Content

Manipulator Modeling

Manipulator rigid body tree model import, forward kinematics, dynamics, joint- and task-space motion models

Robot models simulate the kinematic and dynamic properties of manipulator robots and other rigid body systems. The models are rigidBodyTree objects containing rigidBody and rigidBodyJoint elements with joint transformations and inertial properties.

Access predefined models for certain commercial robots, such as Kinova® and KUKA™, using the loadrobot function.

Import existing UDRF or Simscape™ Multibody™ models using importrobot.

Export URDF details in file format from rigid body tree model using exportrobot or create a URDF exporter object using urdfExporter.

Model the motion of the robots using joint- or task-space motion models as jointSpaceMotionModel and taskSpaceMotionModel objects.

Functions

expand all

importrobotImport rigid body tree model from URDF, Xacro, SDF file, text, or Simscape Multibody model
loadrobotLoad rigid body tree robot model from robot library (Since R2019b)
exportrobotExport URDF details in file format from rigid body tree model (Since R2023b)
rigidBodyTreeCreate tree-structured robot
rigidBodyCreate a rigid body
rigidBodyJointCreate a joint
interactiveRigidBodyTreeInteract with rigid body tree robot models (Since R2020a)
urdfExporterCreate URDF exporter object from rigid body tree robot model (Since R2023b)
writefileGenerate URDF file for rigid body tree robot model (Since R2023b)
writenodeGenerate XML DOM node for rigid body tree robot model (Since R2023b)
jointSpaceMotionModelModel rigid body tree motion given joint-space inputs (Since R2019b)
taskSpaceMotionModelModel rigid body tree motion given task-space reference inputs (Since R2019b)
getTransformGet transform between body frames
randomConfigurationGenerate random configuration of robot
homeConfigurationGet home configuration of robot
showShow robot model in figure
centerOfMassCenter of mass position and Jacobian
externalForceCompose external force matrix relative to base
forwardDynamicsJoint accelerations given joint torques and states
geometricJacobianGeometric Jacobian for robot configuration
gravityTorqueJoint torques that compensate gravity
inverseDynamicsRequired joint torques for given motion
massMatrixJoint-space mass matrix
velocityProductJoint torques that cancel velocity-induced forces

Blocks

expand all

Forward DynamicsJoint accelerations given joint torques and states
Inverse DynamicsRequired joint torques for given motion
Get JacobianGeometric Jacobian for robot configuration
Get TransformGet transform between body frames
Gravity TorqueJoint torques that compensate gravity
Joint Space Mass MatrixJoint-space mass matrix for robot configuration
Velocity Product TorqueJoint torques that cancel velocity-induced forces
Joint Space Motion ModelModel rigid body tree motion given joint-space inputs (Since R2019b)
Task Space Motion ModelModel rigid body tree motion given task-space inputs (Since R2019b)

Topics

  • Rigid Body Tree Robot Model

    Explore the structure and specific components of a rigid body tree robot model.

  • Build a Robot Step by Step

    This example goes through the process of building a robot step by step, showing you the different robot components and how functions are called to build it.

  • Joint-Space Motion Model

    The joint-space motion model characterizes the motion of a manipulator under closed-loop joint-space position control, as used in the jointSpaceMotionModel object and Joint Space Motion Model block.

  • Task-Space Motion Model

    The task-space motion model characterizes the motion of a manipulator under closed-loop task-space position control, as used in the taskSpaceMotionModel object and Task Space Motion Model block.

  • Robot Dynamics

    This topic details the different elements, properties, and equations of rigid body robot dynamics.

  • Install Robotics System Toolbox Robot Library Data Support Package

    Use Add-On to add robot mesh data.