4. AardEnergy – Metering Chips
In this Blog
So far I have chosen sensors without much consideration of how the Arduino will handle the data. The plan is to use a meter chip with the Uno and to directly convert the sensor voltages (after suitable scaling) with the Due. In this blog I will evaluate a number of meter chips for use with the Uno…ADE7753, ADE7763, MCP3905, MCP3909.
See previous Blogs…
http://www.element14.com/community/groups/arduino/blog/2015/11/26/2-aardenergy-set-up-uno-and-due
Metering Chips
ADE7753
This chip is made by Analog Devices as part of their Energy Metering IC family. They say:
Analog Devices’ ADE energy measurement ICs address the challenges of next-generation smart meter architectures and are ideal for measuring active energy (kWh), apparent energy (kVA), reactive energy (kVAR), rms, and power quality with the highest accuracy in single phase and polyphase revenue meters, industrial instruments, and energy monitoring applications. ADI’s ADE energy measurement ICs combine analog-to-digital converters with fixed-function digital signal processors to perform critical measurements, while providing unparalleled functionality and ease of use.
This is a summary of its capabilities:
Part | ADE7753 |
Function | Single Phase Meter |
Measurements Available | Apparent Power, Irms, Total Active Power, Total Reactive Power, Vrms |
Current Sense Type | Current Transformer, Rogowski Coil, Shunt |
MPU Interface | Energy Pulses, SPI …see below |
Current Channel Input Range | ±0.5V maximum. |
Voltage Channel Input Range | ±0.5V maximum |
Active Energy Accuracy | 0.1% |
Special Features | Low Power, Waveform Sampling |
VSupply min | 4.75V |
VSupply max | 5.25V |
Supply current | 5 mA |
Price 1off Farnell | £2.63 |
SPI Description:
ADE7763
Part | ADE7763 |
Function | Single Phase Meter |
Measurements Available | Apparent Power, Irms, Total Active Power, Vrms |
Current Sense Type | Current Transformer, Rogowski Coil, Shunt |
MPU Interface | Energy Pulses, SPI …see below |
Active Energy Accuracy | 0.1% |
Current Channel Input Range | ±0.5V maximum. |
Voltage Channel Input Range | ±0.5V maximum |
Special Features | Low Power, Waveform Sampling |
VSupply min | 4.75V |
VSupply max | 5.25V |
Supply current | 5 mA |
Price 1off Farnell | £1.69 |
SPI description:
MCP3905
Part | MCP3905 |
Function | Single Phase Meter |
Measurements Available | Real Power |
Current Sense Type | Current Transformer, Shunt |
MPU Interface | Power Pulses |
Active Energy Accuracy | 0.1% |
Current Channel Input Range | ±0.47V maximum. |
Voltage Channel Input Range | ±0.66V maximum |
Special Features |
|
VSupply min | 4.5V |
VSupply max | 5.5V |
Supply current | 2.7 mA |
Farnell Price | £1.14 |
MCP3909
Part | MCP3909 |
Function | Single Phase Meter |
Measurements Available | Real Power on pulse output, waveforms on SPI |
Current Sense Type | Current Transformer, Shunt |
MPU Interface | Power Pulses, SPI |
Active Energy Accuracy | 0.1% |
Current Channel Input Range | ±0.47V maximum. |
Voltage Channel Input Range | ±0.66V maximum |
Special Features |
|
VSupply min | 4.5V |
VSupply max | 5.5V |
Supply current | 2.7 mA |
Farnell Price | £1.47 |
SPI:
Making a Choice of Meter Chip
The list of chips above was based on 3 requirements:
- Single phase monitor
- SPI interface, power and energy data
- Low cost
The MCP3905 does not have an SPI interface, so is ruled out. The pulse output of this chip could be counted on an Arduino input but that was not my target application.
The MCP3909 has an SPI interface but that data is the raw waveform, so the chip is acting as an external ADC which again is not what I wanted to do in my application. I want to use the internal Arduino ADC on the Due and for the Uno I want a meter chip that does all the calculations and presents power and energy data at the SPI port.
The ADE7753 has all the required features, the power and energy calculation are done on the chip and the results are presented as data to the SPI port. The same is true of the ADE7763 which is less expensive but has less features as it does not calculate the Reactive Power. I’m going to use the ADE7753 as I’m not concerned about the small extra cost £2.63 against £1.69 and the Reactive Power may be of interest. Both of these chips have to ability to interface with Current Transformers or Rogowski coils to measure current. I’m interesting in Rogowski coils so this is a feature I will use at some point.
Product page:
Sensor Interface
Current Transformer CT
What are the essential parameters we know about?
- The input to the ADE7753 is a differential programmable gain amplifier with a range of ±500mV relative to analogue ground.
- Input impedance 390k
- The output of the current transformer is ±1000mV.
- The power rail available from the Arduino Uno is 5V.
- The signal can be 50Hz or 60Hz with a measurement Bandwidth of 14kHz Anti-aliasing cut-off frequency needs to be 10kHz.
The description of the interface to the ADE7753 in the evaluation circuit is based in a meter with direct connection to the mains wiring and as such is unsuitable for this application. We are using isolated sources for the signals to make them safe to handle on an Arduino board. However there has to be an anti-aliasing filter on the input and the normal operating range has to be limited to ±500mV relative to analogue ground. Our CT has an output of 1000mV so we need a ½ attenuation as well as the filter. From the datasheet a simple RC filter with a corner frequency of 10kHz is recommended to remove any high frequency noise. The input impedance of the ADE7753 amplifiers is 390k so we can use a voltage divider of say 1k resistors and a suitable capacitor to give 10kHz low-pass bandwidth. The equivalent resistance of the divider will be 1k in parallel with 1k or 500R. The capacitor can be calculated from frequency=1/(2πRC) and we will use 33n as the closest available value. So that we do not degrade the 0.5% accuracy of the chip too much we will use 0.1% resistors, and a 5% capacitor will be good enough.
Voltage Transformer VTx
What are the essential parameters we know about?
- The input to the ADE7753 is a differential programmable gain amplifier with a range of ±500mV relative to analogue ground.
- Input impedance 390k
- The output of the voltage transformer is ±17.2V
- The power rail available from the Arduino Uno is 5V.
- The signal can be 50Hz or 60Hz with a measurement Bandwidth of 14kHz. Anti-aliasing cut-off frequency needs to be 10kHz.
Our VTx has an output of 17.2V so we need an attenuation to 0.5V as well as the anti-aliasing filter with a corner frequency of 10kHz. The input impedance of the ADE7753 amplifiers is 390k so we can use a voltage divider of around 1k resistors and a suitable capacitor to give 10kHz low-pass bandwidth. If we choose resistors to ultimately give the same capacitor value as for the current measurement channel, we will only have to buy one type of capacitor. This is a good design aim as capacitors are available in fewer types and values compared to resistors. If we choose 510R as the lower value then the voltage divider is made with 17.4k and 510R resistors, which is an attenuation factor of 0.0284757, so 17.2V will be represented by 489.8mV which is within the measurement range of the ADE7753. The equivalent resistance of the divider is 17.4k in parallel with 510R or 495.5R and the capacitor can be calculated from frequency=1/(2πRC) and we will use 33n as the closest available value.
SPI Interface (Hardware)
This is the Arduino SPI reference page:
https://www.arduino.cc/en/Reference/SPI
…and the Atmel data sheet:
http://www.atmel.com/Images/doc8161.pdf
The Arduino Uno will be set up as the SPI master and the ADE7753 as the slave/peripheral. The logic signals can be directly connected, both operate on 5V logic:
SS Arduino is slave select, connect to ADE7753 nCS.
MISO Arduino is the data input from the Slave, connect to DOUT of the ADE7753.
MOSI Arduino is the Master Data Output to the slave, connect to DIN of the ADE7753.
SCK Arduino is the master clock output, connect to SCLK on the ADE7753, 10MHz spec.
The ADE7753 use mode2 transfers of data with the MSB leading.
Next Steps
Next we will design the circuit to be built onto the Uno prototype based on the details worked out in this Blog.
We will need to purchase the following parts:
Farnell Order Code 2313624 Manufacturer Part No ADE7753ARSZADE7753ARSZ Meter Chip
Farnell Order Code 1670224 Manufacturer Part No ERA6AEB511VERA6AEB511V 510R 125 mW 0.1 100 V
Farnell Order Code 2094720 Manufacturer Part No ERA6ARB1742VERA6ARB1742V 17.4k 125 mW 0.1 100 V
Farnell Order Code: 2320843 Manufacturer Part No MC0805B333J500CT 0.033µ, ±5%, X7R, 50 V
Farnell Order Code 1426164 Manufacturer Part No RE931-03RE931-03 ADAPTOR SMD SSOP-20