Simox
2.3.74.0
|
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | JointLimitAvoidanceJacobi (RobotNodeSetPtr rns, JacobiProvider::InverseJacobiMethod invJacMethod=JacobiProvider::eSVD) |
Eigen::MatrixXf | getJacobianMatrix () override |
Eigen::MatrixXf | getJacobianMatrix (VirtualRobot::SceneObjectPtr tcp) override |
Eigen::VectorXf | getError (float stepSize=1.0f) override |
bool | checkTolerances () override |
![]() | |
JacobiProvider (RobotNodeSetPtr rns, InverseJacobiMethod invJacMethod=eSVD) | |
virtual | ~JacobiProvider () |
virtual Eigen::MatrixXd | getJacobianMatrixD () |
virtual Eigen::MatrixXd | getJacobianMatrixD (SceneObjectPtr tcp) |
virtual Eigen::MatrixXf | computePseudoInverseJacobianMatrix (const Eigen::MatrixXf &m, const Eigen::VectorXf regularization=Eigen::VectorXf()) const |
virtual Eigen::MatrixXd | computePseudoInverseJacobianMatrixD (const Eigen::MatrixXd &m, const Eigen::VectorXd regularization=Eigen::VectorXd()) const |
virtual Eigen::MatrixXf | computePseudoInverseJacobianMatrix (const Eigen::MatrixXf &m, float invParameter, const Eigen::VectorXf regularization=Eigen::VectorXf()) const |
virtual Eigen::MatrixXd | computePseudoInverseJacobianMatrixD (const Eigen::MatrixXd &m, double invParameter, const Eigen::VectorXd regularization=Eigen::VectorXd()) const |
virtual void | updatePseudoInverseJacobianMatrix (Eigen::MatrixXf &invJac, const Eigen::MatrixXf &m, float invParameter=0.0f, Eigen::VectorXf regularization=Eigen::VectorXf()) const |
virtual void | updatePseudoInverseJacobianMatrixD (Eigen::MatrixXd &invJac, const Eigen::MatrixXd &m, double invParameter=0.0, Eigen::VectorXd regularization=Eigen::VectorXd()) const |
virtual Eigen::MatrixXf | getPseudoInverseJacobianMatrix (const Eigen::VectorXf regularization=Eigen::VectorXf()) |
virtual Eigen::MatrixXd | getPseudoInverseJacobianMatrixD (const Eigen::VectorXd regularization=Eigen::VectorXd()) |
virtual Eigen::MatrixXf | getPseudoInverseJacobianMatrix (SceneObjectPtr tcp, const Eigen::VectorXf regularization=Eigen::VectorXf()) |
virtual Eigen::MatrixXd | getPseudoInverseJacobianMatrixD (SceneObjectPtr tcp, const Eigen::VectorXd regularization=Eigen::VectorXd()) |
virtual Eigen::VectorXf | getJacobiRegularization (IKSolver::CartesianSelection mode=IKSolver::All) |
VirtualRobot::RobotNodeSetPtr | getRobotNodeSet () |
bool | isInitialized () |
void | setJointWeights (const Eigen::VectorXf &jointWeights) |
virtual void | print () |
print Print current status of the IK solver More... | |
float | getDampedSvdLambda () const |
void | setDampedSvdLambda (float value) |
float | getJacobiMMRegularization () const |
void | setJacobiMMRegularization (float value) |
float | getJacobiRadianRegularization () const |
void | setJacobiRadianRegularization (float value) |
Protected Attributes | |
std::vector< RobotNodePtr > | nodes |
![]() | |
std::string | name |
RobotNodeSetPtr | rns |
InverseJacobiMethod | inverseMethod |
bool | initialized |
Eigen::VectorXf | jointWeights |
float | dampedSvdLambda |
float | jacobiMMRegularization |
float | jacobiRadianRegularization |
Additional Inherited Members | |
![]() | |
enum | InverseJacobiMethod { eSVD, eSVDDamped, eSVDDampedDynamic, eTranspose } |
Several methods are offered for inverting the Jacobi (i.e. building the Pseudoinverse) More... | |
![]() | |
virtual void | updatePseudoInverseJacobianMatrixInternal (Eigen::MatrixXf &invJac, const Eigen::MatrixXf &m, float invParameter=0.0f) const |
virtual void | updatePseudoInverseJacobianMatrixDInternal (Eigen::MatrixXd &invJac, const Eigen::MatrixXd &m, double invParameter=0.0) const |
This class creates a dummy Jacobian matrix (identity) that can be used to specify a joint space task (e.g. a joint limit avoidance task)
VirtualRobot::JointLimitAvoidanceJacobi::JointLimitAvoidanceJacobi | ( | RobotNodeSetPtr | rns, |
JacobiProvider::InverseJacobiMethod | invJacMethod = JacobiProvider::eSVD |
||
) |
|
overridevirtual |
Not used, only implemented because of superclass JacobiProvider, always returns true
Implements VirtualRobot::JacobiProvider.
|
overridevirtual |
Computes the complete error vector that is given by the distance to the center of the joint limits. Translational Joints are ignored (error = 0)
stepSize | The error can be reduced by this factor. |
Implements VirtualRobot::JacobiProvider.
|
overridevirtual |
Implements VirtualRobot::JacobiProvider.
|
overridevirtual |
Implements VirtualRobot::JacobiProvider.
|
protected |