|
mc_rtc
2.14.0
|
#include <mc_solver/DynamicsConstraint.h>


Public Member Functions | |
| DynamicsConstraint (const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep, bool infTorque=false) | |
| DynamicsConstraint (const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep, const std::array< double, 3 > &damper, double velocityPercent=1.0, bool infTorque=false) | |
| tasks::qp::MotionConstr & | motionConstr () noexcept |
| mc_tvm::DynamicFunction & | dynamicFunction () |
| void | addToSolverImpl (QPSolver &solver) override |
| void | removeFromSolverImpl (QPSolver &solver) override |
| unsigned int | robotIndex () const noexcept |
Public Member Functions inherited from mc_solver::KinematicsConstraint | |
| KinematicsConstraint (const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep) | |
| KinematicsConstraint (const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep, const std::array< double, 3 > &damper, double velocityPercent=0.5) | |
Public Member Functions inherited from mc_solver::ConstraintSet | |
| ConstraintSet () | |
| void | addToSolver (mc_solver::QPSolver &solver) |
| virtual void | update (QPSolver &) |
| Update the constraint. More... | |
| void | removeFromSolver (mc_solver::QPSolver &solver) |
| virtual | ~ConstraintSet () |
| bool | inSolver () const noexcept |
| QPSolver::Backend | backend () const noexcept |
Protected Attributes | |
| mc_rtc::void_ptr | motion_constr_ |
| unsigned int | robotIndex_ |
Protected Attributes inherited from mc_solver::KinematicsConstraint | |
| mc_rtc::void_ptr | constraint_ |
Protected Attributes inherited from mc_solver::ConstraintSet | |
| QPSolver::Backend | backend_ |
| bool | inSolver_ = false |
Additional Inherited Members | |
Protected Member Functions inherited from mc_solver::KinematicsConstraint | |
| void | addToSolverImpl (mc_solver::QPSolver &solver) override |
| void | removeFromSolverImpl (mc_solver::QPSolver &solver) override |
Holds dynamics constraints (equation of motion) for a robot
| mc_solver::DynamicsConstraint::DynamicsConstraint | ( | const mc_rbdyn::Robots & | robots, |
| unsigned int | robotIndex, | ||
| double | timeStep, | ||
| bool | infTorque = false |
||
| ) |
Constructor Builds a regular joint limits constraint and a motion constr depending on the nature of the robot See tasks::qp::MotionConstr for details on the latter one
| robots | The robots including the robot affected by this constraint |
| robotIndex | The index of the robot affected by this constraint |
| timeStep | Solver timestep |
| infTorque | If true, ignore the torque limits set in the robot model |
| mc_solver::DynamicsConstraint::DynamicsConstraint | ( | const mc_rbdyn::Robots & | robots, |
| unsigned int | robotIndex, | ||
| double | timeStep, | ||
| const std::array< double, 3 > & | damper, | ||
| double | velocityPercent = 1.0, |
||
| bool | infTorque = false |
||
| ) |
Constructor Builds a damped joint limits constraint and a motion constr depending on the nature of the robot See tasks::qp::MotionConstr for details on the latter one
| robots | The robots including the robot affected by this constraint |
| robotIndex | The index of the robot affected by this constraint |
| timeStep | Solver timestep |
| damper | Value of the damper {interaction distance, safety distance, offset} |
| velocityPercent | Maximum joint velocity percentage, 0.5 is advised |
| infTorque | If true, ignore the torque limits set in the robot model |
|
overridevirtual |
Should take care of the actual insertion into a concrete solver
Implements mc_solver::ConstraintSet.
|
inline |
Returns the mc_tvm::DynamicFunction
Assumes the backend was TVM
|
inlinenoexcept |
Returns the tasks::qp::MotionConstr
This assumes the backend was Tasks
|
overridevirtual |
Should take care of the actual removal from a concrete solver
Implements mc_solver::ConstraintSet.
|
inlinenoexcept |
|
protected |
Holds the motion constraint implementation
In Tasks backend:
In TVM backend:
|
protected |
Robot index for the constraint