The primary goal behind these changes is to model the behavior of a low-level joint controller more accurately, rather than relying on workarounds within the physics engine. Additionally, addressing some limitations related to closed-loop kinematic chains using Position and Velocity control interfaces is another objective. The PR could maybe also solve this issue #240
Change in usage :
The usage remains largely the same as before, with one key difference. If you declare parameters kp, ki, or kd using the command_interface for Position or Velocity, the controller will apply effort to the joint based on the specified PID gains instead of directly setting the joint position or velocity.
Usage exemple :
Here’s an example of the new usage for controlling the velocity of a joint using an Effort PID:
Change :
Motivation :
The primary goal behind these changes is to model the behavior of a low-level joint controller more accurately, rather than relying on workarounds within the physics engine. Additionally, addressing some limitations related to closed-loop kinematic chains using Position and Velocity control interfaces is another objective. The PR could maybe also solve this issue #240
Change in usage :
The usage remains largely the same as before, with one key difference. If you declare parameters kp, ki, or kd using the command_interface for Position or Velocity, the controller will apply effort to the joint based on the specified PID gains instead of directly setting the joint position or velocity.
Usage exemple :
Here’s an example of the new usage for controlling the velocity of a joint using an Effort PID:
The second example retains the original behavior, where a Velocity controller sets the velocity of the joint in the physics engine :
This is an automatic backport of pull request #294 done by Mergify.