Close

Does this project spark your interest?

Become a member to follow this project and don't miss any updates

Power Monitor

Non-intrusive feedback loop for electrical systems.

Similar projects worth following

This project was created on 05/14/2014 and last updated 13 days ago.

Description
I designed these boards based on a schematic documented by Christopher McNally (copy can be found on my github page).

This board monitors the temperature and humidity of a room with the DHT22, and uses the current transformers to monitor amperage going through the main lines.

Each datapoint for the current readings in the Xively screen shot is the Peak RMS for each reading.

I have been using this board at home to monitor the electrical consumption in the house, but the board also can sense ground faults, and be used to detect soil moisture levels.
Details

See PDF on github page.

1. What the system will do?

The primary function of this system is to monitor power consumption in a home, business, or appliance/equipment. The device works on anything that uses AC power, and can monitor certain aspects of the function of a device or many devices simultaneously. This system, with the proper setup, is also capable of detecting ground faults and soil moisture levels.

When reading the power consumption of many devices, such as being hooked to the incoming mains of a home, the system should be able to interpret when an 'event' has occurred and be able to interpret the nature of the event.

2. Who are the users of the software?

This devices is intended to be used by business owners/operators, those in the agricultural industries, home owners, and marine applications. Essentially, this device is intended for use by anyone using AC power that either needs a better feedback loop than the 30 days that is provided by power companies through the billing cycle, or anyone that needs near real-time feedback of the power-state of a machine or multiple machines.

3. What are the business rules?

Hardware:

System Design Considerations:

Right now the only hard requirement is that there is a LAN network present. Each node in this system should be able to function independently, or as a part of a larger system. For example, if an Internet connection is present then the power monitor is capable of pushing data to xively.com allowing the user to view their data through that service, and if so desired a custom application could be built that pulls the data from the xively service, but if an Internet connection is not available then it is possible to push data straight to a user defined database, a pre-built system such as emoncms ( http://emoncms.org/ ), or a solution such as phant.io ( http://phant.io/ ).

That said, there should be a system defined configuration page that allows for a user defined formatting of the data string and a system setup selection with the previously mentioned options.

The only other option that I am aware of that parallels my project is the openEnergyMonitor ( http://openenergymonitor.org/emon/ ), however, there are a number of proprietary and open source home automation projects. The primary difference between my system and other systems is the 'base station', or lack of one. As stated previously this system is intended to work at a minimum with out any external appliances, only requiring an Internet connection. The proposed consumer system however would be a wireless b/n/g router with Ethernet hub and computer preferably built into the same box, this is intended to be used as the base station to communicate with all sensors (This is not a system requirement though, any home with a computer and a LAN setup should be able to install the software and build the system). This would allow anyone using the project to essentially be able to implement a 'plug and play' setup.

Another primary design consideration is to keep the system 'hackable' and open source. Design specifications for the computer/router are as follows:

- Phant.io (currently using MySQL, phant needs to be tested)

- The unit is to be treated as a headless appliance with a web interface

- Programmed in python, interface uses flask and flask-socket.io

- Router using dd-wrt or openWRT (havn't used yet)

- All data manipulations are done on the computer, sensors only report data

- The computer/router is an appliance that could be used as if a product in and of itself without external sensors

- Sensors are 'modules' allowing easy installation and incorporation for system expansion, as well as intuitive implemented use of custom user defined sensors


Sensor Design Considerations:

Power Monitor:

- Capture Temperature

- Capture Humidity

- Capture RMS Amperage

- Capture RMS Voltage

- Capture Instantaneous Amperage

- Capture Instantaneous Voltage

- Remotely Programmable

- Selection of Output String Formatting

- Selection of Output String Destination

Other board features:...

Read more »

Components
  • 1 × DHT22 Temperature and Humidity Sensor
  • 1 × LM358N Amplifier and Linear ICs / Operational Amplifiers
  • 2 × 3000:1 Current Transformer or 2000:1 Current Transformer
  • 1 × Arduino

Project logs
  • Data

    22 days ago • 0 comments

    I have been going through a number of sources covering topics from Bayesian statistics, genetic algorithms, machine learning, binomial regression, Bayesian binomial regression, gradient descent, and on and on and on. Right now I am thinking it is going to take me years to wade through the muddy waters of machine learning, understand each branch of mathematics, reread the material, apply it, and I would probably have better luck getting this thing to listen to enlgish and speak in french than I would interpreting my data.

    However, I have had a book sitting on my shelf for a couple of years 'Computation: Finite and Infinite Machines' by Marvin L. Minsky. After finally picking up the book and reading the first two chapters I began to understand the first part of the problem I am having. I completely over looked the 'machine' part of machine learning, and the reality of this device. I have been looking at this circuit as some abstract of an idea, where in reality it is a finite machine.

    Just as a mechanical adding machine has a finite number of parts and a finite number of outputs based on inputs, so too is the nature of this device.

    So from section 2.2 'For a given machine M at a given time t, we can imagine an infinite variety of possible histories. The one that has actually occurred will determine the machine's response to the next stimulus. Now it may be that some events from the very remote past may contribute to determining this response function. If this is the case, one can say that the machine shows some "trace", or "memory", of those remote events. If every ancient event left a separate, independent trace, the machine would need to have infinite capacity, in some sense, to store them.'

    I had gotten lost in the infinity because I smoothly skipped over the fundamentals of 'what is a machine'. Now since infinite storage capacity is not practical, nor necessarily useful I hope that I can break the problem down and focus on the finite number of histories that need to be considered. And, hopefully the rest of the book continues to be as helpful as the beginning (and hopefully I am not just fooling myself into thinking that I am understanding).

  • ESP8266

    2 months ago • 0 comments

    Over the next couple of months I wil try to replace the electric imp with an esp8266 and make some other revisions.

  • Links

    4 months ago • 0 comments

    This isn't really an update. I am just listing links I have come across while trying to figure out how I am going to deal with the data.

    http://greg.czerniak.info/guides/kalman1/

    http://www.cs.unc.edu/~welch/media/pdf/kalman_intro.pdf
    http://www.cs.unc.edu/~welch/kalman/media/pdf/maybeck_ch1.pdf

    http://www.cs.unc.edu/~welch/kalman/

    http://www.math.ucla.edu/~tom/papers/LiarsDice.pdf

    http://www.csee.wvu.edu/~xinl/library/books/stochastic_programming.pdf

View all 26 project logs

Discussions

J Groff wrote 7 months ago point
I wonder if you can pot these in urethane such that the sensors are not obscured, for ruggedization.

Are you sure? [yes] / [no]

jlbrian7 wrote 7 months ago point
Conforma coat ...

http://www.frys.com/product/7649767?source=google&gclid=Cj0KEQjwur2eBRDtvMS0gIuS-dYBEiQANBPMRyPB9YnQ2JqvLSIf-RyRzyWUQ9hZd2Ww1HTrcOtqhtwaAjPc8P8HAQ

and as far as that goes I thought if it ever came to it the board could be put in a watertight box and use amphenol or seacon connectors to mate with the electrical interfaces, but this would have to be a very specific situation.

Are you sure? [yes] / [no]

diysciborg wrote 8 months ago point
A MASSIVE amount of work on power monitoring has been done at OpenEnergyMonitor. Check it out.
http://openenergymonitor.org/emon/

Are you sure? [yes] / [no]

jlbrian7 wrote 8 months ago point
already seen that thanks

Are you sure? [yes] / [no]

Adam Fabio wrote 9 months ago point
Looking good so far! Thanks for submitting your power monitor to The Hackaday Prize! Don't forget to upload some videos of the monitor doing it's thing - I really like the ground fault detection feature!

Are you sure? [yes] / [no]

jlbrian7 wrote 8 months ago point
I should have a couple of video's up within the week. I have to build a box to induce a ground fault.

Are you sure? [yes] / [no]

arre_diels wrote 10 months ago point
For an AC power monitor, you are missing a power-factor calculation, no? Just measuring the current will only do for resistive loads. (or am I missing the voltage measurement somewhere?)
Otherwise cool project though

Are you sure? [yes] / [no]

jlbrian7 wrote 10 months ago point
the 150ohm resistor that ties the two lines together is the load

Are you sure? [yes] / [no]

jlbrian7 wrote 10 months ago point
Sorry I misunderstood. You are correct I am not taking voltage measurements right now. So this only measures apparent power not true power.

Are you sure? [yes] / [no]

Jeff wrote 10 months ago point
You could also list 'em on Tindie. Seems like the appropriate place for that kind of thing.

Are you sure? [yes] / [no]

jlbrian7 wrote 10 months ago point
I will look into it.

Are you sure? [yes] / [no]

ucasano wrote 10 months ago point
How do I reach the github page?

Are you sure? [yes] / [no]

perez.ernesto.j wrote 10 months ago 1 point
just let me know ebay link, ill gladly support by buying at least one of the shields

Are you sure? [yes] / [no]

jlbrian7 wrote 10 months ago point
Will do. It should be up soon.

Are you sure? [yes] / [no]

Similar projects