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.

C28x Digital Power Library block PFC_INVSQR parameters PFC_INVSQR_Vmin and PFC_INVSQR_VminOverVmax



Hi

I'm using the PFC_INVSQR block in my software.

Can someone explain to me the consideration for the parameters PFC_INVSQR_Vmin and PFC_INVSQR_VminOverVmax? I haven't understand this. VminOverVmax looks to me only as a factor which can be neglected, because of the multiplication of the PFC_ICMD block. So to my understanding VminOverVmax must be set to have good precision and no overflow.

To have no overflow I would make this considerations.

Math expression of the block is:

(1 / (InvSqr_in* 0.5 * pi) * VminOverVmax)^2 = InvSqrOut  (= IQ30max)

The last calculations in the DSP will be done in IQ30 format. Because of that this range should not be exceeded.

Transform for InvSqr_in and get the minimum by using IQ30max:

InvSqr_in_min = VminOverVmax * 1 / (sqrt(IQ30max) * 0.5 * pi)

With this calculation I will protect the DSP from  an overflow, Vmin should not be below. To be not be influenced by the output saturation I made the same calculation and put 1 instead of IQ30max.

Further I saw that the output the signal is saturated to a maximum of 1.0 in Q24 format. Sadly this is not shown in the block diagramm of the user guide, it's only described in text form. Would be more clear if it's shown in the block diagram.

Thanks for your explanation in advance

Matt

  • Matt,

    please have a look at SPRA902A for details on PFC algorithm in general,

    I have pointed this email to our PFC expert,

    Regards

    Manish Bhardwaj

  • Matt,

    PFC input volt is saved as a dimensionless number normalized with respect to the max input voltage (Vin_max). Again, when we calculate the PFC input current command (current loop command current) all the related quantities are also expressed as numbers normalized with respect to their own maximum values. One of those quantities in the ref current command is PFC_inverse RMS square. Since this involves inverse of Vin, the normalized value of 1/Vin has to be with respect to the minimum input voltage Vin_min. Therefore the multiplication factor Vmin/Vmax is needed as a parameter which changes the normalization of 1/vin from V-n_max to Vin_min. This change allows retaining maximum resolution of 1/Vin calculation given the fixed point format.

    For example, the max input volt corresponding to 3.3V ADC input is, say, 400Vpk  corresponding to max rims of 283V (sine wave input). This choice is reasonable since PFC max operating input is 265V rms. PFC minimum operating input is 85Vrms. And so we choose min peak is about 80V (57V rms, for sine wave input). So the multiplying factor will be 80/400 = 0.2

    Shamim

  • Shamim,

    Thankyou for the explanation.

    Kind regards

    Matt