DynaArm PID Tuner
Controller that allows to tune the PID parameters of the controllers running on the actuators on the live system.\
Important
Please use with care. By selecting bad parameters it is possible to damage the hardware.
Parameters
Definition:
dynaarm_pid_tuner:
joints:
type: string_array
default_value: []
description: Names of joints used by the controller
validation:
unique<>: null
joints | [Required]:
List of managed joints by the controller. Always needs to be a list of all joints of an arm in the order specified in the urdf
Example:
A full example can be found in the dynaarm_demo repository.
pid_tuner:
ros__parameters:
joints:
- shoulder_rotation
- shoulder_flexion
- elbow_flexion
- forearm_rotation
- wrist_flexion
- wrist_rotation
ROS Interface
~/
type: <dynaarm_msgs/msg/PIDGains.
For each configured joint a new topic is created that awaits new PID-gains.
The received gains are then configured as a parameters of the controller node and set to the drive during the next update cycle.
Additional Information
During controller activation the current gains are set as parameter to the controller ROS node.
They can be access via ros2 param get <controller node name> <joint name>/<gain type>
with gain type being one of [p_gain, i_gain,d_gain]
.