Power Meter - LCD and Arduino based

Power Meter - LCD and Arduino based.


Power Meter

After recently reading Emon’s webpage on monitoring power consumption with a VT, CT an and arduino, I quickly bread-boarded their recommended circuit. Seen HERE.

You need an AC plug pack and a clip on CT. The AC plugpack gives us a directly proportional voltage to the AC mains voltage. The CT gives us a voltage directly proportional to the AC mains current.

CT

It seemed to work well so I transferred it to a prototyping shield and added an LCD keypad on top. The code can measure Voltage, current, power factor, resistive power and reactive power.

It’s done by using the fantastic emon library which does all the heavy lifting. Making it possible to do away with rectifying the AC signal and giving us all the calculated values straight to variables.

In the setup these 2 lines initialise everything:

emon1.voltage(3, 225, 1); // Voltage: input pin, calibration, phase_shift
emon1.current(2, 0.3); // Current: input pin, calibration.

Later in the code each variable can be pulled out to use with this code:

emon1.calcVI(20,2000); // Calculate all. No.of half wavelengths (crossings), time-out
emon1.serialprint(); // Print out all variables (realpower, apparent power, Vrms, Irms, power factor)

float realPower = emon1.realPower; //extract Real Power into variable
float apparentPower = emon1.apparentPower; //extract Apparent Power into variable
float powerFactor = emon1.powerFactor; //extract Power Factor into Variable
float supplyVoltage = emon1.Vrms; //extract Vrms into Variable
float Irms = emon1.Irms; //extract Irms into Variable

Things to Do

I hope to add a web page output and possibly 3 phase measurement.

This project is fantastic for learning about power factor and how each component is measured.

 

2014-04-26 14.55.36

 

2014-04-26 14.55.40

 

2014-04-26 14.55.43Power Shield

 

 

Measuring voltage and current

Measuring voltage and current

 

 

No Comments Yet.

Leave a comment

You must be Logged in to post a comment.