|
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW | FirstOrderImpedanceTask (const std::string &surfaceName, const mc_rbdyn::Robots &robots, unsigned robotIndex, double stiffness=5.0, double weight=1000.0) |
| | Constructor. More...
|
| |
| | FirstOrderImpedanceTask (const mc_rbdyn::RobotFrame &Frame, double stiffness=5.0, double weight=1000.0) |
| | Constructor. More...
|
| |
| void | update (mc_solver::QPSolver &solver) override |
| | Update task. More...
|
| |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW | ImpedanceTask (const std::string &surfaceName, const mc_rbdyn::Robots &robots, unsigned robotIndex, double stiffness=5.0, double weight=1000.0, bool showTarget=true, bool showPose=true, bool showCompliance=true) |
| | Constructor. More...
|
| |
| | ImpedanceTask (const mc_rbdyn::RobotFrame &frame, double stiffness=5.0, double weight=1000.0, bool showTarget=true, bool showPose=true, bool showCompliance=true) |
| | Constructor. More...
|
| |
| void | reset () override |
| | Reset the task. More...
|
| |
| const ImpedanceGains & | gains () const noexcept |
| | Access the impedance gains. More...
|
| |
| ImpedanceGains & | gains () noexcept |
| | Access the impedance gains. More...
|
| |
| const sva::PTransformd & | targetPose () const noexcept |
| | Get the target pose of the surface in the world frame. More...
|
| |
| void | targetPose (const sva::PTransformd &pose) |
| | Set the target pose of the surface in the world frame. More...
|
| |
| const sva::MotionVecd & | targetVel () const noexcept |
| | Get the target velocity of the surface in the world frame. More...
|
| |
| void | targetVel (const sva::MotionVecd &worldVel) override |
| | Set the target velocity of the surface in the world frame. More...
|
| |
| const sva::MotionVecd & | targetAccel () const noexcept |
| | Get the target acceleration of the surface in the world frame. More...
|
| |
| void | targetAccel (const sva::MotionVecd &accel) |
| | Set the target acceleration of the surface in the world frame. More...
|
| |
| const sva::PTransformd & | deltaCompliancePose () const |
| | Get the relative pose from target frame to compliance frame represented in the world frame. More...
|
| |
| const sva::PTransformd | compliancePose () const |
| | Get the compliance pose of the surface in the world frame. More...
|
| |
| const sva::ForceVecd & | targetWrench () const noexcept |
| | Get the target wrench in the surface frame. More...
|
| |
| void | targetWrenchW (const sva::ForceVecd &wrenchW) |
| | Set the target wrench in the world frame. This function will convert the wrench from the world frame to the surface frame, and call targetWrench(). More...
|
| |
| void | targetWrench (const sva::ForceVecd &wrench) |
| | Set the target wrench in the surface frame. More...
|
| |
| const sva::ForceVecd & | measuredWrench () const |
| | Get the measured wrench in the surface frame. More...
|
| |
| const sva::ForceVecd & | filteredMeasuredWrench () const |
| | Get the filtered measured wrench in the surface frame. More...
|
| |
| double | cutoffPeriod () const |
| | Get the cutoff period for the low-pass filter of measured wrench. More...
|
| |
| void | cutoffPeriod (double cutoffPeriod) |
| | Set the cutoff period for the low-pass filter of measured wrench. More...
|
| |
| bool | hold () const noexcept |
| | Get whether hold mode is enabled. More...
|
| |
| void | hold (bool hold) noexcept |
| | Set hold mode. More...
|
| |
| void | load (mc_solver::QPSolver &solver, const mc_rtc::Configuration &config) override |
| | Load parameters from a Configuration object. More...
|
| |
| | TransformTask (const mc_rbdyn::RobotFrame &frame, double stiffness=2.0, double weight=500.0, bool showTarget=true, bool showPose=true) |
| | Constructor. More...
|
| |
| | TransformTask (const std::string &surfaceName, const mc_rbdyn::Robots &robots, unsigned int robotIndex, double stiffness=2.0, double weight=500, bool showTarget=true, bool showPose=true) |
| | Constructor. More...
|
| |
| void | reset () override |
| | Reset the task. More...
|
| |
| void | targetSurface (unsigned int robotIndex, const std::string &surfaceName, const sva::PTransformd &offset=sva::PTransformd::Identity()) |
| | Targets a robot surface with an optional offset. The offset is expressed in the target contact frame. More...
|
| |
| void | targetFrame (const mc_rbdyn::Frame &targetFrame, const sva::PTransformd &offset=sva::PTransformd::Identity()) |
| | Targets a given frame with an optional offset. More...
|
| |
| void | targetFrameVelocity (const mc_rbdyn::Frame &targetFrame, const sva::PTransformd &offset=sva::PTransformd::Identity()) |
| | Targets a given frame velocity with an optional offset. More...
|
| |
| virtual void | target (const mc_rbdyn::Frame &frame, const sva::PTransformd &offset) |
| | Targets a given frame with an optional offset. More...
|
| |
| const std::string & | surface () const noexcept |
| | Retrieve the controlled frame name. More...
|
| |
| const mc_rbdyn::RobotFrame & | frame () const noexcept |
| | Return the controlled frame (const) More...
|
| |
| sva::PTransformd | surfacePose () const noexcept |
| |
| std::function< bool(const mc_tasks::MetaTask &task, std::string &)> | buildCompletionCriteria (double dt, const mc_rtc::Configuration &config) const override |
| |
| void | addToLogger (mc_rtc::Logger &logger) override |
| |
| void | setGains (const sva::MotionVecd &stiffness, const sva::MotionVecd &damping) |
| | Set dimensional stiffness and damping. More...
|
| |
| void | stiffness (const sva::MotionVecd &stiffness) |
| | Set dimensional stiffness. More...
|
| |
| sva::MotionVecd | mvStiffness () |
| | Get dimensional stiffness as a motion vector. More...
|
| |
| void | damping (const sva::MotionVecd &damping) |
| | Set dimensional damping. More...
|
| |
| sva::MotionVecd | mvDamping () |
| | Get dimensional damping as a motion vector. More...
|
| |
| void | refVelB (const sva::MotionVecd &velB) |
| | Set trajectory task's reference velocity from motion vector in frame coordinates. More...
|
| |
| sva::MotionVecd | refVelB () const |
| | Get reference velocity in frame coordinates as a motion vector. More...
|
| |
| void | refAccel (const sva::MotionVecd &accel) |
| | Set trajectory task's reference acceleration from motion vector. More...
|
| |
| void | load (mc_solver::QPSolver &solver, const mc_rtc::Configuration &config) override |
| | Load parameters from a Configuration object. More...
|
| |
| void | damping (double damping) |
| | Set the task damping, leaving its stiffness unchanged. More...
|
| |
| void | damping (const Eigen::VectorXd &damping) |
| | Set dimensional damping. More...
|
| |
| double | damping () const |
| | Get the current task damping. More...
|
| |
| void | setGains (double stiffness, double damping) |
| | Set both stiffness and damping. More...
|
| |
| void | setGains (const Eigen::VectorXd &stiffness, const Eigen::VectorXd &damping) |
| | Set dimensional stiffness and damping. More...
|
| |
| void | stiffness (double stiffness) |
| | Set the task stiffness/damping. More...
|
| |
| void | stiffness (const Eigen::VectorXd &stiffness) |
| | Set dimensional stiffness. More...
|
| |
| double | stiffness () const |
| | Get the current task stiffness. More...
|
| |
| | TrajectoryTaskGeneric (const mc_rbdyn::Robots &robots, unsigned int robotIndex, double stiffness, double weight) |
| | Constructor (auto damping) More...
|
| |
| | TrajectoryTaskGeneric (const mc_rbdyn::RobotFrame &frame, double stiffness, double weight) |
| | Constructor (auto damping) More...
|
| |
| virtual | ~TrajectoryTaskGeneric ()=default |
| |
| void | refVel (const Eigen::VectorXd &vel) |
| | Set the trajectory reference velocity. More...
|
| |
| const Eigen::VectorXd & | refVel () const |
| | Get the trajectory reference velocity. More...
|
| |
| void | refAccel (const Eigen::VectorXd &accel) |
| | Set the trajectory reference acceleration. More...
|
| |
| const Eigen::VectorXd & | refAccel () const |
| | Get the trajectory reference acceleration. More...
|
| |
| void | stiffness (double stiffness) |
| | Set the task stiffness/damping. More...
|
| |
| void | stiffness (const Eigen::VectorXd &stiffness) |
| | Set dimensional stiffness. More...
|
| |
| void | damping (double damping) |
| | Set the task damping, leaving its stiffness unchanged. More...
|
| |
| void | damping (const Eigen::VectorXd &damping) |
| | Set dimensional damping. More...
|
| |
| void | setGains (double stiffness, double damping) |
| | Set both stiffness and damping. More...
|
| |
| void | setGains (const Eigen::VectorXd &stiffness, const Eigen::VectorXd &damping) |
| | Set dimensional stiffness and damping. More...
|
| |
| double | stiffness () const |
| | Get the current task stiffness. More...
|
| |
| double | damping () const |
| | Get the current task damping. More...
|
| |
| const Eigen::VectorXd & | dimStiffness () const |
| | Get the current task dimensional stiffness. More...
|
| |
| const Eigen::VectorXd & | dimDamping () const |
| | Get the current task dimensional damping. More...
|
| |
| void | weight (double w) |
| | Set the task weight. More...
|
| |
| double | weight () const |
| | Returns the task weight. More...
|
| |
| void | dimWeight (const Eigen::VectorXd &dimW) override |
| | Set the task's dimension weight vector. More...
|
| |
| Eigen::VectorXd | dimWeight () const override |
| | Get the current task's dim weight vector. More...
|
| |
| void | selectActiveJoints (const std::vector< std::string > &activeJointsName, const std::map< std::string, std::vector< std::array< int, 2 >>> &activeDofs={}, bool checkJoints=true) |
| | Create an active joints selector. More...
|
| |
| void | selectActiveJoints (mc_solver::QPSolver &solver, const std::vector< std::string > &activeJointsName, const std::map< std::string, std::vector< std::array< int, 2 >>> &activeDofs={}) override |
| | Create an active joints selector. More...
|
| |
| void | selectUnactiveJoints (const std::vector< std::string > &unactiveJointsName, const std::map< std::string, std::vector< std::array< int, 2 >>> &unactiveDofs={}, bool checkJoints=true) |
| | Create an unactive joints selector. More...
|
| |
| void | selectUnactiveJoints (mc_solver::QPSolver &solver, const std::vector< std::string > &unactiveJointsName, const std::map< std::string, std::vector< std::array< int, 2 >>> &unactiveDofs={}) override |
| | Create an unactive joints selector. More...
|
| |
| virtual void | resetJointsSelector () |
| |
| void | resetJointsSelector (mc_solver::QPSolver &solver) override |
| | Reset active joints selection. More...
|
| |
| Eigen::VectorXd | eval () const override |
| | Returns the task error. More...
|
| |
| Eigen::VectorXd | speed () const override |
| | Returns the task velocity. More...
|
| |
| const Eigen::VectorXd & | normalAcc () const |
| |
| | MetaTask () |
| |
| virtual | ~MetaTask () |
| |
| const std::string & | type () const |
| |
| virtual void | name (const std::string &name) |
| |
| const std::string & | name () const |
| |
| size_t | iterInSolver () const noexcept |
| | Get the number of iterations since the task was added to the solver. More...
|
| |
| void | resetIterInSolver () noexcept |
| | Set the number of iterations since the task was added to the solver to zero. More...
|
| |
| void | incrementIterInSolver () noexcept |
| | Increment the number of iterations since the task was added to the solver. More...
|
| |
| Backend | backend () const noexcept |
| |
|
| using | TrajectoryBase = TrajectoryTaskGeneric |
| |
| using | Backend = mc_solver::QPSolver::Backend |
| |
| void | update (mc_solver::QPSolver &solver) override |
| | Update the task. More...
|
| |
| void | addToSolver (mc_solver::QPSolver &solver) override |
| | Add the task to a solver. More...
|
| |
| void | addToGUI (mc_rtc::gui::StateBuilder &gui) override |
| |
| void | addToLogger (mc_rtc::Logger &logger) override |
| |
| void | addToGUI (mc_rtc::gui::StateBuilder &gui) override |
| |
| void | refVel (const Eigen::VectorXd &vel) |
| | Set the trajectory reference velocity. More...
|
| |
| const Eigen::VectorXd & | refVel () const |
| | Get the trajectory reference velocity. More...
|
| |
| template<Backend backend, typename ErrorT , typename... Args> |
| void | finalize (Args &&... args) |
| |
| void | addToSolver (mc_solver::QPSolver &solver) override |
| | Add the task to a solver. More...
|
| |
| void | removeFromSolver (mc_solver::QPSolver &solver) override |
| | Remove the task from a solver. More...
|
| |
| void | update (mc_solver::QPSolver &) override |
| | Update the task. More...
|
| |
| virtual void | removeFromLogger (mc_rtc::Logger &) |
| |
| virtual void | removeFromGUI (mc_rtc::gui::StateBuilder &) |
| |
| static void | addToSolver (MetaTask &t, mc_solver::QPSolver &solver) |
| |
| static void | removeFromSolver (MetaTask &t, mc_solver::QPSolver &solver) |
| |
| static void | update (MetaTask &t, mc_solver::QPSolver &solver) |
| |
| static void | addToLogger (MetaTask &t, mc_rtc::Logger &logger) |
| |
| static void | removeFromLogger (MetaTask &t, mc_rtc::Logger &logger) |
| |
| static void | addToGUI (MetaTask &t, mc_rtc::gui::StateBuilder &gui) |
| |
| static void | removeFromGUI (MetaTask &t, mc_rtc::gui::StateBuilder &gui) |
| |
| static void | ensureHasJoints (const mc_rbdyn::Robot &robot, const std::vector< std::string > &joints, const std::string &prefix) |
| |
| ImpedanceGains | gains_ = ImpedanceGains::Default() |
| |
| bool | showTarget_ = true |
| |
| bool | showPose_ = true |
| |
| bool | showCompliance_ = true |
| |
| double | deltaCompPoseLinLimit_ = 1.0 |
| |
| double | deltaCompPoseAngLimit_ = mc_rtc::constants::PI |
| |
| double | deltaCompVelLinLimit_ = 1e3 |
| |
| double | deltaCompVelAngLimit_ = 1e3 |
| |
| double | deltaCompAccelLinLimit_ = 1e3 |
| |
| double | deltaCompAccelAngLimit_ = 1e3 |
| |
| sva::PTransformd | targetPoseW_ = sva::PTransformd::Identity() |
| |
| sva::MotionVecd | targetVelW_ = sva::MotionVecd::Zero() |
| |
| sva::MotionVecd | targetAccelW_ = sva::MotionVecd::Zero() |
| |
| sva::ForceVecd | targetWrench_ = sva::ForceVecd::Zero() |
| |
| sva::ForceVecd | measuredWrench_ = sva::ForceVecd::Zero() |
| |
| sva::ForceVecd | filteredMeasuredWrench_ = sva::ForceVecd::Zero() |
| |
| double | cutoffPeriod_ = 0.05 |
| |
| mc_filter::LowPass< sva::ForceVecd > | lowPass_ |
| |
| bool | hold_ = false |
| |
| sva::PTransformd | deltaCompPoseW_ = sva::PTransformd::Identity() |
| |
| sva::MotionVecd | deltaCompVelW_ = sva::MotionVecd::Zero() |
| |
| sva::MotionVecd | deltaCompAccelW_ = sva::MotionVecd::Zero() |
| |
| mc_rbdyn::ConstRobotFramePtr | frame_ |
| |
| bool | showTarget_ = true |
| |
| bool | showPose_ = true |
| |
| const mc_rbdyn::Robots & | robots |
| |
| unsigned int | rIndex |
| |
| mc_rtc::void_ptr | errorT {nullptr, nullptr} |
| |
| Eigen::VectorXd | refVel_ |
| |
| Eigen::VectorXd | refAccel_ |
| |
| bool | inSolver_ = false |
| |
| mc_rtc::void_ptr | trajectoryT_ {nullptr, nullptr} |
| |
| Eigen::VectorXd | stiffness_ |
| |
| Eigen::VectorXd | damping_ |
| |
| double | weight_ |
| |
| mc_rtc::void_ptr | selectorT_ {nullptr, nullptr} |
| |
| Backend | backend_ |
| |
| std::string | type_ |
| |
| std::string | name_ |
| |
| size_t | iterInSolver_ = 0 |
| |