I'd like to pull in a 5v relay (the ones I am using are 5V 70 ohm, and are safe to put directly over a 5V supply.). Once pulled in, I'd like to decay the hold-in voltage / current to half of pull-in. I don't need fast pull-in or drop-out.
There are numerous postings in various places on how to do that, usually with extra resistive loads or putting the driving transistor into a non-saturated / non-cutoff state. This does reduce overall power consumption, but also means that some of the power is wasted across the resistor or driving transistor, and there is some extra heat to dissipate.
So I went for some PWM to chop the on/off state of the transistor. The default PWM on an Arduino has a slow PWM frequency (500Hz), (it is possible to fiddle with Arduino timers to get a higher frequency PWM, but I didn't). So I put together a small PNP circuit that seems to do what I wanted. (I simply modelled the relay as a resistor R2, no flyback protection, no taking its inductance into account.)
But I'm still trying to wrap my head around three things:
a) If one does use PWM across a relay or solenoid, is there a risk that every time the PWM turns off we'll get some flyback and interaction. (For this reason I wanted the capacitor there).
b) I did this with a PNP. I thought it should be easy (almost symmetrical) to knock up an equivalent one with an NPN driver, but it eluded me. So any suggestions for doing this with an NPN? Or, can someone explain why the one case looks simple but the other isn't.
c) I can't seem to find answers to "what are typical inductances" in the same way as I can for other values. And inductances are not on the datasheets I've seen for relays. I've seen one LTSpice circuit that models a 12v car relay at 4000mH - that seemed huge compared to my attempt to measure my coil inductance by seeing how long it took to reach 63% of Vcc. (I got to 67uH - does that sound ballpark like it might be credible?) https://www.eeweb.com/electronics-forum/calculate-inductance-of-12v-relay-coil/
Thanks for any advice! (Advice to myself ... "Buy or build yourself an inductance meter?")
There are numerous postings in various places on how to do that, usually with extra resistive loads or putting the driving transistor into a non-saturated / non-cutoff state. This does reduce overall power consumption, but also means that some of the power is wasted across the resistor or driving transistor, and there is some extra heat to dissipate.
So I went for some PWM to chop the on/off state of the transistor. The default PWM on an Arduino has a slow PWM frequency (500Hz), (it is possible to fiddle with Arduino timers to get a higher frequency PWM, but I didn't). So I put together a small PNP circuit that seems to do what I wanted. (I simply modelled the relay as a resistor R2, no flyback protection, no taking its inductance into account.)
But I'm still trying to wrap my head around three things:
a) If one does use PWM across a relay or solenoid, is there a risk that every time the PWM turns off we'll get some flyback and interaction. (For this reason I wanted the capacitor there).
b) I did this with a PNP. I thought it should be easy (almost symmetrical) to knock up an equivalent one with an NPN driver, but it eluded me. So any suggestions for doing this with an NPN? Or, can someone explain why the one case looks simple but the other isn't.
c) I can't seem to find answers to "what are typical inductances" in the same way as I can for other values. And inductances are not on the datasheets I've seen for relays. I've seen one LTSpice circuit that models a 12v car relay at 4000mH - that seemed huge compared to my attempt to measure my coil inductance by seeing how long it took to reach 63% of Vcc. (I got to 67uH - does that sound ballpark like it might be credible?) https://www.eeweb.com/electronics-forum/calculate-inductance-of-12v-relay-coil/
Thanks for any advice! (Advice to myself ... "Buy or build yourself an inductance meter?")