|
ROBOOP, A Robotics Object Oriented Package in C++
|
Handle Closed Loop Inverse Kinematics scheme. More...
#include <clik.h>
Public Member Functions | |
| 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. More... | |
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. More... | |
Private Attributes | |
| Real | dt |
| Time frame. | |
| Real | eps |
| Range of singular region in Jacobian DLS inverse. | |
| Real | lambda_max |
| Damping factor in Jacobian DLS inverse. | |
| short | robot_type |
| Robot type used. | |
| Robot | robot |
| Robot instance. | |
| mRobot | mrobot |
| mRobot instance. | |
| mRobot_min_para | mrobot_min_para |
| mRobot_min_para instance. | |
| DiagonalMatrix | Kp |
| Position error gain. | |
| DiagonalMatrix | Ko |
| Orientation error gain. | |
| ColumnVector | q |
| Clik joint position. | |
| ColumnVector | qp |
| Clik joint velocity. | |
| ColumnVector | qp_prev |
| Clik previous joint velocity. | |
| ColumnVector | Kpep |
| Kp times position error. | |
| ColumnVector | Koe0Quat |
| Ko times orientation error (quaternion vector part). | |
| ColumnVector | v |
| Quaternion vector part. | |
|
private |
Obtain end effector position and orientation error.
| pd,: | Desired eff position in base frame. |
| pdd,: | Desired eff velocity in base frame. |
| qqqd,: | Desired eff orientation in base frame. |
| wd,: | Desired eff angular velocity in base frame. |
Definition at line 221 of file clik.cpp.
References CLICK_DH, CLICK_mDH, CLICK_mDH_min_para, Robot_basic::kine(), Ko, Koe0Quat, Kp, Kpep, mrobot, mrobot_min_para, q, robot, robot_type, Quaternion::s(), Robot_basic::set_q(), Quaternion::v(), and x_prod_matrix().
Referenced by q_qdot().
| 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. |
Definition at line 266 of file clik.cpp.
References CLICK_DH, CLICK_mDH, CLICK_mDH_min_para, dt, endeff_pos_ori_err(), eps, Integ_Trap(), Robot_basic::jacobian_DLS_inv(), Koe0Quat, Kpep, lambda_max, mrobot, mrobot_min_para, q, qp, qp_prev, robot, robot_type, Robot_basic::set_q(), and v.