Hello,
I have a question on the DC bus compensation algorithm provided in the InstaSpin-FOC software.
In the file of ctrl.h, the function of CTRL_setFlag_enableDcBusComp() states that "The DC bus compensation algorithm will compensate the Iq and Id PI controller's proportional gains for DC bus variations".
In view of the above-listed statement, I examined the relavance between the control gain Kp_Idq and the DC bus voltage with the proj_lab10a CCS project.
When the proj_lab10a is being executed with our induction motor, I have varied the DC bus voltage and watched the value of gMotorVars.Kp_Idq in the debugger environment.
Meanwhile the DC bus compensation was enabled by the following C code in the main() function.
// enable DC bus compensation
CTRL_setFlag_enableDcBusComp(ctrlHandle, true);
The following C codes were added in the function of updateGlobalVariables_motor().
// Get the current controller gains Kp_Idq and Ki_Idq
gMotorVars.Kp_Idq = CTRL_getKp(ctrlHandle,CTRL_Type_PID_Id);
gMotorVars.Ki_Idq = CTRL_getKi(ctrlHandle,CTRL_Type_PID_Id);
As a result, when the DC bus voltage was varied from 520VDC to 420VDC, the value of gMotorVars.Kp_Idq was invariable to 1.153 and the value of gMotorVars.Ki_Idq was invariable to 0.01.
Therefore it seems that the DC bus compensation algorithm does not work for this test.
Please comment on this observation.
Thank you for your guidance.
With regards,
JS Yoo