SMD resistors for current shunt - Page 1
Forum section: electronics / projects

author: Things
author_rank: Regular Contributor
timestamp: August 06, 2013, 09:46:01 am
content: Hey guys, I'm working on an electric scooter I've converted to run off LiPo's and a high powered brushless motor. I've designed up a couple of boards to deal with battery management and all that jazz, and I've incorporated the MCP3425 with intentions of using a current shunt. However, I'd probably be looking at something capable of at least 50A. Regular 50A current shunts are huge, so I was wondering, would it be possible to make up a small PCB (With XT90 connectors on each end) and use a bunch of paralleled SMD resistors as the shunt to save a bit of space? I can even just solder them ontop of each other in a stack, but I'm not sure about how you calculate the amount of power each will dissipate, to keep them safe, and how to work out how many to use vs the final resistance to get a decent range on the ADC?Dan

author: digsys
author_rank: Unknown
timestamp: August 06, 2013, 10:18:14 am
content: 50A !! Not a hope in haydes !! This idea is fraught with danger / problems.If total accuracy (linearity/temp/drift) is not critical, I've used an INA198 on the 0V side (unless you're under 80V),picking off at the ends of the connecting cable. At 50A, there'll be enough mV drop to be effective ... and NOaddition parts required. IF you need more accuracy - Forum member C had suggested this -www.allegromicro.com/en/Products/Current-Sensor-ICs/Zero-To-Fifty-Amp-Integrated-Conductor-Sensor-ICs.aspxIt's quite small and not to difficult to fit.DON'T even think about "bigger" power resistors, ALL risky!

author: IanJ
author_rank: Unknown
timestamp: August 06, 2013, 10:55:02 am
content: Hi,Yup, these devices from Allegro are available up to 100A and I think higher!. I've personally used both the 50A and 5A versions.Ian.http://www.allegromicro.com/Products/Current-Sensor-ICs.aspxhttp://www.allegromicro.com/~/media/Files/Datasheets/ACS756-Datasheet.ashx

author: M. András
author_rank: Super Contributor
timestamp: August 06, 2013, 12:19:38 pm
content: what can you tell about its absolute accuracy?

author: ddavidebor
author_rank: Super Contributor
timestamp: August 06, 2013, 01:13:38 pm
content: That there is a datasheet you can and you should read

author: Dr. Frank
author_rank: Super Contributor
timestamp: August 06, 2013, 02:37:52 pm
content: Quote from: Things on August 06, 2013, 09:46:01 amWell, I have seen such PCB designs for 70A and more in automotive electronics, at our electrical actuator colleagues, e.g. electrical steering.But this requires a special PCB and component technology and is absolutely not recommended at all for amateur use.To explain in detail: The PCB itself needs to be capable to carry such high currents, also the (SMD) connectors.Main problem is always heat dissipation / transport / coolingTherefore, a special copper layer, e.g. 110µ thick, is required. Those projects use ceramic substrates instead of FR4 PCBs and a special conductor paste for building the thick film current tracks on the substrate.The shunt resistors (either a single one, or several in parallel) have to be components in the 1 mOhm range or lower, also the solder junctions have to be big and very low ohm (bigger amount of solder paste necessary. The dissipated heat is given by I^2* R, might be several Watts.Normal SMD resistors in 2512 (solder joint at the long side) or else are not well suited for that.Bulk metal resistors are needed, e.g. from Isabellenhuette, with Kelvin sensing.If you need to dissipate heat from SMD resistors, that problem already starts @ 100mW.You have to design big copper areas on the PCB for EACH SMD component, to cool the resistors and to dissipate the heat into the environment. The resistors themselves can NOT transfer enough heat to the environment, as their own area is much too small!Without cooling area, they may withstand the specified power dissipation, but will heat up very quickly.The weak point then is always the solder junction, which will soften/open from 110°C onward.So it's also obvious, that your idea of stacking SMDs is totally counter productive.There are some rules of thumb, or even calculation rules, how much area you need to dissipate a certain amount of power.Sorry, I have to check that at the company, if you are interested.Conclusion: Better chose a discrete solution for your high current paths.Frank

author: Marco
author_rank: Super Contributor
timestamp: August 06, 2013, 03:00:03 pm
content: A single XT90 connector is 39x21x10 mm ... a Vishay 250 uOhm 36 Watt (ie. 380 A) current shunt is 85x18x3 mm ... why exactly is the shunt too big?

author: cyr
author_rank: Frequent Contributor
timestamp: August 06, 2013, 03:47:17 pm
content: The Allegro sensors are really nice, in particular because they provide isolation between the high current side and the sense signal.Here is an example of a module:http://www.ebay.com/itm/50A-100A-150A-200A-Bi-Uni-AC-DC-Current-Sensor-Module-arduino-compatible-/111040360152?pt=LH_DefaultDomain_0&var=&hash=item19da856ed8

author: ovnr
author_rank: Frequent Contributor
timestamp: August 06, 2013, 04:09:22 pm
content: My issue with the Allegro sensors is that they're really pretty noisy. If you want to use a 50A version, don't expect more than around 1A usable resolution if you don't want to filter the hell out of it (and lose a ton of bandwidth); maybe 200-300 mA resolution with proper filtering.

author: cyr
author_rank: Frequent Contributor
timestamp: August 06, 2013, 05:09:47 pm
content: True that they are not great if you need either extreme precision or high bandwidth, but they are not *that* bad in my experience. 50mA resolution or so on the 50A sensor is definately usable if all you need is a few updates per second, which I assume would be fine for checking the current draw from a big LiPo to a motor (my application is similar, but flying and remote controlled).

author: M. András
author_rank: Super Contributor
timestamp: August 06, 2013, 06:17:29 pm
content: Quote from: ddavidebor on August 06, 2013, 01:13:38 pmdid and not impressed after finding some more info on their site, you are happy if you get 20ma noise free resulotion from the 25A sensor at below 10khz bandwith

author: vtkkorhanjoh
author_rank: Contributor
timestamp: August 08, 2013, 04:06:19 pm
content: If you absolutely want a resistor kind of current sense, sparkfun has a 180A resistor- based shunt. I have no idea what brand or ID the resistor has, but if you are interested:https://www.sparkfun.com/products/10644

author: nctnico
author_rank: Super Contributor
timestamp: August 09, 2013, 11:54:56 am
content: I'd use a current transformer or Hall current sensor.

author: lewis
author_rank: Frequent Contributor
timestamp: August 09, 2013, 12:40:20 pm
content: Parallel 10 of these:http://uk.farnell.com/bourns/pwr4412-2sdr0100f/resistor-0r010-1-5w/dp/1435986for 1mR. Will easily take 50A. Be careful on your PCB design though, PTH and very fat tracks definitely a requirement. More valueshere.There's no problem with paralleling stupid numbers of small SMD resistors as others have suggested. You can make a 100A shunt out of 1000 paralleled 1R 0603 resistors if you wanted (although a bit silly given the alternatives), at 100A each resistor will dissipate 10mW, and total shunt dissipation is 10W. But you would need a huge PCB area! Or, make it out of 1000 paralleled 0.1R resistors and total shunt dissipation is just 1W at 100A, assuming sufficiently fat PCB tracks. And, you can easily trim the shunt for extreme accuracy, because you'll need to take copper losses into account. Remember, just because it's high current doesn't mean the power dissipation is necessarily high. You can have 1000A going through 1uR and only dissipating 1W. But of course, the lower the shunt resistance, the more difficult it is to measure current accurately.And no, you don'tneedspecial space-age PCB material to pull many tens of amps through a PCB track as anyone who has looked inside a Chinese inverter will tell you. PCB track is just another resistor, and it has limits on power dissipation and temperature rise. Use an online calculator to work out the track resistance and power dissipation and make sure it doesn't get too hot for the current you're pulling. Basically, make the tracks sufficiently enormous, or use multi-layer, and you'll be absolutely fine. You can boost the current carrying capability by soldering lots of thick wire over the track.

author: lewis
author_rank: Frequent Contributor
timestamp: August 09, 2013, 12:41:31 pm
content: Quote from: nctnico on August 09, 2013, 11:54:56 amThis is a DC application and the Allegro device is a hall sensor.

author: robrenz
author_rank: Super Contributor
timestamp: August 09, 2013, 01:33:10 pm
content: Quote from: lewis on August 09, 2013, 12:40:20 pmI agree but,I have done some DC spice simulations of paralleled very low value resistorsincluding modeling the wire resistances as resistors. Very enlightening, your conductor resistance from resistor to resistor need to be much less (IIRC at least 10000x less) than the resistors to have the theoretical voltage drop per amp of the total group be anywhere close to correct. Also If you don't want terrible resistive TC you have to have the wattage dissipated in the copper very low. Until you get to very low resistance conductors the wattage per resistor is not uniform and can easily be a factor of 2 different from lowest to highest. The topology you use to feed the current to each side and where you pick off your voltage drop have a huge affect on what you get. I strongly suggest doing a spice model and experimenting with conductor resistance values (start with 10µohm), where the current is fed, and where you measure the voltage drop. You will see that you need bus bars for resistors below .1 ohm not thick traces.

author: SeanB
author_rank: Super Contributor
timestamp: August 09, 2013, 03:35:14 pm
content: If you look at the latest teardown of the APC UPS you will see CT2 has a PCB trace bypassing a lot of the current through it so they could use a lower current device which was probably cheaper. As both the PCB trace and the wire loop through the CT are copper this does not really affect the accuracy of the device, as they have a very close TC and a reasonable temperature tracking through being so close on the board.

author: Niklas
author_rank: Frequent Contributor
timestamp: August 09, 2013, 09:11:51 pm
content: Some more info about splitting up the current and only measuring a a part of the total current can be found at Allegro Microsemi's web page:http://www.allegromicro.com/en/Design-Center/Technical-Documents/Hall-Effect-Sensor-IC-Publications/Current-Sensor-ICs-In-Current-Divider-Configurations.aspxFor more precise measurement you must take the following into account:- Copper trace thickness (Tricky if plated after etching)- Series resistance of the shunt and soldering joints (Package resistance from datasheet, but soldering joint?)

author: ignator
author_rank: Regular Contributor
timestamp: August 09, 2013, 10:09:14 pm
content: Back in the old days (just 30 years ago), I've seen fuses used as shunts. If you stay with one vendor, and model number, they behave as very accurate shunts (assuming you want to do production).

author: Dr. Frank
author_rank: Super Contributor
timestamp: August 09, 2013, 10:26:52 pm
content: The question was for SMD resistors and compact design.Well, here's the link to those Isabellenhuette components, which will do the job (click 'SMD-mounting'):http://www.isabellenhuette.de/en/precision-and-power-resistors/products/overview/Kelvin sensing is either done by clever PCB design, which will not solve completely the problem of indifferent resistance of the solder joint, or by using a 4 pin resistor, e.g. theSMD type SMV, 1mOhm.The connection technique is also very robust, and big solder joint areas can be realized, important for high current and good thermal conductivity into the PCB traces.Paralleling thick film resistors is no alternative, as the whole technology is not made for low resistance, high currents and sufficient heat transfer.Also, paralleling 10 or even 1000resistors does not give compact designs.For those bulk metal shunts it is also important: If sufficient cooling areas on FR4 is omitted, they will heat up and desolder themselves, especially if the application is used in high environmental temperature and vibration. This requirement also is contrary to a compact design.It's quite difficult to calculate or to simulate such a PCB heat management, so an IR-thermometer or an IR-camera is quite helpful to analyse the prototypes, and in the end to develop a robust / reliable application.Frank

author: lewis
author_rank: Frequent Contributor
timestamp: August 10, 2013, 12:21:50 am
content: Those SMD resistors look absolutely perfect, wasn't aware such a wide range was available. Where can you get them?I wasn't suggesting someoneactuallyuses 1000 resistors to make a shunt, just making the point (sowing seeds of idea) that it is possible to use bog standard SMD resistors in these applications: You might want to make a shunt completely second-sourceable, or a funny value, or trimmable, you might want to use widely available COTS parts, you might be able to trade PCB area for low component cost, you might decide to use 100 resistors instead of 1000, you might already have the reels on the pick-and-place in a mid-volume design, you might want to make a shunt less than 2mm high, or on a kapton-flexi pcb, you might want to make a ridiculous shunt just for a design exercise...I agree with what you say; thermal management of such a shunt would be (slightly) complicated, and heat dissipation is an issue, but itispossible to do very reliably. (Yes, I've designed such 'resistors' into commercial products before). Remember,anyresistor will heat up and desolder itself given sufficient dissipation, so keep the dissipation low.Robrenz - My instinct tells me that >100x ratio should be about right, but I haven't ever simulated it, so you're probably closer to the mark. Going below 0.1R per resistor would probably significantly increase the effect of copper/solder joint losses, but I've done similar stuff with 1R devices on a double-sided PCB with the top layer for one side of the 'resistor' and the bottom layer the other side (via directly under SMD pad) with no problems. Relatively precise, very very cheap and easy to source.

author: Psi
author_rank: Super Contributor
timestamp: August 10, 2013, 01:24:31 am
content: I have one of those Allegro ACS758 uni-directional 100A hall sensors on my RC plane being sampled by an AVR for display on the OSD. Once i adjusted the conversion formula a bit to calibrate the value to match my DMM it worked pretty well.It's plenty accurate enough for me. I only want to see the number of amps and don't need any decimal places.The step on 10bit MCU ADC is around 0.1A and accuracy to my DMM was +/- 0.2A (from the few random comparisons i made).I'm not sure how much of that is noise on the 10bit ADC. You don't really get more than 8-9bit resolution on AVRs unless you do special stuff like sleeping the mcu during a conversion.

author: Rufus
author_rank: Super Contributor
timestamp: August 10, 2013, 03:45:45 am
content: Quote from: IanJ on August 06, 2013, 10:55:02 amHoneywell do some hall sensors where you can just thread a wire carrying the current through a hole. Probably more practical when you don't already have the current on a PCB.http://sccatalog.honeywell.com/imc/printfriendly.asp?FAM=current&PN=CSLA2CD

author: robrenz
author_rank: Super Contributor
timestamp: August 10, 2013, 01:25:01 pm
content: Quote from: lewis on August 10, 2013, 12:21:50 amThree examples, CC at 10 amps and all resistors are 0.1 ohm. Current feed is intentionally the worst to show the resultant poor load balance on the resistors. spice file attached.Trace to resistor ratioTop =1:100Middle =1:1000Bottom =1:10000Resistor current balance:Top: lowest current = .733A highest = 1.496AMiddle: lowest current = .967A highest = 1.056ABottom: lowest current = .996A highest = 1.005AShunt voltage accuracy and measurement location variation:Measured at left resistor Measured at right resistorTop 149.631mV 73.363mVMiddle 105.614mV 96.775mVBottom 100.569mV 99.671mV

author: cosmos
author_rank: Regular Contributor
timestamp: August 10, 2013, 01:51:55 pm
content: LEM has a contactless sensor that works to about 100A that you might want to have a look at (looks like same principle as the Allegro but without the current actually entering the device)http://www.lem.com/hq/en/component/option,com_catalog/task,displayserie/serie,FHS%2040-P--SP600/output_type,/The precision is not great (sensitivity depends on the mounting and layout/PCB thickness etc) so the usefulness depends on what you need.You can also use it by just fixing a high current wire over the SO8 avoiding getting the high current onto your PCB at all.

author: lewis
author_rank: Frequent Contributor
timestamp: August 10, 2013, 03:30:58 pm
content: Quote from: robrenz on August 10, 2013, 01:25:01 pmNice work! I see what you mean. Conventionally on a ladder type layout, with all the resistors lined up next to each other on the PCB, the 'ground' side of the shunt would be connected to the junction of R87 and R86 to better balance the current and power dissipation between the shunt resistors. The Kelvin sense point would then be taken from somewhere in the middle of the shunt, at R49 and R50. It's still not hugely accurate with these values, but it's trimmable by adding more shunt resistors, moving the Kelvin point along the ladder a bit, or compensating further down the signal processing chain. As you say, you've deliberately made the circuit worst case to illustrate the effect of the trace resistance, but in practice with this sort of layout you would compensate for that to some degree as mentioned.I was referring to the parasitic series resistor between each shunt resistor and either 'end' of the shunt. At 100x ratio, each 0.1R shunt resistor then effectively becomes 0.102R, giving a total drop of 102mV at 10A. 1mR per shunt resistor, per terminal, might be pretty optimistic, hence my comment about the difficulty of using lower than 0.1R, but such resistances might be possible on a copper-poured double sided PCB with vias immediately under the shunt resistor pads. The top layer would be one end of the shunt, the bottom layer the other end. Even at 10mR per terminal, you'd just need to add two more shunt resistors in parallel to get pretty damn close 100mV.