![]() |
- 3.0.2 rigid body dynamics module.
|
A joint position controller using a PID controller for all joints. More...
#include <JointPositionPIDController.h>
Public Types | |
| typedef std::shared_ptr< JointPositionPIDController< NJOINTS > > | Ptr |
| typedef ct::core::PIDController< double > | PIDController |
Public Member Functions | |
| virtual JointPositionPIDController< NJOINTS > * | clone () const override |
| JointPositionPIDController (const Eigen::Matrix< double, NJOINTS, 1 > &desiredPosition=Eigen::Matrix< double, NJOINTS, 1 >::Zero(), const Eigen::Matrix< double, NJOINTS, 1 > &desiredVelocity=Eigen::Matrix< double, NJOINTS, 1 >::Zero(), const std::vector< PIDController::parameters_t > ¶meters=std::vector< PIDController::parameters_t >(NJOINTS, PIDController::parameters_t())) | |
| JointPositionPIDController (const Eigen::Matrix< double, NJOINTS, 1 > &desiredPosition, const Eigen::Matrix< double, NJOINTS, 1 > &desiredVelocity, const PIDController::parameters_t ¶meters) | |
| virtual | ~JointPositionPIDController () |
| void | computeControl (const core::StateVector< STATE_DIM > &state, const core::Time &t, core::ControlVector< NJOINTS > &control) override |
| void | setDesiredPosition (const Eigen::Matrix< double, NJOINTS, 1 > &desiredPosition) |
| void | setDesiredPosition (double desiredPosition, int jointId) |
| void | setAllPIDGains (double kp, double ki, double kd) |
| void | reset () |
Public Member Functions inherited from ct::core::Controller< 2 *NJOINTS, NJOINTS > | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW | Controller () |
| Controller (const Controller &other) | |
| virtual | ~Controller () |
| virtual void | computeControl (const StateVector< 2 *NJOINTS, SCALAR > &state, const SCALAR &t, ControlVector< NJOINTS, SCALAR > &controlAction)=0 |
| virtual ControlMatrix< NJOINTS, SCALAR > | getDerivativeU0 (const StateVector< 2 *NJOINTS, SCALAR > &state, const SCALAR time) |
| virtual ControlMatrix< NJOINTS, SCALAR > | getDerivativeUf (const StateVector< 2 *NJOINTS, SCALAR > &state, const SCALAR time) |
Static Public Attributes | |
| static const size_t | STATE_DIM = 2 * NJOINTS |
| static const size_t | CONTROL_DIM = NJOINTS |
Protected Attributes | |
| std::vector< PIDController > | jointControllers_ |
A joint position controller using a PID controller for all joints.
| NJOINTS | number of joints of the robot |
| typedef std::shared_ptr<JointPositionPIDController<NJOINTS> > ct::rbd::JointPositionPIDController< NJOINTS >::Ptr |
| typedef ct::core::PIDController<double> ct::rbd::JointPositionPIDController< NJOINTS >::PIDController |
| ct::rbd::JointPositionPIDController< NJOINTS >::JointPositionPIDController | ( | const Eigen::Matrix< double, NJOINTS, 1 > & | desiredPosition = Eigen::Matrix<double, NJOINTS, 1>::Zero(), |
| const Eigen::Matrix< double, NJOINTS, 1 > & | desiredVelocity = Eigen::Matrix<double, NJOINTS, 1>::Zero(), |
||
| const std::vector< PIDController::parameters_t > & | parameters = std::vector<PIDController::parameters_t>(NJOINTS, PIDController::parameters_t()) |
||
| ) |
References i.
| ct::rbd::JointPositionPIDController< NJOINTS >::JointPositionPIDController | ( | const Eigen::Matrix< double, NJOINTS, 1 > & | desiredPosition, |
| const Eigen::Matrix< double, NJOINTS, 1 > & | desiredVelocity, | ||
| const PIDController::parameters_t & | parameters | ||
| ) |
References i.
|
virtual |
|
overridevirtual |
Implements ct::core::Controller< 2 *NJOINTS, NJOINTS >.
|
override |
| void ct::rbd::JointPositionPIDController< NJOINTS >::setDesiredPosition | ( | const Eigen::Matrix< double, NJOINTS, 1 > & | desiredPosition | ) |
References i.
| void ct::rbd::JointPositionPIDController< NJOINTS >::setDesiredPosition | ( | double | desiredPosition, |
| int | jointId | ||
| ) |
| void ct::rbd::JointPositionPIDController< NJOINTS >::setAllPIDGains | ( | double | kp, |
| double | ki, | ||
| double | kd | ||
| ) |
References i.
| void ct::rbd::JointPositionPIDController< NJOINTS >::reset | ( | ) |
References i.
|
static |
|
static |
|
protected |