ADE7880_Reactive power accuracy at frequency variation

Hi AD teams, 
Currently i am testing frequency variation on 50HZ network..
for 50HZ active and reactive power are excellent.
At freq variation the active power is only excellent but the reactive is not. Although the pulse error is excellent and fixed for reactive power accuracy at different frequencies, the reactive register gives different values at different frequencies when reading them. The tested frequencies are 49hz, 51hz.

any ideas please.


  • 0
    •  Analog Employees 
    on Nov 5, 2020 2:29 PM 2 months ago


    My understanding of your question is you calibrate at 50Hz then you are testing 49HZ and 51HZ . 

    Are you changing freq while powered on or are you powering down then up with the new line freq?

    How long after you change the freq are you reading the energy?

    If you wait longer does the measurement settle to the correct value? 

    The reactive measurement if a fundamental measurement and it can take a little time for the detection of the fundamental if it changes abruptly. 

    Can you scope the voltage channel during the test to see the disruption? 


  • My understanding of your question is you calibrate at 50Hz then you are testing 49HZ and 51HZ

    Yeah that is the case
    1- I am changing the Freq after powering off the meter and reference machine.
    2- reading the regesters after enough waiting time.
    3- the voltage is stable. the current stable too.

    Anew input 
    the active power reacts as reactive power in consumption.

    My analysis based on recording raw of data at different frequencies.
    While i am using line cycle accumulation with 100 zerocross on Phase A. changing the frequency leads to changing the time for counting the ZX number so that I am recording higher consumption at lower frequency (time is increased)and vice versa. Also, the consumption change proportional to frequency change linearly.

  • 0
    •  Analog Employees 
    on Nov 9, 2020 6:43 PM 2 months ago in reply to Hosam Elfakher

    Can you verify you are writing VLEVEL correctly. 

    (FS RMS codes / VRMS reg at your line voltage)* 4,000,000

    220v with 1M and 1K = ~ 220mVRMS at adc 

    (220/353.5) * 3,766,572 rms code FS = 

       (3,766,572 / 2,344,118 ) *4,000,000 = 6,427,273 = 0x621289  for 220v with 1M and 1K divider.

  • (3,766,572 / 2,344,118 ) *4,000,000 = 6,427,273 = 0x621289

    yeah this the value i am setting and reading back to confirm correct writing to vlevel registers.

    As i stated before, before setting this value i was getting 24% error but after writing this value the pulse error becomes normal.

    the problem in accumulation registers.

Reply Children
  • 0
    •  Analog Employees 
    on Nov 10, 2020 2:16 PM 2 months ago in reply to Hosam Elfakher

    You need to take into account accumulation time. If you are using line cycle accumulation each cycle is 20ms each half cycle is 10ms. your accumulation time over 100half cycles is 1 sec. 

    at 49Hz 100 half cycles = 1.02sec

    at 51Hz 100 half cycles = 0.98sec

    This will be a 2% error if you assume 1sec. 

    This is expected and you could use line period to correct for the accumulation time.

    CF does not show this error it is a constant accumulation each pulse represent xWattHR

    The register is over a time period.


  • Yes Dave that is what i wanted to say in my first replay. The point is when making the same configuration on EVAL kit from analog devices, the result is good at frequency variation for both registers and error pulse.

    my expectation is the eval kit reads the instantaneous registers of the active power and reactive power.

    yes there is an instantaneous register for active which is called AWATT and i read it but there is no address for Reactive power instantaneous register (AFVAR) to read.

    did u get my point?

  • 0
    •  Analog Employees 
    on Nov 11, 2020 2:36 PM 2 months ago in reply to Hosam Elfakher

    I am not sure which registers you are reading on the eval software do you have addresses? 

    These are all HR registers

    Data from eval board phase A  only pf1 using AWATTHR over 1000 half linecycles.

    Show the error over different time period when the freq changes.

    Phase a only
    HZ 1000 linecyc phase a zero crosses
    50 138712 dec error from 50 hz
    49 141518 dec 2.02%
    51 135977 dec -1.97%

    It looks to me reactive is using the VARHR registers which are not instantaneous VAR.

    You are correct we do have instantaneous WATT and VA.

    In the harmonic engine There is a FVAR(0xE883) you can read after designating the phase you want to read. You can only do this one phase at a time.

    So you are saying the eval board with a specific register setup works right and you board/program is working differently? 


  • can u tell me the applied current, voltage and Power factor? this will help me to answer correctly on your questions.

  • 0
    •  Analog Employees 
    on Nov 11, 2020 4:42 PM 2 months ago in reply to Hosam Elfakher

    I use 273mvrms on the voltage channel 96mvrms on the current channel and pf 1

    Using small signals I don't have a voltage and current source with me.