OwenDuffy.net 


Coax Relay Driver

This article describes a microcontroller based driver for alternative coaxial relays such as some pulse latching relays and Y relays.

Conventional coaxial relays operate much like conventional relays in that when electric current flows in the single coil winding, it attracts an armature that in turn operates a change over coaxial switch.

There are alternative designs that have certain advantages, but offset by a more complex operating paradigm. Examples are:

Both of these relays have two coils, and are available in a range of configurations. In the simplest configurations, both relay coils are available to the end user for operation.

Alternative coaxial relays

Pulse latching coaxial relays

The pulse latching relay uses a permanent magnet in the magnetic circuit, and a rocking armature. Current in one of the actuator coils pulls the armature to the associated pole face and it is held against the pole face by the flux from the permanent magnet, even after coil current is interrupted. Operation of this relay involves pulsing one or other of the coils as required to set the relay in the desired position. Some of these relays have separate indicator contacts to signal the position of the relay armature.

Ad advantage of this type of relay is that it only draws current for a short duration to change the state of the relay. Offsetting that is the complexity of the control circuit. Relays of this type are available new at reduced prices.

Figure : Dowkey 402 Series relay

An example of this type of relay is the Dowkey 402 Series Pulse Latch Coaxial Relay, see Figure 1.

Figure 2: Electrical circuit of the 402 series relay

Figure 2 shows the electrical circuit of the 402 series relay.

There are some versions of these relays that contain an integral controller to facilitate stateful control (eg PTT control) of the relay. If you are buying these relays, you need to be sure of the electrical / mechanical configuration.

Transco Y relay

The Transco Y relay is a design optimised for its RF performance, and requires two coils that operate independent contacts between the common port and the output port(s). The relay offers not only excellent RF performance, but some flexibility in make-before-break or break-before-make operation at the user's desire. A disadvantage is that this relay requires current in one or other of the actuator coils for operation. Offsetting the excellent RF performance and flexibility is the complexity of the control circuit. Relays of this type are available new at reduced prices.

Figure 3: Transco 11x00 relay
 

Figure 3 shows a Transco 11x00 series Y relay.

There are some versions (#1) of these relays that effectively contain a NO and NC actuator contact pair  so that magnet current is only required for one state but at the disadvantage of higher current in that state, and when used in a fail-safe configuration, it is the receive state (most of the time) that may require around 12W of power.  There are also versions with two NC actuator contact pairs, so that magnet current is required in each state. If you are buying these relays, you need to be sure of the electrical / mechanical configuration. (This driver should suit the 2 x NO and 2 x NC contact/actuator configurations - see data sheet.)

Coaxial Relay Driver

This article describes a flexible microcontroller based driver for these two-coil relays (pulse latching and simple Y relays) that converts stateful drive (eg PTT, ON/OFF control) to the required magnet drive, and provides a status signal based on either the indicator contacts (where provided) or stateful interpretation of the drive with a user configurable delay.

Design

Design criteria:

MCU selection

The PIC 16F628 was chosen for the following features:

Prototypes

Code was developed to implement the design concepts, resulting in around 700 lines of PIC assembler, and around 500 program words.

Figure 4: Prototype for code development and testing

Figure 4 shows the first prototype use for proving the software and hardware design. This prototype was designed for deployment physically close to the coaxial relays, and uses opto-isolators on the control input and status outputs, and power FET coil drivers, and includes a rectifier / filter and regulator to enable ELV AC power supply to the controller.

Figure 5: Prototype schematic (click on picture for full size)
  

Figure 5 is a schematic of the prototype, click on the image for a larger picture and use the zoom feature in your browser to see the schematic at full resolution. Note that a RESET momentary switch should also be connected from PIC pin 4 to ground.

Table 1: PIC Pin usage
Function Designation PIC pin
Relay 1 Control R1I 10
Relay 1 Status (Alarm) R1A 15
Relay 1 Coil A R1CA 17
Relay 1 Coil B R1CB 18
Relay 1 Feedback A R1FA 6
Relay 1 Feedback B R1FB 7
Relay 2 Control R2I 11
Relay 2 Status (Alarm) R2A 16
Relay 2 Coil A R2CA 1
Relay 2 Coil B R2CB 2
Relay 2 Feedback A R2FA 8
Relay 2 Feedback B R2FB 9

Table 1 sets out the allocation of PIC port pins to functions.

Controller power requirements are extremely low, dominated by the current drawn by LEDs, and opto isolator LEDs, or relay current in the case of non-latching relays. The design is capable of supplying relays of either 12V or 24/28V types, given a suitable ELV AC power transformer. The rectifier / filter / regulator  handles up to 35VDC, 24VAC RMS, the microcontroller runs from 5VDC.

Figure 6: Second prototype for code development and testing
  

Figure 6 shows another prototype using darlington output drivers on relay outputs and status outputs, and designed for DC operation (ie without rectifier / filter).

Figure 7: Second prototype schematic
 watch this space......................................................................................................

Figure 7 is the schematic of the second prototype.

Menu / configuration

Key configuration data is held in EEPROM, and is user accessible via a simple configuration menu using a single menu button and LED along with the reset button. This allows changing the configuration data stored in EEPROM without recourse to other equipment.

The menu is activated by holding the Menu key in while pressing and releasing the Reset key. 

The LED will flash once per second indicating the menu option, and the Menu key is then released at the desired number of flashes. The Menu key is sample at the end of the LED flash. For second level menus, the Menu key is pressed again and released at the desired number of flashes.

A quick flashing LED indicates an error (typically an invalid option) or completion. Some menu functions indicate that they have completed by turning the LED on steady. Press reset to resume normal operation. To abort menu selection, just press reset.

Table 2: Top level configuration menu
Option Function
0 Restart
1 Set EEPROM to pulse latching defaults
2 Set EEPROM to Y defaults
3 General config nibble
4 Input inversion mask
5 Relay 1 pulse duration byte (inc=2ms)
6 Relay 1 status delay 1 duration byte A->B (inc=2ms)
7 Relay 1 status delay 2 duration byte B->A (inc=2ms)
8 Relay 1 config nibble
9 Relay 2 pulse duration byte (inc=2ms)
10 Relay 2 status delay 1 duration byte A->B (inc=2ms)
11 Relay 2 status delay 2 duration byte B->A (inc=2ms)
12 Relay 2 config nibble

Table 2 shows the top level menu options.

Nibble values are entered as a single selection of 0 to 15, being 1 to 16 LED flashes. Enter  bytes as two nibbles (0-15), MSN first.

Table 3: General configuration bits
Bit Description
0 SLEEP
1  
2  
3  

Table 3 shows the general configuration bits.

The SLEEP option causes the MCU to go to SLEEP when all current timers expire. The SLEEP option is principally to stop the clock and so potentially reduce electromagnetic emissions. The processor will wake on change to the CONTROL pins for RELAY 1 and RELAY 2, but will not detect changes on the INDICATOR leads whilst it is in SLEEP.

Emissions from the on-board 4MHz RC clock are very low, and the default configuration is to not use SLEEP.

Table 4: Input inversion mask bits
Bit Description
0 R1FA
1 R1FB
2 R2FA
3 R2FB
4 R1I
5 R2I
6 Not used
7 Not used

Table 4 shows the input inversion mask bits.

Table 5: Relay configuration bits
Bit Description
0 PULSE
1 STATUS invert
2 STATUS from indicator contacts
3 STATUS is state

Table 5 shows the relay specific configuration bits.

Table 6: Default configurations
Item Pulse (Menu #1) Y (Menu #2)
General config 0x00 0x00
Input inversion mask 0x00 0x00
Pulse  0x19 (50ms) 0x19 (50ms)
Delay1 0x05 (10ms) 0x05 (10ms)
Delay2 0x05 (10ms) 0x05 (10ms)
Relay config 0x05 0x00

Table 6 shows the factory default configuration values. Standard programming initialises the chip's EEPROM values to the default Pulse configuration.

All inputs have approximately 10ms latency due to the de-bounce process, an input lead must present the same state on each scan over a period of about 10ms to be considered to be of that state.

The inherent de-bounce latency is important when setting the delay timers for synthesis of status, the delay times are additional to the latency due to de-bounce.

Sourcing parts

Programmed MCU chips may be available from the author for A$20 including postage within Australia, New Zealand, UK, and USA, postage to other destinations will depend on the destination. This is NOT a kit of parts, just a programmed PIC16F628. Please contact me to ensure that stock is available. Preferred method of payment is Paypal, and is the only option accepted for international payers.

Neither the binary or the microcontroller source code are available to end users.

Most other parts should be easily obtained, or easily substituted.

Configuration examples

Dowkey 402R-320132

Set the pulse duration time to 50ms, 25 x 2ms increments (nibbles are 1 and 9).

Set relay config bits for pulse drive, inverted output, status from feedback contacts,  all other bits are zero.

Configuration item Value
Relay pulse duration byte (inc=2ms) 1, 9
Relay status delay 1 duration byte A->B (inc=2ms) Not used
Relay status delay 2 duration byte B->A (inc=2ms) Not used
Relay config nibble 7

Transco 11100 Y relay

Set relay config bit for inverted output, all other bits are zero.

Set delay1 and delay 2 both to (16-10)ms, which is a count of 3 x 2ms increments

Configuration item Value
Relay pulse duration byte (inc=2ms) Not used
Relay status delay 1 duration byte A->B (inc=2ms) 0, 3
Relay status delay 2 duration byte B->A (inc=2ms) 0, 3
Relay config nibble 2

Dowkey 60-230142

Set relay config bits for status from feedback contacts, all other bits are zero.

Configuration item Value
Relay pulse duration byte (inc=2ms) 0, 25
Relay status delay 1 duration byte A->B (inc=2ms) Not used
Relay status delay 2 duration byte B->A (inc=2ms) Not used
Relay config nibble 4

Links

 

Changes

The version of an individual chip can be determined by reading the EEPROM in a device programmer, the version string is stored in the EEPROM at offset 0x20 following the eye catcher "CRD ".

Version Date Description
1.01 13/11/2006 Initial, CRD V1.01
1.02    
1.03    
1.04    
1.05    

© Copyright: Owen Duffy 1995, 2017. All rights reserved. Disclaimer.