SLOSE84B August 2022 – October 2023 DRV8452
PRODUCTION DATA
Table 7-26 describes the major parameters associated with the PD control loop -
Parameter |
Description |
---|---|
KP[7:0], KD[3:0] | Proportional and differential gain parameters for the PD control loop. |
ATQ_AVG[2:0] | The ATQ_CNT parameter is a moving average of ATQ_AVG number of half-cycles. Therefore, a high value for ATQ_AVG slows down the loop response time to a sudden peak load demand, but ensures smooth jerk-free transition to higher torque output. A low value causes the loop to respond immediately to a sudden load demand.
|
ATQ_FRZ[2:0] | Delay in electrical half-cycles after which current is changed in response to the PD loop. A small value increases the current quickly to meet peak load demand. This parameter has a range of 1 to 7. 001b - Fastest response time, but the loop can become unstable 111b - Slowest response, but the loop will be stable |
ATQ_D_THR[7:0] | If error change is less then ATQ_D_THR, then KD does not contribute to correction. KD contributes only when error change is greater than ATQ_D_THR. For example: if ATQ_D_THR = 10, If error change is 9, u(t) = KP * e(t) If error change is 12, then u(t) = KP * e(t) + KD * de(t)/dt |
ATQ_ERROR_TRUNCATE[3:0] | Number of LSB bits truncated from error before used in PD loop equations. A high value reduces any oscillation in the current waveform. |
The PD control algorithm is expressed as -
where,
KP and KD = PD loop constants
u(t) = output of controller
e(t) = error signal
In general, increasing the KP will increase the speed of the control system response.
However, if KP is too large, the current waveform will start to oscillate.
If KP is increased further, the oscillations will become larger. The system will become unstable and may even oscillate out of control.
Increasing the value of KD will cause the control system to react more strongly to changes in the error term and will increase the speed of the overall control system response.
It is recommended to use small value of KD, because the derivative response is highly sensitive to noise.
When non-zero values of KD is selected, to improve noise immunity of the system, a high value of ATQ_D_THR should be used.
Guidelines to tune the PD loop parameters are as follows -
Set KP = 1, KD = 0, all other PD loop parameters should be at their default values
Apply load profile specific to the application
If the motor stalls, increase KP, KD and decrease ATQ_D_THR till the motor stops stalling
Once the motor does not stall any more, observe the current waveform at constant load torques
If the current waveform has oscillations, increase ATQ_FRZ, ATQ_AVG and ATQ_ERROR_TRUNCATE
Very high values of ATQ_FRZ, ATQ_AVG and ATQ_ERROR_TRUNCATE can deteriorate load transient response, so it is recommended to check load transient response once more to ensure the PD control loop is stable.
Figure 7-30 is the flowchart for selecting PD control loop parameters.