Handle Closed Loop Inverse Kinematics scheme. More...
#include <clik.h>
Public Member Functions | |
Clik () | |
Clik (const Robot &robot_, const DiagonalMatrix &Kp_, const DiagonalMatrix &Ko_, const Real eps_=0.04, const Real lambda_max_=0.04, const Real dt=1.0) | |
Constructor. | |
Clik (const mRobot &mrobot_, const DiagonalMatrix &Kp_, const DiagonalMatrix &Ko_, const Real eps_=0.04, const Real lambda_max_=0.04, const Real dt=1.0) | |
Constructor. | |
Clik (const mRobot_min_para &mrobot_min_para_, const DiagonalMatrix &Kp_, const DiagonalMatrix &Ko_, const Real eps_=0.04, const Real lambda_max_=0.04, const Real dt=1.0) | |
Constructor. | |
Clik (const Clik &x) | |
Copy constructor. | |
Clik & | operator= (const Clik &x) |
Overload = operator. | |
void | q_qdot (const Quaternion &qd, const ColumnVector &pd, const ColumnVector &pddot, const ColumnVector &wd, ColumnVector &q, ColumnVector &qp) |
Obtain joints position and velocity. | |
~Clik () | |
Private Member Functions | |
int | endeff_pos_ori_err (const ColumnVector &pd, const ColumnVector &pddot, const Quaternion &qd, const ColumnVector &wd) |
Obtain end effector position and orientation error. | |
Private Attributes | |
Real | dt |
Time frame. | |
Real | eps |
Range of singular region in Jacobian DLS inverse. | |
DiagonalMatrix | Ko |
Orientation error gain. | |
ColumnVector | Koe0Quat |
Ko times orientation error (quaternion vector part). | |
DiagonalMatrix | Kp |
Position error gain. | |
ColumnVector | Kpep |
Kp times position error. | |
Real | lambda_max |
Damping factor in Jacobian DLS inverse. | |
mRobot | mrobot |
mRobot instance. | |
mRobot_min_para | mrobot_min_para |
mRobot_min_para instance. | |
ColumnVector | q |
Clik joint position. | |
ColumnVector | qp |
Clik joint velocity. | |
ColumnVector | qp_prev |
Clik previous joint velocity. | |
Robot | robot |
Robot instance. | |
short | robot_type |
Robot type used. | |
ColumnVector | v |
Quaternion vector part. |
Clik::Clik | ( | ) | [inline] |
Clik::Clik | ( | const Robot & | robot_, |
const DiagonalMatrix & | Kp_, | ||
const DiagonalMatrix & | Ko_, | ||
const Real | eps_ = 0.04 , |
||
const Real | lambda_max_ = 0.04 , |
||
const Real | dt = 1.0 |
||
) |
Clik::Clik | ( | const mRobot & | mrobot_, |
const DiagonalMatrix & | Kp_, | ||
const DiagonalMatrix & | Ko_, | ||
const Real | eps_ = 0.04 , |
||
const Real | lambda_max_ = 0.04 , |
||
const Real | dt = 1.0 |
||
) |
Clik::Clik | ( | const mRobot_min_para & | mrobot_min_para_, |
const DiagonalMatrix & | Kp_, | ||
const DiagonalMatrix & | Ko_, | ||
const Real | eps_ = 0.04 , |
||
const Real | lambda_max_ = 0.04 , |
||
const Real | dt = 1.0 |
||
) |
Clik::Clik | ( | const Clik & | x | ) |
Clik::~Clik | ( | ) | [inline] |
int Clik::endeff_pos_ori_err | ( | const ColumnVector & | pd, |
const ColumnVector & | pdd, | ||
const Quaternion & | qqqd, | ||
const ColumnVector & | wd | ||
) | [private] |
void Clik::q_qdot | ( | const Quaternion & | qd, |
const ColumnVector & | pd, | ||
const ColumnVector & | pdd, | ||
const ColumnVector & | wd, | ||
ColumnVector & | q_, | ||
ColumnVector & | qp_ | ||
) |
Obtain joints position and velocity.
qd,: | Desired eff orientatio in base frame. |
pd,: | Desired eff position in base frame. |
pdd,: | Desired eff velocity in base frame. |
wd,: | Desired eff angular velocity in base frame. |
q_,: | Output joint position. |
qp_,: | Output joint velocity. |
ColumnVector Clik::Koe0Quat [private] |
ColumnVector Clik::Kpep [private] |
Real Clik::lambda_max [private] |
mRobot Clik::mrobot [private] |
mRobot_min_para Clik::mrobot_min_para [private] |
mRobot_min_para instance.
ColumnVector Clik::qp_prev [private] |
Robot Clik::robot [private] |
short Clik::robot_type [private] |
ColumnVector Clik::v [private] |
Quaternion vector part.