Semiconductor relays

Copyright 1997,1998,1999 Tomi Engdahl

This document tries to collect information about semiconductor relays and semiconductor relay circuit to one document which would be useful to electronics professionals and hobbyist. This document is a collection of information from various sources and I have not been able to verify all information. Be aware that there might be errors in the schematics.

NOTE: This information is provided as a guideline only. All efforts have been made to ensure it is correct, but it is the responsibility of the user to verify the data is correct for their application.


General information

What is a solid-state or semiconductor relay?

Solid state relay and semiconductor relay are both names of relay like device which works like a normal relay. Those are usually called also with short name SSR. An SSR is a semiconductor device that can be used in place of a mechanical relay to switch electricity to a load in many applications. Solid-state relays are purely electronic, normally composed of a low current control side (equivalent to the coil on an electromechanical relay) and a high-current load side (equivalent to the contact on a conventional relay). SSRs typically also feature electrical isolation to several thousand volts between the control and load sides. Because of this isolation, the load side of the relay is actually powered by the switched line; both line voltage and a load (not to mention a control signal) must be present for the relay to operate.

An SSR contains one or more LEDs in the input (drive) section. The SSR provides optical coupling to a phototransistor or photodiode array, which in turn connects to driver circuitry that provides an interface to the switching device or devices at the output. The swithing device is typically a MOS-FET or TRIAC. The followign circuit diagrams show typical block diagrams of triac and FET based SSR circuits:

SSR based on TRIAC

SSR based on FET

What are general specifications of SSRs?

Semiconductor relays are quite common component nowadays but they are still quite expensive compared to their complexity. Typical semiconductor relay is basically quite simple circuit and you can see in this document. Modern components make it possible to build semiconductor relays using only few components and building them from components might sound a good idea sometimes (and can become cheaper). But remember that semiconductor relays which are used for controlling mains voltages must be constructed so that it is safe to use (commercial semiconductor relays are typically constructed safely).

Benefits of semiconductor relays

Many SSRs that accommodate AC loads incorporate "zero cross" circuitry. Several SSRs that incorporate TRIACs provide a built-in series-RC subber network to protect the TRIAC against line voltage surges. A snubber protects the TRIAC against small to moderate surges.

Bad sides of semiconductor relays

Electromagnetic relays usually an edge over SSRs in applications requiring extremely high voltages and currents. SSrs can't match the current-carrying capacity and low on-resistance of the biggest electromechanical relays.

Applying SSRs to circuits

Solid State Relays (SSRs) cannot always be applied in exactly the same way as Electromechanical (EMRs) and when such is the case, caution should be taken.

Typical technical specifications of semiconductor relays

Small current DC semiconductor relays

SSRs offer several desirable attributes for telecommunication applications. Small DC semiconductor relays are typically used in new modems to replace bulky line relays. Those small SSRs are typically housed in small 6-pi DIP package. They have typical LED input like every other optoisolator and the output is typically optocoupled MOS-FET section. Typical optocoupled FET driving circuit works so that the LED shines to many series connected photocells which make the control voltage to FET gate to make it conductive. The relay can be made to pass current to both directions using pair of MOSFETs in the relay output.

This kind of MOSFET pair used in small telecom relays can provide on-resistance in order of 10 ohms. Typically this kind of relays have 200-300V output ratings, can handle 100-200 mA of DC current and have isolation of 450 megaohms at 2 kV or 4 kV. One disadvantage of SSRs in this kind of telecommunication application is that they are more prone to be damaged because of overvoltage or overcurrent than their electromechanical relays. If you are using SSRs in telecommunication systems, you must usually provide extra protection against spikes and inductive kicks on the lines.

AC semiconductor relays for mains voltage controlling

AC semiconductor relays typically are constructed using TRIAC output stage and optocoupled triac driver. The triac output stages usually work at voltage range of 24-250V and can typically handled 1-4 A in small relays. There are larger relays available for higher currents (those typically need external heatsink). The TRIAC output stage in semiconductor relays typically has about 1-1.5V voltage drop when it conducts and this causes some heat generated inside the semiconductor relay (typically around 1.2W/A). Because the TRIAC output stage and some filtering components semiconductor relays have some leakage current when they are off (can be up to few mA).

Semiconductor relays typically work at 3-30V control voltage range and the input current is typically around 8-16 mA (the current does not typically change much over that voltage range).

The isolation voltage in mains controlling semiconductor relays are typically 2.5 kV or 4.5 kV. If there is bare metal for fitting heatsink, that is typically isolated from the relay electronics (check the datasheets to be sure about your relay type).

Commonly asked questions and answers to them

What does a zero-crossing turn-on circuit refer to?

Zero-crossing turn-on and turn-off refer to the point on the AC wave form when the voltage is zero. It is at this point that an AC SSR will turn on or off. When the AC circuit voltage is at zero, no current is flowing. This makes it much easier and safer for the semiconductor device in the relay to be turned on or off. It also generates much less electrical EMI/RFI noise.

Can I use an AC SSR to switch DC?

No. Because of the zero crossing circuit described above, the relay will most likely never turn on, and even if it is on, it will likely not be able to turned off, as DC voltage typically never drops to zero.

Can I use a DC SSR to switch AC?

No. If the DC semiconductor relay is polarized, it may break down and conduct for the portion of the waveform that is reversed in polarity. There are available also non-polarised semiconductor relays which can be used on DC and AC but those are more expensive.

Can a DC SSR be used to switch an analog signal?

This is not recommended at all, for several reasons. First, the voltage drop across the relay will cause signal loss. Second, the conduction characteristics of the SSR are very non-linear at low operating voltages and currents. Use a mechanical relay; it will work much better.

Can I hook up SSRs in parallel to achieve a higher current rating?

No. There is no way to guarantee that two or more relays will turn on simultaneously when operated in parallel. Each relay requires a minimum voltage across the output terminals to function; because of the optical isolation feature, the contact part of the SSR is actually powered by the line it switches. One relay turning on before the other will cause the second relay to lose its turn-on voltage, and it won't ever turn on, or at least not until the first relay fails from carrying too much current.

How TRIAC based semiconductor relay works?

TRIAC is a SCR which can operate in both current directions: from anode to cathode and cathode to anode. An SCR is a four layer diode. It has three terminals, the anode, cathode and gate. It is non-conducting from anode to cathode until a pulse of about 5-50mA is applied to the gate (referenced to the cathode). When the gate is pulsed, it turns on and conducts from anode to cathode until the current flowing through it drops below a certain level (usually about 20mA). Once turned on by a gate pulse, it cannot be turned off until current stops flowing through it.

Small ones come in TO-92 packages and can handle 500mA-1.5A. Most SCR's come in TO-220 packages and handle 4-8A, but larger ones in other packages are not uncommon. Very large SCR's can handle hundreds or even thousands of amps. Almost all SCR's and TRIACs will work at 100V and most are either 400V, 600V, 1000V or 1200-1500V.

How does DC semiconductor relays work?

DC semiconductor relays typically have a FET output stage which needs a control voltage to conduct. That control voltage is usually generated using the following method: the LED in control circuit shines to series of semiconductors which generate voltage from light (like solar cells). This generated voltage is sufficient to turn on the output FET. The picture below shows a circuit digram of basic DC semiconductor relay:

FET based DC semiconductor relay

The relay will pass DC current to both directions, because one fet is condictive in one direction when relay is turned on and the protection diode inside other FET will always pass the current through. Because this SSR passes DC to both directions, it can be also used for controlling AC. The commercially available products are more complicated than this, because they have typically a constant current circuitry in the LED input section and some type of current limiting on the output section.

Safety issues on mains powered electronics

Remember that the circuits deal with mains electricity which can be lethal if somebody gets in touch with it. So you should build the circuit so that the dangerous voltages are not present in any place which can be touched. You must also remember to have a good enough insulation between the low and high voltage sides of the circuit. The insulation must withstand the mains voltages plus possible overvoltages. So makes sure that the optocomponents can withstand at least 4 kV voltage and you have enough (creepage and clearance) distance between the mains side of the circuit and the low voltage side. The distance of high and low votage side should be at least 3 mm as absolute minimum between copper traces on circuit board on 230V circuits for class 1 equipments, but I recommend using more distance like 6 mm as used in class II equipments. Note that safety regulations on some countries ask even 8mm clearance between any "hot-side" conductor and any "logic-side" conductor. You will also have to ensure that all terminations are guarded from accidental shorting between AC and the control DC voltage.

If you can't make enough isolation distance below the optoisolator normally you have to bend the pins farther away from the IC case to make to the distance on the circuit board long enough to be safe. And remeber to use an optoisolator which have enough voltage rating. And remeber to clean the circuit board below the optoisolator well (get rid of soldering rosin and other dirt from soldering process).

On 230V side it is a good idea to keep 3 mm separation between mains carrying wires where ever this can be done to prevent arc-overs. The distance between mains wires can be smaller on some places like between the TRIAC pins. For example 1 mm might be enough if the circuit board is cleared well and hass good insulation on it.

Few topics which have effect how much safety distance you need between the mains carrying wires in the circuit board:

If you have all of those parts of the list done right, you can use 1 mm separation between two mais carrying wires on the circuit board. If those are not done right, then much longer distances are needed (up to 10 mm). Remember that 1 mm is never enough safety margin for isolation barrier. You should separate the low and high voltage sides of the circuit for more than 4 mm (preferably at least 6-10 mm) of clear circuit board between the traces. Remember that safety standards have regulations on the safety distances on circuit board in different applications. And remember that the arc-over usually happens also on component side which gets easily dirty when you clear the copper side.

Make sure that the tracks are wide enough to handle the operation current without overheating. Connect the wires to the circuit board using suitable connectors which can handle the mains voltage and carry the current. Use proper fuse in your circuit to protect the wires from melting on short circuit situation.

General safety instructions for constructing mains powered equipment

The European specs for household appliances often use 3mm for basic and 6mm for reinforced insulation. EN60950 is for IT and business equipment and has the reduced clearances of 2mm and 4mm for 220V.

The following safety notes are extracted from safety notes page published in nearly every Elektor Electronics magazine.

Class I

The insulation between mains and every touchable part must withstand 2120 V. The flashover distance between mains carrying parts and touchable parts must be >= 3 mm. All touchable condicting parts must be earthed.

Class II

The insulation between mais and every touchable part must withstand 4240 V. The flashover distance between mains carrying parts and touchable parts must be >= 6 mm.

Fuse ratings

The rating of the slow fuse should not be greater than 1.25 times the normal operating current. Fast fuse should be equal to the normal operating current. Use slow blow fuses where the circuit need to allow short surges.

Heating of the triac

Triacs have typically around 1V voltage drop over them when current passes through them. This means that the triac makes around 1W heat for every ampere going through it. That heat must escape somewhere or the triac will overheat. If the power generated by the triac is more than what the case itself can handle you must use a suitable heatsink (when installing heatsink rember that the triac case metal is live and it is usually a good idea to put some suitable electrical insulation between the heatsink and the triac case).

Typical triacs in TO220 and similar cases can handle typically around 1.5 amperes without heatsink. This means that you can control around 330W loads on 230V without putting the heatsink to the triac (no wonder why the popular dimmers have typical power ratings like this). Make sure that the triac has some free space around it for the heat to escape and the sometimes hot triac does not damage any other components. If you need to control more current then you need to put a suitable heatsink to the triac. A rule of thumb is to use at least 10 cm^2 heatsink area for every watt the triac generates in not very thighly populated case. For example for 10A triac circuit (2300V at 230V mains voltage) a 10 cm of 25 x 40 mm aluminium L-profile bolted to triac and circuit board is adequate.

For your safety is best to use heatsinks inside the case and make sure that they are isulated form the case. it is not a good idea to try to use the metal case as heatsink for the triacs, because this construction is very hard make to meet the safety regulations.

Do the mechanical construction well

The equipment must be sturdy: repeatedly dropping it onto hard surface from a height of 50 mm must not cause damage. Greater impacts must not loosen the mains transformer and other important components. Do not use flammable materials that may emit poisonous gases. Keep the mains carrying parts and wires away from ventilation holes. Use double pole power switch which cuts both live and neutral wires when power is turned off. Make also sure that all wires which enter and leave the circuit are properly connected.

It is not a good idea to solder mains carrying wires directly to the circuit board: use solder tags or suitable connectors. The mains earth must be connected to other parts that need to be grounded by a yellow/green wire.

Safety issues on building the circuits

Because light dimmers are directly connected to mains you must make sure that no part of the circuit can be touched when it is operating. This can be best dealt by building the the circuits to small plastic box or otherwise insulate them. Remember also use wires which can carry the currents and are rated for mains voltages.

Remember to make circuit board so that the traces have enough current carrying capacity for the maximum load. Make sure that you have enough separation between PCB traces to widthstand mains voltage. Remeber to install correct size fuse for the circuit (fast acting if you want to give any protection to TRIAC). Make sure that all components can handle the voltages they face in the circuit. For 230V operation use at least 400V triac (600V better). The capacitor which is connected between the semiconductor relay circuit mains wires should be a capacitor which is rated for this kind of applications (those are marked with letter X on the component).

Remeber to use coil type which can handle the full load current without overheating or saturating. Use capacitors with enough high voltage rating. Make sure that the TRIAC has enough ventilation so that it does not overheat at full load.

Safety when testing

Before testing the circuit make sure that there are no short circuits on the circuit you build. Make sure that your circuit is properly fused. Use earth leakage switch (30 mA leakage current) or safety isolation transformer when you test the circuit. Do not touch any part of the circuit when it operates.

Using TRIAC as a switch or relay

TRIAC is an almost ideal component for controlling AC power loads with a high duty cycle. Using a TRIAC eliminates completely the contack sticking, bounche and wear assicuated with conventional electromechanical relays.

The circuit below shows how to use a TRIAC as a basic static switch:

                    100                          Load
              +----/\/\/-------------+-----------o   o-------> 120V
              |                      |                         Live
              |                      | MT2
              o                     +-+
      SWITCH \                    G | | TRIAC
              o                    /| | 
              |                   / +-+
              |                   |  | MT1
              +-------------------+  |
                                     +-----------------------> 120V
The circuit above provides random (anywhere in half-cycle) fast turn-on (< 10 us) of AC loads. When the switch is closed, a small control current will trigger the TRIAC to conduct. Then the TRIAC will conduct the current to the next zero crossing of mains voltage. In this way large currents can be controlled even with a small switch, because the switch will only have to handle the small control current needed to turn on the TRIAC. The circuit will work nicely with resistive loads If the switch is replaced with anyt remotely contrilled withc (like suitable optocoupler), the circuit will act like a semiconductor relay.

Resistor R1 is provided to limit gate current peaks. It's value should should be just greater then the peak supply voltage divided by the peak gate current rating of the TRIAC. So the value of R1 must be greater than the result of the following formula R = ((sqrt(2) * Vrms) / (Igtm)) - (Rload + Rswitch) where:

Notice that if R1 is made too high, the TRIAC may not trigger at the beginning of each cycle.

Selecting a TRIAC

You must select a suitable triac for your application. The triac must be able to handle the highest voltage present in the mains voltage. For 230V AC the highest voltage is around 325V, so select at least 400V triac model. If you think that you can expect inductive loads then 600V model is a safe choice.

The triac must also handle the maximum continuous current running though the circuit. If you want to make your circuit very reliable use a triac which has has double the current rating than you circuit is designed to handle. Some recommended triacs for light controlling applications are TIC246M up to 5A loads and TIC263M up to 10A loads.

You must also select a such triac which has a trigger current specification which your control circuit will need. If the control circuit does not give enough circuit to trigger the triac well, youl circuit will not work or will be unreliable.

TRIAC failure modes

In some cases the triac in your circuit can be dagamed typically because of overcurrent, overvoltage or too much heating. Triac failure modes can be either "blown open" or "blown short".

If the Triac blows open, all connections are opened up as the semiconductor material has failed catastrophically and the explosive force inside the device clears disperses the internal wiring.

If the Triac blows short, the shorts can be to any combination of the terminals. MT1 to MT2 (gate open), MT1 to gate (MT2 open), MT2 to gate (MT1 open) or MT1 and MT2 to gate.

There are normally no half-way houses in the failure modes. They go either fully short or fully open. The most common failure mode seems to be a short circuit.

Overvoltage protection

TRIAC circuits are sensitive to overvoltages. You must make your circuit so that the normal operation does not cause any excessive voltages (for example be careful with inductive loads driving). For 230V AC circuits it is a good idea to put 250V varistor to the circuit to protect the circuit against possible overvoltages.

Snubber components in TRIAC circuits

There may need to have snubber components around the RIAC to protect it from inductive kick-back when inductive load is switched off. Those snubber components are typically a small capacitor in parallel the TRIAC or compibination of resistor and capacitor. The use of triacs has been traditionally limited by their switching behavior in applications where there is a risk of spontaneous firing after conduction. In order to obtain the required reliability the designer must take a certain number of precautions: over dimensioning of the device, switching aid networks (snubber), significant margin of security of the junction temperature,etc.

Basic snubber circuit between the the triac main current carrying terminals (in parallel with the triac):

          ||       ____
        100 nF    150 ohm
        630V       1W 
This is just one example circuit and for best results you should test or calculate suitable snubber circuit values for your application. The subber circuit values depend on triac characteristics, load to ben controlled and the power handled by the circuit.

Various values are often used for example:

There are some general rules how the component values for this kind of circuit are determined. The following description is a simplification of the process of determining the right values:

The resistor needs to withstand significant pulse power, so carbon composition resistors or (non-inductive) wirewound resistors are normally specified. The CC types can be a little hard to find these days.

Same type of smubber circuits are also sometime used across switches and relay contacts when used with ac inductive loads (motors for example) to suppress arcing of the contacts.

Some modern TRIACs (called SNUBBERLESS TRIACs) do no need any snubber circuits to work reliably. Those SUBBERLESS triacs are very useful in semiconductor relay circuits because they provide very easy semiconductor relay construction without the problems of matching the snubber circuit to variable load conditions.

More information about this subject is available at SGS-Thomson Microelectronics application note AN439 "IMPROVEMENT IN THE TRIAC COMMUTATION" which can be downloaded at

Overload protection

Simple overload (overcurrent) protection for semicondictor relay is not hard. You can simply use a normal fuse for this and it is also a good idea to select a triack which can handle more current than the fuse rating to be safe. This kind of fuse will protect the relay on situations like too much load applied to output, but not against short circuits.

Short circuit protection is much harder than simple overload protection. You need some way to limit inrush current or find a triac which can withstand the short circuit situation without damage so long that the fuse blows.

You can use a more appropriate fuse (faster and more expensive) and/or use an over-rated triac. Fast, "Semiconductor Fuses" are the only reliable way to protect SSR's. They are also referred to as current-limiting fuses, providing extremely fast opening while restricting let-through current far below the fault current that could destroy the semiconductor. This type of fuse tends to be expensive, but it does provide a means of fully protecting SSRs against high current overloads where survival of the SSR is of prime importance.

An I2T fuse rating (ampere-squared seconds) is useful in aiding in the proper design of SSR fusing. This rating is the bench mark for an SSRs ability to handle a shorted output condition.

Look at the I squared t figures for the fuse and triac, if the fuse has no such specification then it probably is not suitable. Every SSR has an I�T rating. The procedure is to select a fuse with an I�t let-through rating that is less than the I�T capability of the solid state relay for the same duration.

You must find a triac with an I�t rating that is better than the fuse. You may end up considering the fuse a circuit protection and the triac is another "fuse", considering the high cost of semiconductor rated fuses and the real possibility the user may bypass the fuse when they find they are expensive or hard to get.

Devices such as electromechanical circuit breakers and slow blow fuses cannot react quickly enough to protect the SSR in a shorted condition and are not recommended. Fast blow type fuses may be appropriate for some applications.

Foolproof short circuit protection is extremely difficult to do with triacs. Most short-circuit proof outputs use power MOSFETs for switching. FETs require additional circuitry for use on AC, e.g., a bridge rectifier, but they have also various advantages (reduced EMI, handle inductive loads better, etc.). Some commercial semicondutor relays are based on MOSFET outputs, but the desing of those is outside the scope of this document and I have not found good desing information on those.

Radio frequency interference details

Semiconductor relays which only conduct at zero voltage and disconnect at zero current do not cause serious radio frequency interference problems because there are not fast current changes.

If the circuit does not use zero crossing detector circuit and start in the middle of the phase can cause interference problems because the mains sine wave is chopped, which causes fast voltage and current changes. Those fast voltage and current changes cause high frequency interference going to mains wiring unless there are suitable readio frequency interference (RFI) filter built into the circuit. Circuits which start in the middle of the phase are used in light dimmer and motor speed control applications.

Different types of optocouplers for triggering triac

The non-zero-crossing optocoupler will activate at any phase difference between the outputs when the input is activated. That means if you activate the optocoupler while the voltage difference is at its maximum, it will activate, causing a large voltage and current changes (which can cause interference if not filtered properly). Inductive devices, like relays and motors, may not like this. Non-zero crossing optocouplers are useful fi you are building for example dimmers where you control the triac firing angle. MOC3010 and MOC3020 are typical non-zero-crossing optocouplers.

The zero-crossing optocoupler will not activate until the voltage differential between the outputs is zero. Even if you turn on the optocoupler while the voltage is at its greatest difference, it will not activate the output until the voltage differential is zero, therefore avoiding rapid large voltage changes. Commercial general purpose semiconductor relays typically use zero-crossing optocouplers. MOC3031 and MOC3041 are typical zero-crossing optocouplers.

Circuits for driving optocouplers

Semiconductor relays use optocouplers for isolating the main side electronics form low voltage side. The LED in the optcoupler has to be driven in the current which it is rated to to make the circuit work reliably.

Simplest circuit example

The simplest way to get the right curretn going through the LED in the optocoupler is to use current limiting resistor calculated from the control voltage and the current the optocoupler needs. The formula for current limiting resistor resistance (in ohms) is:

R1 = 1000 * ( Uinput - 1.3V ) / controlcurrent

In the formula above the 1.3 V comes from the voltage drop over typical LED used in optocouplers. The circuit for current limiting resistor is very simple:

+---/\/\/\----------+   +----
+Vin               1|   |6      
                   |     | TRIAC
                   |     | Driver
                   2|   |4       
+-------------------+   +----        

Single resistor current limiting circuit is very simple and useful when you know the voltage you are using for controlling. The problem is that if the voltage changes much, the LED will get too little or too much current.

Constant current driving circuits

Commercial semiconductor relays are typically designed to handle quite large input voltage ranges (typically 3-30VDC) to make them easy to use and universal. Because the large voltage range single resistor current limiting is not adequate and has to be replaced by some circuitry which generates constant current (not depending on input voltage) though the optocoupler LED. If you re just building semiconductor relays for your own circuits, then constant current drive is seldom necessary.

LED current limiting circuit

The following simple transistor based circuit limits the current passing through optocoupler LED by using transistor as a current shunt. When the voltage over R2 becomes greater than 0.7V the transistor

+---/\/\/\----+-----+   +----
+5VDC         |    1|   |6      
              |    +=====+      
              |    |     | TRIAC
              |    |     | Driver
              |    +=====+       
         T1   \    2|   |4       
       2N3904  |----+   +----        
              /     |   
             V      \   
             |      / R2
             |      \ 43
             |      /   
             |      |   

Constant current source using transistor

Transistor based constant current source for driving optocoupler. The current can be controlled by changing the value of R2:

R2 = 0.7 V / controlcurrent

+------------+------+   +----
             |     1|   |6      
             \     +=====+      
        R1   /     |     | TRIAC
        4K7  \     |     | Driver
             /     +=====+       
             |     2|   |4
             |     /    +----
             +----|  2N3904
             |     \   T1
    D1      _|      V
   1N4148   \/      |   
            --      \   
    D2      _|      / R2  
   1N4148   \/      \ 43
            --      /   
             |      |   

Constant current source using FET

Constant current source can be built quite easily using BF256 FET. The correctly connected to the circuit it works by itself as very useful constant current source. Thus behavior has been used in many LED driving application where the operaton voltage changes. BF256 circuit can be used successfully with voltages from 3V to 30 V.

+Vin               D|
                  |-+ T1
                G |   BF256
               |   S|        
                    |   +----
                   1|   |6      
                   |     | TRIAC
                   |     | Driver
                   2|   |4       
+-------------------+   +----    

There are different currents the BF256 FET can give depending on the component version used. The following table will show the typical current values you will get:

Part    Typical currrent you get
BF256A   5 mA
BF256B   10 mA
BF256C   15 mA
This current limiting idea was taken from an old Elektor Electronics circuit book and article T. Giesberts: Passive VU Meter, Elektor Electronics, February 1996, pages 40-41. The example circuits used BF256 to limit the current of normal LED, but it can be as well used with optocoupler LEDs.

Constant current driving using voltage regulators

If you don't want very low voltage operation, you might also try to use standard voltage regulator ICs (7805, LM317 etc) for generating constant current. There are different wiring schemes which can be used for making this (the datasheets usually have constant current source schematics and formulas).

Constant voltage regulator followed by resistor current limiter

One simple idea is to use for example 7805 regulator to generate constant +5V output and then use a resistor calculated for +5V operation between the +5V IC output and the LED. The circuit needs input voltage in range 7-35 V to operate correctly.

     +====+     R1
+----|7805|----/\/\/\----+   +----
+Vin +====+             1|   |6      
        |               +=====+      
        |               |     | TRIAC
        |               |     | Driver
        |               +=====+       
        |               2|   |4       
+-------+----------------+   +----         

You calculate the value for R1 using following formula:
R1 = 3.7V / ledcurrent

The formula is based on the fact that the diode will have around 1.3V voltage drop in it, so the resistor has to dissipate 5V-1.3V=3.7V.

True constant current regulator circuit

Another possible circuit is to wire a constant voltage regulator IC as true constant current source. The following circuit operates at voltage range of 5-35 V and used LM317 adjustable voltage regulator IC as current source.

     +=====+   R1   
+----|LM317|-/\/\/\--+---+   +----
+Vin +=====+         |  1|   |6      
        |            |  +=====+      
        +------------+  |     | TRIAC
                        |     | Driver
                        2|   |4       
+------------------------+   +----         
LM317 regulator has 1.25V reference voltage. So the regulator tries to keep the voltage over R1 constantly at 1.25 V so limiting the current to value I = 1.25V / R1. You can calculate the value for R1 using the following formula:
R1 = 1.25V / ledcurrent

For more details LM317 datasheet is available at

Protecting the optoisolator input circuits from reverse voltage

The circuit for driving the optoisolators are designed to work when the power is applied at the correct polarity. If the poser is applied on the wrong way the circuit and/or the optoisolator might be damaged (the led in optoisolator is rated only for 3V reverse voltage).

To protect the circuits agains reverse polarity inputl voltage� put a diode in the series with the positive input lead:

+Vin  _______|\|____ to circuit + terminal
Suitable diodes for this application are 1N4148 and 1N4001 (or any other general purpose diode). The diode adds about 0.7V to the voltage drop in the input.

Computer controlling circuits

Typical computer control outputs (centronics port and industrial I/O cards) give out TTL level output. For this type of applications it is necessary to have a circuit which takes TTL level input and controls the semiconductor relay circuits.

This circuit was originally designed by Jeffrey Weiss and is archived in many web documents. This circuit is a TRIAC-based solid-state relay circuit which is swithced on and off by transistor T1. The MOC3032 optotirac driver includes zero cross detector, so the circuit is always turned on and off at zero crossings.

+5VDC R1                      R2       R3
|    180                      180      2.2k
+---/\/\/\----+-----+   +----/\/\/-+--/\/\/\---+-------> 120V
              |    1|   |6         |           |         Hot
              |    +=====+         |           | MT2
              |    | MC  | TRIAC   |          +-+
              |    | 3032| Driver  |        G | | TRIAC
              |    +=====+         |         /| |
       T1     \    2|   |4         |        / +-+
       2N3904  |----+   |          |        |  | MT1
              /     |   +--------- | -------+  |
             V      \              |        |  |
             |      /              |        \  |
             |      \ 43    .01u  ---   10k /  |
             |      /       500V  ---       \  |
             |      |              |        /  |
             +------+              |        |  |            Neutral
             |                     +--------+--+---o    o--> 120V
    10K      / T2                                   load
 >-/\/\--|  2N3904

The MC3032 is an optoisolator TRIAC driver. The 180-ohm resistor sets the current for the LED emitter in the optoisolator. Change the value of this resistor - if necessary - to get reasonable current (e.g., 15 mA). The circuit built around transistor T1 is a current limiting circuit for the optoisolator LED.

Note that you cannot test this circuit without a load. The TRIAC will not switch unless connected to an AC voltage source, so you can't test it for simple switching w/o applying AC and a load. Note the 500V rating on the .01 cap.

Circuits with zero voltage starting semiconductor relay

MOC 3041 information

The MOC3041, MOC3042 and MOC3043 device consists of gallium arsenide infrared emitting diodes optically coupled to a monolithic silicon detector performing the function of a Zero Voltage Crossing bilateral triac driver. They are designed for building semiconductor relays, industrial controls and consumer appliances.


Recommended applications

Maximum ratings

LED trigger currents

Device   LED trigger current (max)

MOC3041    15 mA
MOC3042    10 mA
MOC3043     5 mA
Typical LED forward voltage is 1.3V (maximum 1.5V).

Example circuit from datasheet

     R1                       R2
+---/\/\/\----------+   +----/\/\/-------------+------------+----------> 240V
+Vin               1|   |6                     |            |            Hot
                   +=====+ IC1                 | MT2        | 
                   | MOC | TRIAC              +-+           |
                   | 3041| Driver           G | | TRIAC     |
                   +=====+                   /| |           |
                   2|   |4                  / +-+           |
+-------------------+   |                   |  | MT1        \
Ground                  +-------------------+  |            / R3
                                            |  |            \ 39
                                            \  |            /
                                      R4    /  |            |  C1
                                      330   \  |           --- 10 nF
                                            /  |           --- 400..600V
                                            |  |            |              Neutral
                                            +--+------------+----o    o--> 240V

The resistor R3 and capacitor C1 are for snubbing of the triac and may or may not be necessary depending upon the particular triac and load used.

MOC3041 based semiconductor relay circuit

     R1                       R2
+---/\/\/\----------+   +----/\/\/-------------+------------+----------> 230V
+Vin               1|   |6                     |            |            Hot
                   +=====+ IC1                 | MT2        | 
                   | MOC | TRIAC              +-+           |
                   | 3041| Driver           G | | TRIAC     |
                   +=====+                   /| | TIC226D   |
                   2|   |4                  / +-+           |
+-------------------+   |                   |  | MT1        \
Ground                  +-------------------+  |            / R3
                                            |  |            \ 39
                                            \  |            /
                                      R4    /  |            |  C1
                                      330   \  |           --- 10 nF
                                            /  |           --- 400..600V
                                            |  |            |              Neutral
                                            +--+------------+----o    o--> 230V
                                                                Max. 1750W

IC1 MOC 3040 or MOC 3041 TRIAC TIC 226D (use 600V model TIC 226M for indictive loads) R1 330 ohm (for 12V control voltage and MOC 3040).

MOC3041 enables construction of simple semiconductor relay: the ICs have internal zero crossing detector and provide 7.5 kV isolation. The output of IC is photodiac type (100 mA / 400 V at 25 celsius). MOC 3040 need 30 mA control current and MOC 3041 needs 15 mA control current. This means that for 12V input control voltage R1 must be 330 ohms for MOC 3040 and 680 ohms for MOC 3041. For other input voltages calculate correct value for R1 using formula:
R1 = 1000 * ( Uinput - 1.3) / controlcurrent

The circuit can handle currents up to 8 A if the thyristor is properly cooled.

Source: 302 Circuits, Elektor Electronics Publishing, pages 14-15

MOC 3020 based semiconductor relay circuits

Technical information about MOC3020 optodiac

MOC 3020 is an optocoupler IC designed for triggering TRIACS. This component is very widely used an can be quit easily obtained from many sources. The following information is taken from MOC3020 THRU MOC3023 OPTOCOUPLER/OPTOISOLATORS Data Sheets by Motorola (this documents contain only selected parts of the technical specs). Nowadays those former Motorola components are supplies by QT Optoelectronics.


Absolute maximum ratings

Input trigger current

Component   Current
            Typical Max
MOC3020     15 mA   30 mA
MOC3021      8 mA   15 mA
MOC3022      5 mA   10 mA
MOC3023      3 mA    5 mA
The forward voltage drop at the the optocoupler LED is typically 1.2V (at 10 mA current, 1.5V maximum).


  CATODE |     | TRIAC SUBSTRATE (do not connect)
      NC |_____| MAIN TERMINAL

Selected example circuits from datasheets

Resistive load circuit

     R1                       R2
                              180                          Load
+---/\/\/\----------+   +----/\/\/-------------+-----------o   o-------> 220V
+Vin               1|   |6                     |                         Hot
                   +=====+ IC1                 | MT2         
                   |MOC  | TRIAC              +-+           
                   |3020 | Driver           G | | TRIAC     
                   +=====+                   /| |                      60 Hz
                   2|   |4                  / +-+           
+-------------------+   |                   |  | MT1        
Ground                  +-------------------+  |            
                                               +-----------------------> 220V

Inductice load with sensitive gate triac (Igt =< 15 mA)

      R1                      R2       R3
                              180      2.4k       load 
+---/\/\/\----+-----+   +----/\/\/-+--/\/\/\---+--o   o-----> 220V
              |    1|   |6         |           |              Hot
              |    +=====+         |           | MT2
              |    | MOC | TRIAC   |          +-+
              |    | 3020| Driver  |        G | | TRIAC
              |    +=====+         |         /| |
       T1     \    2|   |4         |        / +-+
+-------------------+   |          |        |  | MT1
                        +--------- | -------+  |
                                   |           |
                             C1    |           |
                            100nF ---          |
                            500V  ---          |
                                   |           |
                                   |           |             Neutral
                                   +-----------+-----------> 120V
For non-sensitive TRIACs (15 mA < Igt < 50 mA) change the resistor R1 to 1.2 kohm and C1 to 200 nF.

Circuit from 302 circuits book

This is circuit without zero crossing detector, so this can be used as part of a light dimmer circuit. The circuit is only designed for driving non-inductive loads (light bulbs). You should use 3.15A fuse to protect the output triac.

     R1                       R2
     180                      1K                
+---/\/\/\----------+   +----/\/\/-------------+------------+-----------> 230V
                   1|   |6                     |            |             Hot
                   +=====+ IC1                 | MT2        | 
                   | MOC | TRIAC              +-+           |
                   | 3020| Driver           G | | TRIAC     |
                   +=====+                   /| | TIC226D   |
                   2|   |4                  / +-+           |
+-------------------+   |                   |  | MT1        |
                        +-------------------+  |            |
                                            |  |            |
                                            \  |            |
                                      R4    /  |            |  C1
                                      1K    \  |           --- 100 nF
                                            /  |           --- 400V
                                            |  |            |              
                                            |   )           |
                                            |  (   L1       |
                                            |   ) 50..100   |
                                            |  (    uH      |
                                            |  |            |              Neutral
                                            +--+------------+----o    o--> 230V
IC1     MOC 3020 or OPI 3020
The circuit is based on the main switching section of constant light source circuits shown at: 302 Circuits, Elektor Electronics Publishing, pages 296-298.

Another MOC 3020 based circuit

This circuit is a part of Velleman light organ kit (taken from Velleman-kit K5202 3-channel soundlight manual). The circuit controls up to 2A of AC current (440W load) and takes 12-15V input control voltage. The circuit is very typical triac control circuit using MOC 3020 (or compatible) optodiac and typical TRIAC. The circuit has a radio frequency interference filter built from L1 and C1.

     R1                       R2
     330                      470                               Load     Hot
+---/\/\/\----------+   +----/\/\/-------------+-------------+--o   o--> 230V
+                   |   |                      )             |  440W Max
                    |   |                     (   L1         |
                    |   |                      )  50 uH      |
                    |   |                     (   6 A        |
                   1|   |6                     |             |           
                   +=====+ IC1                 | MT2        --- C1
In                 |MOC  | TRIAC              +-+           --- 100 nF
12-15V             |3020P| Driver           G | | TRIAC      |  250 VAC
                   +=====+                   /| | Z0409      |  500 VDC
-                  2|   |4                  / +-+ Q6004      |      
+-------------------+   |                   |  | MT1         |
                        +-------------------+  |             |
                                               |             |
                                               +-------------+---------> 230V
The kit does not normally include the filtering components L1 and C1. The circuit is not normally built without it. The circuit looks very simple without the filtering components:
     R1                       R2
     330                      470                          Load
+---/\/\/\----------+   +----/\/\/-------------+-----------o   o-------> 230V
+Vin               1|   |6                     |           440W Max      Hot
                   +=====+ IC1                 | MT2         
In                 |MOC  | TRIAC              +-+           
12-15V             |3020P| Driver           G | | TRIAC     
                   +=====+                   /| | Z0409, Q6004, ...   
                   2|   |4                  / +-+           
+-------------------+   |                   |  | MT1        
Ground                  +-------------------+  |            
                                               +-----------------------> 230V
NOTE: If you plan to use filtering you must install both L1 and C1 or you will damage the TRIAC.

Using normal optoisolator to make semiconductor relay

This is the output configuration used in Velleman triac output card K2604. This relay card can control 1.5A current without heatsink and 4A with heatsink attached. This circuit does not have any zero cross detector in it so it can connect at any mains voltage phase.

     R1                                      PSU GND
     820                                       |           Load
+---/\/\/\----------+   +----------------------+-----------o   o-------> 230V
+Vin               1|   |5                     |           440W Max      Hot
                   +=====+ IC1           +-+   | MT1         
In                 |     | Optoisolator  | G\  |          
10-15V             |4N27 | Driver        |   -----  TRIAC     
(10 mA current     +=====+               |   /\ \/  Q6004F31 or TO202AB
      LED          2|   |4               |   -----           
+-----|<|-----------+   |                |     | MT2        
Ground                  \ R2             /     |            
                        / 12K            \     |            
                        \                / R4  +------------------------> 230V
                        /                \220R                            Neutral
                        |                |      
                        |                /  T1
                        +---------------|   BC547
                        |                \
                        \                 V
                        /  R3             |
                        \  10K            |
                        /                 |
                        |                 |
                        +-----------------+---- -9V
The circuit needs 9V power supply to power the triac driver circuit. This circuit needs 55 mA current from the 9V power supply. The TRIAC specifications are 4A 600V and Igt=10mA.

Transformer isolated semiconductor relays

It is also possible to isolate the control signal using isolation transformer which has good enough isolation (2-4 kV depending on application). Pulse transformers have been used for TRIAC tigger far longer than optoisolators because they are quite suitable for passing the trigger pulse and still providing the necessary isolation. Nowadays the pulse transformers are largely replaced by cheaper and more compact optoisolators.

The following circuit is a simple one channel light organ which turns on and off the light depending on the audio AC voltage feed to the circuit. When high enough voltage pulse goes to the circuit, the TRIAC triggers to conduct for one AC phase. For keep in continuously on a constant AC voltage or pulses at every AC phase must be put to the control input. Potentiometer R1 adjusts the sensitivity of the circuit.

                                                       Load     Fuse 1A
+-------------------+   +-------------+--------+-------o   o----|===|---> 230V
                    |   |             |        |       220W Max           Hot
                     )|(           \  |    _   | MT1         
AC control      500  )|(  500      /<-+   | \ +-+           
voltage         ohm  )|(  ohm      \  R1  |  \| | TRIAC     
                     )|(           /  10K |   | | 200PIV              
                    |   |          |      |   +-+           
+-------------------+   +----------+------+    | MT2        
                     TR1                       |
                 Isolation transformer         +-----------------------> 230V
I saw this circuit on one circuit collection book. It was mentioned to be originally from Hands-on Electronics magazine. The circuit is quite similar to the one show at

SSR Troubleshooting tips

There is no normal mode of failure for SSRs. Most of the time, they just stop working, by refusing to turn on or off. Often, an improper installation is to blame for an SSR failure, as these are very simple, reliable devices. If you have a failed SSR, it is important to look at the normal operating parameters of that relay within the larger system to make sure that the relay being used is appropriate to the application, and that the relay is being properly installed in the system.

The three most common causes of SSR failure are as follows:

How can I test my SSR?

It is not possible to test an SSR by the same methods used to test mechanical relays; a typical SSR will always show an infinite impedance to a resistance meter placed across the output terminals. To test an SSR, it is best to operate it at the actual line voltage it will be used at, driving a load such as a large light bulb.

The load turns on okay, but never seems to turn off, unless I remove power from the relay entirely. What might be happening?

This is normally a problem when using an SSR with a high-impedance load, such as a neon lamp or a small solenoid. Loads like these often have relatively large initial currents, but relatively small hold in currents. The result is that the off-state leakage current through the relay (see previous section) is insufficient to cause the load to turn on to start with, but sufficient to keep it on, once started. The solution to this is to place a power resistor, sized for 810 times the rated maximum leakage current for the SSR in parallel with the load.

SSR turns on okay once, but will not turn on again. What is the problem ?

Some solenoids, some types of halogen lights, and some types of strobe lights incorporate a diode in series with the coil or filament. This causes the light to behave as a half-wave rectifier. Quite many semiconductor relays have built-in R-C snubber circuit in parallel with the output. The capacitor in this circuit charges up, but cannot discharge through the series diode, causing some voltage to appear across the SSR terminals. Because the SSR must see a zero voltage across the terminals to come on, it cant turn on again in this situation. The solution here would be to put a high-value resistor (several tens of Kohms) across the terminals of the relay, to allow the capacitor to drain its charge

Companies which make solid state relays

Note: This manufacturer list is not any complete list of companies which make solid state relays. If you know a company which should be added to this list then e-mail me telling that you want to add the information to this semiconductor relays document.

Information sources

Tomi Engdahl <>