I am using the Arduino to send 5V signals to a ULN2003 Darlington IC in order to turn on 12V lamps. It works as predicted, with one small issue: When a second lamp turns on, the first lamp dims. As more lamps are turned on, the dimming becomes more pronounced.
I should note that I am doing this using a shift register (SN74HC595) via a Cat5 cable (i.e. Arduino->Cat5->595->2003->lamp). When I include 2 grounds in the Cat5 cable, the dimming is less pronounced, but definitely there.
Could anyone explain why this is occurring and how to deal with it?
When I include 2 grounds in the Cat5 cable, the dimming is less pronounced, but definitely there.
That would be resistance in the wire or connectors. Small (higher wire gauge) wires have more resistance than "fat" cables, and it's directly proportional to the length (twice the length is twice the resistance).
And, the voltage drop across a resistance is directly proportional to the current ([u]Ohm's Law[/u]) so the more current you draw, the more voltage loss you get through the wires & connectors.
In most applications the wire resistance is low (compared to the other resistances) and we just "assume" the resistance of a wire is zero Ohms. But with higher currents, or thin wires, or long wires, we have to take wire resistance into account.
DVDdoug:
That would be resistance in the wire or connectors. Small (higher wire gauge) wires have more resistance than "fat" cables, and it's directly proportional to the length (twice the length is twice the resistance).
And, the voltage drop across a resistance is directly proportional to the current ([u]Ohm's Law[/u]) so the more current you draw, the more voltage loss you get through the wires & connectors.
If you need the lamps to be a long way from the controller, it may pay you to, at the "lamps" end of the cable, use some transistors to turn the lamps on and off. The signal from the controller would drive the base of the transistor. You would either put the source of the 12v near the lamps, or send it to them over a thicker wire.
Yes, I do "get" that maybe the ULN2003 Darlington IC was to fulfill the role of my transistors. If that's ALL it was for, my answer nearly stands... just move IT near the lamps.
Feddar:
The 12V supply is rated 1.2A. I am using Vin from the Arduino. The lamps use 175mA each.
Unfortunately, this load is beyond what each pin can sink when multiple pins are driven simultaneously. From the graph in figure 4, we get only about 60mA per output when 7 outputs are driven simultaneously.
One option could be to parallel outputs to get more drive current, but I think a better option would be to use a more powerful driver IC Check DigiKey ... they have a good search system.
You can verify if this is the problem by measuring the output's voltage to GND (VCESAT) when it's turned on.
Also check how much the 12V supply drops when under load (at the load side of the cable).
tkbyd:
...the ULN2003 Darlington IC was to fulfill the role of my transistors. If that's ALL it was for, my answer nearly stands... just move IT near the lamps.
It already is. Thanks anyhow.
dlloyd:
Unfortunately, this load is beyond what each pin can sink when multiple pins are driven simultaneously. From the graph in figure 4, we get only about 60mA per output when 7 outputs are driven simultaneously.
Oh, I thought you could get 500mA each, regardless. In fact, they state that if you want more than 500mA, you should use 2 pins to get a max of 1A, etc.
One option could be to parallel outputs to get more drive current, but I think a better option would be to use a more powerful driver IC Check DigiKey ... they have a good search system.
I couldn't find any...
You can verify if this is the problem by measuring the output's voltage to GND (VCESAT) when it's turned on.
Also check how much the 12V supply drops when under load (at the load side of the cable).
That wouldn't be a problem if you were using 24V or 12V but 9V is too low to be running that far.
I've run 24v almost 100 feet with little loss.
Robert
CrossRoads:
TPIC6A595, 350mA continuous per output, and combines 74HC595 function as well.
I believe that one has a diminishing current as more leads are used. That's why I chose not to use it.
raschemmel:
That wouldn't be a problem if you were using 24V or 12V but 9V is too low to be running that far.
I've run 24v almost 100 feet with little loss.
Robert
I am using 12V. It's not an issue if the 12V is local, only if it is included in the Cat5 cable.
Feddar:
I am using 12V. It's not an issue if the 12V is local, only if it is included in the Cat5 cable.
This means the cable length under load is the bigger issue ... the voltages you measure will determine how much loss is due to the cable and how much loss is due to the driver IC.
Are there spare wires available? If you could get an extra GND and 12V wire (2 each), you could cut the cable voltage loss in half.
dlloyd:
This means the cable length under load is the bigger issue ... the voltages you measure will determine how much loss is due to the cable and how much loss is due to the driver IC.
I don't think the driver IC is the issue. When I use the setup without the Cat5, there is no issue.
Are there spare wires available? If you could get an extra GND and 12V wire (2 each), you could cut the cable voltage loss in half.
I tried that, and it does in fact reduce the problem.
I think I'll just go with a 12V supply on each side (local and remote), connecting the grounds, of course.