Public Member Functions | Private Member Functions
WeightedLeastNormSolver Class Reference

Implementation of ConstraintSolver to solve inverse kinematics by using a weighted least norm. More...

#include <weighted_least_norm_solver.h>

Inheritance diagram for WeightedLeastNormSolver:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual Eigen::MatrixXd solve (const Vector6d_t &in_cart_velocities, const JointStates &joint_states)
 WeightedLeastNormSolver (const TwistControllerParams &params, const LimiterParams &limiter_params, TaskStackController_t &task_stack_controller)
virtual ~WeightedLeastNormSolver ()

Private Member Functions

virtual Eigen::MatrixXd calculateWeighting (const JointStates &joint_states) const

Detailed Description

Implementation of ConstraintSolver to solve inverse kinematics by using a weighted least norm.

Definition at line 25 of file weighted_least_norm_solver.h.


Constructor & Destructor Documentation

WeightedLeastNormSolver::WeightedLeastNormSolver ( const TwistControllerParams params,
const LimiterParams limiter_params,
TaskStackController_t task_stack_controller 
) [inline]

Definition at line 28 of file weighted_least_norm_solver.h.

Definition at line 34 of file weighted_least_norm_solver.h.


Member Function Documentation

Eigen::MatrixXd WeightedLeastNormSolver::calculateWeighting ( const JointStates joint_states) const [private, virtual]

Virtual helper method that calculates a weighting for the Jacobian to adapt joint velocity calculation for given constraints.

Parameters:
qThe current joint positions.
q_dotThe current joint velocities.
Returns:
Diagonal weighting matrix that adapts the Jacobian.

This function returns the identity as weighting matrix for base functionality.

Reimplemented in WLN_JointLimitAvoidanceSolver.

Definition at line 45 of file weighted_least_norm_solver.cpp.

Eigen::MatrixXd WeightedLeastNormSolver::solve ( const Vector6d_t in_cart_velocities,
const JointStates joint_states 
) [virtual]

Specific implementation of solve-method to solve IK problem with joint limit avoidance. See base class ConstraintSolver for more details on params and returns.

Specific implementation of the solve method using a weighted least norm. This is done by calculation of a weighting which is dependent on inherited classes for the Jacobian. Uses the base implementation of calculatePinvJacobianBySVD to calculate the pseudo-inverse (weighted) Jacobian.

Implements ConstraintSolver<>.

Definition at line 25 of file weighted_least_norm_solver.cpp.


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


cob_twist_controller
Author(s): Felix Messmer , Marco Bezzon , Christoph Mark , Francisco Moreno
autogenerated on Thu Jun 6 2019 21:19:26