There are several factors in taking a particular design approach, and they are not always independent. Some of the considerations when designing drivers for inductive loads are size, cost, switching speed, reliability, power consumption and heat. Inductive loads like relays or solenoids are different from simple resistive or capacitive loads in that they need a certain power to energize the load, but once energized the applied power can be reduced and the load will remained activated. An added benefit of lower current is that it takes less time for the load to de-activate.
I did discuss one aspect of switching inductive loads in my blog “Back EMF and snubber” and I urge you to keep the discussions of snubbers in the back of your mind as you follow my meanderings. No matter whether you opt to cut power to the inductive load or not, there will always be back-EMF.
Not all inductive load data sheets provide sufficient information to apply the following techniques. In fact in my browsing for this blog, almost none do. However the Schrack RT2 relay series provides a fine example. As you can see there is an immense difference between the voltage to pull and the relay and what is required to keep it activated.
Figure 1: RTE24024 highlighted. Despite this detailed information, nowhere in the data sheet does it mention absolute maximum coil voltage. Nobody’s perfect! (Source: TE Connectivity)
The lack of information means that almost any design you do is going to start out as “suck it and see”. And once you actually determine the approach and values you are going to use, allow for variations due to production spread, voltage variation and temperature/humidity changes. If at all possible I will always suggest utilizing a product where the parameters are provided.
Controlling the inductive load requires adjusting the voltage across the coil or modifying the current. If you are going to roll your own here are some approaches. The figures are conceptual – there must be a current limiting resistor in the base of the transistor for a BJT, and there is no indication of the electronic control of the changeover contact in A.
Figure 2. Basic approaches to directly adjust supply voltage to coil. (Source: Author)
If you can control the supply it is possible to use the approach shown in Figure 2A. If you look at the design ideas listed below you will see that this is the most common approach. One, in fact, uses a second set of contacts to feed back the contact closure to toggle this change. Often they use rectified and smoothed power supplies rather than regulated ones. However variations in mains voltage and transformer manufacture means that you have to allow for wide tolerance which might be OK for a small volume production run (Reference 3 is for a telescope at the Lowell Observatory – I suspect there is only one) but I would use very large margins with large scale production. It is also an inconvenient approach if you have multiple independent coils.
Figure 2B shows a very common technique. When the coil is activated via the transistor Q2 the capacitor C2 acts as a short and the full voltage is applied to the load. C2 charges based on the circuit’s time constant (C2 value and coil’s resistance) slowly dropping the voltage across the coil. The voltage will stabilize at the voltage determined by the resistive divider formed by the coil’s internal resistor and R2. Paul Rako recalls Bob Pease’s thoughts to discuss this approach extensively (reference 5). Although simple, there are some disadvantages. Generally the capacitor tends to have a large value and between the components’ tolerance and temperature characteristics the actual time can have quite a wide distribution. Also at steady state there is power dissipating through R2. That resistor may need to be quite large and may get hot.
If you have the luxury of extra outputs from your micro, then Figure 2C is a modification to Figure 2B that will save the need for a space wasting and uncertain timing capacitor at the expense of another transistor (Q3A). To activate the load turn on both Q3A and Q3B. Once the activation is complete (based on time or confirmation by closed contacts) Q3B can be de-activated.
Nowadays the proposed solution to any problem that need the transform from the digital to the analog domain is to mutter a magic incantation. Chant it with me now: – “P-W-M”! By varying the percentage that a switching waveform is on, we can adjust the average voltage and hence the average power. No additional resistors to dissipate heat and no capacitors to waste space or muck up timing.
Figure 3: A rather uninformative wiring diagram for the connection of a PWM drive. (Source: Author)
Although it would be possible to create a separate PWM signal and gate it with an initiation signal thus requiring two pins to control a load, it would be naïve not to presume that a modern microcontroller has the ability to implement a PWM from 0-100% on a single pin. But it would be nice if the inductive device manufacturer provided details on what would constitute reliable operation. I am not sure how widespread this is, but some manufacturers like ASCO do produce devices specifically to this end as you can see in Figure 4. Guaranteed performance – at long last!
Figure 4: Extract from ASCO HV427246 Gas Shutoff Valve data sheet. (Source: ASCO)
Up till now I have only spoken about control of voltage, but you can achieve the same ends by controlling current. Now I could bore the pair of you to tears (since everyone else has given up and gone away) and wade through current controllers made from discrete components that I have only thought about in theory, but there is an easy way out. There are some ICs that do this!
The most straightforward is the Constant Current Relay Driver and the dual channel TLE7241, from Infineon. They also have a six channel device, the TLE6288R, as well as another device – the TLE82453 for linear solenoids. At first blush, I have no idea what a linear solenoid is and how it differs from a regular solenoid so I will have to wait for one of you to set me straight (sorry – bad pun!)
Texas Instruments offers the DRV120. Maxim does an 8 channel driver MAX4822-4825. I have also just discovered an IC manufacturer I had never heard of before, iC Haus, who make 3 Power Saving Relay/Solenoid drivers.
Some final notes on this discussion: your choice of relay/solenoid can also have a great effect on power consumption. If you choose latching relays, then the power requirement drops to zero in the steady state. Manufacturers make “sensitive” components that require less current to activate.
You also need to be careful of the ratings on devices. Some are rated for intermittent operation and so may not be candidates for extended activity where power reduction would be desired. Forgive me if I harp on a bit about the necessity for trial and error when there manufacturers do not provide data and then extrapolating the results into production. Beware. And a final caution – an unobvious side-effect is that with power saving methods applied the energy may be insufficient to keep the relay/solenoid activated in high vibration/shock environments.
When I wrote this blog I had started working on a project using the device in Figure 4. In a case of cosmic comeuppance, within 2 months I was working on another project with a solenoid similar to the data in Figure 5. Not only are there critical facts missing in the data (like absolute maximum voltage), Guardian has absolutely NO technical support. My customer says it is a 1A solenoid and maximum activation time of 4 seconds or it overheats.
This time there was no information on how to PWM the drive.
Figure 5: A Guardian Electric solenoid marked as LT8X16-29.7-24VDC. This is a close as I could find on the Guardian web site. (Source: Guardian Electric)
So I looked at what I had written above. I intended to go for the PWM approach and I see that I was really banal in my description – how exactly would you go about determining the initial pulse and the holding PWM as well as the frequency. I recommend that you use a configuration that allows you to easily adjust the parameters – I used a Cypress PSoC5LP development kit that has a single potentiometer on it as well as a bunch of switches and LEDs and a ton of I/O.
I was fortunate in that the solenoid and the attached mechanism is completely visible and so I could see exactly what was going on.
I configured my set-up to provide a pulse to activate the solenoid. I wrote a small program to read the pot’s setting and convert it to the on-time. I started at about 1 second and then scaled back to see where the solenoid stopped pulling in or at least seemed hesitant. It is surprisingly short, sub 100mS. I set the pulse width to 150mS. I then configured the micro to start with the 150mS start pulse and then convert to a PWM. I choose a 2KHz frequency for the PWM signal. I rewrote the program to adjust the PWM setting according to the position of the pot. I then tried activating the solenoid and at each attempt scaled back on the PWM to see where it started dropping out. It turned out the speed of the driver transistor was the limiting factor and it couldn’t keep up at less than 10% and so the limit was effectively 10% PWM. (see Figure 6)
Figure 6: The PWM from the micro is seen on the upper trace and the output from the driver transistor on the lower trace. The PWM is ~8% and you can see how the output trace is effectively more because of the driver response. (Source: Author)
At 2KHz there was an audible whine. I upped the frequency to 4KHz, but once again the driver struggled, so it was back to 2KHz. I don’t think it will matter in the application, but time will tell.
So in summary I got a start pulse of 150mS, a PWM signal at 2KHz and PWM of 10%. The current went down from ~800mA to 76mA. Not bad!
Related Items and References:
DC Relay Coil Power Reduction Options (scroll down to find link)
Proper Coil Drive is Critical to Good Relay and Contactor Performance (scroll down to find link)