How many power circuits can I monitor with Arduino Mega?

I operate a data center and I'm looking for ways to monitor power to each rack.  Each breaker box has about 20-30 active power drops running out of it providing (mostly) 120V 20A power to PDU's.  What would be the maximum number of power feeds I could monitor with a single Arduino?  Are there any downsides to sticking 25 CT sensors in a breaker box?

Has anyone here tried to do something with this scale before?  Any help would be greatly appreciated! 

brutzler's picture

Re: How many power circuits can I monitor with Arduino Mega?

Can you tell me, what sensors do you want to use? 25ct for a sensor??

If you want to do something, please first consider the electrical standards in your country!

 

Robert Wall's picture

Re: How many power circuits can I monitor with Arduino Mega?

The basic ATMega328 has 6 analogue inputs, so anything using that is limited to 5 circuits assuming you want real power values and one input is reserved for the voltage, and all want to be on the same phase.

The data sheet tells me the Mega has 16, so 15 + 1. I don't know the ADC conversion time for that, the 328P in the emonTx does "discrete samples" at approx 55 sample pairs (voltage and current) per cycle at 50 Hz, or is known to read and process 4 current plus 1 voltage "continuously". My guess is it would not be viable to try to read all 16 inputs continuously as the sample rate would be reduced. So a little more to think about than just the number of inputs. What sampling regime you adopt depends on the nature of the loads. If they are relatively constant and change only slowly, then the "discrete sample" method is fine - monitor each for 20 cycles (100 ms) then go on to the next. You can do that (say) every 2 s and have time to spare. But if the demand changes rapidly and fluctuates a lot, that's not appropriate and you need to monitor continuously, and then processor load as well as ADC conversion time becomes important.

dallaskincaid's picture

Re: How many power circuits can I monitor with Arduino Mega?

For the most part, this would be used to make sure that customers are keeping within electrical code.  Servers tend to just either be on or off with slow rising/lowering of power as drives spin up, processors are used more extensively, etc.  Even if I was monitoring each circuit in 30 second intervals, that would be more than addequate for what I'm trying to accomplish.  Based on that, do you think what I'm trying to do would work?  I recognize I'll likely have to place multiple arduinos at each box, I'm just trying to figure out how many I actually need.

I'm planning on using SCT-013-30 CT's so I can avoid having to use burden resistors.  If anyone has a better idea for this or advice, please let me know.  Thank you so much for your help.

 

Robert Wall's picture

Re: How many power circuits can I monitor with Arduino Mega?

How many phases do you have? And how many feeds per phase? Why the worry about burden resistors, it's only one extra component per circuit? Are you allowed/able to disconnect feeds to install solid-core ring CTs, or do they have to be split core? (There's a possible big cost and space saving there, ring-core CTs are generally smaller, better accuracy and cheaper, but you need to be able to disconnect to install.)

dallaskincaid's picture

Re: How many power circuits can I monitor with Arduino Mega?

Most of the circuits are delivered as single phase to the customer.  I do have some 3 phase 208 circuits, but the vast majority are single phase 120V 20A power circuits.

For the stuff that is existing, I will have to do the split core CT's.  Once I get things in place, for new circuits I can install a solid core sensor.

I'm new to electrical monitoring (not new to Arduino) and my understanding is that I need to place a burden resistor before the arduino pins to bring the voltage down to under 5V per pin, am I wrong on this?

calypso_rae's picture

Re: How many power circuits can I monitor with Arduino Mega?

my understanding is that I need to place a burden resistor before the arduino pins to bring the voltage down to under 5V per pin,

The purpose of the burden resistor is to generate a voltage that the processor can measure (the CT being a current transformer).  One end of this burden resistor needs to be tied to the mid-point of the ADC's input range which is normally the same as the processor's supply, either 3.3 or 5V.  The voltage at the other end of the burden then swings symmetrically around this mid-point according to the amount of current that is passing through the CT.

To make best use of the ADC's range, the value of the burden should be chosen so that most of the available range is utilised when the maximum current that is to be measured is flowing. 

Robert Wall's picture

Re: How many power circuits can I monitor with Arduino Mega?

I think I would either treat the 3-phase circuits separately, or treat them as 3 single-phase circuits and sum the powers at a later stage. What does "208" mean?

"I'm new to electrical monitoring (not new to Arduino) and my understanding is that I need to place a burden resistor before the arduino pins to bring the voltage down to under 5V per pin, am I wrong on this?"

I think you need to look through Building Blocks to see how CTs work and how we interface them. Basically, CT is a current source, therefore you need to feed that current into a resistor to turn it into a voltage. That is what the burden resistor does. All CTs must have a burden of some sort. It can be an ammeter, or in our case it's a resistor. "Voltage Output" CTs have an internal burden resistor. Having your own burden allows you to tailor the voltage developed across it to suit your needs exactly.

dBC's picture

Re: How many power circuits can I monitor with Arduino Mega?

 this would be used to make sure that customers are keeping within electrical code.

This almost sounds like a case where just measuring current (rather than real power) might be closer to what you need?     When it's all about sizing feeds and breakers, current (or apparent power) is more useful than real power, and the good news is, it's easier to measure.    If that is all you care about, there are even some "CTs" around (using the term very loosely), that give you a 0-5V DC output, that varies in proportion to the AC current passing through them.  You could sample one of them every 110usecs.

Our local grid provider is moving to peak apparent power when it comes to calculating how big data centres should be charged for their  "network augmentation costs", because ultimately it's the amps that matter for them. None of the existing meters measure apparent power, so they're calculating it by combining the real and reactive power: https://www.energex.com.au/__data/assets/pdf_file/0004/215779/kVA-Demand-Charges-for-Large-Customers-Form-8313.pdf

dallaskincaid's picture

Re: How many power circuits can I monitor with Arduino Mega?

Yes, ultimately all I really care about is the total amps they are using because that is how we bill our customers for power.  Can you give me an example of one of these CT's that give a 0-5V DC output?  That seems perfect for my application since the arduino pins on the mega will handle a maximum of 5V so extrapolating utilization of the circuit would be fairly easy I would think.

I appreciate the help on this.  I'm relatively new to this side of doing things so I'm learning a ton as we go. ;)

 

Bill Thomson's picture

Re: How many power circuits can I monitor with Arduino Mega?

I think I would either treat the 3-phase circuits separately, or treat them as 3 single-phase circuits and sum the powers at a later stage. What does "208" mean?

208 = 208VAC.

 

dBC's picture

Re: How many power circuits can I monitor with Arduino Mega?

Can you give me an example of one of these CT's that give a 0-5V DC output? 

Here's one that crops up fairly often:  http://www.elkor.net/product/i-Snail-VC.  Unfortunately, they don't open so may not be suitable, I've seen a few others around that do, but can't find them now.  That nice linear calibrated output is assuming a sine wave on the load, and the current signal to your customer racks almost certainly won't be a sine wave, so basing any billing on it might be risky.  But if you just want a gross estimate of current to each rack, it might be close enough.

calypso_rae's picture

Re: How many power circuits can I monitor with Arduino Mega?

[Robin misread some of the posts above, and notes that in this post he was referring to a standard current transformer, not to the "dc output" sensors being discussed. - RW]

Can you give me an example of one of these CT's that give a 0-5V DC output?  That seems perfect for my application since the arduino pins on the mega will handle a maximum of 5V

You can't just connect this kind of CT to an input pin of the processor, it needs to form part of a "current sensor".  Each sensor comprises various components as well as the burden resistor.  There's a Building Blocks article about current sensors here.

When supporting multiple sensors, it may be useful to provide a single mid-rail reference supply which all the sensors can share.   A shared reference must be buffered otherwise there will be some cross-talk between the channels.  This technique has been successfully used in many applications including my Mk2 PV Router.  The first post in that thread has a schematic diagram in which a pair of voltage & current sensors share a single Vref supply.

dBC's picture

Re: How many power circuits can I monitor with Arduino Mega?

Did you read the datasheet for that elkor product?  It seems perfect for connecting directly to an analog input pin with no other components.  Maybe a protection diode if you're worried about the the fact it clamps at 6.5V during overload, maybe a filter if it's noisy... but certainly no burden resistors or mid-rails.  It's pretty much good-to-go as is.

Robert Wall's picture

Re: How many power circuits can I monitor with Arduino Mega?

Sorry, Robin, but you need to read back up the thread a little way. In the light of the posts following my third in this thread, what you wrote could be misleading. We're now talking about a sensor package, not a raw CT.

As you point out, dBC, "sine wave RMS calibrated" is a warning sign. Presumably, it is rectified average sensing, calibrated as they say to give the rms given the correct waveform. That can give significant errors depending on the waveform of the current taken by the server power supplies. If the wave shape is always the same (again a risky assumption) then you could calibrate the output (in the Arduino) for your particular waveform. There's a bit about this problem in the report on the YHDC CT.

Bill: 208 / √3 = 120 ! ! - being unitless, it wasn't a number I recognised. Now if he'd written "415" or "440", that would have been different.

calypso_rae's picture

Re: How many power circuits can I monitor with Arduino Mega?

Sorry, Robin, ...  We're now talking about a sensor package, not a raw CT.

OK, I stand corrected, my apologies for any confusion caused.  If any previous post of mine could be confusing, please feel free to change or remove it.

dallaskincaid's picture

Re: How many power circuits can I monitor with Arduino Mega?

Wow, I looked up that CT.  Way too expensive for the volume I'm looking to do.  The benefit of the other CT's was that you could get them around 8 bucks in volume.

dBC's picture

Re: How many power circuits can I monitor with Arduino Mega?

I did eventually find some split core ones:

http://www.aimdynamics.com/DCT-0010-Vdc-Output-Current-Sensor-p/dct-0010.htm

and even some DIN-rail mounted True RMS ones:

http://www.crmagnetics.com/Products/Split-Core-Transducers/CR4110S

​although you'll need a 24VDC supply for them.

If you follow the tech specs pointer on that first one, you'll see the schematic of what's inside them, so you could potentially make your own out of your cheaper CTs, not sure whether you'd come out ahead though.

Robert Wall's picture

Re: How many power circuits can I monitor with Arduino Mega?

"If you follow the tech specs pointer on that first one, you'll see the schematic of what's inside them, so you could potentially make your own out of your cheaper CTs, not sure whether you'd come out ahead though." It's pretty much as I expected in there.

If Dallas is talking of 25 channels, economy of scale comes into this. You can do the rms bit in software, with no external power required, at the cost of some processing.
If he needed "continuous" measurements on all channels, there would be an argument for stand-alone sensors to reduce the processor load, but as that's not a consideration, one strip-board front end with a common 2.5 V bias supply (from an op-amp follower or maybe a regulator IC?) and a handful of burden resistors (which can either share the terminal block with the CT or sit on posts, so readily changed should that be necessary) and the Arduino board with its analogue inputs and a means of getting the data out, and 5V power is pretty much all that's needed.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.