Go to the documentation of this file.
22 #ifndef KDL_CHAIN_IKSOLVERVEL_WDLS_HPP
23 #define KDL_CHAIN_IKSOLVERVEL_WDLS_HPP
167 void setEps(
const double eps_in);
188 int getSigma(Eigen::VectorXd& Sout);
int svdResult
Definition: chainiksolvervel_wdls.hpp:239
Eigen::MatrixXd tmp_jac
Definition: chainiksolvervel_wdls.hpp:229
unsigned int columns() const
Definition: jacobian.cpp:75
double eps
Definition: chainiksolvervel_wdls.hpp:226
virtual const char * strError(const int error) const
Return a description of the latest error.
Definition: solveri.hpp:125
Jacobian jac
Definition: chainiksolvervel_wdls.hpp:222
virtual void updateInternalDataStructures()
Update the internal data structures.
Definition: chainiksolvervel_wdls.cpp:54
Eigen::MatrixXd tmp_jac_weight1
Definition: chainiksolvervel_wdls.hpp:230
Definition: jntarray.hpp:69
ChainIkSolverVel_wdls(const Chain &chain, double eps=0.00001, int maxiter=150)
Constructor of the solver.
Definition: chainiksolvervel_wdls.cpp:28
virtual int CartToJnt(const JntArray &q_in, const Twist &v_in, JntArray &qdot_out)
Find an output joint velocity qdot_out, given a starting joint pose q_init and a desired cartesian ve...
Definition: chainiksolvervel_wdls.cpp:116
int getSigma(Eigen::VectorXd &Sout)
Request the six singular values of the Jacobian.
Definition: chainiksolvervel_wdls.cpp:108
unsigned int nrZeroSigmas
Definition: chainiksolvervel_wdls.hpp:238
@ E_NOT_UP_TO_DATE
Chain size changed.
Definition: solveri.hpp:97
Eigen::MatrixXd U
Definition: chainiksolvervel_wdls.hpp:223
virtual int CartToJnt(const JntArray &q_init, const FrameVel &v_in, JntArrayVel &q_out)
not (yet) implemented.
Definition: chainiksolvervel_wdls.hpp:105
int setWeightJS(const Eigen::MatrixXd &Mq)
Set the joint space weighting matrix.
Definition: chainiksolvervel_wdls.cpp:76
Definition: articulatedbodyinertia.cpp:28
int setWeightTS(const Eigen::MatrixXd &Mx)
Set the task space weighting matrix.
Definition: chainiksolvervel_wdls.cpp:86
void resize(unsigned int newNrOfColumns)
Allocates memory for new size (can break realtime behavior)
Definition: jacobian.cpp:55
represents both translational and rotational velocities.
Definition: frames.hpp:720
void setMaxIter(const int maxiter_in)
Set maxIter.
Definition: chainiksolvervel_wdls.cpp:103
double sigmaMin
Definition: chainiksolvervel_wdls.hpp:240
unsigned int rows() const
Returns the number of rows (size) of the array.
Definition: jntarray.cpp:72
virtual int JntToJac(const JntArray &q_in, Jacobian &jac, int segmentNR=-1)
Calculate the jacobian expressed in the base frame of the chain, with reference point at the end effe...
Definition: chainjnttojacsolver.cpp:48
@ E_SIZE_MISMATCH
Input size does not match internal state.
Definition: solveri.hpp:99
double getLambda() const
Request the value of lambda for the minimum.
Definition: chainiksolvervel_wdls.hpp:198
@ E_SVD_FAILED
Internal svd calculation failed.
Definition: solveri.hpp:107
int getSVDResult() const
Retrieve the latest return code from the SVD algorithm.
Definition: chainiksolvervel_wdls.hpp:210
void setLambda(const double lambda)
Set lambda.
Definition: chainiksolvervel_wdls.cpp:93
unsigned int nj
Definition: chainiksolvervel_wdls.hpp:221
unsigned int getNrZeroSigmas() const
Request the number of singular values of the jacobian that are < eps; if the number of near zero sing...
Definition: chainiksolvervel_wdls.hpp:178
void setEps(const double eps_in)
Set eps.
Definition: chainiksolvervel_wdls.cpp:98
double getEps() const
Request the value of eps.
Definition: chainiksolvervel_wdls.hpp:193
Eigen::MatrixXd V
Definition: chainiksolvervel_wdls.hpp:225
unsigned int rows() const
Definition: jacobian.cpp:70
Implementation of a inverse velocity kinematics algorithm based on the weighted pseudo inverse with d...
Definition: chainiksolvervel_wdls.hpp:63
Eigen::VectorXd data
Definition: jntarray.hpp:72
int maxiter
Definition: chainiksolvervel_wdls.hpp:227
double getSigmaMin() const
Request the minimum of the first six singular values.
Definition: chainiksolvervel_wdls.hpp:183
virtual void updateInternalDataStructures()
Update the internal data structures.
Definition: chainjnttojacsolver.cpp:31
Definition: jntarrayvel.hpp:45
double lambda_scaled
Definition: chainiksolvervel_wdls.hpp:237
EIGEN_MAKE_ALIGNED_OPERATOR_NEW Eigen::Matrix< double, 6, Eigen::Dynamic > data
Definition: jacobian.hpp:41
virtual const char * strError(const int error) const
Return a description of the latest error.
Definition: chainiksolvervel_wdls.cpp:218
Eigen::MatrixXd tmp_jac_weight2
Definition: chainiksolvervel_wdls.hpp:231
double lambda
Definition: chainiksolvervel_wdls.hpp:236
Eigen::VectorXd S
Definition: chainiksolvervel_wdls.hpp:224
Eigen::MatrixXd weight_js
Definition: chainiksolvervel_wdls.hpp:235
Eigen::MatrixXd tmp_js
Definition: chainiksolvervel_wdls.hpp:233
Eigen::MatrixXd weight_ts
Definition: chainiksolvervel_wdls.hpp:234
~ChainIkSolverVel_wdls()
Definition: chainiksolvervel_wdls.cpp:72
static const int E_CONVERGE_PINV_SINGULAR
solution converged but (pseudo)inverse is singular
Definition: chainiksolvervel_wdls.hpp:67
const Chain & chain
Definition: chainiksolvervel_wdls.hpp:219
Definition: framevel.hpp:197
Definition: chainiksolver.hpp:66
double getLambdaScaled() const
Request the scaled value of lambda for the minimum singular value 1-6.
Definition: chainiksolvervel_wdls.hpp:204
Class to calculate the jacobian of a general KDL::Chain, it is used by other solvers.
Definition: chainjnttojacsolver.hpp:41
@ E_NOERROR
No error.
Definition: solveri.hpp:91
Eigen::MatrixXd tmp_ts
Definition: chainiksolvervel_wdls.hpp:232
unsigned int getNrOfJoints() const
Request the total number of joints in the chain.
Definition: chain.hpp:71
Eigen::VectorXd tmp
Definition: chainiksolvervel_wdls.hpp:228
int error
Latest error, initialized to E_NOERROR in constructor.
Definition: solveri.hpp:149
ChainJntToJacSolver jnt2jac
Definition: chainiksolvervel_wdls.hpp:220
Definition: jacobian.hpp:36