Low-power MCU to 12 VDC Latching Relay Switch

Thread Starter

rbraddy

Joined Jan 26, 2017
17
Hi,

I'm struggling with a dilemma of how to switch a 12 VDC single coil latching relay from a very low power RF MCU (TI CC26xx family) which operates on 3VDC.

The relay coil only requires 5 milliseconds at 16 milliamperes to latch/switch, and it's critical to minimize current drain as this is all powered from RF power harvesting with no batteries (capacitors only). I have already proven the 470 uF cap can switch the relay 4 to 5 times on a single charge, so that's no issue.

The challenges come into play in how to:

1) using GPIO output at 3VDC and a few milliamperes trigger the 5 millisecond relay switching pulse at 12 VDC supply level

2) use a single GPIO output to generate the overall relay on/off command (prefer not to use two output ports or do the trigger pulse timing in the MCU if possible)

3) keeping circuitry static current drsin down to a few microamps or so when no switching is active to preserve harvested energy.

What I have tried...

- DPDT analog switch (bad fit for digital switching, didn't work)
- Darlington transistors used as low voltage switches (ULN2003A on order)
- Low-power opto-isolated MOSFET (on order)
- 555 as monostable multivibrator to generate switching pulse (works with a temporary button press and release, but doesn't work with single GPIO output port, as it expects a pulse as 555 input).

In the above, I've been using pull-up resistors on both sides of the relay latching coil, then using separate set/reset circuit as current switch to ground. This works but the ULN2003A darlington transistors were the wrong ones (req 7 volt input to trigger the switch).

Perhaps I'm making this harder than it needs to be... any suggestions greatly appreciated.

Rick
 

LesJones

Joined Jan 8, 2017
4,511
Does the relay require a reverse polarity pulse to switch it off or does it have two coils ? (Or does the same polarity pulse toggle it between on and off ? I assume the MCU generates the 5 mS pulse.

Les.
 

Alec_t

Joined Sep 17, 2013
15,121
I would guess a single-coil latching relay which needs only 16mA to switch it will inevitably need polarity reversal. I'd be surprised if a 12V DC impulse relay, by virtue of its mechanical extras, could operate on such little current.
 

John P

Joined Oct 14, 2008
2,063
If you absolutely have to use just one output from the processor, maybe you could rig up an external circuit that responds to pulse length. Say you have a 555 timer set up as a 1-shot, which latches the relay in response to a pulse coming from the processor. But you also use a second 555, which gets triggered if the processor's output is still active when the first 1-shot's period ends. This second 555 has the effect of unlatching the relay. So you'd send a short pulse to latch the relay, a long pulse to unlatch it. It's true that the unlatch operation would involve drawing double the charge out of your capacitor (effectively, it latches the relay first and then unlatches it) but you say you have the capacity for 5 operations, so that should be OK.
 

Thread Starter

rbraddy

Joined Jan 26, 2017
17
Thanks Scott. That looks like what I've been trying to do.
For now only one relay. Maybe more in the future.

I can see from all this discrete circuitry why I should go ahead and use two GPIO ports and do the 5 ms pulse in MCU software to conserve Board space and reduce costs.

Why you need to using the ULN2003, do you have many relay need to control?

View attachment 122783
 

crutschow

Joined Mar 14, 2008
38,532
Below is the LTspice simulation of a simple bridge circuit that (I think) does what you want.
A pulse on In1 applies 12V in one direction across the relay coil and a pulse on In2 applies 12V in the opposite direction.
It draws zero (leakage) current otherwise.

N-MOSFETs M1 and M2 must be logic-level type MOSFETs rated for a Vds of ≥20V that can fully turn on with a Vgs of 3V or less.
These generally have a Vgs(th) threshold voltage of ≤1V and their Rds(on) is specified at a Vgs of ≤3V.

M3 and M4 can be just about any P-MOSFET that has a Vds and Vgs maximum rating of 20V or greater.

upload_2017-3-19_9-50-23.png
 

Attachments

Last edited:

Thread Starter

rbraddy

Joined Jan 26, 2017
17
This looks great. Thank you very much.

I'm getting symbol errors with the example circuit that's attached. Do I need to import something into LTSpice?

Below is the LTspice simulation of a simple bridge circuit that (I think) does what you want.
A pulse on In1 applies 12V in one direction across the relay coil and a pulse on In2 applies 12V in the opposite direction.
It draws zero (leakage) current otherwise.

N-MOSFETs M1 and M2 must be logic-level type MOSFETs rated for a Vds of ≥20V that can fully turn on with a Vgs of 3V or less.
These generally have a Vgs(th) threshold voltage of ≤1V and their Rds(on) is specified at a Vgs of ≤3V.

M3 and M4 can be just about any P-MOSFET that has a Vds and Vgs maximum rating of 20V or greater.

View attachment 122802
 

Thread Starter

rbraddy

Joined Jan 26, 2017
17
Below is the LTspice simulation of a simple bridge circuit that (I think) does what you want.
A pulse on In1 applies 12V in one direction across the relay coil and a pulse on In2 applies 12V in the opposite direction.
It draws zero (leakage) current otherwise.

N-MOSFETs M1 and M2 must be logic-level type MOSFETs rated for a Vds of ≥20V that can fully turn on with a Vgs of 3V or less.
These generally have a Vgs(th) threshold voltage of ≤1V and their Rds(on) is specified at a Vgs of ≤3V.

M3 and M4 can be just about any P-MOSFET that has a Vds and Vgs maximum rating of 20V or greater.

View attachment 122802
How does this IC look? It is designed to support logic-level H-bridge from what I can tell and shouldn't take up much PCB space.

https://www.diodes.com/assets/Datasheets/ZXMHC3A01N8.pdf

http://www.mouser.com/Search/Refine.aspx?Keyword=ZXMHC3A01N8
 

crutschow

Joined Mar 14, 2008
38,532
How does this IC look? It is designed to support logic-level H-bridge from what I can tell and shouldn't take up much PCB space.
.............
Note that I also stated for the MOSFET requirements:
"These generally have a Vgs(th) threshold voltage of ≤1V and their Rds(on) is specified at a Vgs of ≤3V."
But that's not the case here, as shown from the data sheet:
upload_2017-3-19_16-34-17.png
It logic level but only for nominal TTL levels of 5V.
With a maximum Vgs(th) of 3V worst-case, it would barely turn on with a Vgs of 3V (250μA).

So to use that, you would need to add a couple NPN transistor level shifters to convert the 3V logic signal to at least 5V (you could use the 12V from the supply).
 

Thread Starter

rbraddy

Joined Jan 26, 2017
17
Note that I also stated for the MOSFET requirements:
"These generally have a Vgs(th) threshold voltage of ≤1V and their Rds(on) is specified at a Vgs of ≤3V."
But that's not the case here, as shown from the data sheet:
View attachment 122823
It logic level but only for nominal TTL levels of 5V.
With a maximum Vgs(th) of 3V worst-case, it would barely turn on with a Vgs of 3V (250μA).

So to use that, you would need to add a couple NPN transistor level shifters to convert the 3V logic signal to at least 5V (you could use the 12V from the supply).
Yep. Makes sense. Thank you for all the help!
Rick
 

Thread Starter

rbraddy

Joined Jan 26, 2017
17
Here's how I ended up solving the 1-coil latching relay driver problem.
I used a ULN2003A Darlington chip to switch the 3 VDC signal from CC2650 GPIO output to drive the 12 VDC latching relay, as shown below. This chip is a bit overkill with 7 Darlington pairs, but it's cheaper than discrete circuitry at just $0.35 and provides some spare capacity in case I need to drive larger relays with multiple parallel pairs in the future. The particular relay coil I'm using is 720 ohms so this design provides plenty of headroom for now.

When the incoming logic state changes from 0V to 3V, it drives the Darlington pair to saturation easily, effectively grounding one side of the coil to latch it. It requires use of two GPIO ports, but plenty of them are available so that's no big deal. And the MCU can create the output pulse of 5 to 10 msecs to latch the relay then afterwards it draws no further current, which is important for this low-power use case.

upload_2017-3-25_12-43-23.png

Many thanks for the support and ideas. The MOSFET H-Bridge is especially nice, but I couldn't implement it at the same low cost and simplicity as with this particular chip.
 
Top