Isolated ZCD
Isolated ZCD
THE PROJECT
Modern electronic equipment are nowadays typically powered by switch-mode power supplies. Due to their high frequency operation, these PSU’s have no means
of providing mains frequency (and/or phase information) for the low voltage electronics circuitry on the se safe low voltage secondary side. Devices such as lighting
controllers, thermostats, motor drives and similar AC-load controlling or monitorin applications, often needs mains phase and/or frequency information. Adding
an old type iron core mains transformer for this purpose would be both expensive and clumsy. A suitable zero crossing circuit is often needed. This DIY project
presents one very clever variety of such a zero crossing detector, invented by the author.
Fig. 1 shows a low parts count and low power isolated ac-line zero-crossing detector circuit.
THIS CIRUIT
The circuit presented here produces constant and well defined zero crossing pulses,
centered symmertically around the zero crossings, using very little power and just a few plain vanilla components. The pulse length is virtually independent of the
mains voltage, is stable with temperature, and immune against component and optocoupler tolerances and aging. A perfboard prototype is presented in the picture.
http://www.dextrel.net/diyzerocrosser.htm 28-Jan-12
DIY ZEROCROSSER - Page 2 of 4
DETAILED DESCRIPTION
The zero crossing circuit consists of the voltage to current converting resistors R1-R2, full-wave rectifier diodes D1-D4, a voltage averaging and storing capacitor C1,
the opto-coupler U1, and transistor Q1 that functions as a voltage comparator. R3 provides base current for Q1, and doubles as an input voltage divider together
with resistors R1-R2. R4 limits and sets the current into the opto-coupler LED. D5 provides a proper charge current path for C1, preventing the reverse-biasing of
the Q1 b-e junction.
Transistor Q1 stays off during the majority of the mains cycle, during which C1 is charged via R1-R2 and D5. Q1 turns on and feeds current from C1 to the opto via
R4, whenever the mains voltage (divided by (R1+R2)/R3) is lower than the voltage across C1. The voltage across C1 will reach within about 400ms an equilibrium
that defines the final operating point. The voltage across C1 never exceeds 10 volts with the given resistor ratios. The voltage stabilizes at a point when the average
current charged equals the average current consumed. The typical pulse width is 1ms at 50Hz, and 0.83ms at 60Hz,when using the component values shown. The
output pulse width is fairly constant, independent of the designated AC-line voltage (90… 240VAC). This makes this simple zero crossing detector quite unique,
since the mains voltage does not affect the pulse width nor its position.
The circuit’s total power consumption is a mere 32mW at 120VAC, and barely 120mW at 240VAC. The majority of this power is dissipated in the input resistors R1
-R2. The peak current flowing into the optocoupler LED varies almost linearly with the mains voltage. This does not cause any inaccuracies to the zero crossing
function, as long as the opto-coupler output is always allowed to saturate - even at the lowest mains voltage. This factor determines the minimum allowed value of
the pullup resistor R5. The 4N35 optocoupler has a guaranteed CTR (Current Transfer Ratio) of 100%. If you use another optocoupler, please consider this when
calculating the minimum value for R5. You cannot increase the current fed into the optocoupler led by decreasing R4, if you do not at the same time decrease the
total resistance of R1 and R2 with the same ratio. The component values given here are optimized for the best signal quality at the lowest possible power
dissipation.
C2 forms a first-order low pass filter to deal with the real world noisy power lines. By decreasing the 1/f frequency of this filter you can deliberately delay the ZC-
pulse.
All components are low cost and low voltage types (<10V), with the exception that R1 and R2 must sustain each half of the maximum peak mains voltage (200
volts). R2 can be omitted if R1 alone can sustain the maximum peak input voltage. In this case use a 390kohm standard resistor. Splitting the input resistor into two
(halving the voltage handling requirement) makes it possible to use only SMD-components.
The oscilloscope screenshot shows the quality and symmetry of the output pulse. The "downhill" trace is the mains voltage at 20V/div vertical scale, zero volts is at
the sceen centerline. The other trace is the output with a 5V/div scale factor. The timebase is 500µs per division. The output pulse is beautifully symmertic arount
the mains zero crossing.
Even huge temperature variations have a minuscule effect on the zero crossing pulse, due to the “self-biasing” nature of the circuit. The tolerance of C1's
capacitance has no effect either. The circuit’s resistor ratios set mainly the operation point, and that is the reason is why the output pulse is almost temperature
independent.
The picture on the right is a simulated responce for two extreme mains voltages (100VAC...240VAC). You can see that the pulse width variation is minuscule, being
less than 100us over the whole mains voltage range. Real behaviour of the actual circuit is equal.
http://www.dextrel.net/diyzerocrosser.htm 28-Jan-12
DIY ZEROCROSSER - Page 3 of 4
By combining ZCD information with the triac drive status, you will be able to detect failures in driving a load. Any critical loads (such as alarm lights, traffic lights)
can benefit from load monitoring.
Running an 1-phase AC motor and knowing that the motor actually rotates can also easily be monitored by using two ZC detectors. This quite unique but simple
idea using only two simple ZC detectors can actually monitor many types of failures, including; open or short circuits in any widning or wires to the motor, open or
short circuits in the motor capacitor or its wires, relay, triac and fuse failures. Even a stalled rotor can be detected. Any of these failures will cause the motor not to
rotate, and this condition can be sensed as explained below.
You need a microprocessor to perform the logic, but the circuitry is othervice simple. To power the motor on or off, you can use the circuitry in Fig 2, and use Fig 3
as the load. It is recommended to use a triac to control the motor power, and a relay (preferably two) to control the direction of the motor (if needed). To prevent
relay contact damage the relay(s) should change state only when the triac is off and the motor standing still.
The first ZC detector that is connected straight across the input (between L and N) monitors the incoming voltage (and thus also checks the proper triac
operation and the availability of the mains voltage or blown fuses). The second ZC detector detects the zero crossing BETWEEN the motor phases. This ZC pulse is
time delayed from the mains zero crossing by a certain amount of time and depends on the motor inductance and motor capacitance tolerance. On a 50Hz mains
frequency the phase shift of typically 90 degrees would produce a delay of about 5ms. Both ZC signals should be connected to a microprocessor's input capture pins.
By teaching the microprocessor the time delay and it's allowed time variance, you can check with 100% certainty that the motor is rotating, even without any
tachomerty feedback from its axle. Any failure mentioned above would either cause the pulses from the ZC detector (between the motor phases) to be missing
completely, or the phase relationship referenced to the mains zero crossings to differ considerably. With the help of the microprocessor logic, you can thus build a
rotation failure warning system for any mains operated 1-phase motor.
Amazing what you can achieve with only a few creatively interconnected components!
http://www.dextrel.net/diyzerocrosser.htm 28-Jan-12
DIY ZEROCROSSER - Page 4 of 4
This ZCD can thus be used for other specific purposes, for example as a missing mains cycle detector, as a pulse-length discriminator, as a AC-load monitor, as a
mains fuse condition detector, as an AC-motor function monitor, to mention a few. Connecting the phase detector between the phases of a 1-phase motor will
produce somewhat higher voltages than the mains, and you have to make sure that the combined voltage and power rating of R1 and R2 is high enough.
This DIY page is still under construction. As usual, your feedback is more than welcome: SEND MESSAGE (http://www.dextrel.net/contact.htm)
http://www.dextrel.net/diyzerocrosser.htm 28-Jan-12