Class DynamicFeasibility
Defined in File DynamicFeasibility.h
Inheritance Relationships
Base Type
public OpenSoT::Task< Eigen::MatrixXd, Eigen::VectorXd >
(Template Class Task)
Class Documentation
-
class DynamicFeasibility : public OpenSoT::Task<Eigen::MatrixXd, Eigen::VectorXd>
The DynamicFeasibility class models floating-base underactuation:
Mqddot + h = Jc’Wc
where M is the [6 x n+6] floating base inertia matrix, qddot are the [n+6] joint accelerations, h are the [6] vector of non linear terms, Jc’ are the stacked contacts [6 x k*6] (full wrench) and Wc are the [k*6] contact wrenches.
Public Types
-
typedef std::shared_ptr<DynamicFeasibility> Ptr
Public Functions
-
DynamicFeasibility(const std::string task_id, const XBot::ModelInterface &robot, const AffineHelper &qddot, const std::vector<AffineHelper> &wrenches, const std::vector<std::string> &contact_links)
DynamicFeasibility constructor.
- Parameters
task_id – id
robot – model reference
qddot – variables
wrenches – variables
contact_links – vector of string of contact links
-
bool enableContact(const std::string &contact_link)
enableContact for task computation
- Parameters
contact_link –
- Returns
false if the contact is not in the contacts vector
-
bool disableContact(const std::string &contact_link)
disableContact for task computation
- Parameters
contact_link –
- Returns
false if the contact is not in the contacts vector
-
const std::vector<bool> &getEnabledContacts() const
getEnabledContacts
- Returns
vector of booleans indicating active contact (in the same order as in contact_links)
-
Eigen::VectorXd checkTask(const Eigen::VectorXd &x)
-
typedef std::shared_ptr<DynamicFeasibility> Ptr