What is the right way for measure Phase angle?

for use in non harmornic and harmonic situaltion (for meter).

  1. asin (Q).

  2. acos (P/S)

  3. measure time delay between V and I at zero crossing.

  4. acos{Total PF/[1/((1+THDi^2)(1+THDv^2))]}

  5. other way?

where >> Q = Reactive power average 4000sample

P = Active power average 4000sample

S1 = V1*I1

V1 = fundamental Voltage

I1 = fundamental Current

Total PF = Total power factor = P/S

I'm so confuse what the phase angle should calculate? It is displacement angle or displacement + distortion angle?


1 Answer 1


There was a similar question a few days ago. If you are only interested in the phase angle AND your waveforms are undistorted/unbalanced (ideal case), then you would find it by measuring the time delay between V and I (nr. 3 in your questions). However, ideal cases are non-existant and approximations are almost never found in real-life, so distortions and unbalance exist, therefore the displacement factor would be measured as the time delay between the fundamentals of V and I. Think, for example, that you have a sine for V and a typical rectified RC load (as many consumers have). How would you measure the zero-crossing of I? Only by extracting the fundamental frequency component.

For this, various extraction methods are used and, depending on the level of THD which includes -- but is not only -- the displacement factor, there's only a positive-sequence extraction method, or more complicated PLL-based methods.

So, in short: displacement is the time delay between V and I. For distorted/unbalanced conditions, is the time delay between V and I fundamental components.


For example, consider the following block-level schematic, a harmonic extraction for positive-sequence components: Schematic

All it does is take the input signal, delay it by pi/2 and then multiply the results with reference signals sin/cos. The result is low-pass filtered then, the DC value will contain the magnitude information of the fundamental. The 1/z is optional, can be a Hilbert transformer or, just as well, a signal delay by a quarter period, but if you don't generate an additional quadrature, then you may need to add a gain of 2 at the output. The signals look like this: input/output

And here is the FFT, for a better view: FFT

As you can see, the fundamental is restored, meaning that the output can directly give you the Irms in THD formula. The denominator would be the input. This method makes measuring the displacement unnecessary and it will give you the correct power. After all, even if you can measure the displacement for fundamentals, it's redundant for power calculation in distorted/unbalanced conditions because then the THD applies.

For some reason, words don't come out as I would want now, so I hope I managed to transmit the good messages I had in mind. If not, I'll try to do so in the next answers. :)

  • \$\begingroup\$ In my application I use ASIC and MCU. but How to measure time delay between V and I fundamental, because ASIC only have waveform data which is include harmonic effect, I just can detect zero crossing of the waveform(that not fundamental waveform) If I measure time delay of this waveform, that not phase angle when I use in real power line. and some data ITEM (like total PF,P,Q,S,Vrms,Irms, those are include harmonic component) send to MCU. The Phase angle which ASIC not have, that I find the way out for calculate in MCU. Cloud you suggest me how to measure phase angle in my application? \$\endgroup\$
    – mem mo
    Commented Sep 24, 2012 at 17:06
  • \$\begingroup\$ @mem mo: The simplest, most brute method would be a filter, low-pass or band-pass/-stop (notch), but this, depending on the amount of "pollution" will induce delays and phase-delays in their response, making this one alternative to avoid for (e.g.) the aforementioned case of rectified RC load current. Other methods include frequency-independant approach, FFT, PLL, a lot. I can'r suggest one in favor of other since I don't know to how much extent are you willing to complicate your schematic. But, if you can afford to wait 2 or 3 periods delay, then you may simply use [continued...] \$\endgroup\$
    – Vlad
    Commented Sep 24, 2012 at 18:14
  • \$\begingroup\$ [...continued] a d-q transform adaptation (I was trying to make a schematic but I will post it later): v(tmp) = v(in)*sin(wt) then low-pass filter it, subtract the DC component from v(tmp), multiply again with sin(wt) and then subtract v(in). It's confusing but I can't make the schematic right now, I will post it later. It's a simple method that works. (I'll return later) \$\endgroup\$
    – Vlad
    Commented Sep 24, 2012 at 18:43
  • \$\begingroup\$ (I edited the answer) \$\endgroup\$
    – Vlad
    Commented Sep 24, 2012 at 19:32
  • \$\begingroup\$ Low pass filter, Thank you I will use this way. Thank you very much for you explain. \$\endgroup\$
    – mem mo
    Commented Sep 25, 2012 at 5:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.