From 7250eae0fca02bf3357424a1c464dc4082fbd044 Mon Sep 17 00:00:00 2001
From: ArmarX User <armarx@kit.edu>
Date: Thu, 7 Feb 2019 18:34:37 +0100
Subject: [PATCH] control tweaks for armar6 head

---
 .../JointController/JointPWMPositionController.cpp             | 2 +-
 .../JointController/PWMVelocityController.cpp                  | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/JointPWMPositionController.cpp b/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/JointPWMPositionController.cpp
index 4e059cd18..af1ca8a65 100644
--- a/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/JointPWMPositionController.cpp
+++ b/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/JointPWMPositionController.cpp
@@ -36,7 +36,7 @@ JointPWMPositionController::JointPWMPositionController(const std::string deviceN
     posController.positionLimitHi = jointData->getSoftLimitHi();
     //    controller.positionLimitLoHard = dataPtr->getHardLimitLo();
     posController.positionLimitLo = jointData->getSoftLimitLo();
-    posController.p = 2.0f;
+    posController.p = 3.0f;
     this->isLimitless = jointData->isLimitless();
 
 }
diff --git a/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/PWMVelocityController.cpp b/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/PWMVelocityController.cpp
index 544f76a1c..318dde917 100644
--- a/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/PWMVelocityController.cpp
+++ b/source/RobotAPI/libraries/KITGripperEtherCAT/KITGripperBasisBoard/JointController/PWMVelocityController.cpp
@@ -22,7 +22,7 @@
  *             GNU General Public License
  */
 #include "PWMVelocityController.h"
-
+#include <ArmarXCore/observers/filters/rtfilters/AverageFilter.h>
 namespace armarx
 {
 
@@ -36,6 +36,7 @@ namespace armarx
                                     velocityControllerConfigDataPtr->i,
                                     velocityControllerConfigDataPtr->d));
         pid->maxIntegral = velocityControllerConfigDataPtr->maxIntegral;
+        pid->differentialFilter.reset(new rtfilters::AverageFilter(130));
         pid->conditionalIntegralErrorTreshold = velocityControllerConfigDataPtr->conditionalIntegralErrorTreshold;
         pid->threadSafe = false;
     }
-- 
GitLab