Arduino home energy monitor shield

Arduino Energy monitor

Although products are becoming more and more available for monitoring your home power usage, I’m one of those idiots who can’t leave well enough alone and who would rather shell out $100 and hours of my time in order to save $20 and learn something in the process.  Building on the fine work of Trystan Lea and others at as well as various and sundry web sources and acquaintances the result is a self-contained Arduino shield for monitoring the energy usage of your home using clamp on current transformers, an ethernet shield, and an Arduino. The resulting Energy Monitoring Shield has a built in switching power supply and with mains voltage (120VAC in the US) to the board can do power factor correction as well.  With mains voltage to the board it is also more dangerous than your typical home electronics project and as such has been rejected for distribution by commercial maker outlets like adafruit and sparkfun.  So take that as a warning, and if in doubt, keep one hand in your pocket and out of puddles when handling the board.Arduino Energy monitor

In simple terms, the power monitor shield provides an AC to DC power source for the Arduino and Ethernet Shield, samples the AC voltage waveform for power factor correction, and uses the current transformers to measure current draw of branch circuits in your home breaker box.

* Connectors for easy integration with clamp on current transformers
* Built in 120VAC to 5VDC switching power supply for powering Arduino and Ethernet Shields
* Monitor up to 5 branch circuits at once, of which up to 3 can be two wire single phase 240VAC
* Power factor correction for power measurements
* Code interfaces with Pachube (now COSM) internet of things for data presentation
* Makes your breaker box a mess

DISCLAIMER:  This project requires working with 120 and/or 240VAC, which can kill or seriously injure you if you are not careful.  Please be aware of and follow all applicable safety practice, electrical code, and Geneva Convention guidelines.

Step 1: BOM

The BOM (bill of materials) for the energy monitor shield is below and also attached as a txt file output from EAGLE.  In addition you will need suitable current transformers such as:
30A split core clamp on current transformer
100A non-invasive AC current sensor 

If you need a larger  current transformer for getting around the main house service wires (big thick ones) you can get bigger sensors such as:
Split-Core AC Current Sensor SCT-0750

If you go with a current transformer that does not have a 1/8″ phono end connector on it you will also need to source and attach them.  You can get these from cutting off old headphones, or from Radio Shack, Ax-man for those distinguished enough to have the means, or elsewhere.

It should be noted that the values for a lot of the resistors below depend on the current sensors and measurement ranges you desire to measure.  Read up on the web on current transformers for more information.

Part Value Device Package
C1 10u C-USC0805 C0805
C2 10u C-USC0805 C0805
C3 10u C-USC0805 C0805
C4 10u C-USC0805 C0805
C5 10u C-USC0805 C0805
C6 10u C-USC0805 C0805
C7 330u CPOL-USE3.5-8 E3,5-8
C9 2200u CPOL-USE5-13 E5-13
JP1  PINHD-1X2 1X02
JP2  PINHD-1X2 1X02
JP4  PINHD-1X2 1X02
JP5  PINHD-1X2 1X02
L1 330u L-US6000-XXX-RC 6000-XXXX-RC
R1 10k R-US_M0805 M0805
R2 10k R-US_M0805 M0805
R3 10k R-US_M0805 M0805
R4 10k R-US_M0805 M0805
R5 100 R-US_M0805 M0805
R6 10k R-US_M0805 M0805
R7 10k R-US_M0805 M0805
R8 100 R-US_M0805 M0805
R9 10k R-US_M0805 M0805
R10 10k R-US_M0805 M0805
R11 100 R-US_M0805 M0805
R12 10k R-US_M0805 M0805
R13 10k R-US_M0805 M0805
R14 100 R-US_M0805 M0805
R15 10k R-US_M0805 M0805
R16 10k R-US_M0805 M0805
R17 100 R-US_M0805 M0805
R18 10k R-US_M0805 M0805
R19 10k R-US_M0805 M0805
R20 100 R-US_M0805 M0805
R21 100 R-US_M0805 M0805
R22 100 R-US_M0805 M0805
TR1  EI30-1 EI30-1
U$2 LM2575 LM2575 TO263-5

Step 2: Schematic and Board

Schematic Arduino Energy monitor

Attached to this step are the EAGLE schematics and board layouts for the Arduino energy monitor shield as well as PDFs for printing and using the toner method for etching your own PCB.  You can use the EAGLE files to get a professional board made or you can email me and see if I have any on hand for sale.  Note that if etching your own board, the through hole parts will be a bear to solder since the vias aren’t plated and the traces are on the same side of the PCB as the components which is not standard through-hole practice.  With a professionally made board with plated vias this will not be an issue.  If you care to you can redesign the EAGLE board file to run the through-hole traces on the bottom to ease soldering and assembly from a hand-made PCB.

Step 3: Code

The presented code is a conglomeration of a variety of open sourced, non-commercial code from the Arduino libraries, myself, Trystan Lea, Eric Sandeen, and others.  It is attached below.  It is somewhat commented, but if you have questions please ask.

Read more: Arduino home energy monitor shield

Leave a Comment

Your email address will not be published. Required fields are marked *