I am doing a gate controller circuit for SCR. I will be needing a zero crossing detector from the main to detect the sine so I could synchronize with my arduino to fire the scr at the perfect time. But so far the i have tried using basic zero crossing circuits like comparator comparing the sine wave with a ground but to no avail. Any other suggestions?
There is a simple one using an XOR gate in this old issue of byte here:
http://www.strikequick.com/BYTE/BYTE%20Vol%2000-07%201976-03%20Cassette%20Interfaces.pdf
It is the bit-boffer on page 20.
I assume the input to your comparator is isolated from the AC? i.e. From the secondary of a transformer?
But so far the i have tried using basic zero crossing circuits like comparator comparing the sine wave with a ground but to no avail.
That's how I did it... Is the comparator "firing"? (Is the output changing state?) If the comparator is running from a single supply, it might not work near ground. If the comparator is running from positive & negative supplies, it should work fine and put-out a square wave.
If you have a single supply, you can set the reference voltage higher, and calculate when the actual zero--crossing occurs.
Actually, it's probably better if you set the comparator reference to around 45 degrees (half the peak AC voltage). The actual-exact zero-crossing is difficult to detect. If your detection circuit is detecting small voltages, a little noise on the AC line near the true zero-crossing can give you a false-trigger. The peak is even more difficult, since the AC voltage vaires a bit. Somewhere in-between is more ideal.