This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

how to improve the PF value with the ACI+PFC KIT v1.7?

Other Parts Discussed in Thread: CONTROLSUITE

dear

who can  tell me how to improve the PF value with the ACI+PFC KIT v1.7?  in my Application,AC  input  is 220v, PFC output is 390v, load is ahout 100w;i found the PF value  is only 80%. i do not know the reason?why?

i want to change the Coefficient kp,ki,kd in the current loop and volt loop ,but i do not know to change the current loop first or change the volt loop first ,or change them together? 

  • look at the HVPFC Kit (not the HV MTR PFC kit, just the PFC Kit).  We haven't updated the PFC solution on the motor kit due to a conflict between controlCARDs used during the software/system development.

    C:\ti\controlSUITE\development_kits\HVPFC2Phil

  • dear

    i found the code about the pfc in the HVPFC KIT is the same like the HV MTR PFC kit,

    if i change the KP,KI,KD the same in  the HVPFC KIT ,do the  pf value  will be improve ?

    or do you have some relation data about kp.ki.kd can afford to me?

  • dear everyone : i used aci+pfc kit 1.7 in my application, if i use Auxiliary power supply( 400V to 5V and 15V module) on the board,i found the pf value is lower than i use DC power fed through the DC-jack; the code is the same,i only change the power supply,but the pf is different,why???why???

  • Ge,

    How bad are the results?

    Are you using jumper between J1(-12) or J2-(2-3), J2(1-2) is the simplest method that we had tested with the board. However as in this case the axillary power supply is getting power from the rectified voltage it can draw non sinusoidal current.

    You can try the jumper J2 (2-3) but proceed with caution, that should improve the results.

    Regards

    Manish Bhardwaj

  • Manish Bhardwaj: i try the jumper J2 (2-3) , i found the result is improve. in my app,the load is 700w,if i try the jumper J2(1-2) the pf value is 85%; if i try the jumper J2(2-3) the pf value is 97.5%. i found another problem in my app ,in my code the pfc output is 380v,current loop coefficients is : CNTL_2P2Z_CoefStruct1.b2 = _IQ26(0.07124); CNTL_2P2Z_CoefStruct1.b1 = _IQ26(-0.3822); CNTL_2P2Z_CoefStruct1.b0 = _IQ26(0.4104); CNTL_2P2Z_CoefStruct1.a2 = _IQ26(-0.116); CNTL_2P2Z_CoefStruct1.a1 = _IQ26(1.116); CNTL_2P2Z_CoefStruct1.max = _IQ24(0.99); CNTL_2P2Z_CoefStruct1.min = _IQ24(0.0); MATH_EMAVG_CLA_Multiplier1=(float)0.00025; PFC_INVSQR_CLA_VminOverVmax1=(float)0.2875; PFC_INVSQR_CLA_Vmin1=(float)0.1; PFC_ICMD_CLA_VmaxOverVmin1=(float)3.5; /Voltage Loop Coefficients is: Dmax_V = _IQ24(0.999); Pgain_V = _IQ26(0.25); Igain_V = _IQ26(0.00025); Dgain_V = _IQ26(0.0); in my app ,if the ac input is over 230v,the pfc output is stop ,it can not output 380v,the pwm is stop too; if the ac input is lower,it can work well. when the problem Appear first time, i think the reason is overload or overcurrent;but later i found the overload or overcurrent is not the reason;now i can not found the reason,WHY???

  • Ge,

    That;'s great, that the change helped. 

    Do you have the motor stage also connected? If not you can try to increase the set point and see if that works.Be very careful the rating of the caps shoudl not be exceeded.

    You can also check the values of

    VacLineAvg

    InvAvgSqr

    VpfcVcmd

    PfcIcmd

    and see if they make sense?

    What is the value of PFCDuty

  • Manish Bhardwaj:

    1.could you tell me how to Calculate the Coefficient of current loop and volt loop?or could you provide me some reference design?

     in my code ,first time i used the coefficient 

    B2_I=0.0;
    B1_I=-0.4477;
    B0_I=0.507465;
    A2_I=0.0;
    A1_I=1.0;

    i found the pf value is only 85%; later i used the  coefficient  

     B2_I=0.07124;
    B1_I=-0.3822;
    B0_I=0.4104;
    A2_I=-0.116;
    A1_I=1.116;

    the pf value is up to 97%.  i do not know the reason ?

    if i want to change the coefficient ,i do not how to do it ?ha,ha!!!

    2.there is also another question in my app :

    in my app ,the pfc output is 380v,the load is about 100w;

    when in no-load state ,i found the pfc output is upto 420V,then in ov protect.

    The output voltage overshoot  when  full-load switch to  no-load state.

    if i change the coefficient of volt loop ,this problem will  be solve?

    thanks!!!

  • Ge,

    Unfortunately I am not an expert in power converter design, the values that were used for the kit were empirically chosen, you can achieve better results by modelling the power stage and getting the coefficients from there.Kudos, you got better results already :)

    Also there are other factors such as hardware design, trace lengths etc. We have an improved solution http://www.ti.com/tool/tmdsilpfckit which has better PF and efficiency, you may want to look into that.

    The voltage loop coefficients need to be loose as having them tight will lead to worse PF, The voltage overshoot is related to this, I can point you to the below paper

    http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=06377297

    The ILPFC software does implement this non linear switch for better dc bus regulation,

    Regards

    Manish Bhardwaj

  • Manish Bhardwaj:

    i try it again in my app ; i found the overvoltage was  happened when the AC input drop from 265v to 150v  instant ;or AC input go up  from 150v to 265v instant;

    i think the reason is the coefficients of the volt loop ,so i want to change the P,I,D coefficients;but until now ,the reasult is unsatisfy.

    do you have some suggestions for me ?

    my application is about  SMPS(switched-mode power supply) ; so the voltage drop test is needed.

  • Ge,

    Did you have a look at the above paper? it discusses some methods you could use. 

    It is an IEEE paper hence i cannot post it on the forum,

    regards

    Manish Bhardwaj

  • dear :

    do you have some reference pfc code used Assembly language?

    now i want to transform c  language to Assembly language in my app ?