ROBOOP, A Robotics Object Oriented Package in C++
|
#include <robot.h>
Public Member Functions | |
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. | |
~Link () | |
Destructor. | |
void | transform (const Real q) |
Set the rotation matrix R and the vector p. | |
bool | get_DH (void) const |
Return DH value. | |
int | get_joint_type (void) const |
Return the joint type. | |
Real | get_theta (void) const |
Return theta. | |
Real | get_d (void) const |
Return d. | |
Real | get_a (void) const |
Return a. | |
Real | get_alpha (void) const |
Return alpha. | |
Real | get_q (void) const |
Return joint position (theta if joint type is rotoide, d otherwise). More... | |
Real | get_theta_min (void) const |
Return theta_min. | |
Real | get_theta_max (void) const |
Return theta_max. | |
Real | get_joint_offset (void) const |
Return joint_offset. | |
ReturnMatrix | get_mc (void) |
Return mc. | |
ReturnMatrix | get_r (void) |
Return r. | |
ReturnMatrix | get_p (void) const |
Return p. | |
Real | get_m (void) const |
Return m. | |
Real | get_Im (void) const |
Return Im. | |
Real | get_Gr (void) const |
Return Gr. | |
Real | get_B (void) const |
Return B. | |
Real | get_Cf (void) const |
Return Cf. | |
ReturnMatrix | get_I (void) const |
Return I. | |
bool | get_immobile (void) const |
Return immobile. | |
void | set_m (const Real m_) |
Set m. | |
void | set_mc (const ColumnVector &mc_) |
Set mc. More... | |
void | set_r (const ColumnVector &r_) |
Set r. More... | |
void | set_Im (const Real Im_) |
Set Im. | |
void | set_B (const Real B_) |
Set B. | |
void | set_Cf (const Real Cf_) |
Set Cf. | |
void | set_I (const Matrix &I) |
Set I. More... | |
void | set_immobile (bool im) |
Set immobile. | |
Public Attributes | |
Matrix | R |
Orientation matrix of actual link w.r.t to previous link. | |
Real | qp |
Joint velocity. | |
Real | qpp |
Joint acceleration. | |
Private Attributes | |
int | joint_type |
Joint type. | |
Real | theta |
theta DH parameter. | |
Real | d |
d DH parameter. | |
Real | a |
a DH parameter. | |
Real | alpha |
alpha DH parameter. | |
Real | theta_min |
Min joint angle. | |
Real | theta_max |
Max joint angle. | |
Real | joint_offset |
Offset in joint angle (rotoide and prismatic). | |
bool | DH |
DH notation(true) or DH modified notation. | |
bool | min_para |
Minimum inertial parameter. | |
ColumnVector | r |
Position of center of mass w.r.t. link coordinate system (min_para=F). | |
ColumnVector | p |
Position vector of actual link w.r.t to previous link. | |
Real | m |
Mass of the link. | |
Real | Im |
Motor Inertia. | |
Real | Gr |
Gear Ratio. | |
Real | B |
Viscous coefficient. | |
Real | Cf |
Coulomb fiction coefficient. | |
ColumnVector | mc |
Mass center of gravity (used if min_para = true). | |
Matrix | I |
Inertia matrix w.r.t. center of mass and link coordinate system orientation. | |
bool | immobile |
true if the joint is to be considered locked - ignored for inverse kinematics, but can still be reassigned through transform | |
Friends | |
class | Robot_basic |
class | Robot |
class | mRobot |
class | mRobot_min_para |
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.
Real Link::get_q | ( | void | ) | const |
Return joint position (theta if joint type is rotoide, d otherwise).
The joint offset is removed from the value.
Definition at line 295 of file robot.cpp.
References d, joint_offset, joint_type, and theta.
Referenced by Robot_basic::get_q().
void Link::set_I | ( | const Matrix & | I | ) |
Set I.
Set the inertia matrix.
Definition at line 331 of file robot.cpp.
References I.
Referenced by perturb_robot().
void Link::set_mc | ( | const ColumnVector & | mc_ | ) |