For applications that require better
speed regulation, it is recommended to tune Speed loop PI controllers [SPD_LOOP_KP]
and [SPD_LOOP_KI]. Kp coefficient of speed loop [SPD_LOOP_KP] controls the settling
time and speed overshoots. Ki coefficient of Speed loop [SPD_LOOP_KI] controls speed
overshoot and ensures regulation of speed at set value and drives the error to zero.
Speed loop PI controller gains can either be auto-tuned by MCF8329HS or tuned
manually.
Manual Tuning: Use the
following steps to tune Speed loop PI controller gains manually:
- Set the control mode [CTRL_MODE]
to modulation index control (11b).
- Issue non-zero speed command to
start the motor (refer to Section 2.4, step 1 on how to issue
non-zero speed command). Motor will spin in open loop.
- Allow the open loop current to
settle down and then measure the peak open loop current.
- Stop the motor and set the
control mode [CTRL_MODE] to current control.
- Slowly increase the speed command
until the motor speed reaches the max speed. Note down the Iq_ref value being
reported in the IQ_REF_CLOSED_LOOP register.
- Speed loop Kp [SPD_LOOP_KP] is
calculated using:
Equation 2.
- Speed loop Ki [SPD_LOOP_KI] is
calculated using:
Equation 3.
- Stop the motor and set the
control mode [CTRL_MODE] to speed control.
Note: Tuning speed loop Kp and Ki is
experimental. If the above recommendation doesn’t work, then we recommend to
manually tune Speed loop Kp and Ki till the desired results are achieved.