@Override public void set(PositionPIDGainsInterface positionGains) { this.positionGains.set(positionGains); }
public void setPositionDerivativeGains(double derivativeGainX, double derivativeGainY, double derivativeGainZ) { positionGains.setDerivativeGains(derivativeGainX, derivativeGainY, derivativeGainZ); }
public void setPositionIntegralGains(double[] integralGains, double maxIntegralError) { positionGains.setIntegralGains(integralGains, maxIntegralError); }
@Override public void set(PositionPIDGainsInterface gains) { setProportionalGains(gains.getProportionalGains()); setDerivativeGains(gains.getDerivativeGains()); setIntegralGains(gains.getIntegralGains(), gains.getMaximumIntegralError()); setTangentialDampingGains(gains.getTangentialDampingGains()); setMaxFeedbackAndFeedbackRate(gains.getMaximumFeedback(), gains.getMaximumFeedbackRate()); setMaxDerivativeError(gains.getMaximumDerivativeError()); setMaxProportionalError(gains.getMaximumProportionalError()); }
public YoIndependentSE3PIDGains(String prefix, YoVariableRegistry registry) { positionGains = new YoEuclideanPositionGains(prefix, registry); orientationGains = new YoAxisAngleOrientationGains(prefix, registry); }
public void setPositionProportionalGains(double[] proportionalGains) { positionGains.setProportionalGains(proportionalGains); }
public void setPositionMaxFeedbackAndFeedbackRate(double maxFeedback, double maxFeedbackRate) { positionGains.setMaxFeedbackAndFeedbackRate(maxFeedback, maxFeedbackRate); }
public void setPositionMaxProportionalError(double maxProportionalError) { positionGains.setMaxProportionalError(maxProportionalError); }
public void setPositionMaxDerivativeError(double maxDerivativeError) { positionGains.setMaxDerivativeError(maxDerivativeError); }
public void reset() { positionGains.reset(); orientationGains.reset(); }
public BodyFixedPointLinearAccelerationControlModule(String namePrefix, TwistCalculator twistCalculator, RigidBody endEffector, double dt, YoPositionPIDGainsInterface gains, YoVariableRegistry parentRegistry) { registry = new YoVariableRegistry(namePrefix + getClass().getSimpleName()); this.dt = dt; this.twistCalculator = twistCalculator; this.endEffector = endEffector; if (gains == null) gains = new YoEuclideanPositionGains(namePrefix, registry); this.gains = gains; proportionalGainMatrix = gains.createProportionalGainMatrix(); derivativeGainMatrix = gains.createDerivativeGainMatrix(); integralGainMatrix = gains.createIntegralGainMatrix(); frameAtBodyFixedPoint = new YoTranslationFrame(namePrefix + "BodyFixedPointFrame", endEffector.getBodyFixedFrame(), registry); positionError = new YoFrameVector(namePrefix + "PositionError", worldFrame, registry); positionErrorCumulated = new YoFrameVector(namePrefix + "PositionErrorCumulated", worldFrame, registry); velocityError = new YoFrameVector(namePrefix + "LinearVelocityError", worldFrame, registry); feedbackLinearAcceleration = new YoFrameVector(namePrefix + "FeedbackLinearAcceleration", worldFrame, registry); rateLimitedFeedbackLinearAcceleration = RateLimitedYoFrameVector.createRateLimitedYoFrameVector(namePrefix + "RateLimitedFeedbackLinearAcceleration", "", registry, gains.getYoMaximumFeedbackRate(), dt, feedbackLinearAcceleration); parentRegistry.addChild(registry); }
public void setPositionProportionalGains(double proportionalGainX, double proportionalGainY, double proportionalGainZ) { positionGains.setProportionalGains(proportionalGainX, proportionalGainY, proportionalGainZ); }
public EuclideanPositionController(String prefix, ReferenceFrame bodyFrame, double dt, YoPositionPIDGainsInterface gains, YoVariableRegistry parentRegistry) { this.dt = dt; this.bodyFrame = bodyFrame; registry = new YoVariableRegistry(prefix + getClass().getSimpleName()); if (gains == null) gains = new YoEuclideanPositionGains(prefix, registry); this.gains = gains; proportionalGainMatrix = gains.createProportionalGainMatrix(); derivativeGainMatrix = gains.createDerivativeGainMatrix(); integralGainMatrix = gains.createIntegralGainMatrix(); positionError = new YoFrameVector(prefix + "PositionError", bodyFrame, registry); positionErrorCumulated = new YoFrameVector(prefix + "PositionErrorCumulated", bodyFrame, registry); velocityError = new YoFrameVector(prefix + "LinearVelocityError", bodyFrame, registry); proportionalTerm = new FrameVector(bodyFrame); derivativeTerm = new FrameVector(bodyFrame); integralTerm = new FrameVector(bodyFrame); feedbackLinearAction = new YoFrameVector(prefix + "FeedbackLinearAction", bodyFrame, registry); rateLimitedFeedbackLinearAction = RateLimitedYoFrameVector.createRateLimitedYoFrameVector(prefix + "RateLimitedFeedbackLinearAction", "", registry, gains.getYoMaximumFeedbackRate(), dt, feedbackLinearAction); tangentialDampingCalculator = new EuclideanTangentialDampingCalculator(prefix, bodyFrame, gains.getTangentialDampingGains()); parentRegistry.addChild(registry); }
public void setPositionDerivativeGains(double[] derivativeGains) { positionGains.setDerivativeGains(derivativeGains); }
public void setPositionIntegralGains(double integralGainX, double integralGainY, double integralGainZ, double maxIntegralError) { positionGains.setIntegralGains(integralGainX, integralGainY, integralGainZ, maxIntegralError); }