Sunteți pe pagina 1din 4

8/9/2017 AC Voltage Measurement using Arduino | Circuits4you.


AC Voltage Measurement using Arduino

May 13, 2016 Arduino Tutorials ac, ac voltage, ac voltmeter, arduino, code, high,
voltage, voltmeter
AC voltage measurement can be carried out by converting AC voltage into proportional DC Voltage
using rectifier and filter circuits. For low AC voltage (mili volts) measurement precision rectifier is used
as diode knee voltage is 0.7 Volt. Similar to DC voltage measurement Voltage divider is constructed
using 47K Ohm variable resistor R1. 5V zener diode is used to protect Arduino from accidental excess
voltages. Adjust the resistor R1 (47K) to calibrate the voltage. Here the AC voltage that we can give to
transformer is from 50V to 230V depending on its ratings. Rectified DC is fed to the voltage divider

Components Used for AC Voltage Measurement

1. 1N4007 Diodes Qty. 4
2. Arduino Uno
3. Connecting Wires
4. Step down transformer 230V to 6V
5. Variable resistor 47K Ohm
6. Capacitor 1uF 25V
7. 5V Zener Diode

Arduino AC Voltage Measurement Circuit

AC Voltage Measurement Circuit

Connect Arduino as per circuit shown in figure 2.5, make ground common for Arduino and circuit
shown in figure. Adjust the resistor R1 to get proper reading. When AC Voltage is 250V we get 5V

So calibration formula is

AC Voltage = (250/1024) * ADC_Value

In case if the voltage reading is fluctuating then increase the value of C1 from 1uF to 10uF.

Arduino Code for AC Voltage Measurement 1/4
8/9/2017 AC Voltage Measurement using Arduino |

1 /* Read AC Voltage 50 to 250 Volts -

2 Reads an analog input on pin 0, converts it to voltage, and prints the
3 result to the serial monitor.
4 Graphical representation is available using serial plotter (Tools >
5 Serial Plotter menu)
6 */
7 // the setup routine runs once when you press reset:
8 void setup() {
9 // initialize serial communication at 9600 bits per second:
10 Serial.begin(9600);
11 }
12 // the loop routine runs over and over again forever:
13 void loop() {
14 // read the input on analog pin 0:
15 int sensorValue = analogRead(A0);
16 // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 250V):
17 float voltage = sensorValue * (250.0 / 1024.0);
18 // print out the value you read:
19 Serial.print("AC Voltage: ");
20 Serial.print(voltage);
21 Serial.println(" Volts");
22 delay(1000);
23 }

Results of AC Voltage Measurement

Open the Serial Monitor from (Tools>>Serial Monitor), Set Baud rate to 9600, See the AC voltage
reading in serial monitor.

AC Voltage Measurement Result


DC Voltage Measurement DC Current Measurement ICL7107 Digital Voltmeter

using Arduino using Shunt Resistor September 17, 2016
May 13, 2016 May 13, 2016 In "Projects"
In "Arduino Tutorials" In "Arduino Tutorials" 2/4
8/9/2017 AC Voltage Measurement using Arduino |

4 thoughts on AC Voltage Measurement using


May 9, 2017 at 10:51 am

Pretty! This was an incredibly wonderful article. Many thanks for supplying this


May 22, 2017 at 12:13 pm

Its AC Current thats why

Manoj R.

March 16, 2017 at 6:32 pm

Is this circuit works lpc2148 microcontroller ? If yes,then how its programed.


November 9, 2016 at 3:31 am

Hello, will this circuit read as low as 10mv?

Dustin 3/4
8/9/2017 AC Voltage Measurement using Arduino | 4/4