Hi,
Is there a way to check the sine wave in zero crossing detector circuit without an actual Oscilloscope. Not about the price of buying one but i wouldn't have much use of it. Would it possible to check it with those mini oscilloscope.
From the zero crossing detector circuit i need to fire the triac just before the 90 degree curve.
Is this an Arduino question? The answer to your question is "it all depends". What is the frequency of your sine wave?
Paul
Well it is part of a project that i am planing to do in one of the post mentioned here. My mains are 220v 50Hz.
@Grimp_Mike
It will be to check the ac signal and the signal from Arudino to see how much i need to delay the firing of the TRIAC when the zero cross is detected. Like here
It will be to check the ac signal and the signal from Arudino to see how much i need to delay the firing of the TRIAC when the zero cross is detected.
I still don't see what is being checked. Checking involves taking one or more measurements and comparing them with the expected results. I don't see anything that needs checking here. This is just a statement of how phase controlled "dimming" ( or power control ) works.
Well it is part of a project that i am planing to do in one of the post mentioned ........
We had a guy here who tried for years to get a spot welding / Arduino system working and he failed due to the massive amount of interference it generates.
To fire a triac Microseconds after a zero cross is detected, we need to know when that is detected (that is done by Arduino) and to see it doing will need an Oscilloscope. The oscilloscope would show at part of the curve is the TRAIC fired. I want it to fire at 90 degrees, i could just randomly enter some numbers at the delay and HOPE it would be at that.
i could just randomly enter some numbers at the delay and HOPE it would be at that.
Or you could calculate it. For 90 degrees it is a quarter of a cycle.
You said:-
My mains are 220v 50Hz.
So that is a period of 1/50 = 20mS
Therefore you have to delay 20 / 4 = 5mS
The Arduino is quite good at doing things like that.
Ok Glad i made myself clear. Thanks for the math. What is the division by 4 ? could you please explain me that too.
What is the division by 4 ?
It is because 90 degrees is a quarter of the waveform, therefore it is a quarter of the whole wave period you want to delay by to reach 90 degrees.
Thanks for that. So for my project i would require two Pulse at 90 degree, first pulse for 50Milliseconds and a pause for 450ms then the second one at 250ms. I also have a 22ohm 50W resistor in series to the primary of the transformer.
So that is a period of 1/50 = 20mS
Therefore you have to delay 20 / 4 = 5mS
is the above unit in Microseconds ? then my first pulse should be 50,000ms.
is the above unit in Microseconds ?
No it is milli scecond, micro seconds is uS.
So for my project i would require two Pulse at 90 degree, first pulse for 50 Milliseconds and a pause for 450ms then the second one at 250ms.
No you are firing a TRIAC once it is fired it stays on until the next zero crossing. Given that you want 50mS you want to fire it immediate after the zero crossing for two consecutive times. Each zero crossing will be 25mS apart.
Yea thats how TRIACS are. Only the first pulse would be for 50ms long. So i fire the TRIAC 5ms and delay it 50ms and then pause for 450ms and fire the second pulse for 250ms.
So they switch off at zero degrees of a cycle. Now to turn them on again for the next pulse, that is the second pulse at 250ms do i straight away
digitalWrite(Relay, HIGH);
delayMicroseconds(250);
or
digitalWrite(Relay, HIGH);
delayMicroseconds[5ms]; //to start at the 90 degree of the curve
delayMicroseconds(250);
No you should synchronize this to the zero crossings I don't see that.
Why do you want to start at 90 degrees?
The 90 degree is where the max volt is and avoids sudden sparks when spot welding which is caused by the inrush current from the mains. Read that from here.
What is also wrong on that site is:-
Solid state relays with TRIACs will not work here, because the load is highly inductive. With inductive loads, an inverse parallel SCR control works far better than a TRIAC control.
Given that a TRIAC is simply two SCRs back to back I can't see that being true. It is true however that inductive loads are hard to turn off but that applies to both an SCR and a TRIAC.
Hmm not sure how much is true.
I am trying to bult something similar and that how i came to know about the zero crossing factor and thought i should incorporate that into my spot welder to control the weld time. So reading a lot stuffs i thought if we have a resistor in series with the primary of the transformer and a zero crossing detector (haven't yet for it but the one in here looks like something to go for. Would that be ideal to run an inductive load such as a transformer ?
Using an ISR there, all I do is change a Boolean, a flag - and get the heck out. With ISRs less is (always?) more.