#include <ik.h>
|
bool | setTask (KDL::Frames &goals, const tf::EigenMap< std::string, Eigen::Isometry2d > &frames, const std::map< std::string, Request > &request) |
| Sets current task matrix and goals according to request. More...
|
|
virtual bool | doIK (KDL::JntArray &in, KDL::JntArray &out, const KDL::Frames &goals) |
| Actually solve an IK query. More...
|
|
| IKSolver (const RobotPtr &robot, unsigned int frames) |
| Constructor. Protected so only derived classes can create this. More...
|
|
void | setRequest (unsigned int task, Request request) |
| Sets the task matrix values for a task at index task according to a request. More...
|
|
void | setTask (unsigned int task, Index index, bool active) |
| Sets the specific index component of a task to active. More...
|
|
void | setRandom (KDL::JntArray &array) const |
| Sets a KDL array to random values between joint limits. More...
|
|
|
enum | Request {
NONE = 0,
X_AXIS = 1 << 0,
Y_AXIS = 1 << 1,
ROTATION = 1 << 2,
POSITION = X_AXIS | Y_AXIS,
ALL = POSITION | ROTATION
} |
| A bitmask specification of what task components should this IK request satisfy. More...
|
|
enum | Index {
POS_X = 0,
POS_Y = 1,
POS_Z = 2,
ROT_X = 3,
ROT_Y = 4,
ROT_Z = 5
} |
| KDL specific indices for different components of the task matrix. More...
|
|
Definition at line 135 of file ik.h.
◆ TreeIK() [1/3]
Constructor.
- Parameters
-
[in] | robot | Robot to construct IK solver for. |
[in] | frames | Frames to use as task frames. |
[in] | iterations | Maximum number of iterations to use in solver. |
[in] | eps | Solution tolerance. |
TreeIK
Definition at line 108 of file ik.cpp.
◆ TreeIK() [2/3]
se2ez::TreeIK::TreeIK |
( |
const TreeIK & |
| ) |
|
|
delete |
◆ TreeIK() [3/3]
se2ez::TreeIK::TreeIK |
( |
TreeIK && |
| ) |
|
|
delete |
◆ doIK()
bool TreeIK::doIK |
( |
KDL::JntArray & |
in, |
|
|
KDL::JntArray & |
out, |
|
|
const KDL::Frames & |
goals |
|
) |
| |
|
protectedvirtual |
Actually solve an IK query.
- Parameters
-
[in] | in | Initial seed joint angles. |
[out] | out | Output joint angles. |
[in] | goals | Goals to satisfy. |
- Returns
- True on success false on failure.
Reimplemented in se2ez::CollisionAwareTreeIK.
Definition at line 162 of file ik.cpp.
◆ setJointWeight()
void TreeIK::setJointWeight |
( |
const std::string & |
frame, |
|
|
const Eigen::VectorXd & |
weights |
|
) |
| |
|
overridevirtual |
Sets the weights on a specific joint in the robot for IK solving.
- Parameters
-
[in] | frame | Frame to set weights for. |
[in] | weights | Weights to use for frame. |
Reimplemented from se2ez::IKSolver.
Definition at line 207 of file ik.cpp.
◆ setJointWeights()
void TreeIK::setJointWeights |
( |
const Eigen::VectorXd & |
weights | ) |
|
|
overridevirtual |
Sets the weights for all joints in the robot for IK solving.
- Parameters
-
[in] | weights | Weights to use. |
Reimplemented from se2ez::IKSolver.
Definition at line 213 of file ik.cpp.
◆ setLambda()
void TreeIK::setLambda |
( |
double |
lambda | ) |
|
|
overridevirtual |
Sets lambda, damping constant in WDLS.
- Parameters
-
Reimplemented from se2ez::IKSolver.
Definition at line 219 of file ik.cpp.
◆ setTask()
Sets current task matrix and goals according to request.
- Parameters
-
[out] | goals | Goals for IK to set. |
[in] | frames | Desired position of task frames. |
[in] | request | Request to satisfy. |
- Returns
- True if possible, false on error.
Definition at line 127 of file ik.cpp.
◆ solve()
Solve an IK request.
- Parameters
-
[in,out] | state | State to set to result of IK query. Input value is used as first seed. |
[in] | frames | Map of frame name to desired values for query. |
[in] | request | Map of frame names to requested components. Uses ALL by default. |
- Returns
- True on success, false on failure.
Definition at line 183 of file ik.cpp.
◆ fk_
KDL::TreeFkSolverPos_recursive se2ez::TreeIK::fk_ |
|
protected |
Forward kinematics solver.
Definition at line 197 of file ik.h.
◆ frames_
Mapping of task frame name to index.
Definition at line 194 of file ik.h.
◆ mutex_
Thread mutex.
Definition at line 201 of file ik.h.
◆ posIK_
KDL::TreeIkSolverPos_NR_JL se2ez::TreeIK::posIK_ |
|
protected |
Inverse position solver.
Definition at line 199 of file ik.h.
◆ tree_
const KDL::Tree se2ez::TreeIK::tree_ |
|
protected |
KDL tree used for solving.
Definition at line 196 of file ik.h.
◆ velIK_
KDL::TreeIkSolverVel_wdls se2ez::TreeIK::velIK_ |
|
protected |
Inverse velocity solver.
Definition at line 198 of file ik.h.
The documentation for this class was generated from the following files:
- /home/zak/code/se2ez_work/include/se2ez/core/ik.h
- /home/zak/code/se2ez_work/src/core/ik.cpp