Electronic – arduino – ATM90E32 total energy reading

arduinoatmelenergypower-meter

I'm developing a simple power meter using the ATM90E32 from Microchip. For now, I can read all values: frequency, power factor, voltages, apparent power, etc.

Now the issue is with the energy, I need to read and maybe store the energy.

I can't understand exactly how the energy registers work. Even the datasheet keeps me confused. Has someone already worked with the ATM90E32?

Edit:

  • Datasheet: Link
  • Aplication Notes: Link

Edit 2:
The DataSheet refers to the Energy accumulation in a unit [ CF ] as I understand (and I'm very confused) CF = 1Kwh so in a certain period of time you read the register (clear at reading) and get the Energy represented in this CF unit the chip uses but is this true? Do I need to accumulate this value somewhere?

Best Answer

The datasheet says that energy registers are cleared after reading, so that means each read returns the accumulated energy since the last read. If you want to continuously monitor the amount of energy used over a longer period (eg. to show how much power has been used so far during the day) then you will have to accumulate the individual reads.

The value in the register is a 16 bit integer representing 100ths of a CF, and there are 3200 CFs in a kWh so at most it can store ~0.2kWh without overflowing. Therefore you will need to read the register often if the power consumption is high.

Alternatively you could just count CF pulses via eg. an external interrupt, and divide by 3200 to get kWh.