From 19eab7f162a9a4200058995751cb3c14f315912d Mon Sep 17 00:00:00 2001 From: Nicola Piga Date: Wed, 17 May 2023 20:52:19 +0000 Subject: [PATCH 1/3] Align joint limits of hand joints to the CAD --- .../ergocub/ERGOCUB_joint_all_parameters.csv | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/urdf/simmechanics/data/ergocub/ERGOCUB_joint_all_parameters.csv b/urdf/simmechanics/data/ergocub/ERGOCUB_joint_all_parameters.csv index f7c12267..efb5b153 100644 --- a/urdf/simmechanics/data/ergocub/ERGOCUB_joint_all_parameters.csv +++ b/urdf/simmechanics/data/ergocub/ERGOCUB_joint_all_parameters.csv @@ -28,31 +28,31 @@ l_elbow,-3,75,2,0,120, l_wrist_roll,-62,52,2,0,120, l_wrist_pitch,-32,32,2,0,120, l_wrist_yaw,-92,92,2,0,120, -l_thumb_add,0,60,2,0,120, -l_thumb_prox,0,160,2,0,120, -l_thumb_dist,0,160,2,0,120, -l_index_add,0,20,2,0,120, -l_index_prox,0,160,2,0,120, -l_index_dist,0,160,2,0,120, -l_middle_prox,0,160,2,0,120, -l_middle_dist,0,160,2,0,120, -l_ring_prox,0,160,2,0,120, -l_ring_dist,0,160,2,0,120, -l_pinkie_prox,0,160,2,0,120, -l_pinkie_dist,0,160,2,0,120, +l_thumb_add,0,90,2,0,100, +l_thumb_prox,0,82.1,2,0,100, +l_thumb_dist,0,53.6,2,0,120, +l_index_add,0,15,2,0,100, +l_index_prox,0,90,2,0,100, +l_index_dist,0,99.2,2,0,100, +l_middle_prox,0,90,2,0,100, +l_middle_dist,0,99.2,2,0,100, +l_ring_prox,0,90,2,0,100, +l_ring_dist,0,99.2,2,0,100, +l_pinkie_prox,0,90,2,0,100, +l_pinkie_dist,0,93.3,2,0,100, r_elbow,-3,75,2,0,120, r_wrist_roll,-62,52,2,0,120, r_wrist_pitch,-32,32,2,0,120, r_wrist_yaw,-92,92,2,0,120, -r_thumb_add,0,60,2,0,120, -r_thumb_prox,0,160,2,0,120, -r_thumb_dist,0,160,2,0,120, -r_index_add,0,20,2,0,120, -r_index_prox,0,160,2,0,120, -r_index_dist,0,160,2,0,120, -r_middle_prox,0,160,2,0,120, -r_middle_dist,0,160,2,0,120, -r_ring_prox,0,160,2,0,120, -r_ring_dist,0,160,2,0,120, -r_pinkie_prox,0,160,2,0,120, -r_pinkie_dist,0,160,2,0,120, +r_thumb_add,0,90,2,0,100, +r_thumb_prox,0,82.1,2,0,100, +r_thumb_dist,0,53.6,2,0,120, +r_index_add,0,15,2,0,100, +r_index_prox,0,90,2,0,100, +r_index_dist,0,99.2,2,0,100, +r_middle_prox,0,90,2,0,100, +r_middle_dist,0,99.2,2,0,100, +r_ring_prox,0,90,2,0,100, +r_ring_dist,0,99.2,2,0,100, +r_pinkie_prox,0,90,2,0,100, +r_pinkie_dist,0,93.3,2,0,100, From 8e55920d1bec8f93b3713e6277b582a0b3cd0e45 Mon Sep 17 00:00:00 2001 From: Nicola Piga Date: Wed, 17 May 2023 20:56:34 +0000 Subject: [PATCH 2/3] Properly configure joint limits for coupled hand joints --- .../data/ergocub/conf/gazebo_ergocub_left_hand.ini | 8 ++++---- .../data/ergocub/conf/gazebo_ergocub_right_hand.ini | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini index 2c628d5b..a1a53a41 100644 --- a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini +++ b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini @@ -3,15 +3,15 @@ yarpDeviceName left_hand_hardware_device jointNames l_thumb_add l_thumb_prox l_thumb_dist l_index_add l_index_prox l_index_dist l_middle_prox l_middle_dist l_ring_prox l_ring_dist l_pinkie_prox l_pinkie_dist [COUPLING] -icub_hand_mk5 (0 1 2 3 4 5 6 7 8 9 10 11) (l_thumb_add l_thumb_oc l_index_add l_index_oc l_middle_oc l_ring_pinky_oc reserved reserved reserved reserved reserved reserved) +icub_hand_mk5 (0 1 2 3 4 5 6 7 8 9 10 11) (l_thumb_add l_thumb_oc l_index_add l_index_oc l_middle_oc l_ring_pinky_oc reserved reserved reserved reserved reserved reserved) (0.0 0.0 0.0 0.0 0.0 0.0) (90.0 82.1 15.0 90.0 90.0 90.0) [TRAJECTORY_GENERATION] trajectory_type minimum_jerk [LIMITS] -jntVelMax 180.0 180.0 180.0 180.0 180.0 180.0 0 0 0 0 0 0 -jntPosMax 70.0 160.0 15.0 160.0 160.0 160.0 0 0 0 0 0 0 -jntPosMin 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0 0 0 0 +jntVelMax 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 +jntPosMax 90.0 82.1 53.6 15.0 90.0 99.2 90.0 99.2 90.0 99.2 90.0 93.3 +jntPosMin 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 [POSITION_CONTROL] controlUnits metric_units diff --git a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini index 7afe52b4..072a70b6 100644 --- a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini +++ b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini @@ -3,15 +3,15 @@ yarpDeviceName right_hand_hardware_device jointNames r_thumb_add r_thumb_prox r_thumb_dist r_index_add r_index_prox r_index_dist r_middle_prox r_middle_dist r_ring_prox r_ring_dist r_pinkie_prox r_pinkie_dist [COUPLING] -icub_hand_mk5 (0 1 2 3 4 5 6 7 8 9 10 11) (r_thumb_add r_thumb_oc r_index_add r_index_oc r_middle_oc r_ring_pinky_oc reserved reserved reserved reserved reserved reserved) +icub_hand_mk5 (0 1 2 3 4 5 6 7 8 9 10 11) (r_thumb_add r_thumb_oc r_index_add r_index_oc r_middle_oc r_ring_pinky_oc reserved reserved reserved reserved reserved reserved) (0.0 0.0 0.0 0.0 0.0 0.0) (90.0 82.1 15.0 90.0 90.0 90.0) [TRAJECTORY_GENERATION] trajectory_type minimum_jerk [LIMITS] -jntVelMax 180.0 180.0 180.0 180.0 180.0 180.0 0 0 0 0 0 0 -jntPosMax 70.0 160.0 15.0 160.0 160.0 160.0 0 0 0 0 0 0 -jntPosMin 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0 0 0 0 +jntVelMax 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 100.0 +jntPosMax 90.0 82.1 53.6 15.0 90.0 99.2 90.0 99.2 90.0 99.2 90.0 93.3 +jntPosMin 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 [POSITION_CONTROL] controlUnits metric_units From 65c87ebf26a6c9611541f76b501454b6048068d4 Mon Sep 17 00:00:00 2001 From: Nicola Piga Date: Wed, 17 May 2023 20:57:41 +0000 Subject: [PATCH 3/3] Configure hand joints to use the 'integrator_and_position_pid' velocity control mode and provide tuning for the 'direct_velocity_pid' mode --- .../data/ergocub/conf/gazebo_ergocub_left_hand.ini | 10 +++++----- .../data/ergocub/conf/gazebo_ergocub_right_hand.ini | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini index a1a53a41..a5372cf0 100644 --- a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini +++ b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_left_hand.ini @@ -27,12 +27,12 @@ stictionUp 0 0 0 0 0 0 0 0 0 0 0 0 stictionDwn 0 0 0 0 0 0 0 0 0 0 0 0 [VELOCITY_CONTROL] -controlUnits metric_units -controlLaw joint_pid_gazebo_v1 -velocityControlImplementationType direct_velocity_pid -kp 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 +controlUnits metric_units +controlLaw joint_pid_gazebo_v1 +velocityControlImplementationType integrator_and_position_pid +kp 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 kd 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -ki 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 +ki 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 maxInt 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 maxOutput 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 shift 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini index 072a70b6..ad590f33 100644 --- a/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini +++ b/urdf/simmechanics/data/ergocub/conf/gazebo_ergocub_right_hand.ini @@ -27,12 +27,12 @@ stictionUp 0 0 0 0 0 0 0 0 0 0 0 0 stictionDwn 0 0 0 0 0 0 0 0 0 0 0 0 [VELOCITY_CONTROL] -controlUnits metric_units -controlLaw joint_pid_gazebo_v1 -velocityControlImplementationType direct_velocity_pid -kp 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 20.0 +controlUnits metric_units +controlLaw joint_pid_gazebo_v1 +velocityControlImplementationType integrator_and_position_pid +kp 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 kd 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -ki 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 +ki 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 maxInt 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 maxOutput 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 9999 shift 0 0 0 0 0 0 0 0 0 0 0 0