Input modules

Electricity

Heat

Light

 

Mains AC Energy Use

Mains AC: non-invasive 3.0

The basic energy monitor setup that can be used to measure how much electrical energy is used in a building (or modified power strip). It measures voltage and current, from which it calculates Real Power, Apparent Power, Power Factor, RMS Voltage, RMS Current, frequency, kwh.

Changes since last version

Electronics

  • 2x 10uF bias stabilizing capacitors added significantly improving accuracy: more info
  • Changed Voltage measurement circuit
  • Power for arduino comes from a seperate transformer to AC voltage measurement transformer. 

Software

  • Arduino sketch rewrite, sketch now follows Atmel's 465 appnote method, adding:
    • Phase calibration
    • Digital high pass filter to remove offset.

Other

  • Much simplified calibration

Other versions

Current only

Previous versions

Mains AC: non-invasive 2.0

Mains AC: non-invasive 1.0 

   pic   

4x Multiplexed RTD Temperature sensor module

Measure temperature using RTD temperature sensors. Module has a multiplexer to have 4 temperature sensor inputs.

Builds: Solar hot water controller

Mains AC: invasive

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.

DC Energy Capture

DC Current Module

Measuring DC Current using a current sensing resistor (also known as a shunt) and a LT1495

 

12V DC: non-invasive:

Hall effect blog post 12

Hello Trystan. I would like

Hello Trystan.
I would like to try and replicate your project but using a different uC.
I haven't figured out how fast you need to sample the ADC for the CT clamp. I would like to know this number since it will help me select a proper uC.

Thanks,
Stelios

Hello Stelios In the sketch

Hello Stelios

In the sketch the part 

for (int n=0; n<numberOfSamples; n++) { ... }

takes 1121ms for 3000 readings = 2674Hz

But this included all the analog reading, summing, multiplying, digital high pass etc

The ADC sample rate of the ATmega 328 is set at its default rate which corresponds to about 9600Hz.

Trystan

 

I just started working on

I just started working on this, I have it breadboarded for a single CT (100A) and managed to calibrate it for current. I can't find the sketch for version 3. I am having a ton of trouble calibrating it under version 2. I'm in the US and where I live we have peak demand metering. This means that during peak periods they take the highest hour's KWH usage and charge you a ton for that single hour. Needless to say a meter that tells me the instantaneous usage would save me a ton of money. My plan is to use contactors to shed load as the load increases. I already shed the water heater during peak periods but I need to be able to tell what is being used NOW, not an hour ago like the meter reading tells me. When I can get the device calibrated somewhat I'll add a second CT and move it to the meter location.

Help me find the version 3 sketch please.

dave

Hello Dave Its on the how to

Hello Dave

Its on the how to build it page. But here is the link to save time: basicmonitor.tar.gz

All the best with your project!

Trystan

Thanks, got the files and

Thanks, got the files and completed the breadboard for a single CT. Works great. Power factor is an annoying item. I went through the same iterations as you in integrating voltage and current and getting a good figure for real power. Similarly, I integrated power and then averaged it and tried to calculate the power factor. What a royal pain in the butt. I agree with you that the CT sensor and the power transformer both add inductance to the circuit that affect the power factor measurement. Interestingly, I did some checking on the killawatt and found that it has trouble with power factor, especially when the power levels are low.

Now a question. In your opinion should I just tie the two CTs in series and adjust the burden resistor for the split phase power in the US, or should I integrate the two of them separately? There's trade offs to both methods, but the big one seems to be processing time since we have to use float in the various calculations.

Also, the low pass filter you discovered and implemented is fantastic. That thing adjusts itself and removes the harmonics from the digital sampling really well. I implemented a complete measurement program without it and worked through the calibration and had exactly the same problems you did with various noise sources making the readings erratic. That filter eliminated that problem completely.

Really good job on this, thanks again.

Hi Tristan, Excellent website

Hi Tristan,

Excellent website - have build a PDU (PowerDistributionUnit) for 19" Racks based on your code with 10
Current Transformers.
Data is polled by a Perl script and stored in a RRD Database. Graphs are generated by rrd.cgi on a Webserver...

http://www.komputer.de/wordpress/?p=8

Sorry but it's in german

Michael

Hey Micheal, that's really

Hey Micheal, that's really cool, excellent work! Google translate works really well so I can follow what your doing. Like I said to Ben below, and I know you have your own site, but if you ever want to use the openenergymonitor blog to tell people about your work, even just a link through to your site you would be welcome, just email me.

Trystan

Fantastic project. I have

Fantastic project. I have built it up and started logging data to mySQL using an ethernet shield. I've also brought your "scope" code into the main monitoring code, so I can see the waveform while monitoring.

http://energy.bbarker.co.uk

I think I may try a display unit next - I've been looking at how you built yours.

Thanks for the writeup,

Ben

 Hey Ben, Excellent work! I

 Hey Ben, Excellent work! I like what you've done with the scope, and thanks for the link, If you ever get a chance to document what you have done, It would be great to see it, Im sure it would be very useful for others here too, If you want I can add you as a contributor to the blog, just let me know. 

Trystan

Thanks Trystan - I may post

Thanks Trystan - I may post some more details. At the moment I am trying to track down a strange bug that reslts in the Arduino crashing somewhere around 12 hours after first being turned on. I have used watchdog timers to try to overcome this, but no luck so far. Nothing is overheating, so I am at a bit of a loss - but I will keep trying :-)

Cheers,

Ben

Hi, this is an excellent site

Hi, this is an excellent site - I have been looking around for some time now for a solution that would allow me to monitor home power usage without having to leave the PC switched on all the time.

I have got hold of a couple of Seeeduino boards and a pair of 315 Mhz RF link modules, I've got the Seeeduino's talking to each other with the RF link and all is looking good, however... I'm using one of the OWL CT sensors - it seems to give out some voltage when I check it on a load inside the house (kettle - using the test setup you describe, break out live from the 3 core cable), when the kettle is on I get a reading of 0.384VAC, however, I always seem to get the same reading out of the Seeeduino - 512 i.e. 2.5v on the Analogue input...? (Non Invasive V3)

I was wondering if you or any other viewers of the site have managed to get this working with an OWL sensor?

Once again, excellent site - i'll post up the details of my setup once I get things working.

A.

 Hey Pentala, great to hear

 Hey Pentala, great to hear your building the energy monitor,  is your 0.384VAC reading with a 100Ohm resistor in parallel with the CT?

Thanks

Trystan

 

Hi, no, this reading was

Hi, no, this reading was taken with a Digital Volt Meter - VAC reading across the CT - however, I was looking at the Owl sensor again last night and managed to un-clip the casing, inside I found a 100 Ohm resistor already connected across the CT... I'm guessing that with this one being 'built in' to the CT I won't need the external one on your circuit diagram?

A.

 Correct, thats useful to

 Correct, thats useful to know, nice detective work!

Once I've completed the build

Once I've completed the build i'll post some details - I'm planning to use the RF TX & RX modules to build a remote sensor & then use an ethernet shield to allow un-attended web upload - all good fun!

A.

 Great plan! yea let me know

 Great plan! yea let me know how it goes