Re: [EE] Back-EMF catch diodes slowing solenoid response

1 view
Skip to first unread message

tBot

unread,
Oct 13, 2008, 6:33:32 PM10/13/08
to pic...@mit.edu

Hello,

I just came across this post, while looking for solutions to a similar
problem:

On a snare drum playing robot, I'm driving a number of continuous duty
solenoids. They're running at 48VDC, being triggered by logic-level signals
sent from a microcontroller through ULN2004A Darlington arrays. At 48V,
each solenoid draws approx. 350 mA, so they're well within the per-channel
current limits of the darlington arrays.

The combination of fast switching speeds (I can get some of the arms to roll
at ca. 25 Hz) and multiple solenoids triggered simultaneously through a
single array have resulted in heat up and failure of several arrays. Oddly,
on another device (a plucked string robot), I've been triggering the same
solenoids at similar speeds through the same arrays for months without any
problems...so I'm a bit baffled by this.

As of now, I don't have 1N4001 (or similar) snubbing diodes in parallel to
each solenoid (I thought that since the darlington arrays have internal
diodes for protection against kickback this wasn't necessary). I might try
this, but even if it works, as I learned from the contents of this thread,
this will apparently cause a 9+ ms delay in release time for the solenoid,
which might be noticeable in this application. And I'm not sure it'll help
with the thermal buildup that fries the darlingtons.

So the other viable options seem to include putting a zener diode in series
with the snubber diode, which does away with the latency at the expense of
slightly less kickback suppression, or to instead put a varistor in parallel
with the solenoid (which apparently takes care of thermal and latency
issues; and if this is best, what value is appropriate given my supply
voltage of 48V--will a 50V varistor work here?). Or there's the suggestion
that came up on this thread to run a zener from the ULN2004's COM line to
ground. I've tried simply piggy-backing up to 3 of the 2004A's to get more
headroom, but this hasn't proven effective.

So I'm curious, Philip, if you found one or more of these options to be
effective, or if anyone else has suggestions for the quickest, cheapest,
least space-consuming option for solving this problem. The primary concern
is of course to stop burning out my ULN2004A's, but limiting release latency
would be nice as well.

Thanks to anyone for any assistance with this!

t

Philip Pemberton-2 wrote:
>
> Hi,
> Well, I'm two days into my summer holiday, and I've already run out of
> things
> to do on my current projects. So I figured I'd resurrect an earlier
> project
> that I put on the backburner ages ago.
>
> A good few years ago, I bought a pair of Epson M-180 series impact printer
> mechanisms. These are basically 24-character dot-matrix printers which use
> five horizontal solenoids instead of the more typical single 9-pin
> vertical
> head. The idea being that it speeds up printing, and allows graphics
> printing
> where necessary. It's actually pretty speedy... for a 1980s vintage piece
> of
> kit. A lot more power hungry than my Seiko MTP-series thermal mechs, and a
> bit
> of a pig to design hardware around. Typical Epson kit really, fussy and
> finicky :)
>
> From my project notebook, I was having issues with the print head
> solenoids
> holding down for too long:
>
> > Print quality still terrible. P/Head solenoids seem to be holding too
> long,
> > 1N4001 diode snubber slowing decay. Removed diode - some improvement,
> but
> > ULN2003 driver failed in short order, probably due to back-emf. Needs
> > further work.
>
> I've been digging through Horowitz & Hill, and scanning Google for about
> 40
> minutes now, and haven't found any decent material on back-EMF suppression
> for
> transistors used for driving inductive components. I've found tons of
> references that boil down to "just use a 1N4001", a few that actually
> admit
> that a '4001 will slow a relay's switch-off response "significantly", but
> nothing on what to do to speed things up.
>
> Does anyone know of any good articles on this? I'd rather like to get the
> M180s doing something useful - maybe hook one up to a PIC and use it to
> grab
> screendumps and trace data from some of my testgear.
>
> Of course the easy answer is "give up and dig out a thermal printer
> module",
> but they're text only (7-pin head, not the 8-pin graphics head) and
> frankly
> it's far easier to get paper and ribbons for the Epson modules than it is
> to
> get 4" wide thermal paper for the MTPs...
>
> Thanks,
> --
> Phil.
> pic...@philpem.me.uk
> http://www.philpem.me.uk/
> --
> http://www.piclist.com PIC/SX FAQ & list archive
> View/change your membership options at
> http://mailman.mit.edu/mailman/listinfo/piclist
>
>

--
View this message in context: http://www.nabble.com/Back-EMF-catch-diodes-slowing-solenoid-response-tp19151287p19962114.html
Sent from the PIC - [EE] mailing list archive at Nabble.com.

--
http://www.piclist.com PIC/SX FAQ & list archive
View/change your membership options at
http://mailman.mit.edu/mailman/listinfo/piclist

Olin Lathrop

unread,
Oct 13, 2008, 6:50:29 PM10/13/08
to Microcontroller discussion list - Public.
tBot wrote:
> The primary concern
> is of course to stop burning out my ULN2004A's, but limiting release
> latency would be nice as well.

First thing I would do is not try driving 1/3 amp with something that has as
high a turn on voltage as a darlington. You could be dissipating 350mW in
each. I don't know how many there are per package, but add them up and they
could well exceed the total device power dissipation.

You could drive a NPN transistor with 10mA base current. At 350mZ collector
current that requires a minimum gain of 35, which is doable.

As for the snubber, it really should be as close as possible to the relay
coil. A resistor and diode in series should be fine. The voltage will be
the diode drop plus the 350mA times the resistance. With 10V reverse on the
coil, I suspect the current will drop off fast enough that going further
won't make the mechanical relay respond significantly faster.


********************************************************************
Embed Inc, Littleton Massachusetts, http://www.embedinc.com/products
(978) 742-9014. Gold level PIC consultants since 2000.

Bob Blick

unread,
Oct 13, 2008, 6:55:13 PM10/13/08
to Microcontroller discussion list - Public.

On Mon, 13 Oct 2008 15:33:32 -0700 (PDT), "tBot" <ts...@virginia.edu>
said:

> On a snare drum playing robot, I'm driving a number of continuous duty
> solenoids. They're running at 48VDC, being triggered by logic-level
> signals
> sent from a microcontroller through ULN2004A Darlington arrays. At 48V,
> each solenoid draws approx. 350 mA, so they're well within the
> per-channel
> current limits of the darlington arrays.

The 2004 is intended to be driven from ~15 volt logic. The 2003 is for 5
volt logic.

The voltage and current together are both a little high.

You must use some form of snubbing. And if you intend to use a quick
snubbing method you will need to dump energy at a higher voltage.

I think you need to look for better parts. You might be able to find a
drop-in that is rated at a higher voltage and then use a big zener on
the common line.

You are right at the limit for that part, I'm not surprised it's dying.

Cheerful regards,

Bob


--
http://www.fastmail.fm - Accessible with your email software
or over the web

alan smith

unread,
Oct 14, 2008, 8:52:35 AM10/14/08
to Microcontroller discussion list - Public.
What about using NUD3160s?


--- On Mon, 10/13/08, Olin Lathrop <olin_p...@embedinc.com> wrote:

Reply all
Reply to author
Forward
0 new messages