Pages: [1]   Go Down
Author Topic: ULN2803A continuous current  (Read 1683 times)
0 Members and 1 Guest are viewing this topic.
Croatia
Online Online
God Member
*****
Karma: 13
Posts: 506
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Little background:
I'm working on a model railroad where I want to control the lights in the houses, train stations, street lights etc.

That means I need to control multiple LEDs (total number not defined as of now, but I'm thinking of no more than 64, probably 32 outputs per one micro controller) with various effects (again, not strictly defined as of now, but include fading, flashing, flickering and continuous light) that are partially random (for example, multiple independent LEDs simulating the flicker of a broken neon light). The LEDs in question are again, not defined, since they will be used for various effects, but will be small SMD LEDs, counting no more than 15 for sure, but most likely no more than 5 per single output (various colours, of course smiley-mr-green )

I guess you get the picture by now, I want a standardized device I can install on multiple locations and just use minimal reprogramming to set the effects on the outputs.
The idea is to use multiple pairs of 74HC595 and ULN2803A that can be easily daisy chained (just plug another board in) and adjust the software.

Since the code I'm writing uses randomized on/off times for flickering and other effects I can not be sure how many LEDs I will need to power on at the same time, so I guess I want to make sure to be able to drive all 8 from each 74HC595 / ULN2803A pair simultaneously. The question I have is, can ULN2803A supply enough current to do it or should I go for time-division multiplexing?
I'm having some trouble understanding how much can this ULN supply over each output and can it output that amount over all the pins simultaneously.

http://www.datasheetcatalog.org/datasheets/90/366828_DS.pdf

So, long story short, can you help me read the datasheet?  smiley-red
What's the maximum safe current per each individual pin I can draw from this ULN continuously over all pins simultaneously?
Logged

texas
Offline Offline
God Member
*****
Karma: 27
Posts: 862
old, but not dead
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You can't draw any, it's an open collector output.  It only sinks current.  Each "driver" inside the chip can sink a maximum of 500mA.  The datasheet doesn't specify a maximum current thru the ground pin that I could see.  With all drivers active, I'd keep it below 100mA per driver.  With about 1V of saturation voltage, the device will get hot in a hurry if you try to sink 500mA on all 8 drivers simultaneously.
Logged

Experience, it's what you get when you were expecting something else.

Croatia
Online Online
God Member
*****
Karma: 13
Posts: 506
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You can't draw any, it's an open collector output.  It only sinks current. 

My bad.

Each "driver" inside the chip can sink a maximum of 500mA.  The datasheet doesn't specify a maximum current thru the ground pin that I could see.
That's my problem.

the device will get hot in a hurry if you try to sink 500mA on all 8 drivers simultaneously.
I figured that much. But how do I figure out how much can I sink safely for extended periods (several hours)? I could always hook one up and load it progressively until it releases the magic smoke, but I reckon there's a better way.
Logged

UK
Offline Offline
Faraday Member
**
Karma: 99
Posts: 4153
Where is your SSCCE?!?!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

That sounds like a silly combination to me - especially when there are chips like the TLC5940 which are SPI controlled and give 12-bit PWM output on 16 channels of up to 30V each channel...

Or if you want more there is the TLC5947 which gives 24 channels...
Logged

Get 10% off all 4D Systems TFT screens this month: use discount code MAJENKO10

Dallas, TX
Offline Offline
Sr. Member
****
Karma: 10
Posts: 318
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The TI data sheet for the ULN2803A shows a total substrate-terminal current of -2.5A. I think power dissipation will be the limiting factor, however, if you operate it continuously.
Logged

Croatia
Online Online
God Member
*****
Karma: 13
Posts: 506
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

TLC5940 sounds good, but I'm worried about the drive capability of only 160 mA. If I put four or five 20 mA LEDs on each output I'm again approaching total current that may be too high.
Logged

UK
Offline Offline
Faraday Member
**
Karma: 99
Posts: 4153
Where is your SSCCE?!?!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

TLC5940 sounds good, but I'm worried about the drive capability of only 160 mA. If I put four or five 20 mA LEDs on each output I'm again approaching total current that may be too high.
That's because you're thinking in the wrong way.

4 LEDs, at say 2V Vf, in series would be 20mA at a Vf of 8V.  Don't increase the current, increase the voltage.  The TLCs can work at up to 30V - so yuo can chain quite a few LEDs off one output and still be at 20mA.
Logged

Get 10% off all 4D Systems TFT screens this month: use discount code MAJENKO10

Windy City
Offline Offline
Jr. Member
**
Karma: 0
Posts: 90
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It looks like the (ULN2803A) package can dissipate a maximum of about 1.8 watts total at 25C ambient (room temperature).  You might be able to increase that a bit by using heavy traces on the PCB, or as heavy copper wire as you can if you are hand wiring.  But if you push it to it's maximum, it will be too hot to touch.

Just a suggestion here, but I would keep the total package dissipation to below 1 watt.  The spec sheet gives the Vce as around a volt if you keep the current on any given pin below 300ma and that would suggest a maximum, if load is spread out across the device, of about 1 amp total.  If you limit your LED drive current to 10ma, that would suggest you could run 100 LEDs per device with no more than about 30 on a single output.   For 20ma, cut those numbers in half.

As has been said , if you needed more LEDs than that you could stack them in series and use a higher drive voltage.  As an example, if you re using white LEDs with a forward voltage of 3.5V and drive them with 12V you could use 3 in series with a 150 0hm resistor to drive them all at 10ma.  But since you said you won't need more than 15 per output, that shouldn't be a concern.
« Last Edit: February 23, 2013, 08:32:27 am by DirtBiker » Logged

Dirt Biker

texas
Offline Offline
God Member
*****
Karma: 27
Posts: 862
old, but not dead
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It looks like the (ULN2803A) package can dissipate a maximum of about 1.8 watts total at 25C ambient (room temperature).  You might be able to increase that a bit by using heavy traces on the PCB, or as heavy copper wire as you can if you are hand wiring.  But if you push it to it's maximum, it will be too hot to touch.

Just a suggestion here, but I would keep the total package dissipation to below 1 watt.  The spec sheet gives the Vce as around a volt if you keep the current on any given pin below 300ma and that would suggest a maximum, if load is spread out across the device, of about 1 amp total.  If you limit your LED drive current to 10ma, that would suggest you could run 100 LEDs per device with no more than about 30 on a single output.   For 20ma, cut those numbers in half.

As has been said , if you needed more LEDs than that you could stack them in series and use a higher drive voltage.  As an example, if you re using white LEDs with a forward voltage of 3.5V and drive them with 12V you could use 3 in series with a 150 0hm resistor to drive them all at 10ma.  But since you said you won't need more than 15 per output, that shouldn't be a concern.

I think it's safe to consider the 1.8W and 25C to be mutually exclusive unless liquid cooling is involved. smiley-wink I would also add that most modern LEDs shine very brightly on just less than 5mA.  They last forever that way too.  25mA just leads to short lives.
Logged

Experience, it's what you get when you were expecting something else.

Windy City
Offline Offline
Jr. Member
**
Karma: 0
Posts: 90
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I think it's safe to consider the 1.8W and 25C to be mutually exclusive unless liquid cooling is involved. smiley-wink

The datasheet specifies a junction to ambient thermal resistance of 55C/W.  At 25C ambient and 1.8W that would mean a junction temperature of 125C, which is the maximum.

Quote
I would also add that most modern LEDs shine very brightly on just less than 5mA.  They last forever that way too.  25mA just leads to short lives.

Who said 25ma?
Logged

Dirt Biker

texas
Offline Offline
God Member
*****
Karma: 27
Posts: 862
old, but not dead
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

That's why I said they would be mutually exclusive.  At that dissipation, the part will be no where near 25C.  Just adding some levity.

I know you didn't say 25mA, but much documentation does.  Even the OP was ready to run them at 20mA.  It's just not necessary was my only point on that.
Logged

Experience, it's what you get when you were expecting something else.

Croatia
Online Online
God Member
*****
Karma: 13
Posts: 506
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks guys.
I see I will need to give this some thought and list all the LEDs I intend to hook up on one chip and pick the voltage that will be most suitable for majority of outputs.
Since I'll have multiple of these independent devices I can set each at different voltage.
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Why not use TPIC6B595 instead? That way you'll save on output pins as well (it's a shift register). It has lower voltage drop than the ULN2803A, and you can sink about 100mA per output from all 8 outputs continuously, without it overheating.
Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Croatia
Online Online
God Member
*****
Karma: 13
Posts: 506
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This sounds promising.
I found this library and so far it works quite well for me and my 74hc595.
http://bildr.org/2011/08/74hc595-breakout-arduino/

Do you think it might work with TPIC6B595 as well?
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I don't know that library, however the 74HC595 and TPIC6B595 are driven in similar ways, so it will probably either work as-is or with minor modifications.
Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Pages: [1]   Go Up
Jump to: