[time-nuts] Simple AC mains zero-cross detector
celephicus at gmail.com
Thu Dec 18 17:26:47 EST 2014
I actually needed to do real ZCD for thyristor switching off incredibly
noisy bad AC suppplies used down mines in third world countries. I used a
digital PLL to lock to the AC line volts waveform with a simple detector
with a threshold of 50V set by a zener driving an opto. I think the loop
time constant was set very slow, several seconds as the AC came from a
gererator so very slow to change as you have the inertia of the massive
armature in the generator. Logging this over several days on the mains
network showed it slowing slightly during the day and then speeding up at
night to give the right number of cycles per day. It was insensitive to
voltage. We did find that isolating the zener & opto via a transformer gave
a temperature dependant phase shift, exactly what you don't want for
Tom Harris <celephicus at gmail.com>
On 19 December 2014 at 08:16, Charles Steinmetz <csteinmetz at yandex.com>
> Gary <nuts at lazygranch.com> wrote:
> Why not use a lower voltage transformer, preferably not at a lethal
>> voltage. You only need a couple of volts to drive the rest of the
> As you can see from the schematic, the voltage is diode-clamped almost
> immediately to ~ +/- 1.5v. The reason for using a 120v winding is to take
> advantage of the free slope enhancement provided by the higher voltage.
> The 120v winding provides a signal with a zero-cross slew rate of
> ~65mV/uS. A 12v winding would slew only ~6.5mV/uS. The faster the slew
> rate, the more accurately one can locate the zero crossings.
> If you are going to look at glitches, that should be done by sampling
>> the AC (transformer coupled obviously). Basically the circuit to detect
>> period is dedicated to that function. Since the frequency won't vary
>> significantly, a high order filter wouldn't be an issue, as long as
>> you don't care about delay.
> You are suggesting two separate data collections, one geared toward grid
> frequency and one geared toward glitch detection. That's fine, and might
> be preferable if it provided better results than using just one data
> collection. But using a higher-order hardware filter does not provide
> better frequency determination than post-processing the ZCD data.
> The circuit presented allows one data collection to do both functions
> well. It has enough filtering to prevent local interference from
> corrupting the data, it can locate 60Hz zero crossings to within 1uS (i.e.,
> frequency resolution significantly better than 0.01 Hz, single-shot, which
> can be filtered/averaged to get whatever resolution you want in
> post-processing), and it can locate transient events to within 1uS.
> Best regards,
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/
> and follow the instructions there.
More information about the time-nuts