Jump to content
Sign in to follow this  
Automate

AC power usage Booster Pack

Recommended Posts

@oPossum

 

Both approaches look reasonable. Some things I am wondering about:

 

In the first circuit, is there a reason you used the Vref from the MSP430? It is a voltage divider internally and doesn't provide any additional regulation compared to Vcc, so you could free up that pin and use a separate resistor divider (if you want). I'm also not sure why you'd need to buffer the reference with IC1A, since neither the ADC nor the input terminal of the op amp should draw much current from it, and even if they did, you're set up to cancel out any resulting biases with your CH0 measurement.

 

You could add a little more flexibility for measuring current or voltage on all channels by adding in the same type of resistors as R5 or R8 to all seven channels. You can then populate them with either the necessary resistance for voltage measurements or a zero-ohm or jumper for current measurement. It would allow the board to be used for three phase AC systems in addition to the single and split phase that it would support as-is.

 

In the second circuit, I notice you separated the Agnd and Dgnd of the ADC, and it appears they are tied together at/near pin 1 of J1. It may not matter for this small of a board, but unless you have a compelling reason to do otherwise, you will probably be better off tying the two ground regions at pins 16 and 17 of IC1:

http://www.analog.com/library/analogDialogue/Anniversary/12.html

Share this post


Link to post
Share on other sites

The MSP430 has a 1.5 or 2.5 volt (software selectable) bandgap reference that can be output to external circuits as well as being used internally. The 2.5V ref is stable from a supply voltage of 2.9 to 3.6V.

 

The MCP3208 does not do concurrent sampling, so even split phase is pushing the limits.

 

The schematic does not portray the PCB layout with any significant detail. The PCB would have split analog and digital ground planes and/or star grounding with the digital and analog grounds joined at a single place. The input channels would be guarded by agnd.

Share this post


Link to post
Share on other sites

Thanks for the response. About the Vref, turns out I was looking at a datasheet for one of the low-end MSP430s that only did the divider approach, but I do see the selectable reference you mention in some of the more capable ones.

 

Good point on the MCP3208; I mostly looked at the datasheet for the MCP3903 and didn't realize the 3208 wasn't concurrent as well.

 

Looks good!

Share this post


Link to post
Share on other sites

@oPossum, thanks for the designs

 

How many samples per 50/60 Hz sine wave are you anticipating? Have you done any estimates on the processing and SPI transfer times? This page http://www.rotwang.co.uk/projects/energy_monitor.html under "Putting it together" talks about some of the timing issues calculating the power with only one voltage and one current on Arduino.

 

Since you mention the MCP3208 does not do concurrent sampling and the design will require subtracting and multiplying three different values (voltage, com reference and current) in each sample, how much of a time difference to you anticipate between these three ADC values?

Share this post


Link to post
Share on other sites

Don't know how many samples per AC cycle will be possible or what the delay between samples would be. Would have to write the firmware to get some idea of what is possible.

 

The largest source of error is probably the transformers and faster sampling won't really help that much.

Share this post


Link to post
Share on other sites

Just FYI. TI recently announced about new multichanel AFE for power usage monitoring.

 

http://www.ti.com/ww/en/more/solutions/ ... tmeter-bhp

 

Free samples kit available.

 

In this kit more interesting (and suitable for AC power usage BP) are ADS131E08 and AMC1100. ADS131E08 has same functionality as MCP3903 (but 8-ch onboard) and similar price.

 

AMC1100 is a isolated amplifier, which can be powered directly from the mains through the Zener diode.

Share this post


Link to post
Share on other sites
Thanks Sasha, I had seen that on the TI site but did not find what parts were included in the kit.

 

I did't find this informaton too. I guess it should be parts marked red and listed in 'Product information' section.

But in any case all this parts can be ordered separatley via Order Free Samples.

Share this post


Link to post
Share on other sites

I'm thinking the new C2000 Lanuchpad is better suited for this project. For $12.70 more you get:

 

Thirteen 12bit 4600 ksps ADC instead of eight 10bit 200 ksps ADC

2 Input ADC sample and hold (for voltage and current)

32 bit CPU instead of 16

60Mhz CPU instead of 16

12KB ram instead of 512B

64 KB Flash instead of 16KB

40 IO pins instead of 20

9 Timers instead of 2

SPI and I2C instead of SPI or I2C

 

Since the BoosterPack will be near line power, the MSP430's low power/battery operation is not an issue.

Share this post


Link to post
Share on other sites

The C2000 also has an isolated programmer/debugger/serial port so the voltage measurement could be done with a resistor divider rather than a transformer. Overall it is a much better platform for energy measurement and high resolution data acquisition. The C2000 can easily keep up with the full ADC sample rate while doing RMS calculations on each sample. It also has dedicated analog pins. One of the problems with the MSP430 launchpad is that the 8 analog channels are on pins used for other peripherals like UART, SPI, Timer and such. So there aren't many analog channels that are really available. That is why I used the 12 bit ADC chip.

 

Overall I think the new C2000 lauchpad with a simple passive front end and the internal ADC would be a good place to start. You can always move up to a 16 or 24 bit external ADC if needed.

 

Eagle schematics attached. Be aware the MCP3909 probably has the wrong package - I just grabbed something so I could make a library part.

power12.sch

power24.sch

Share this post


Link to post
Share on other sites
The C2000 also has an isolated programmer/debugger/serial port so the voltage measurement could be done with a resistor divider rather than a transformer.
The XDS100 will protect your computer but what about protecting the C2000 Launchpad? If the wrong end of you voltage divider becomes disconnected your applying a high voltage to an input. BTW how much voltage can a C2000 analog input take before it is damaged?

 

Thanks

Share this post


Link to post
Share on other sites

@@abecedarian ESI project to monitor his nephew's water and power usage got me thinking about this again.

 

I came across this 6 channel energy measurement IC.  Seems like it would work well for monitoring multiple circuits from one location such as your home circuit breaker panel.  It would allow offloading all the complex voltage and current phase calculation to an external IC and just collect the values including power factor etc. over an SPI or I2C link.  http://www.analog.com/static/imported-files/overviews/ADE7816_Multichannel_Energy_Measurement_IC.pdf

 

 

Features

Share this post


Link to post
Share on other sites

I've tossed around the idea of making an e-meter booster pack, but the Launchpads just don't have the proper analog to do the TI energy metering solutions justice.

 

We did just release a new TIDesign for a branch cirucit monitor that can measure up to 7 current channels: http://www.ti.com/tool/TIDA-00222

That might be a decent starting point if you want to make one of these yourself.  Hopefully it goes without saying though, mains voltage is super dangerous, and make sure you play it safe.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×