tsid 1.9.0
Efficient Task Space Inverse Dynamics for Multi-body Systems based on Pinocchio
Loading...
Searching...
No Matches
tsid::tasks::TaskContactForceEquality Class Reference

#include <tsid/tasks/task-contact-force-equality.hpp>

Inheritance diagram for tsid::tasks::TaskContactForceEquality:
Collaboration diagram for tsid::tasks::TaskContactForceEquality:

Public Types

typedef trajectories::TrajectorySample TrajectorySample
typedef math::Vector Vector
typedef math::Vector6 Vector6
typedef math::Vector3 Vector3
typedef math::ConstraintEquality ConstraintEquality
typedef pinocchio::SE3 SE3
Public Types inherited from tsid::tasks::TaskBase
typedef math::ConstRefVector ConstRefVector
typedef pinocchio::Data Data
typedef robots::RobotWrapper RobotWrapper

Public Member Functions

 TaskContactForceEquality (const std::string &name, RobotWrapper &robot, const double dt, contacts::ContactBase &contact)
int dim () const override
 Return the dimension of the task. \info should be overloaded in the child class.
virtual const std::string & getAssociatedContactName () override
virtual const contacts::ContactBasegetAssociatedContact ()
void setAssociatedContact (contacts::ContactBase &contact)
const ConstraintBasecompute (double t, ConstRefVector q, ConstRefVector v, Data &data) override
const ConstraintBasecompute (double t, ConstRefVector q, ConstRefVector v, Data &data, const std::vector< std::shared_ptr< ContactLevel > > *contacts) override
const ConstraintBasegetConstraint () const override
void setReference (TrajectorySample &ref)
const TrajectorySamplegetReference () const
void setExternalForce (TrajectorySample &f_ext)
const TrajectorySamplegetExternalForce () const
const VectorKp () const
const VectorKd () const
const VectorKi () const
const double & getLeakRate () const
void Kp (ConstRefVector Kp)
void Kd (ConstRefVector Kp)
void Ki (ConstRefVector Ki)
void setLeakRate (double leak)
Public Member Functions inherited from tsid::tasks::TaskContactForce
EIGEN_MAKE_ALIGNED_OPERATOR_NEW TaskContactForce (const std::string &name, RobotWrapper &robot)
Public Member Functions inherited from tsid::tasks::TaskBase
 TaskBase (const std::string &name, RobotWrapper &robot)
virtual ~TaskBase ()=default
const std::string & name () const
void name (const std::string &name)

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Index Index
Public Attributes inherited from tsid::tasks::TaskBase
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::ConstraintBase ConstraintBase

Protected Attributes

contacts::ContactBasem_contact
std::string m_contact_name
ConstraintEquality m_constraint
TrajectorySample m_ref
TrajectorySample m_fext
Vector m_forceIntegralError
Vector m_Kp
Vector m_Kd
Vector m_Ki
double m_dt
double m_leak_rate
Protected Attributes inherited from tsid::tasks::TaskBase
std::string m_name
RobotWrapperm_robot
 Reference on the robot model.

Member Typedef Documentation

◆ ConstraintEquality

◆ SE3

◆ TrajectorySample

◆ Vector

◆ Vector3

◆ Vector6

Constructor & Destructor Documentation

◆ TaskContactForceEquality()

tsid::tasks::TaskContactForceEquality::TaskContactForceEquality(const std::string &name,
RobotWrapper &robot,
const doubledt,
contacts::ContactBase &contact )

Member Function Documentation

◆ compute() [1/2]

const ConstraintBase & tsid::tasks::TaskContactForceEquality::compute(doublet,
ConstRefVectorq,
ConstRefVectorv,
Data &data )
overridevirtual

◆ compute() [2/2]

const ConstraintBase & tsid::tasks::TaskContactForceEquality::compute(doublet,
ConstRefVectorq,
ConstRefVectorv,
Data &data,
const std::vector< std::shared_ptr< ContactLevel > > *contacts )
overridevirtual

Contact force tasks have an additional compute method that takes as extra input argument the list of active contacts. This can be needed for force tasks that involve all contacts, such as the CoP task.

Implements tsid::tasks::TaskContactForce.

◆ dim()

int tsid::tasks::TaskContactForceEquality::dim()const
overridevirtual

Return the dimension of the task. \info should be overloaded in the child class.

Implements tsid::tasks::TaskBase.

◆ getAssociatedContact()

const contacts::ContactBase & tsid::tasks::TaskContactForceEquality::getAssociatedContact()
virtual

◆ getAssociatedContactName()

const std::string & tsid::tasks::TaskContactForceEquality::getAssociatedContactName()
overridevirtual

Return the name of the contact associated to this task if this task is associated to a specific contact. If this task is associated to multiple contact forces (all of them), returns an empty string.

Implements tsid::tasks::TaskContactForce.

◆ getConstraint()

const ConstraintBase & tsid::tasks::TaskContactForceEquality::getConstraint()const
overridevirtual

◆ getExternalForce()

const TaskContactForceEquality::TrajectorySample & tsid::tasks::TaskContactForceEquality::getExternalForce()const

◆ getLeakRate()

const double & tsid::tasks::TaskContactForceEquality::getLeakRate()const

◆ getReference()

const TaskContactForceEquality::TrajectorySample & tsid::tasks::TaskContactForceEquality::getReference()const

◆ Kd() [1/2]

const Vector & tsid::tasks::TaskContactForceEquality::Kd()const

◆ Kd() [2/2]

void tsid::tasks::TaskContactForceEquality::Kd(ConstRefVectorKp)

◆ Ki() [1/2]

const Vector & tsid::tasks::TaskContactForceEquality::Ki()const

◆ Ki() [2/2]

void tsid::tasks::TaskContactForceEquality::Ki(ConstRefVectorKi)

◆ Kp() [1/2]

const Vector & tsid::tasks::TaskContactForceEquality::Kp()const

◆ Kp() [2/2]

void tsid::tasks::TaskContactForceEquality::Kp(ConstRefVectorKp)

◆ setAssociatedContact()

void tsid::tasks::TaskContactForceEquality::setAssociatedContact(contacts::ContactBase &contact)

◆ setExternalForce()

void tsid::tasks::TaskContactForceEquality::setExternalForce(TrajectorySample &f_ext)

◆ setLeakRate()

void tsid::tasks::TaskContactForceEquality::setLeakRate(doubleleak)

◆ setReference()

void tsid::tasks::TaskContactForceEquality::setReference(TrajectorySample &ref)

Member Data Documentation

◆ Index

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Index tsid::tasks::TaskContactForceEquality::Index

◆ m_constraint

ConstraintEquality tsid::tasks::TaskContactForceEquality::m_constraint
protected

◆ m_contact

contacts::ContactBase* tsid::tasks::TaskContactForceEquality::m_contact
protected

◆ m_contact_name

std::string tsid::tasks::TaskContactForceEquality::m_contact_name
protected

◆ m_dt

double tsid::tasks::TaskContactForceEquality::m_dt
protected

◆ m_fext

TrajectorySample tsid::tasks::TaskContactForceEquality::m_fext
protected

◆ m_forceIntegralError

Vector tsid::tasks::TaskContactForceEquality::m_forceIntegralError
protected

◆ m_Kd

Vector tsid::tasks::TaskContactForceEquality::m_Kd
protected

◆ m_Ki

Vector tsid::tasks::TaskContactForceEquality::m_Ki
protected

◆ m_Kp

Vector tsid::tasks::TaskContactForceEquality::m_Kp
protected

◆ m_leak_rate

double tsid::tasks::TaskContactForceEquality::m_leak_rate
protected

◆ m_ref

TrajectorySample tsid::tasks::TaskContactForceEquality::m_ref
protected

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