Phone

    00852-6915 1330
  • Contents

Introduction

Digital instruments called phasor measurement units (PMUs) detect the magnitude and phase angle of alternating voltage and current on an AC power supply. PMU analyzes the variables using sample rates. It offers an in-system measurement of electrical quantities in real-time. The internet may be used to tag and share information about magnitude and phase angle, making it possible to study the dynamics of power systems over a wide area. One of the most crucial measuring tools for power systems of the future is thought to be the PMU. Algorithms are used in this project to review the PMU specifications. These algorithms aid in computing the sinusoidal signal's magnitude and phase angle.

 

Materials Required:

  • Arduino Uno
  • Current Sensor ACS712
  • DC Regulated Power Supply
  • LCD Display
  • Relay Driver Circuit
  • AC Bulb  220 V 100W
  • LM393 IC

 

Software Required:

  • Arduino IDE
  • LABVIEW

 

LABVIEW

 

  • LabVIEW (Laboratory Virtual Instrument Engineering Workbench), created by National Instruments (www.ni.com)is a graphical programming language that uses icons instead of lines of text to create applications.
  • LabVIEW programs/codes are called Virtual Instruments, or V is for short.
  • LabVIEW is used for Data acquisition, signal Processing (Analysis), and hardware control–a typical instrument configuration based on LabVIEW

 

Schematic diagram of an instrument system based on LabVIEW.png

Schematic diagram of an instrument system based on LabVIEW

 

Hardware:

 

Schematic Diagram

Schematic Diagram

 

Working

 

The Entire Project was developed on Arduino Mega 2560.Arduino Mega was used a Controller to perform all the complex calculations. The Results of Arduino was shown on Serial Monitor of Arduino .Then the coding of LabVIEW was done and the entire calculation was done on LabVIEW.

 

In the Electrical Schematic Diagram, The Input 220V is given to Voltage Transformer and to Current Sensor in Series with Load. The Load could be Inductive of Resistive. The Output of Transformer is given to Analog Pin to Arduino i.e. A0 and Output of Current Sensor is given to A1 pin of Arduino. The LM393 Comparator is being operated by Dual DC Power Supply -9V and +9V.The Output of Comparator is given to Digital Pin of Arduino i.e.8. The Relay is used to with Digital Pin of Arduino. There was some problem while using Relay so we are not showing the Pin no. with Relay but the procedure remains same. The Output of Relay is given to Load.The Output is shown on Computer Monitor Window i.e. Serial Monitor Window and LabVIEW.

 

Current Sensor (ACS712)

 

The Allergo ACS712 current sensor is based on the 1879 discovery of Dr. Edwin Hall's Hall-effect. This concept states that when a conductor carrying a current is put in a magnetic field, a voltage is produced across its edges that is perpendicular to both the direction of the current and the direction of the magnetic field. A magnetic field (B) perpendicular to the direction of current flow is applied to a thin strip of semiconductor material (referred to as a Hall element) while it is carrying a current (I). The Hall element's current distribution is no longer uniform due to the Lorentz force, and as a result, a potential difference is formed across its edges that is perpendicular to the directions of the current and the field. Its typical value is in the range of a few microvolts, and it is known as the Hall voltage. The magnitudes of I and B have a direct relationship to the Hall voltage. Hence, the observed Hall voltage can be used to estimate the other if one of them (I and B) is known.

 

ACS-712 current Sensor Module

ACS-712 current Sensor Module

AC Current Measurement Using ACS712

 

Two directions of current are measured by the ACS712. Because the ACS712 has a 5 s output rise time in response to step input current, if we sample quickly and extensively enough, we will undoubtedly locate the peak in one direction and the peak in the opposite direction. We obtain about 4000 samples each cycle while monitoring AC current at 50 Hz, or 20 mSec every cycle.

 

To determine the current, all that is needed is knowledge of the waveform's shape given the location of both peaks. We are aware that the waveform for line or mains power is a SINE wave. Understanding it enables us to use a straightforward electronic formula to produce a respectable result.

 

RMS Current =  root(2) * Peek Current

Circuit Connection for AC Current Measurement.png

Circuit Connection for AC Current Measurement

FREQUENCY

 

I used Voltage Comparator LM393N. The Inverting pin is Grounded and the signal is passed through a High Pass filter (removing DC component) and applied to the Non-inverting terminal. The comparator will act as a Zero Cross detector and when the amplitude is greater than 0, it will give a High output. 

A zero-crossing detector can be used for the measurement of phase angle between two voltages

Zero Crossing detector

Zero Crossing detector

 

PHASE

 

When capacitors or inductors are involved in AC circuit, the current and voltage do not peak at the same time. This leads to positive phase for inductive circuit since. When two signals differ in phase by -90 or +90 degrees, they are said to be in phase quadrature . When two waves differ in phase by 180 degrees (-180 is technically the same as +180), the waves are said to be in phase opposition . Illustration B shows two waves that are in phase quadrature. The wave depicted by the dashed line leads the wave represented by the solid line by 90 degrees.

Phase Difference between Voltage and Current.png

Phase Difference between Voltage and Current

 

Calculation Of Phase Angle

 

Phase is sometimes expressed in radians rather than in degrees. One radian of phase corresponds to approximately 57.3 degrees. Engineers and technicians generally use degrees; physicists more often use radians.

The time interval for one degree of phase is inversely proportional to the frequency. If the frequency of a signal (in hertz ) is given by f , then the time t deg (in seconds) corresponding to one degree of phase is:

t deg = 1 / (360 f )

The time t rad (in seconds) corresponding to one radian of phase is approximately:

t rad = 1 / (6.28 f )

 

POWER FACTOR

 

Power factor is a crucial factor to take into account when designing an AC circuit because any power factor below one means that more current must flow through the wiring of the circuit than would be required if there was no reactance in the system in order to supply the same amount of (true) power to the resistive load. To counteract the impacts of the load's inductive reactance, a poor power factor can be ironically addressed by adding a second load to the circuit that draws an equal and opposite quantity of reactive power. The additional load in our example circuit must be a capacitor since inductive reactance can only be cancelled by capacitive reactance. The effect of these two opposing reactance in parallel is to bring the circuit’s total impedance equal to its total resistance (to make the impedance phase angle equal, or at least closer, to zero).

 

COMPLETE HARDWARE

 

This is the Complete Hardware of our Project. We used Voltage Transformer for DC Power supply circuit and another Voltage Transformer for making 5V circuit for measurement of AC Power supply in Arduino. Another Circuit for Frequency Measurement is used to measure Frequency of AC Supply. Circuit control is performed using an Arduino Mega. Here we have shown Resistive load for testing but practically we used Inductive load so that Phase can be actually be measured .Current Sensor is used for AC Current measurement.

 

 

Software

 

IDE (Integrated Development Environment)

 

The Java programming language is used to create the Arduino IDE (Integrated Development Environment). It is primarily utilized for Arduino programming. As the Arduino IDE is open-source software, no specific licensing is necessary. The software opening interface can be shown in figure 5.1 below.

The executable code is transformed by the Arduino IDE using the AVR into a text file with hexadecimal encoding, which is then loaded into the Arduino board by a loader program in the firmware of the board. The capabilities supplied in this software are comprehensive and allow for an in-depth usage of this piece of hardware, and I have utilized it extensively in this project to program the Arduino. The Digital I/Os also allow for the reading of live status.

 

Coding

/*

Measuring AC Current Using ACS712

www.circuits4you.com

*/

const int sensorIn = A0;

int mVperAmp = 66; // use 100 for 20A Module and 66 for 30A Module

 

double Voltage = 0;

double VRMS = 0;

double AmpsRMS = 0;

  int mean_value = 0;    ////////////////////////////////////////////////

void setup(){

 Serial.begin(9600);

     pinMode(8, INPUT);

          pinMode(9, INPUT);

 

}

long previous_time = 0;

 long current_time = 0;

 float Time=0;

float frequency;

float phase;

float pf;

 

//coding for voltage measuring on A1

void loop()

{

  //measuring frequncy

  while(digitalRead(8)==1);

while(digitalRead(8)==0);

previous_time = millis();

while(digitalRead(8)==1);

while(digitalRead(8)==0);

current_time = millis();

Time = (current_time) - (previous_time);

//Serial.print(Time);

//Serial.print("        ");

Time=Time*0.001;

frequency=1/Time;   //*2.52;/

 

 

   // measuring voltage

  int sensorValue = analogRead(A1);

  // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 250V):

  float voltage = sensorValue * (260.0 / 1024.0);

  // measuring current

   Voltage = getVPP();

 VRMS = (Voltage/2.0) *0.707;  //root 2 is 0.707

 AmpsRMS = (VRMS * 1000)/mVperAmp;

 

//display phase

while(digitalRead(8)==1);

while(digitalRead(8)==0);

previous_time = micros();

//while(digitalRead(9)==0);  //?????????????????????

current_time = micros();  //???????????????????

while(analogRead(sensorIn)<=mean_value);    ////////////////////////

current_time = micros();      ////////////////////////////////

Time = ((current_time) - (previous_time))/10;

//Serial.print(Time);

//Serial.print("Sec    ");

phase = (360*frequency*Time)/100000;

 

pf=cos(3.142/3);

Serial.print("AC Voltage: ");

Serial.print(voltage);

Serial.print(" Volts");

Serial.print(AmpsRMS);

Serial.print("Amps RMS");

Serial.print(frequency);

Serial.print("Hz      ");

Serial.print(phase);

Serial.print("degree   ");

Serial.print("phase:");

Serial.println(pf);

 

 

delay(1000);

}

 

float getVPP()

{

  float result;

  int readValue;             //value read from the sensor

  int maxValue = 0;          // store max value here

  int minValue = 1024;          // store min value here

 

   uint32_t start_time = millis();

   while((millis()-start_time) < 1000) //sample for 1 Sec

   {

       readValue = analogRead(sensorIn);

       // see if you have a new maxValue

       if (readValue > maxValue)

       {

           /*record the maximum sensor value*/

           maxValue = readValue;

       }

       if (readValue < minValue)

       {

           /*record the minimum sensor value*/

           minValue = readValue;

       }

   }

   

   // Subtract min from max

   result = ((maxValue - minValue) * 5.0)/1024.0;

   mean_value = (maxValue + minValue)/2;    //////////////////////

   return result;

 }

 

 

Conclusion

 

Phasor Measurement Unit is very applicable for Supply Corporation Companies. We have make it for local monitoring. By installing this system in Power System we can monitor our Phase remotely.

Kynix

Kynix was founded in 2008, specializing in the electronic components distribution business. We adhere to honesty and ethics as our business philosophy and have gradually established an excellent reputation and credibility in our international business. With the accurate quotation, excellent credit, reasonable price, reliable quality, fast delivery, and authentic service, we have won the praise of the majority of customers.

Join our mailing list!

Be the first to know about new products, special offers, and more.

Leave a Reply

We'd love to hear from you! Feel free to share your thoughts and comments below. Rest assured, your email address will remain private.

Name *
Email *
Captcha *
Rating:

Kynix

  • How to purchase

  • Order
  • Search & Inquiry
  • Shipping & Tracking
  • Payment Methods
  • Contact Us

  • Tel: 00852-6915 1330
  • Email: info@kynix.com
  • Follow Us

authentication

Kynix

© 2008-2026 kynix.com all rights reserved.