Difference between set_dof_actuation_force_tensor and set_actor_dof_position_targets

Hello. I have a question about controlling revolute joints in Isaac Gym. I have the following goal:

  • Control revolute joints to reach a target position (in radians).

I’ve identified two methods for achieving this goal:

  1. Using set_dof_actuation_force_tensor function
  • Calculate the torque required to reach the target position using the target position and gains (Kp and Kd).
  • The torque is calculated as follows: Torque = Kp * [target position - current position] - Kd * [current velocity].
  • Apply the calculated torque using the set_dof_actuation_force_tensor(sim, calculated torque) function.
  1. Using set_actor_dof_position_targets function
  • Directly set the target position using the set_actor_dof_position_targets(env, target position) function.

I’m wondering if there is a difference between these two methods, especially in terms of the motor (joint) stiffness and damping effects. If anyone has knowledge about this, please help me.

hello. I was wondering the same thing, did you manage to solve it?