Post Go back to editing

ADE7816 Angle Measurement


I have a problem with my ADE7816 about Angle Value. I have set PCF_x_COEFF with same value as attached in datasheet 0x400CA4 because i used 50Hz. But the Angle value is not match with LUTRON DW-6092 Power Measurement. For the example, Angle Value in Lutron is -140.8 and Angle Value of AD7816 is 356.9.

The following my step to reading the Angle Value :

1. Setting PCF_x_COEFF = 0x400CA4 ; This step is based on datasheet at page16

2. Setting COMPMODE = 0x01FF

3. Reading ANGLE0 register every IA/ID is Zero Crossing

4. Reading ANGLE1 register every IB/IE is Zero Crossing

5. Reading ANGLE2 register every IC/IF is Zero Crossing

6. Calculating ANGLE0, ANGLE2 and ANGLE3 as Equation 16 (Page 28) >> ANGLE = (ANGLEx*360*Fline)/256000

I already to tried change the PCF_x_COEFF, but the ANGLE value is doesn't match.

Please give me a solution for this problem.


  • Hi fiqih.88

    Are you trying to measure the angle between the voltage signal and one of the current signals? In that case, once you have followed the Quick Start procedure as given in the datasheet, you will be able to get correct ANGLEx values. The Zero crossing detection circuitry measures the time delay between the zero-crossings to calculate the angle. ZXV and ZXIx bits of the Status1 register will let you know if a Zero-crossing event has occurred on the voltage and current channels. So ensuring that these bits are set, before reading the ANGLEx register is fine.

    If you do not get proper results even after following this, reply back with answers to following questions:

    1.What is the signal level in the voltage and current channels?

    2. What is the register value you are getting in the ANGLEx register?

    3. What is the source? Is it an ideal input or are you sensing current from a load? In any case, what is the angle that you expect to see?



  • Hi, hmani,

    Yes, I'm trying to measure the angle between Voltage signal and one of the current signals.

    I have chacked my source, my code and register values is correct as Quick Start Flow Chart. And the ZVX and ZXIx bits of the Status1 are sets.

    These is my answer :

    My answer for point 1 & 2 is attached. That is from ADE7816 values. you can comparing between LUTRON DW-6092 with ADE7816 result. both are attached. The angle values from ADE781 isn't stable, but from LUTRON DW-6092 is stable.

    3. My source is from our office Power Source.


  • Hello, anyone here?

    i need some solution for my project as soon,,,

    help me please,,,


  • Hi fiqih.88

    The drift in the calculated angle value seems to be around the 0 degree mark. It varies till 5 degrees in the positive side and a little around the negative( around 360). This is quite normal as long as it is repeatable. The setup or the sensor generally causes such a shift. But it seems that the drift isn't constant enough, for the same setup and signal levels, which makes it difficult to calibrate it out. Can you let me know what is the signal level going into the chip with respect to the Full Scale of the part? Can you replace the input sensor and high voltage source with just ideal inputs( within 500 mV) going into the chip and repeat the same experiment?



  • Hello Mr. Hmani,

    I have attached Voltage and Current Signal waveform that going into chip. In this case, i used 13W Flourescent and Laptop charger as LOAD. in other image, i have measured the difference delay between Voltage and Current around 4ms. But i don't know to calculate delay to get ANGLE value to comparing Angle Value between ADE7816, Lutron DW-6092 and value from manual calculation.

    I have attached  ADE7816 Angle value and DW-6092 value too.

    But, i'm sorry. i can't trying your suggestion to replace input sensor and high voltage source. I hope my data that attached can be help you to give me a solution for correct Angle value.

    i have a new question for you.

    1. Can you give me a reference about how to calculating the Angle value from delay between Voltage and Current?

    2. Every i measure the angle and PF values form ADE7816, both values always have positive value, but on DW-6092 is negative value. How i can knows the angle value is negative or positive?

    Oscilloscope Explanation :

    CH1 Red : Voltage

    CH2 Yellow : Current

    ADE7816 Value :

    PF : 0.57

    Angle : 55.540

    Thank you.

  • Hi fiqih.88

    1. Each of the angle registers has a resolution corresponding to 1 LSB, which is 3.90625 us. This directly translates to 0.0703 degree for 50 Hz and 0.0843 for 60Hz environments. Using this one can understand the relationship between the delay and angle value. Refer to page 29 of the datasheet for further information.

    2.Do you know if the DW-6092 measures voltage to current angle difference or current to voltage angle difference? I would suspect that it measures the opposite way and hence the angle is sign inverted. Is the magnitude same?



  • Hi Mr. Hmani

    I have ask to LUTRON directly, and LUTRON DW-6092 using Voltage to Current delay measurement to get Angle value as attached image.

    the magnitude is not same. and Angle value is ever reached 300 and unstable. but in oscilloscope, delay between Voltage and Current waveform is stable.

    what's wrong with that?

    Thank You.

  • Hi fiqih.88

    When I look at the waveform for V and I, they seem to have a lot of harmonic content. Having a lot of such transients can mess with the zero-crossing detection and may be that is causing the issue. Why is your signal going into the chip so distorted? Try applying ideal sinusoidal signals to the chip to see if the problem persists.



  • Hi Mr. Hmani,

    I will look for cause distortion.

    I have a question about No load Detection. Can you explain to me what is the function of No Load Detection?

    Because, my KWH value is increase 0.02 KWH per day altough Watt value is zero.

    How can i calculating No Load Value?


  • Hi fiqih.88

    The No-Load feature helps to eliminate meter creepage i.e. to stop the accumulation of energy when there is no load connected( or a minimum acceptable load connected). The manner how this feature works is that the APNOLOAD and VARNOLOAD thresholds are set based on the equations given in page 23 and then the active power and reactive power values are compared to these thresholds respectively, thus determining if the system is in No-Load condition or not. If the power value is less than the threshold, there is no energy accumulated in the energy registers.

    I believe the trouble you may be facing is due to improper setting of APNOLOAD and VARNOLOAD thresholds. Kindly set them based on the equations in the datasheet and visualize the results.