Welcome
This is a project to develop and build open source energy monitoring and analysis tools for energy efficiency and distributed renewable microgeneration.
28th of January 2010 – Documentation finished for the whole home energy monitor.
The energy monitor is working away logging energy consumption data, giving some informative readouts and nice looking graphs! there's more about it in the blog post here and the documentation here.

Left: The display, Middle: The main unit with CT sensor, Voltage sensing, USB datalogging... Right: Ethernet unit for internet connectivity

How the documentation works
The documentation is split into three main parts:
1) Build a basic setup
This consists of a:
Sensor -- Arduino -- simple computer output
And at present there are a several sensor types available with the basic setup for each one documented. Once you have the basic setup working it can be extended in several ways:
2) Extend your basic setup
The basic setup of any given sensor can be extended in a number of ways from computer based storage and graphing to internet based storage and graphing, from 7-segment displays to wireless Xbee communication and so your setup could look like this:
Sensor -- Arduino -- Xbee ))) ((( Xbee -- Arduino -- Arduino Ethernet -- Web based graphing
Super modular design
The overall design is very modular making it possible to customize as much as you like, you could go for a simple setup with a single sensor connected to a computer via USB logging to a file or you could go for a massively complex setup with multiple sensors, wireless communication, 7 segment displays, computer based graphing, internet based graphing and whatever else you would like to connect up.
3) Complete setup examples
Build a basic setup
Energy Use
Mains AC: non-invasive 2 - Voltage, Current and powering the arduino
Non-invasive measurement of mains voltage using a power adapter and mains current using a CT sensor. Useful for measuring electrical energy used by the whole house/building. Doesn't require any high voltage work.
Mains AC: non-invasive 1 - Current only
Non-invasive measurement of current only using a clip-on current transformer (CT) sensor. Doesn't require any high voltage work.
Measuring electrical power used by devices connected to a mains AC power strip using the invasive current sensing resistor method. Requires working with high voltage's. Development currently discontinued in favour of the above non-invasive methods.
Energy Capture
Measurement of electrical power produced by micro-renewables including the Hugh Piggot wind turbine using the current sensing resistor method.
12V DC: non-invasive:
http://openenergymonitor.blogspot.com/2009/09/experiments-with-hall-effect-current.html
http://openenergymonitor.blogspot.com/2009/09/hall-effect-sensor-circuit-diagram.html
Extend your basic setup
Local computer based Data Graphing, Analysis and Storage
Using KST for graphing.
OpenEnergyMonitor Java based software
Display
How to add a Display - details how to add a display that has a 4 7-segment digits a mode changer to make it possible to cycle through the various values to be displayed and a frequency indicator that shows when the grid is under or above 50Hz.
Storage
How to add USB pen data logging
Internet connectivity
Arduino Ethernet Shield + perl + mysql + Flot based graphing
Wireless communication
Complete setup examples
How to build a whole home energy monitor
that has a display for easy, quick access to current energy use information, usb datalogging for detailed long term data storage and internet connectivity for online graphing.
Other
Mains AC Power measurement theory
Open Source
This project is an open source project. Following the principles of the Free Software Movement the software source code and hardware designs are available at no cost to everyone under the GNU General Public Licence.
The project being open source gives the following potential:
It makes it possible to do more than just use the technology, you can learn how it works from the physics of AC and DC electricity to electronic circuit design and software programming. You can build it yourself and modify it to your needs. You can take part and benefit from a collaborative effort to develop and improve it. If it breaks you can learn how to repair it and when it comes to the end of its useful life it is easier to take apart so that different components and materials can be recycled in to new technologies.
Contribute
Please don't hesitate to get in touch if you have any questions or suggestions or if youd like to become a developer.
Forums
If you have any comments and questions, if you could use the forum that would be great. I think it will be easier to use and see what's going on than the comment threads.
Comments
Hi, Alex - I drove a Prius
Hi, Alex -
I drove a Prius from my local Community Car pool last week. Real-time energy efficiency monitoring does have an immediate impact on user behavior!
I was engaged by the implicit "game" element in the Prius presentation. Could I beat my average mpg from the last 5-minute block in this 5-minute block?
Inclusion of game elements in energy-monitoring displays is something for designers to consider.
Matt
@GreenICT
Hey Matt, Not sure how often
Hey Matt, Not sure how often Alex checks here, so if you want to catch him it may be better to post on his site http://open4energy.com
But I certainly agree with you comment, I've been dabbling with some thoughts on adding a game element to the energy monitor, Its already become a bit of a game for me checking my daily kwh :)
One of the things that I think would be cool that I've made a start on would be if you could measure your standart day 0 kwh usage profile and then compare subsequent days there after and it would give you a real time update of how your doing at say 8am today versus 8am on day 0. That way you could always tweek to be just below your day 0 profile... might be interesting.
Trystan
Sorry, Trystan. I had linked
Sorry, Trystan. I had linked to you from open4energy and forgot where I was.
Your idea of measuring current consumption against a baseline seems important and Day 0 is an obvious baseline. Ultimately, allowing users to specify another day or set points as baseline would be useful to, particularly for family motivation games with children, workplace contests, etc.
Matt
@GreenICT
Hey Trystan - Nice work on
Hey Trystan -
Nice work on this, you inspired me to order an Arduino and start playing with this a little.
One question and a couple suggestions -
The Farnell adapter you link to seems to be 9V DC out, not AC, so I'm a little confused - the link goes to a page that says "MC090S050U/F+ - ADAPTOR, REG, EURO, 9VDC, 500MA" - But ... DC?
One thing I'd like to do is monitor branch circuits, so I'm hoping to use smaller 40A or so CTs, DigiKey carries some, model CR8410-1000 for < US $10 each. The mfgr is CR Magnetics. But to do that I'd need more analog inputs; I think maybe an analog multiplexer like here could give you a lot of inputs. But, I'll just start with one for now to see how it goes. :)
Also I think the 10-bit ADC results in a pretty low resolution for the mains, so maybe interfacing to a higher-resolution ADC for the mains might be interesting.
The 1024 steps on a 15-20A circuit are probably enough...
Once branch circuits are monitored, I think a lot of interesting things could be done with the graphing.
Oh, and finally - do you have all of the code you've developed in a SCM (cvs, git, svn, whatever) anywhere?
Thanks! Awesome project.
-Eric
p.s. is http://power.openenergymonitor.org/ really accurate? Do you really stay mostly under 500W peak draw? That seems very low, if accurate it's impressive. :) I'm trying hard, and I can't get much under 500kWh per month. :)
Hey Eric Thanks for the
Hey Eric
Thanks for the comment and thanks for pointing out the incorrect adapter link, I've corrected it on the google docs but here's the link to safe you looking:
http://uk.farnell.com/_/mb090a050u-d/adaptor-euro-9vac-500ma/dp/1217064
I like the sound of your plan, it would be very interesting to monitor branch circuits! I would be interested to hear how it goes with the analog multiplexer if you have a go at that and the higher resolution ADC. I think the challenge with an external ADC is whether you can get a fast enough sample rate? You would need pretty fast communication with the Arduino...
Another option that could be investigated to increase accuracy while using the 10bit ADC is to have a switchable gain amplifier, analog devices have an app note describing this here.
I dont currently have all the code in a SCM, havent had a change to look at how to do it. It would be probably worth doing wouldent it, what would you recommend?
The graph should be pretty accurate, the details of the accuracy of it are on the mains ac non invasive 2 page. I've been the only person in the house for the last couple of days so it is a bit lower than usual. I did a bit of hovering yesterday and I also spiked on the immersion heater for an example 9:10 :)
Just had a look at your blog, I like the look of the solar roof! Awsome blog.
Trystan
Hi, i am working on a similar
Hi, i am working on a similar project. I found yours very complete, easy to do and most important accurate. My prototype works on a triphasic network. It is the same, but 3 Voltages and currents to measure. I have a few questions: should i measure the neutral current, or its better to calculate it?. I am interested in measuring other parametres also, like the commercial network analysers do, like THD, do you know how should I do that?
Ezequiel.
Hi Ezequiel, thanks for your
Hi Ezequiel, thanks for your comment. Could you elaborate on why you think you need to measure neutral current, is your network 4-wire three phase? I found an application note by microchip here which might be useful. I'm afraid I have only worked with single phase so far. I haven't tried to do THD yet either so cant advise on that. Sorry that I cant be of more help.
Energy Saving Scams A warning
Energy Saving Scams
A warning to all home energy enthusiasts, there are a number of energy saving scams being carried out at the moment.
Please do not get duped by any one of them. They are usually easy to spot for the informed, as I believe the readers of this project will be, but they are misleading for many consumers.
Please spread word of these where possible. The perpetrators have used Google search, and Google adWords to create an extensive network of resellers, loaded with fake content and testamonials.
We are doing all we can, but this is one time where the open source community can really engage, we can cross link our pages and send this stuff to where it belongs.
Here is the Complete List of Scam Energy Saving products and technologies. The worst of them are the power factor scams, lots of money involved, offers for Free audits gets you a salesperson standing in your home, using your data to deceive you!
Listed as an open4energy Home
Listed as an open4energy Home Energy Monitor
My apologies, a long overdue addition to the complete list of home energy monitors at open4energy.com
I have added new section to the list called Open Source, and included your project.
http://open4energy.com/technology/list_home_energy_monitor
This is the only project I know of. We send loads of compliments and let us know of any additional way we can support you.
Alex
Thanks Alex for adding the
Thanks Alex for adding the project to your list.
Hi! I've read all the
Hi! I've read all the description of the arduino-sensor system to measure dc produced by a small windmill. i'd like to know how you wire the circuit to the turbine. I mean: in this schematic http://openenergymonitor.org/emon/sites/default/files/DC01.png you create a voltage devider with the RVDa and RVDB resistors, but what about the op-amp and the transistors?? why do you use them? and how do you get the voltage from the windmill??
thanx a lot!!
Hey Akis The RVDa and RVDB
Hey Akis
The RVDa and RVDB resistors are used for the voltage measurment.
The Rsens, RA, RB, Opamp and transistor are all needed for the current measurment.
Maybe one thing that isnt clear in the circuit diagram is that the microgeneratore voltage which is labeled as 12V in the diagram actually varies between the battery voltage (if you have one connected) up to potentially 20V depending on loads and how fast the turbine is spinning.
Hope that helps :)
just one last question: if I
just one last question: if I don't have the battery, but the microgenerator (which genetares in my case 24V) is connected to the inverter (so you have AC current), what would I do? I have to use a diode?
Hey Akis, what is your
Hey Akis, what is your microgenerator?
it's a 24V wind turbine
it's a 24V wind turbine connected to an inverter
i've forgotten to say that
i've forgotten to say that it's a 5 kW wind turbine
Hey Akis, quite a substantial
Hey Akis, quite a substantial system! good work! is it a dometic system?
I havent yet had experience with wind turbine - grid tie inverter setups so Im unsure of what the best practice is with connection. So far I have tested it with a 500W turbine connected to the batteries as I describe on the 12V DC page. Im pretty sure however that you connect the circuit up in the same way in your case to the inverter instead of the batteries. I dont see why you would need a diode?
The main things to consider that I know of are: the shunt needs to be rated above your maximum current value and secondly for saftey you could put a fuse in series with the voltage dividerand both RA resistors. You might also prefer to use the non-invasive hall effect method for current measurment which would increase the saftey.
Like I said my experience is currently limited to the smaller 500w turbine with battery connection so only try to implement the above if your happy that you know what your doing.
Let me know your thoughts and how it goes.
Trystan
open4energy - energy measuring
open4energy has released its energyManager open source solution, built as an extension to RRDtool and the Cacti graphing solution.
A detailed tutorial on how to download and implement this free solution for measuring exactly how much energy is being used by the IT equipment is available from the site.
There is no doubt that a traditionally energy inefficient IT industry has room to make savings of between 10% and 20%. But overstretched IT departments seem reluctant, even with FREE software, to take the time to make these savings. There are just so many items of higher financial impact to be addressed.
The question we are left with is:
What will it take to make energy saving a priority?
Clearly the open source movement will make a difference, and we believe that if the solutions can be made sufficiently simple to implement, and the steps to affect change obvious, then our natural inclination to care for our resources will be allowed to take hold.
To participate in the discussion visit http://open4energy.com/blog
I see you are also using Drupal for your site. This is excellent, in my opinion, see http://open4energy.com/forum to see how well Drupal manages forum's and blogs - you may not want to have contributors use multiple sites.
Also, I need a SNMP supported device to use for home computing, either wireless, or wired for the home server etc, any idea do let me know.
Hello Alex
Hello Alex
To reiterate my reply to your email and to add a few things. open4energy looks like a great initiative. Thanks for letting me know about RRDtool and Cacti.
Right now my priority is to work on building a device that can measure whole house electricity use with both a 7-segment output and graphing on a local computer and also DC power monitoring for the wind turbine.
A quick search for SNMP + Arduino came up with this device:
http://blog.makezine.com/archive/2008/05/arduino_wifi_shield.html
It should be possible to connect it up to the sensing electronics and arduino to do what you need.
Like you say drupal handles forums well. I would say that both sites are complementary.
Trystan
Wireless AMR
Hi
Trystan Lea,
I would say that In a way you have prepared your website is very nice and anyone who will visit it for a once will definitely comeback when he need it.
Website is very good looking and contains good data to get over about energy Meter.
One thing I could not get about is why would you make it an open source. How it benefits to you?????
And I am also working on Wireless Automatic Meter Reading Design and I have done with it.
It is capable of transmitting data wireless on a multihop zigbee network base on Atmel chip set.
I have also developed website which can display consumption of energy meter on a internet.Of course it is running right now on Intranet level.
Hope we can work together if you got any bright idea.
I will soon complete my Master degree from India.
Hello Mahesh
Hello Mahesh Sutariya
Thanks for your kind words about the site.
In writing a response to your question: why open source? It soon became an essay and so I have created a page here with what I hope answers your question.
Your wireless automatic meter reading design looks great! Im intending to try wireless soon, I have 2 Xbee modules from adafruit ready for when I get to that stage. First Im going to put together a 7 segment LED display, hopefully this weekend.
In response to your question on the wind turbine blog about combining energy monitoring with wind power generation. Monitoring the power generated by a micro wind turbine such as the hugh piggot turbine should be very similar to measuring power consumed. In the case of the hugh piggot wind turbine the voltage of the electricity is 12V and the current can be up to 50A and so to measure the wind turbine current you need a sense resistor like this one.
Hope that helps
Trystan