Exclusively select 1 of N relays
This “one and only one” function is often implemented as mechanical switches in which an actuator (usually a movable metal bracket) is used to switch contact groups on and off. When any switch is pressed, this bracket first deactivates all switches, then activates the pressed switch.
These switches have a fixed and limited number of positions, and you may need more or less. Using the circuit below, you can make your own one-of-all switch. Contacts CG2 of all relays are used to control the external devices, and CG1 contacts form part of the switching circuitry.
An electromagnetic relay activates when coil current exceeds a value called the pull-in current. It deactivates when its current falls below the drop-out current.
A current instead of a voltage source forms the heart of the circuit. It provides current that is equal (or slightly exceeds) the pull-in current of any relay used in the switch.
Figure 1 Current source drives ‘one-of-all’ switch
The Zener diode, resistors R1-R3, and transistor T1 form a current source whose current value Irelay is determined according to the following equation: Irelay = (Vzen – 0.7V) / (Rii + R3), where Vzen is the Zener voltage and Ri + Rii = R2. For the circuit shown, Irelay varies from 17 to 55mA. Its value should be selected equal to (or slightly higher than) the pull-in current of any relay used in the switch, but lower than 2x the pull-in current value. It’s not difficult to adjust current source value to fit mentioned requirements.
At power-up, all relays are off, and the current source provides no current.
When you press, for example, SW1, Relay1 turns on since its coil is connected directly to the current source. Relay1 contact group CG1 provides self-locking of the relay. When SW1 is released, resistor R4 connects in series with the relay’s coil. But this does not change the value of the current that flows through the relay, since the circuit supply of 15V-30V is significantly higher than the relay voltage (5V).
When, for example, SW2 is pressed, the current provided by the current source now splits in two directions:
- Relay1 with resistor R4 connected in series
and is not enough to drive two relays at once. If R4’s value is high enough, current through Relay1 becomes lower than its drop-out value and it switches off. Now, Relay2 is the only circuit for the current from the current source, and it switches on.
To simplify calculations, let’s select all relays to be of the same type, and calculate the value of R4, R5, etc… For Relay1 and Relay2 current equations are as follows:
where i1 is current that flows through Relay1 coil
i2 is current that flows through Relay2 coil
r1, r2 are resistances of Relay1 and Relay2 coils
Ion is relay pull-in current
Of course, the ratio of Relay1 and Relay2 currents is inverse of the total resistance in each leg, i.e.,
This provides the basis for analyzing the circuit:
Case 1: Relay1 is on.
Then by formula (1), i1 = Ion; i2 = 0. Relay1 is on, and it consumes the whole current provided by the current source. Relay2 is off.
Case 2: Switching on Relay2 when Relay1 is on.
Let’s assume that all relays are identical (though this is not obligatory). This leads to the following equations (r = r1 & r2; R = R4 & R5):
As an example, the reed relay EDR202A0500 manufactured by ECE is rated for nominal voltage of 5VDC, has pull-in current equal to 27mA, and drop-out current equal to 6mA. Coil resistance is 140Ω.
Substituting these values in (5), we get:
We have got values confirming that our calculations are correct.
The circuit offered has its drawbacks:
1) When relay coil is connected in series with resistor of pretty big value, to ensure operation of the current source you need to use high voltage to power the circuit (15V-30V).
2) You need to use relays that have as low rated operational voltage as possible, for example 5V.
- Dual-coil relay driver uses only two MOSFETs
- Goodbye, hard-wired switches and circuits: We’ll miss you—maybe