Usually, in our homes, ac appliances run on single-phase AC voltage. And in India usually, a house is supplied with single-phase AC voltage with a voltage range of about 220-240 volts at 50Hz. AC voltage in its first half cycle starts increasing the voltage from 0 to 220-240 as its peak voltage and when it reaches the peak voltage it starts decreasing from 220-240 to 0. Now in the next half cycle, the voltage starts increasing but in the negative direction and ultimately reaches its peak (say -220v-240v) and again it will start decreasing and continue to reach zero voltage.

If we draw a graph of this voltage nature with respect to time. We will find it as a sine wave. So, usually, in Indian houses, the supplied voltage is a sine wave with a 220-240v peak and a frequency of 50Hz.

zero crossing

Now controlling AC voltage means we are trying to control the speed of a single-phase ac motor or trying to control the brightness of an incandescent bulb or any other task which needs to control the AC voltage. So, to control the voltage we can not chop off the required voltage. First, we need to know the zero point of the voltage which means to detect the AC voltage when it reaches the zero point. And when we get the zero point at that time we can chop the voltage as required. To detect zero voltage crossing we will need a zero voltage crossing detector. 

This is the main circuit of the project and needs to design it very carefully.

zero voltage crossing detector

Here we have a 12-0 transformer which step-down the 220 AC voltage to 12v. This 12v AC is fed to the full bridge rectifier circuit. As shown in the figure. And pin number 5 of the optocoupler(4N25) is connected to pin number 2 of the Arduino UNO board. Arduino UNO has two interrupt pins. Pin numbers 2 and 3 are the two interrupt pins. Here we are using pin 2.

OPTOCOUPLER or OPTO ISOLATER(4N25): 

4n25 ic

It is made up of a LED and a phototransistor. Its internal construction is shown in the figure. So whenever AC is at the proper voltage the output at pin number 5 is LOW. And when it crosses through the ZERO point, LED in the IC goes OFF and a HIGH pulse is generated at pin 5. And this HIGH pulse is used to trigger the interrupt(INT0) pin and the circuit is activated.   

OPTOCOUPLER or OPTO ISOLATOR(EL3021): 

moc3021

Its internal construction is shown in the figure.

Pin 1 and 2 are the anode and cathode of LED respectively. That means the voltage at pin 1 will decide the brightness of the LED and so the voltage across the thyristor. Pins 4 and 6 are used to trigger the gate of TRIAC(BT136).

Circuit used to control the voltage across the TRIAC pin as shown.

TRIAC(BT136) – TRIAC is a bidirectional triode thyristor/ bilateral triode thyristor. It is a three-terminal electronic component that conducts current in either direction when triggered from the gate terminal. 

voltage controlling circuit

 

Hardware Required: 

  • Arduino UNO
  • 6x2 LCD
  • MOC3021
  • 1N4007 diode
  • 4N25
  • ON-OFF Switch
  • Voltage regulator -7805
  • BT136
  • Wire to carry 2A,230v AC
  • 12-0, 1amp Transformer
  • Two-pin plug.
  • Bulb holder
  • PBT-2 terminal block
  • 6-pin IC base-2pcs
  • Resistors-10k, 3k3, 330, and 120 ohm
  • Bread Board for connection.

Software Requirements:

  • Arduino IDE (Download Link HERE)

 

Block Diagram:  



Circuit Diagram: 

ac voltage control circuit

According to the above circuit diagram, the major components of the circuit are:

  • Arduino Board
  • Power Supply
  • Variable Resistor
  • ON-OFF Switch 

The Arduino Board is the programmable unit that will be controlling the entire functionality of the circuit and every module will be interfaced with it. 

Power Supply: Arduino UNO required 5v DC voltage and it is provided by the USB cable itself. If you want to make it as a standalone you can use an external power supply which is designed with a voltage regulator 7805. 

Variable Resistor: A 10K ohm variable resistor is used to change the firing angle. One end of the resistor is connected to GND and the other to VCC and the third/middle/output pin is connected to the A0 pin of Arduino UNO.

ON-OFF Switch: Here you can use a toggle pin to start and stop. This switch is connected to pin number 7 of Arduino UNO. I am connecting this pin directly to GRND.

Download the complete source code: click here


Video Tutorial