0x2011 Velocity controller

Velocity PID Tuning (objects 2011:1...2011:4)

IMPORTANT: These values are only used in velocity control mode (not in cascaded position control)

Controller Structure

image/svg+xml τ_offset τ_con τ_ref τ Velocity Control

PID Parameter Range

The constants K_p, K_i, and K_d should be between 0 and 10 with the precision of 6-digit floating point. To find the proper values of PID constants of velocity controller the following steps are recommended:

Recommended Tuning Steps
  • Step 1. Check if all constants K_p, K_i, and K_d are set to 0. After that activate the velocity controller. By default, the integral limit of velocity controller should be set to the maximum torque of selected motor in [mNm].
  • Step 2. Set the reference velocity to 50% of rated motor velocity [rpm].
  • Step 3. Increase K_p until the measured speed is around 70% of the reference speed. As a suggestion start with K_p equal to 0.1, and in each step increase K_p with a factor of 2.
  • Step 4. From this step forth, step response of the system should be checked. Increase K_i step by step to increase the speed of velocity controller (as a suggestion start with K_i equal to 0.01 and in each step increase it by a factor of 2). At this point, the parameters K_p and K_i of the velocity controller are tuned. The parameter K_d of the velocity controller can be kept at its default value (0).
Name Index:Sub Type Bit Size Min Data Max Data Default Data Unit Access PDO Mapping
Controller Kp 0x2011:1 REAL 32 0 0 readwrite

The P-gain of the PID Velocity Control Loop [mNm/rpm].

Name Index:Sub Type Bit Size Min Data Max Data Default Data Unit Access PDO Mapping
Controller Ki 0x2011:2 REAL 32 0 0 readwrite

The I-gain of the PID Velocity Control Loop [mNm/(rpm*s)]

Name Index:Sub Type Bit Size Min Data Max Data Default Data Unit Access PDO Mapping
Controller Kd 0x2011:3 REAL 32 0 0 readwrite

The D-gain of the PID Velocity Control Loop [rpm*s/inc]

Name Index:Sub Type Bit Size Min Data Max Data Default Data Unit Access PDO Mapping
Controller integral limit 0x2011:4 UDINT 32 0 readwrite

Integrator limitation for anti-windup. Technique used is clamping and it prevents the integral term from accumulating above or below pre-determined bounds. Initially set to MAX (2,147,483,647 --> Integral limit DEACTIVATED), please set the maximal values for your integral limit manually.