Current Regulation Control Loop
Introduction
Phase current control loop, or current regulation control loop, controls the phase current feedback loop with respect to our field-oriented control (FOC) implementation. You may need to adjust the current regulation of your system to adjust the behaviour, such as overall acceleration and current overshoot.
Current Regulator bandwidth is used to calculate the feedback gain for the controller’s current regulation loops: Current regulator Kp and Current regulator Ki.
As the Current Regulator bandwidth increases, the faster the controller tries to correct the output current relative to the target output, often with less overshoot and integrator windup as 'Current regulator Kp' becomes a dominant factor in the PI Loop. The Current Regulator bandwidth sets the Current regulator Kp and Current regulator Ki.
A side effect of higher Current Regulator bandwidth is that the phase current may become harder to control causing instability. It might over-adjust, increasing output/audible noise and overshoots causing Overcurrent faults. In some cases, if the Current Regulator bandwidth is low enough, the acceleration will be noticeably negatively affected. -->
Tuning
Bandwidth Tuning
Generally higher speed motors benefit from Current Regulator bandwidth >= 3000, up to 5000. Lower speed motors can tolerate lower values, such as 1500. Maintain a sufficiently high Current Regulator bandwidth to have desirable acceleration and performance.
Manual Tuning
Though it is not recommended to set individual PI gains. If the Current Regulator bandwidth is set to zero, you can manually set the Current regulator Kp and the Current regulator Ki values.
In firmware 6.021 and higher, you can also manually set the Current Regulator Kcc (address 1955). This is the cross-coupling gain used to decouple the D-axis and Q-axis current control loops. When Current Regulator bandwidth is non-zero (1 to 5000), Current Regulator Kcc shows the cross-coupling gain calculated by the controller.
When Current Regulator bandwidth is set to zero, the Kcc gain is set to zero unless Level 1 Features bit 5 Manual Kcc Tuning is enabled. To tune Kcc manually:
- Set
Current Regulator bandwidthto zero. - Enable
Level 1 Featuresbit 5 Manual Kcc Tuning. - Set
Current Regulator Kcc.
WARNING
An incorrect Kcc value causes incorrect D-axis and Q-axis cross-coupling compensation, and incorrect D-axis and Q-axis current control.
When Current Regulator bandwidth is set to zero, Current Regulator Kcc keeps the value calculated from the last non-zero Current Regulator bandwidth. You can then change Current Regulator Kcc manually.
Tuning effects when increasing a parameter independently:
| Parameter | Rise time | Overshoot | Settling time | Steady-state error | Stability |
|---|---|---|---|---|---|
| Current regulator Kp | Decrease | Increase | Small change | Decrease | Degrade |
| Current regulator Ki | Decrease | Increase | Increase | Eliminate | Degrade |