RobotArmLib  0.0.4
Robot Arm Library [WIP]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Public Attributes | Protected Attributes | Friends | List of all members
rb::kin::Link Class Reference

A class handle single robot link Link implement the model of single of robot link. More...

#include <link.h>

Public Member Functions

 Link ()
 Default Constructor. More...
 
 Link (const double a0, const double alpha0, const double d0, const double theta0, const double up_lim0=360., const double low_lim0=-360., const double offset0=0., const Joint type0=Joint::REVOLUTE, const double mass0=0., const rb::math::Matrix3 I0=rb::math::Matrix3::Identity(), const rb::math::Vector3 r0=rb::math::Vector3::Zero())
 Constructor with certain link data. More...
 
 ~Link ()
 Destructor.
 
rb::math::Matrix4 computeTransform (const double &q, const bool &update=false)
 Compute homogeneous transformation matrix of the link by giving joint value, and return the matrix. More...
 

Public Attributes

double a
 Link length data member of modified D-H parameter for link. More...
 
double alpha
 Link twist data member of modified D-H parameter for link. More...
 
double d
 Link offset data member of modified D-H parameter for link. More...
 
double theta
 Joint angle data member of modified D-H parameter for link. More...
 
double up_lim
 Upper limit data member of modified D-H parameter for link. More...
 
double low_lim
 Lower limit data member of modified D-H parameter for link. More...
 
double offset
 Joint offset data member of modified D-H parameter for link. More...
 
rb::math::Matrix4 tf
 Link transformation data member of modified D-H parameter for link. More...
 

Protected Attributes

Joint jt_type
 Joint type data member of of the link. More...
 
double mass
 Link mass. More...
 
rb::math::Matrix3 I
 Inertia matrix about link Center of Gravity (CoG). More...
 
rb::math::Vector3 r
 Link CoG w.r.t link coordinate frame. More...
 

Friends

rb::math::Matrix4 operator* (Link &lhs, Link &rhs)
 Overload multiply operator to concatenate transformation of two links. More...
 
rb::math::Matrix4 operator* (rb::math::Matrix4 &lhs, Link &rhs)
 Overload multiply operator to concatenate transformation of two links. More...
 
rb::math::Matrix4operator*= (rb::math::Matrix4 &lhs, Link &rhs)
 Overload multiply operator to concatenate transformation of two links. More...
 

Detailed Description

A class handle single robot link Link implement the model of single of robot link.

Constructor & Destructor Documentation

rb::kin::Link::Link ( )

Default Constructor.

Default constructor.

Here is the call graph for this function:

rb::kin::Link::Link ( const double  a0,
const double  alpha0,
const double  d0,
const double  theta0,
const double  up_lim0 = 360.,
const double  low_lim0 = -360.,
const double  offset0 = 0.,
const Joint  type0 = Joint::REVOLUTE,
const double  mass0 = 0.,
const rb::math::Matrix3  I0 = rb::math::Matrix3::Identity(),
const rb::math::Vector3  r0 = rb::math::Vector3::Zero() 
)

Constructor with certain link data.

Parameters
a0Length of the link (mm)
alpha0Twist angle of the link (degree)
d0Joint offset of the link (mm)
theta0Joint angle of the link (degree)
up_lim0Upper limit of the link
low_lim0Lower limit of the link
offset0Joint coordinate offset
type0Joint type of the link
mass0The mass of the link
I0The Inertia Matrix of the link
r0The vector of the link Center of Gravity w.r.t link coordinate frame

Here is the call graph for this function:

Member Function Documentation

rb::math::Matrix4 rb::kin::Link::computeTransform ( const double &  q,
const bool &  update = false 
)

Compute homogeneous transformation matrix of the link by giving joint value, and return the matrix.

Parameters
qGiven joint value.
updateA boolean to indicate if need to update transformation (tf) of the link.
Returns
Homogeneous transformation matrix of the link by giving joint value.

Here is the call graph for this function:

Friends And Related Function Documentation

rb::math::Matrix4 operator* ( Link lhs,
Link rhs 
)
friend

Overload multiply operator to concatenate transformation of two links.

Parameters
lhsA link class at left hand side.
rhsA link class at right hand side.
Returns
A 4X4 matrix that storage chaining transformation of two links.
rb::math::Matrix4 operator* ( rb::math::Matrix4 lhs,
Link rhs 
)
friend

Overload multiply operator to concatenate transformation of two links.

Parameters
lhsA 4x4 matrix at left hand side.
rhsA link class at right hand side.
Returns
A 4X4 matrix that storage chaining transformation of two links.
rb::math::Matrix4& operator*= ( rb::math::Matrix4 lhs,
Link rhs 
)
friend

Overload multiply operator to concatenate transformation of two links.

Parameters
lhsA 4x4 matrix at left hand side.
rhsA link class at right hand side.
Returns
A 4X4 matrix that storage chaining transformation of a 4x4 matrix and a link.

Member Data Documentation

double rb::kin::Link::a

Link length data member of modified D-H parameter for link.

Link length (mm)

double rb::kin::Link::alpha

Link twist data member of modified D-H parameter for link.

Link twist angle (degree)

double rb::kin::Link::d

Link offset data member of modified D-H parameter for link.

Link offset (mm)

rb::math::Matrix3 rb::kin::Link::I
protected

Inertia matrix about link Center of Gravity (CoG).

Joint rb::kin::Link::jt_type
protected

Joint type data member of of the link.

Index to indicate the joint type of this link.

double rb::kin::Link::low_lim

Lower limit data member of modified D-H parameter for link.

Lower limit of joint or link offset.

double rb::kin::Link::mass
protected

Link mass.

double rb::kin::Link::offset

Joint offset data member of modified D-H parameter for link.

Joint (revolute or prismatic) coordinate offset.

rb::math::Vector3 rb::kin::Link::r
protected

Link CoG w.r.t link coordinate frame.

rb::math::Matrix4 rb::kin::Link::tf

Link transformation data member of modified D-H parameter for link.

Homogeneous transformation matrix describe internal link transformation.

double rb::kin::Link::theta

Joint angle data member of modified D-H parameter for link.

Joint angel (degree)

double rb::kin::Link::up_lim

Upper limit data member of modified D-H parameter for link.

Upper limit of joint or link offset.


The documentation for this class was generated from the following files: