BipedalLocomotion::TSID::JointDynamicsTask class

JointsDynamicsTask is a concrete implementation of the Task.

Please use this element if you want to consider the joints dynamics only. The task represents the following equation

\[ M_{s}(q) \dot{\nu} + h_{s}(q,\nu) = \sum J_k^\top f_k + \tau \]

where the suffix $s$ indicates the last n rows of the vector/matrix. $J_k$ is the robot jacobian associated to the contact wrench $d_k$ . $\tau$ are the joints torque.

Base classes

struct TSIDLinearTask
TSIDLinearTask specializes a LinearTask in the case of Task based Inverse Dynamics.

Public functions

auto initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> paramHandler) -> bool override
Initialize the planner.
auto setKinDyn(std::shared_ptr<iDynTree::KinDynComputations> kinDyn) -> bool override
Set the kinDynComputations object.
auto setVariablesHandler(const System::VariablesHandler& variablesHandler) -> bool override
Set the set of variables required by the task.
auto setMassMatrixRegularization(const Eigen::Ref<const Eigen::MatrixXd>& matrix) -> bool
Set the mass matrix regularization term.
auto update() -> bool override
Update the content of the element.
auto size() const -> std::size_t override
Get the size of the task.
auto type() const -> Type override
The JointDynamicsTask is an equality task.
auto isValid() const -> bool override
Determines the validity of the objects retrieved with getA() and getB()

Function documentation

bool BipedalLocomotion::TSID::JointDynamicsTask::initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> paramHandler) override

Initialize the planner.

Parameters
paramHandler pointer to the parameters handler.
Returns True in case of success, false otherwise.

bool BipedalLocomotion::TSID::JointDynamicsTask::setKinDyn(std::shared_ptr<iDynTree::KinDynComputations> kinDyn) override

Set the kinDynComputations object.

Parameters
kinDyn pointer to a kinDynComputations object.
Returns True in case of success, false otherwise.

bool BipedalLocomotion::TSID::JointDynamicsTask::setVariablesHandler(const System::VariablesHandler& variablesHandler) override

Set the set of variables required by the task.

Parameters
variablesHandler reference to a variables handler.
Returns True in case of success, false otherwise.

The variables are stored in the System::VariablesHandler.

bool BipedalLocomotion::TSID::JointDynamicsTask::setMassMatrixRegularization(const Eigen::Ref<const Eigen::MatrixXd>& matrix)

Set the mass matrix regularization term.

Parameters
matrix the regularization term for the mass matrix. @notice Calling this function is not mandatory. Call it only if you want to add a regularization term.
Returns true in case of success, false otherwise.

i.e. $\bar{M} = M + M _ {reg}$ . Where $M$ is the mass matrix and $M_{reg}$ is the matrix regularization term.

bool BipedalLocomotion::TSID::JointDynamicsTask::update() override

Update the content of the element.

Returns True in case of success, false otherwise.

std::size_t BipedalLocomotion::TSID::JointDynamicsTask::size() const override

Get the size of the task.

Returns the size of the task.

(I.e the number of rows of the vector b)

Type BipedalLocomotion::TSID::JointDynamicsTask::type() const override

The JointDynamicsTask is an equality task.

Returns the type of the task.

bool BipedalLocomotion::TSID::JointDynamicsTask::isValid() const override

Determines the validity of the objects retrieved with getA() and getB()

Returns True if the objects are valid, false otherwise.