I am trying to control some solenoids with ULN2803A Darlington Sink Driver & a 74595 shift register to control the inputs. The ULN2803 have a input base resistor and a flyback diode built in. So I wired them as this:
The boards was working great for a long time with any problem, Today most of 595 compactly burnt !
Well no 5V to the '595 and no decoupling, clearly it was going to fail, but I am worried by the damage - that
suggests the ULN2803 burnt out and put 24V on the '595 which caused the die to explode.
You need to use decoupling on the 5V, 0.1uF, ceramic, on pin 16 to ground.
You need 100uF or more electrolytic decoupling on the 24V line to prevent overvoltage spiking
and thus protect the output transistors of the ULN2803.
Have you checked the individual and total current limitations of the ULN2803 aren't being exceeded?
larryd:
Let’s see the ‘ACTUAL’ circuit with the wires, power supply, PCB etc.
I'll draw it and post it today. Thanks
MarkT:
Well no 5V to the '595 and no decoupling, clearly it was going to fail, but I am worried by the damage - that
suggests the ULN2803 burnt out and put 24V on the '595 which caused the die to explode.
You need to use decoupling on the 5V, 0.1uF, ceramic, on pin 16 to ground.
You need 100uF or more electrolytic decoupling on the 24V line to prevent overvoltage spiking
and thus protect the output transistors of the ULN2803.
Have you checked the individual and total current limitations of the ULN2803 aren't being exceeded?
Is the incoming data cable long?
I am only using about 0.25 Amp per channel.
But the data cable is very Long ! About 4 meters. Could this be the cause ?
Yes, you can't reliably send raw CMOS logic signals down a long cable. Its possible to get
double clocking or other odd effects if you try. Adding 270 ohm resistors to both ground and Vcc at the
receiving end for each logic signal may improve matters by better matching the cable impedance.
WE NEED TO SEE A PICTURE THAT YOU TAKE WITH A CAMERA, THE WIRES GOING TO THE PCB, HOW THE PCB IS SOLDERED, AND THE PHYSICAL RELATIONSHIP OF ALL THE COMPONENTS.
MarkT:
Yes, you can't reliably send raw CMOS logic signals down a long cable. Its possible to get
double clocking or other odd effects if you try. Adding 270 ohm resistors to both ground and Vcc at the
receiving end for each logic signal may improve matters by better matching the cable impedance.
But what kind of cable are you using?
I am using Ethernet cable from Arduino to the First board, And a 20cm connector between every board like the photos below.
larryd:
“I'll draw it and post it today. Thanks”
“draw” NO.
WE NEED TO SEE A PICTURE THAT YOU TAKE WITH A CAMERA, THE WIRES GOING TO THE PCB, HOW THE PCB IS SOLDERED, AND THE PHYSICAL RELATIONSHIP OF ALL THE COMPONENTS.
If it wasn’t a result of a short in the wiring, it’s my guess transients caused a breakthrough from the 2803 to the latch to the Arduino.
Personally, I would put 1N4001-1N4007 kickback diodes at the loads themselves rather than using the ones built into the 2803s.
Possibly a loose screw on one of load terminals helped precipitated the problem.
larryd:
If it wasn’t a result of a short in the wiring, it’s my guess transients caused a breakthrough from the 2803 to the latch to the Arduino.
Personally, I would put 1N4001-1N4007 kickback diodes at the loads themselves rather than using the ones built into the 2803s.
Possibly a loose screw on one of load terminals helped precipitated the problem.
Also put decoupling on the latch.
Should I put a optocoupler (Like 4N25) Between low voltage side (595) and the high volt side (2803s)?
Will this protect the rest of the circuit if something happens again ?
At 250mA, and a typical volt drop of ~1.2volt across the switch transistor, there is 1.2*0.25= 0.3watt per channel generated inside that ULN chip. With eight channels 'on', that's 2.4watt...
That will push the temp of silicon inside the IC up with about 175C (see datasheet).
When the chip cracks under that stress, it could well take out the drive chip, and that could take out the Arduino.
Leo..
Wawa:
At 250mA, and a typical volt drop of ~1.2volt across the switch transistor, there is 1.2*0.25= 0.3watt per channel generated inside that ULN chip. With eight channels 'on', that's 2.4watt...
That will push the temp of silicon inside the IC up with about 175C (see datasheet).
When the chip cracks under that stress, it could well take out the drive chip, and that could take out the Arduino.
Leo..
And That's Exactly what happens !
All 595's & the atmega chip gone away !
Are these solenoids always 'on', or is there some pattern that you haven't explained yet.
The TPIC6A595 (shift register and driver in one), mentioned in your cross-post, is a good replacement for the two chips, but it will get hot with eight solenoids always 'on'.
Can only just support eight 250mA solenoids if you keep the ambient temp under control.
Another solution is 74HC595 chips with TIP120 darlingtons on each output, with 1k base resistor and kickback diodes across each solenoid.
Leo..