Go to the documentation of this file.
45 std::shared_ptr<class VelocityManipulatingTorqueControllerConfiguration>;
86 float actualPosition);
107 std::mutex pidParameterMutex;
111 double currentTargetVelocity = 0.0;
112 double lastAcceleration = 0.0;
113 double lastJerk = 0.0;
VelocityManipulatingTorqueControllerConfiguration()
const PIDController & getPid()
double pid_proportional_gain
bool setTorqueConfigData(VelocityManipulatingTorqueControllerConfiguration configData)
std::vector< float > firFilterImpulseResponse
VelocityManipulatingTorqueControllerConfiguration getTorqueConfigData() const
double calcJointLimitProtectionTorque(float actualPosition)
VelocityManipulatingTorqueController(const VelocityManipulatingTorqueControllerConfigurationPtr &torqueConfigData)
std::shared_ptr< class VelocityManipulatingTorqueControllerConfiguration > VelocityManipulatingTorqueControllerConfigurationPtr
armarx::core::time::DateTime Time
double getCurrentTargetVelocity() const
float update(const IceUtil::Time &sensorValuesTimestamp, const IceUtil::Time &timeSinceLastIteration, float gravity, float actualTorque, float targetTorque, float actualVelocity, float actualPosition)
static VelocityManipulatingTorqueControllerConfigurationPtr CreateTorqueConfigData(hardware_config::Config &config, bool limitless, float jointLimitLow, float jointLimitHigh)
The Config class is the base class of all specialized configurations that have a direct key -> value ...
double getLastJerk() const
double getLastAcceleration() const
double pid_derivative_gain