#include <robot.h>
Public Member Functions | |
Real | get_a (void) const |
Return a. | |
Real | get_alpha (void) const |
Return alpha. | |
Real | get_B (void) const |
Return B. | |
Real | get_Cf (void) const |
Return Cf. | |
Real | get_d (void) const |
Return d. | |
bool | get_DH (void) const |
Return DH value. | |
Real | get_Gr (void) const |
Return Gr. | |
ReturnMatrix | get_I (void) const |
Return I. | |
Real | get_Im (void) const |
Return Im. | |
bool | get_immobile (void) const |
Return immobile. | |
Real | get_joint_offset (void) const |
Return joint_offset. | |
int | get_joint_type (void) const |
Return the joint type. | |
Real | get_m (void) const |
Return m. | |
ReturnMatrix | get_mc (void) |
Return mc. | |
ReturnMatrix | get_p (void) const |
Return p. | |
Real | get_q (void) const |
Return joint position (theta if joint type is rotoide, d otherwise). | |
ReturnMatrix | get_r (void) |
Return r. | |
Real | get_theta (void) const |
Return theta. | |
Real | get_theta_max (void) const |
Return theta_max. | |
Real | get_theta_min (void) const |
Return theta_min. | |
Link (const int jt=0, const Real it=0.0, const Real id=0.0, const Real ia=0.0, const Real ial=0.0, const Real theta_min=-M_PI/2, const Real theta_max=M_PI/2, const Real it_off=0.0, const Real mass=1.0, const Real cmx=0.0, const Real cmy=0.0, const Real cmz=0.0, const Real ixx=0.0, const Real ixy=0.0, const Real ixz=0.0, const Real iyy=0.0, const Real iyz=0.0, const Real izz=0.0, const Real iIm=0.0, const Real iGr=0.0, const Real iB=0.0, const Real iCf=0.0, const bool dh=true, const bool min_inertial_para=false, const bool immobile=false) | |
Constructor. | |
void | set_B (const Real B_) |
Set B. | |
void | set_Cf (const Real Cf_) |
Set Cf. | |
void | set_I (const Matrix &I) |
Set I. | |
void | set_Im (const Real Im_) |
Set Im. | |
void | set_immobile (bool im) |
Set immobile. | |
void | set_m (const Real m_) |
Set m. | |
void | set_mc (const ColumnVector &mc_) |
Set mc. | |
void | set_r (const ColumnVector &r_) |
Set r. | |
void | transform (const Real q) |
Set the rotation matrix R and the vector p. | |
~Link () | |
Destructor. | |
Public Attributes | |
Real | qp |
Joint velocity. | |
Real | qpp |
Joint acceleration. | |
Matrix | R |
Orientation matrix of actual link w.r.t to previous link. | |
Private Attributes | |
Real | a |
a DH parameter. | |
Real | alpha |
alpha DH parameter. | |
Real | B |
Viscous coefficient. | |
Real | Cf |
Coulomb fiction coefficient. | |
Real | d |
d DH parameter. | |
bool | DH |
DH notation(true) or DH modified notation. | |
Real | Gr |
Gear Ratio. | |
Matrix | I |
Inertia matrix w.r.t. center of mass and link coordinate system orientation. | |
Real | Im |
Motor Inertia. | |
bool | immobile |
true if the joint is to be considered locked - ignored for inverse kinematics, but can still be reassigned through transform | |
Real | joint_offset |
Offset in joint angle (rotoide and prismatic). | |
int | joint_type |
Joint type. | |
Real | m |
Mass of the link. | |
ColumnVector | mc |
Mass center of gravity (used if min_para = true). | |
bool | min_para |
Minimum inertial parameter. | |
ColumnVector | p |
Position vector of actual link w.r.t to previous link. | |
ColumnVector | r |
Position of center of mass w.r.t. link coordinate system (min_para=F). | |
Real | theta |
theta DH parameter. | |
Real | theta_max |
Max joint angle. | |
Real | theta_min |
Min joint angle. | |
Friends | |
class | mRobot |
class | mRobot_min_para |
class | Robot |
class | Robot_basic |
Link definitions.
A n degree of freedom (dof) serial manipulator is composed of n links. This class describe the property of a link. A n dof robot has n instance of the class Link.
Link::Link | ( | const int | jt = 0 , |
const Real | it = 0.0 , |
||
const Real | id = 0.0 , |
||
const Real | ia = 0.0 , |
||
const Real | ial = 0.0 , |
||
const Real | theta_min = -M_PI/2 , |
||
const Real | theta_max = M_PI/2 , |
||
const Real | it_off = 0.0 , |
||
const Real | mass = 1.0 , |
||
const Real | cmx = 0.0 , |
||
const Real | cmy = 0.0 , |
||
const Real | cmz = 0.0 , |
||
const Real | ixx = 0.0 , |
||
const Real | ixy = 0.0 , |
||
const Real | ixz = 0.0 , |
||
const Real | iyy = 0.0 , |
||
const Real | iyz = 0.0 , |
||
const Real | izz = 0.0 , |
||
const Real | iIm = 0.0 , |
||
const Real | iGr = 0.0 , |
||
const Real | iB = 0.0 , |
||
const Real | iCf = 0.0 , |
||
const bool | dh = true , |
||
const bool | min_inertial_para = false , |
||
const bool | immobile = false |
||
) |
Link::~Link | ( | ) | [inline] |
Real Link::get_a | ( | void | ) | const [inline] |
Real Link::get_alpha | ( | void | ) | const [inline] |
Real Link::get_B | ( | void | ) | const [inline] |
Real Link::get_Cf | ( | void | ) | const [inline] |
Real Link::get_d | ( | void | ) | const [inline] |
bool Link::get_DH | ( | void | ) | const [inline] |
Real Link::get_Gr | ( | void | ) | const [inline] |
ReturnMatrix Link::get_I | ( | void | ) | const [inline] |
Real Link::get_Im | ( | void | ) | const [inline] |
bool Link::get_immobile | ( | void | ) | const [inline] |
Real Link::get_joint_offset | ( | void | ) | const [inline] |
int Link::get_joint_type | ( | void | ) | const [inline] |
Real Link::get_m | ( | void | ) | const [inline] |
ReturnMatrix Link::get_mc | ( | void | ) | [inline] |
ReturnMatrix Link::get_p | ( | void | ) | const [inline] |
Real Link::get_q | ( | void | ) | const |
ReturnMatrix Link::get_r | ( | void | ) | [inline] |
Real Link::get_theta | ( | void | ) | const [inline] |
Real Link::get_theta_max | ( | void | ) | const [inline] |
Real Link::get_theta_min | ( | void | ) | const [inline] |
void Link::set_B | ( | const Real | B_ | ) | [inline] |
void Link::set_Cf | ( | const Real | Cf_ | ) | [inline] |
void Link::set_I | ( | const Matrix & | I | ) |
void Link::set_Im | ( | const Real | Im_ | ) | [inline] |
void Link::set_immobile | ( | bool | im | ) | [inline] |
void Link::set_m | ( | const Real | m_ | ) | [inline] |
void Link::set_mc | ( | const ColumnVector & | mc_ | ) |
void Link::set_r | ( | const ColumnVector & | r_ | ) |
void Link::transform | ( | const Real | q | ) |
friend class mRobot_min_para [friend] |
friend class Robot_basic [friend] |
Real Link::alpha [private] |
bool Link::DH [private] |
Matrix Link::I [private] |
bool Link::immobile [private] |
Real Link::joint_offset [private] |
int Link::joint_type [private] |
ColumnVector Link::mc [private] |
bool Link::min_para [private] |
ColumnVector Link::p [private] |
Matrix Link::R |
ColumnVector Link::r [private] |
Real Link::theta [private] |
Real Link::theta_max [private] |
Real Link::theta_min [private] |