KDL  1.3.0
Public Types | Public Member Functions | Protected Attributes | List of all members
KDL::ChainIkSolverVel Class Referenceabstract

This abstract class encapsulates the inverse velocity solver for a KDL::Chain. More...

#include <src/chainiksolver.hpp>

Inheritance diagram for KDL::ChainIkSolverVel:
Inheritance graph
[legend]
Collaboration diagram for KDL::ChainIkSolverVel:
Collaboration graph
[legend]

Public Types

enum  { E_DEGRADED = +1, E_NOERROR = 0, E_NO_CONVERGE = -1, E_UNDEFINED = -2 }
 

Public Member Functions

virtual int CartToJnt (const JntArray &q_in, const Twist &v_in, JntArray &qdot_out)=0
 Calculate inverse velocity kinematics, from joint positions and cartesian velocity to joint velocities. More...
 
virtual int CartToJnt (const JntArray &q_init, const FrameVel &v_in, JntArrayVel &q_out)=0
 Calculate inverse position and velocity kinematics, from cartesian position and velocity to joint positions and velocities. More...
 
virtual ~ChainIkSolverVel ()
 
virtual int getError () const
 Return the latest error. More...
 
virtual const char * strError (const int error) const
 Return a description of the latest error. More...
 

Protected Attributes

int error
 Latest error, initialized to E_NOERROR in constructor. More...
 

Detailed Description

This abstract class encapsulates the inverse velocity solver for a KDL::Chain.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited
Enumerator
E_DEGRADED 

Converged but degraded solution (e.g. WDLS with psuedo-inverse singular)

E_NOERROR 

No error.

E_NO_CONVERGE 

Failed to converge.

E_UNDEFINED 

Undefined value (e.g. computed a NAN, or tan(90 degrees) )

Constructor & Destructor Documentation

◆ ~ChainIkSolverVel()

virtual KDL::ChainIkSolverVel::~ChainIkSolverVel ( )
inlinevirtual

Member Function Documentation

◆ CartToJnt() [1/2]

virtual int KDL::ChainIkSolverVel::CartToJnt ( const JntArray q_in,
const Twist v_in,
JntArray qdot_out 
)
pure virtual

Calculate inverse velocity kinematics, from joint positions and cartesian velocity to joint velocities.

Parameters
q_ininput joint positions
v_ininput cartesian velocity
qdot_outoutput joint velocities
Returns
if < 0 something went wrong

Implemented in KDL::ChainIkSolverVel_wdls, KDL::ChainIkSolverVel_pinv, KDL::ChainIkSolverVel_pinv_nso, and KDL::ChainIkSolverVel_pinv_givens.

Referenced by KDL::ChainIkSolverPos_NR_JL::CartToJnt(), and KDL::ChainIkSolverPos_NR::CartToJnt().

◆ CartToJnt() [2/2]

virtual int KDL::ChainIkSolverVel::CartToJnt ( const JntArray q_init,
const FrameVel v_in,
JntArrayVel q_out 
)
pure virtual

Calculate inverse position and velocity kinematics, from cartesian position and velocity to joint positions and velocities.

Parameters
q_initinitial joint positions
v_ininput cartesian position and velocity
q_outoutput joint position and velocity
Returns
if < 0 something went wrong

Implemented in KDL::ChainIkSolverVel_wdls, KDL::ChainIkSolverVel_pinv, KDL::ChainIkSolverVel_pinv_nso, and KDL::ChainIkSolverVel_pinv_givens.

◆ getError()

virtual int KDL::SolverI::getError ( ) const
inlinevirtualinherited

Return the latest error.

References KDL::SolverI::error.

◆ strError()

virtual const char* KDL::SolverI::strError ( const int  error) const
inlinevirtualinherited

Member Data Documentation

◆ error

int KDL::SolverI::error
protectedinherited

The documentation for this class was generated from the following file: