Function Reference


    Homogeneous transformations 3D Manipulate homogeneous transformations and orthonormal rotation matrices
    Homogeneous transformations 2D Manipulate homogeneous transformations and orthonormal rotation matrices
    Homogeneous transformation utilities Manipulate homogeneous transformations and orthonormal rotation matrices
    Homogeneous points and lines Manipulate homogeneous points and lines
    Differential motion Convert differential motion between coordinate frames
    Trajectory generation Create motion trajectory and interpolate poses
    Pose representation classes
    Serial-link manipulator Class representing the kinematics and dynamics of a serial-link manipulator
        Models Models of serial-link manipulators
        Kinematics Serial-link manipulator kinematic functions
        Dynamics Serial-link manipulator dynamic functions
    Mobile robot Classes for mobile robotics problems
        Localization Mobile robot localization algorithms
        Path planning Mobile robot path planning algorithms
    Graphics Useful graphic primitives
    Utility Miscellaneous functions
    Demonstrations
    Examples

Homogeneous transformations 3D

angvec2rangle/vector to RM
angvec2trangle/vector to HT
eul2rEuler angles to RM
eul2trEuler angles to HT
ishomogtrue if argument is a 4x4 matrix
isunittrue if argument is a unit vector
isrottrue if argument is a 3x3 matrix
oa2rorientation and approach vector to RM
oa2trorientation and approach vector to HT
rotxRM for rotation about X-axis
rotyRM for rotation about Y-axis
rotzRM for rotation about Z-axis
rpy2rroll/pitch/yaw angles to RM
rpy2trroll/pitch/yaw angles to HT
tr2angvecHT/RM to angle/vector form
tr2eulHT/RM to Euler angles
tr2rpyHT/RM to roll/pitch/yaw angles
translset or extract the translational component of HT
trchainsequence of HT
trinterpinterpolate an HT
tripleangleGUI for triple angle visualization
trnormnormalize HT
trprintprint an HT
trotxHT for rotation about X-axis
trotyHT for rotation about Y-axis
trotzHT for rotation about Z-axis
trlogefficient logarithm
trexpefficient exponentiation
trscalepure scale change

Homogeneous transformations 2D

ishomog2true if argument is a 4x4 matrix
isrot2true if argument is a 3x3 matrix
rot2rotation matrix in 2D
transl2set or extract the translational component of HT
trchain2sequence of HT
trexp2exp in 2D
trinterp2interpolate an HT
trot2HT for rotation in 2D
trprint2print an HT

Homogeneous transformation utilities

r2tRM to HT
t2rHT to RM
rt2tr(R,t) to HT
tr2rtHT to (R,t)

Homogeneous points and lines

e2hEuclidean coordinates to homogeneous
h2ehomogeneous coordinates to Euclidean
homlinecreate line from 2 points
homtranstransform points

Differential motion

delta2trdifferential motion vector to HT
eul2jacEuler angles to Jacobian
rpy2jacRPY angles to Jacobian
skewvector to skew symmetric matrix
skewavector to augmented skew symmetric matrix
tr2deltaHT to differential motion vector
tr2jacHT to Jacobian
vexskew symmetric matrix to vector
vexaaugmented skew symmetric matrix to vector
wtranstransform wrench between frames

Trajectory generation

ctrajCartesian trajectory
jtrajjoint space trajectory
lspb1D trapezoidal trajectory
mtrajmulti-axis trajectory for arbitrary function
mstrajmulti-axis multi-segment trajectory
tpoly1D polynomial trajectory
trinterpinterpolate HT s
trinterp2interpolate HT s

Pose representation classes

+ETS2elementary transform sequence in 2D
+ETS3elementary transform sequence in 3D
Quaterniongeneral quaternions
SO2rotations SO(2)
SE2poses SE(2)
SO3rotations SO(3)
SE3poses SE(3)
Twist2D and 3D twists
UnitQuaternionunit quaternions
RTBPoseAbstract pose support

Serial-link manipulator

DHFactorconvert elementary transformations to DH form
Linkconstruct a robot link object
Prismaticconstruct a prismatic link object
PrismaticMDHconstruct a prismatic link object (MDH params)
Revoluteconstruct a revolute link object
RevoluteMDHconstruct a revolute link object (MDH params)
SerialLinkconstruct a serial-link robot object
SerialLink.frictionreturn joint friction torques
SerialLink.nofrictionreturn a robot object with no friction
SerialLink.perturbreturn a robot object with perturbed parameters
SerialLink.plotplot/animate robot
SerialLink.teachdrive a graphical robot

Models

modelslist/search all models
mdl_KR5Kuka KR5
mdl_S4ABB2p8ABB S4 2.8 (DH, kine)
mdl_ballhigh DOF ball robot
mdl_baxterRethink Robotics Baxter
mdl_cobra600Adept SCARA robot
mdl_coilhigh DOF coiled robot
mdl_Fanuc10LFanuc 10L (DH, kine)
mdl_hyper2dhigh DOF planar
mdl_hyper3dhigh DOF 3D
mdl_irb140ABB IRB140
mdl_irb140_mdhABB IRB140 (MDH)
mdl_jacoKinova Jaco (DH)
mdl_KR5Kuka KR5 (DH)
mdl_LWRKuka LWR (DH)
mdl_m16Fanuc M16
mdl_micoKinova Mico (DH)
mdl_MotomanHP6Motoman HP6 (DH, kine)
mdl_naoAlderbaran Nao humanoid
mdl_p8Puma 560 on an XY base
mdl_phantomxPhantomX pincher
mdl_planar11 line planar robot
mdl_planar21 line planar robot
mdl_planar31 line planar robot
mdl_puma560Puma 560 data (DH, kine, dyn)
mdl_puma560akbPuma 560 data (MDH, kine, dyn)
mdl_quadrotorsimple quadcopter model
mdl_stanfordStanford arm data (DH, kine, dyn)
mdl_stanford_mdhStanford arm data (MDH, kine)
mdl_twolinksimple 2-link example (DH, kine)
mdl_twolink_mdhsimple 2-link example (MDH, kine)
mdl_twolink_symsimple 2-link example (DH, kine, symbolic)
mdl_ur3Universal Robotics UR3 (DH, kine, dyn)
mdl_ur5Universal Robotics UR5 (DH, kine, dyn)
mdl_ur10Universal Robotics UR10 (DH, kine, dyn)

Kinematics

DHFactortransform sequence to DH description
ETS2simplified kinematics in 2D
ETS3simplified kinematics in 3D
jsingufind joint singularity
SerialLink.fkineforward kinematics
SerialLink.ikineinverse kinematics (numeric)
SerialLink.ikine6sinverse kinematics for 6-axis arm with sph.wrist
SerialLink.jacob0Jacobian in base coordinate frame
SerialLink.jacobeJacobian in end-effector coordinate frame
SerialLink.manipltycompute manipulability
trchaintransform chain in 3D
trchain2transform chain in 2D

Dynamics

SerialLink.accelforward dynamics
SerialLink.cinertiaCartesian manipulator inertia matrix
SerialLink.corioliscentripetal/coriolis torque
SerialLink.fdynforward dynamics
wtranstransform a force/moment
SerialLink.gravloadgravity loading
SerialLink.inertiamanipulator inertia matrix
SerialLink.itorqueinertia torque
SerialLink.rneinverse dynamics

Mobile robot

LandmarkMappoint feature map object
RandomPathdriver for Vehicle object
RangeBearingSensor"laser scanner" object
Vehicleabstract vehicle superclass
Bicycleconstruct a mobile robot with bicycle like kinematics
Unicycleconstruct a mobile robot with unicycle like kinematics
sl_bicycleSimulink "bicycle model" of non-holonomic wheeled vehicle
NavigationNavigation superclass
Sensorrobot sensor superclass
plot_vehicleplot vehicle

Localization

EKFextended Kalman filter object
ParticleFilterMonte Carlo estimator
PoseGraphpose-graph SLAM

Path planning

Bug2bug navigation
DXformdistance transform from map
DstarD* planner
Latticelattice planner
PRMprobabilistic roadmap planner
RRTrapidly exploring random tree

Graphics

circlecompute/draw points on a circle
mplottime series plotting
plot2plot trajectory
plotpplot points
plotvolset plot bounds
plot_arrowdraw an arrow
plot_boxdraw a box
plot_circledraw a circle
plot_ellipsedraw an ellipse
plot_homlineplot homogeneous line
plot_pointplot points
plot_polyplot polygon
plot_spheredraw a sphere
qplotplot joint angle trajectories
trplotplot HT as a coordinate frame
trplot2plot HT, SE(2), as a coordinate frame
tranimateanimate a coordinate frame
tranimate2animate a coordinate frame
xaxisset x-axis scaling
yaxisset y-axis scaling
xyzlabellabel axes x, y and z

Utility

aboutsummary of object size and type
angdiffsubtract 2 angles modulo 2pi
bresenhamBresenhan line drawing
colnormcolumnwise norm of matrix
diff2elementwise diff
distancexformcompute distance transform
edgelisttrace edge of a blob
gauss2dGaussian distribution in 2D
ismatrixtrue if non scalar
isvectrue if argument is a 3-vector
isunittrue if argument is a unit vector
numcolsnumber of columns in matrix
numrowsnumber of rows in matrix
peakfind peak in 1D signal
peak2find peak in 2D signal
PGraphgeneral purpose graph class
pickregionpick a region in figure
PluckerPlucker line class
polydiffderivative of polynomial
Polygongeneral purpose polygon class
randinitinitialize random number generator
rampcreate linear ramp
runscriptstep through a script file
unitunitize a vector
tb_optparsetoolbox argument parser
stlReadread an STL file
RTBPlotgraphics support
chi2inv_rtbsimple inverse chi squared

Demonstrations

rtbdemoSerial-link manipulator demonstration

Examples

sl_quadcopterSimulink model of a flying quadcopter
sl_braitenbergSimulink model a Braitenberg vehicle
movepointnon-holonomic vehicle moving to a point
movelinenon-holonomic vehicle moving to a line
moveposenon-holonomic vehicle moving to a pose
walkingexample of 4-legged walking robot
eg_inertiajoint 1 inertia I(q1,q2)
eg_inertia22joint 2 inertia I(q3)
eg_gravjoint 2 gravity load g(q2,q3)