Académique Documents
Professionnel Documents
Culture Documents
design
BASICS OF E-METERING
Voltage and current sensing
• Pulse output
• The generated out is through a
comparator so its kind of
regulated output
Power :
Power is product of voltage (volt) and current (Amp)
P=VxI
Unit of power is Watt or KW
Energy:
Energy is product of power (watt) and time (Hour)
E= Pxt
Unit of Energy is Watt Hour or Kilowatt Hour (kWh)
1. Voltage
2. Current
3. Time
Voltage calibrations and arduino code
Calibration:
sample1 = 696 in serial monitor
(10/32)*12v=3.75v equivalent to 696
1 is equivalent to 3.75/696=m
Vout = (m*sample1)/1000 volt
Actual battery voltage = (32/10)*Vout V
Arduino Code:
void loop() {
// put your main code here, to run repeatedly:
for(int i=0;i<150;i++)
{ sample1=sample1+analogRead(A2); //read the voltage from the divider circuit
delay (2); }
sample1=sample1/150;
voltage=(3.75/696)*(220/12)*3.2*sample1/1000;
}
Current measurement
From Data Sheet
1. ACS 712 measure positive and negative 20Amps, corresponding to the analog output 100mV/A
2. No test current through the output voltage is VCC / 2 =5v/2=2.5V
Calibration:
Analog read produces a value of 0-1023, equating to 0v to 5v
So Analog read 1 = (3.75/1024) V =3.662mv
Value = (3.662*Analog Read value)/1000 V
But as per data sheets offset is 2.5V (When current zero you will get 2.5V from the sensor's output)
Actual value = (value-2.5) V
Current in amp =actual value*10
Arduino Coding
// taking 150 samples from sensors with a interval of 2sec and then average the samples data collected
for(int i=0;i<150;i++)
{
sample2= sample2+analogRead(A3); //read the current from sensor
delay(2);
}
sample2=sample2/150;
val =(3.75*sample2)/1024.0;
actualval =val-2.5; // offset voltage is 2.5v
amps =actualval*10;
Time , Energy , Power Measurement
ARDUINO CODE:
Xively is an IoT cloud platform that is “an enterprise platform for building,
managing, and deriving business value from connected products”.
Moreover, it provides a cloud-based API with an SDK that simplifies the
development process.
Xively supports messaging service based on MQTT protocol.
Here its used for arduino interface.
Serial Data Transfer from Arduino to MATLAB
serial communication arduino and matlab
//From your Arduino end, send the data
serial.begin('Baud rate')
if (serial.available())
serial.print('Mydata');
end
%% MatLab end, receive the data
ser=serial('Com port ', 'Baud rate')
fopen(ser);
output = fscanf(ser);
fclose(ser);
delete(ser);
Using of fft, psd, spectogram
Meters are made portable with use of IOT that helps in monitoring each of the
load working and energy consumption.
System on Chip has made it possible to minimise the design size using complex
integration techniques.
The only expectancies is in monitoring the health of system electrification and
health monitoring of the energy meter using ANN and MATLAB analysis tools the
one procedure that I have used here.
Incooperating this to design an energy meter with better facilities and consumer
friendly features and protections is the ultimate goal of better design results.
REFERENCES
https://www.youtube.com/watch?v=lrugreN2K4w&list=PLmQVKfnaCewJ1s-cTJbG8NozHw3G9qV1p&index=2&t=0s
https://www.youtube.com/watch?v=_PKQdEUam6Y&list=PLmQVKfnaCewJ1s-cTJbG8NozHw3G9qV1p&index=2
https://training.ti.com/build-your-own-energy-meter
https://www.instructables.com/id/ARDUINO-ENERGY-METER/
http://fritzing.org/download/
http://fritzing.org/projects/chaos-circuit
https://www.instructables.com/id/How-to-Convert-220v-AC-to-5v-Stable-DC/
https://www.electronics-tutorials.ws/electromagnetism/hall-effect.html
https://www.arduino.cc/en/Reference/LiquidCrystal?from=Tutorial.LCDLibrary
https://www.arduino.cc/en/Tutorial/HelloWorld?from=Tutorial.LiquidCrystal
https://www.arduino.cc/en/Reference/SD#.UyHC1dLHlsk
https://www.arduino.cc/en/Tutorial/Datalogger#.UyHC6dLHlsk
https://cdn.instructables.com/ORIG/FLX/38JT/HQIMACP5/FLX38JTHQIMACP5.txt
https://cdn.instructables.com/ORIG/F48/C0DB/HQMN5RW3/F48C0DBHQMN5RW3.txt
https://github.com/xively/xively_arduino
https://github.com/amcewen/HttpClient
https://circuitdigest.com/microcontroller-projects/serial-communication-between-matlab-and-arduino
https://in.mathworks.com/help/signal/ref/spectrogram.html
https://in.mathworks.com/help/symbolic/ezsurf.html
https://in.mathworks.com/matlabcentral/answers/255495-serial-communication-read-write-from-to-arduino-on-matlab-support-package-for-arduino-
hardware
http://www.ijeijournal.com/papers/Vol.4-Iss.11/C04111114.pdf
https://howtomechatronics.com/tutorials/arduino/arduino-sd-card-data-logging-excel-tutorial/
https://in.mathworks.com/videos/log-temperature-data-from-arduino-into-matlab-1489428648919.html
https://in.mathworks.com/matlabcentral/fileexchange/46775-arduino-serial-data-acquisition
https://blog.mide.com/vibration-analysis-fft-psd-and-spectrogram
https://electronicsforu.com/technology-trends/frequency-spectrum-analysis-signals
https://in.mathworks.com/mwaccount/profiles/incomplete?uri=https%3A%2F%2Fin.mathworks.com%2Fmwaccount%2Fprofiles%2Fincomplete%3Furi%
3Dhttps%253A%252F%252Fin.mathworks.com%252Fmatlabcentral%252Fanswers%252F251061-how-to-plot-frequency-spectrum-of-a-signal-in-matlab