We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a1d0eab commit 7cff4fcCopy full SHA for 7cff4fc
robot_payload_id/data/data_matrix_numeric.py
@@ -287,9 +287,14 @@ def extract_numeric_data_matrix_autodiff(
287
if add_viscous_friction:
288
ad_torques += viscous_frictions_ad * joint_data.joint_velocities[i]
289
if add_dynamic_dry_friction:
290
- ad_torques += dynamic_dry_frictions_ad * np.sign(
+ dynamic_dry_friction_torque = dynamic_dry_frictions_ad * np.sign(
291
joint_data.joint_velocities[i]
292
)
293
+ # Theshold to avoid numerical issues
294
+ dynamic_dry_friction_torque[
295
+ np.abs(joint_data.joint_velocities[i]) < 0.001
296
+ ] = 0.0
297
+ ad_torques += dynamic_dry_friction_torque
298
299
# Differentiate w.r.t. parameters
300
ad_torques_derivative = np.vstack(
0 commit comments