Jump to content

Energy Monitoring Board for Arduino and others


G W

Recommended Posts

This is a great idea.

 

After the Smart Outlet project, "BuffI the Ampere Slayer," it would be useful to utilize that knowledge to create an energy monitoring board to use with Arduino and other micro-controllers for the Maker/DIY community. The result is Dr. Wattson, the Energy Monitoring Breakout Board!

 

Based on the MCP39F521, a single phase power monitoring chip from Microchip, it is coupled with an Arduino library to facilitate energy monitoring without much ado. The board is designed to be tolerant of a wide range of voltages, which means that it can also be used with Raspberry Pi or any other 3.3v MCUs without any modifications.

 

 

http://upbeatlabs-wattson.launchrock.com

 

Sent from my SM-G955U1 using Tapatalk

Link to comment

Might be fine for those interested in tinkering but isn't for the general public at large as it's not safety rated for use by UL / cUL.

 

The device has no mention of compensating and referencing the line voltage and if that is the case offers no accuracy.

 

It also doesn't mention if the energy / power measured is *Real Power* vs apparent power, there's a big difference. All of the above would offer general insight but no real accuracy which kind of defeats the purpose of monitoring in my view.

 

Then again lots of people by toy like products like the HEM, Sense, Smapee, Nuerio, which again offer nothing for the intended goal.

 

Which is to know the real world values!!

 

Regardless, learning something new is never a waste of time in the pursuit of knowledge.

 

 

Sent from my iPhone using Tapatalk

Link to comment

Hello folks, 

 

I am Sridhar Rajagopal, the creator of Dr. Wattson.

 

Gary, thanks for your post!

 

Teken, to answer your concerns, this is definitely intended for tinkerers and hobbyists and makers to build on top of. The device measures both line voltage and current and also does phase compensation.

 

It is based on the MCP39F521 IC from Microchip - datasheet is here - http://ww1.microchip.com/downloads/en/DeviceDoc/20005442A.pdf

 

What I have done is laid out and packaged it, and also the purpose of the Arduino library is to make all of the MCP39F521 functionality available without having to code all of the protocols yourself. 

 

It provides among other things, RMS voltage, RMS current, line frequency, power factor, active power, reactive power and apparent power, and also accumulators for active and reactive energy.

 

It also provides notification for events like overvoltage and over current and zero cross detection.

 

MCP39F521 offers a 4000:1 dynamic range and an accuracy of 0.1% is capable with proper calibration, and it also offers easy calibration routines. I intend to release it calibrated. 

 

So you can certainly get all the real world values with a great degree of accuracy! :-)

 

Hope that helps!

 

Cheers,

Sridhar 

Link to comment

Hello folks, 

 

I am Sridhar Rajagopal, the creator of Dr. Wattson.

 

Gary, thanks for your post!

 

Teken, to answer your concerns, this is definitely intended for tinkerers and hobbyists and makers to build on top of. The device measures both line voltage and current and also does phase compensation.

 

It is based on the MCP39F521 IC from Microchip - datasheet is here - http://ww1.microchip.com/downloads/en/DeviceDoc/20005442A.pdf

 

What I have done is laid out and packaged it, and also the purpose of the Arduino library is to make all of the MCP39F521 functionality available without having to code all of the protocols yourself. 

 

It provides among other things, RMS voltage, RMS current, line frequency, power factor, active power, reactive power and apparent power, and also accumulators for active and reactive energy.

 

It also provides notification for events like overvoltage and over current and zero cross detection.

 

MCP39F521 offers a 4000:1 dynamic range and an accuracy of 0.1% is capable with proper calibration, and it also offers easy calibration routines. I intend to release it calibrated. 

 

So you can certainly get all the real world values with a great degree of accuracy! :-)

 

Hope that helps!

 

Cheers,

Sridhar 

 

Hello Sridhar,

 

That is really great to know what the intended purpose of this little box. Apologies if this is stated somewhere but how does the data get published for viewing, monitoring, and historic recall? I gather this is up to the end user to use some kind of 3rd party software / cloud hosted web site to render the data points?

Link to comment

Hi Teken, 

 

The data will be available programmatically. If you are using an Arduino, you would call the Wattson library (which will come with the device) to get the data. You can print it out to serial (so you can see it on your computer), or you can choose to integrate an LCD screen with the Arduino and display the values there directly. 

 

You could set up a cloud service and send that data to your cloud service from your Arduino (or Raspberry Pi or any other microcontroller) and have access to all the historic data - the world is the oyster here - this is a building block with the energy monitoring component. 

 

If you are looking for a fully integrated system, then unfortunately this is not for you. But if you are looking to build a solution (either for yourself or to get out into the world), then you can utilize this component and not worry about the internals of the how the measurement is done etc, and integrate the energy monitoring component in your solution quite easily. 

 

Hope that helps! 

Let me know if you have additional questions or concerns!

 

Cheers, 

Sridhar

Link to comment

Hi Teken, 

 

The data will be available programmatically. If you are using an Arduino, you would call the Wattson library (which will come with the device) to get the data. You can print it out to serial (so you can see it on your computer), or you can choose to integrate an LCD screen with the Arduino and display the values there directly. 

 

You could set up a cloud service and send that data to your cloud service from your Arduino (or Raspberry Pi or any other microcontroller) and have access to all the historic data - the world is the oyster here - this is a building block with the energy monitoring component. 

 

If you are looking for a fully integrated system, then unfortunately this is not for you. But if you are looking to build a solution (either for yourself or to get out into the world), then you can utilize this component and not worry about the internals of the how the measurement is done etc, and integrate the energy monitoring component in your solution quite easily. 

 

Hope that helps! 

Let me know if you have additional questions or concerns!

 

Cheers, 

Sridhar

 

Hello Sridhar,

 

How does the system monitor the line voltage to offer the accurate energy data? Also, is it safe to say this device only monitors a single circuit or can it support multiple channels / current transformers? In the link provided above I see the CT is a solid donut style what other CT's are supported? 

Link to comment

The system has two transformers, one for current (the solid doughnut style) and the other for voltage - these voltage and current signals are fed to the MCP39F521 IC. 

 

It comes packaged only with these transformers - the layout and measurement accuracy is tricky, and if I were to use different transformers, would have to go through the entire calibration process again. 

 

It has two screw terminal connectors - one for input and one for output - it is expected that you will connect your AC system, whatever you want to measure, via this. In one of the photos, I have shown a regular outlet that I have hooked up via this energy monitoring board - it will measure whatever load is plugged in. This could be part of a kill-a-watt kind of system, that plugs into an existing outlet and provides an outlet to plug into, for instance. 

 

So the usage will be to hook up whatever is your AC system (whether outlet or part of another application) via this board. On the other side, you hook up a microcontroller to the board, and now you can start getting reading the various power parameters with a simple function call like wattson.getData()

 

Each board monitors the single source/circuit you provide it. You can use up to 4 of these boards with a single microcontroller because the MCP39F521 provides the functionality to specify the I2C addressing using two inputs (which I have exposed via solder jumpers, so you can easily change the addressing used to one of 4 values - 00 01 10 or 11). So in that case, you can monitor up to 4 separate channels/circuits. 

Link to comment

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...