Serial.print(Read energy ); Serial.println(Error getting IP address via DHCP, trying again); All the readings show 0. For more about this Datalogger Shield, kindly visit our posthere. Playing with 516 or add something to filter noise? New User Deal. so you know that it is connected correctly? Let us know in the comments section below, we may even put some of your work into our article to help others. SparkFun Non-Invasive Current Sensor - 30A, How to Build an Arduino Energy Monitor and Data Logger, One Button Click Artificial Intelligence Based Home Monitor. else if(current <= minCurrent) char sensorId[] = POWER; i get response like 0.00kwh okay thank you for the help sir.. what if am going to use sim900a is their a posibility that the flow of current will affect .. in may case when i use the sim900a is connected with the breadboard where the capacitor, resistors and CT pinned there is a change in displaying or sensing current in my LCD. Can you help me out with that please? 11.17A, 1228W Serial.println(ret); David, Circuit diagram for IoT based Energy Meter using Arduino and NodeMCU is given above, connect ESP12 as below: Connect Rx of ESP12 -> Tx of Arduino. Root-Mean Square (RMS) current value is the square rooted averaged value that is derived from summation of squared of each raw values. After successfully opening the account you will be diverted toDevelopment devices page, After adding the device you are diverted to a new Energy monitoring by You may have to wait about 5 seconds long until all values are re-calibrated. That being said, there is nothing wrong with the values youve given. DIY Arduino Multifunction Energy Meter V2.0. We assumed that you have the basic electrical knowledge and know what you are dealing with. North Holland. Hope this helps, let us know how it goes! You can measure all electrical parameters for Utility input and do the same for Renewable Source like solar or wind turbine at the same time. kilos = kilos + ((double)RMSPower * ((double)time/60/60/1000000)); hi, what do you mean for RMScurrent andd RMSpower. unsigned long lastConnectionTime = 0; // last time we connected to Cosm Hi DIY Life, My arduino is too close to CT sensor! 11.05A, 1215W, As you see the values are jumping around quite a bit, so that is concerning me. I have tried the replicating the project but seem to have hit a wall. When the pointer is directly on a number, look at the dial to the right. Thank you for the reply sir..please bare with since im new to this diy thing..correct me if im wrong..but from what i understand the voltage output of the ct will vary depending on the load the ct is connected to.. how can i measure the voltage if there is no load sir? How to claculate the maximum continous power ? When reading an electric meter, read and write down the numbers as shown on the dials from right to left. Thanks very much for your detailed instructions on this page! Im not sure what an Amaril Wheel is? 08:58:08.359 -> MAX Current : 521 Thank you for your article. I am using an Arduino Uno Rev 2, and four SCT-013-030 CTs. You will burn your CT and its burden resistor out. Hi Marius, Firstly youll need to change your voltage in the code. it doesnt look like a CT, is there something else im missing? So I decided to try and build my own and Arduino was the perfect platform for it. It depends what you are wanting to achieve with the energy meter and how modern the AC or refrigerator is. Thank you very much for this project and for reply. You laptop charger is probably only around 60 watts which is not even half a percent of the maximum, the voltage generated by the CT is probably not high enough for the Arduino to detect. I do not know why, but all three give me exact same values and they do not change a bit. I tried with a light bulb of 28W on the 220V, I expected to have 0.127V. Is there a code to add to the Arduino porgram in order to calculate the cost of operating the watts . Adjust it up or down depending on what is displayed until you get 300W. The only easy way to calibrate it is to take readings from the screen for a few known loads (it appears that you have done this) and then calculate the calibration factor using a linear best fit. { Notify me of follow-up comments by email. int backLight = 9; lcd.print(watt); Here is the link to download the MeterSerial Output code. The figure maxCurrent = 516 is used to filter out only the top half of the sine wave. lcd.setCursor(1,1); // set the cursor at 1st col and 2nd row I used R1=10k and R2 =10K. I'm using the ACS712 Hall Effect current sensor for this project due to its compact size and very high output linearity. Stay healthy and happy. Hi Marcello, In this project I'll show you how to make a IOT based power and energy meter which can measure current, power, energy consumption using INA219 current sensor and shows it on OLED display and to blynk app through internet. Is this correct? voltage=4.669*2*sample1/1000; For current measurement I used a Hall Effect current sensor ACS 712 (20 A).There are different current range ACS712 sensor available in the market, so choose according to your requirement. Do not remove any wires or remove any screws before checking with your local authority, you may require a certified electrician to install the CT for you. It transmits the reading of voltage . or both neutral and live have the same result? { delay (2); Once you have your energy meter calibrated, you reset it and leave it to do its job. However, I am not sure what to do with that value. // MAC address for your Ethernet shield hey its a amazing work you guys really awesome i just want to know im from India and here we have 50hz 10amp 230v in regular home supply so AS-103 is good for me or AC -1030 is good. hello sir how can i display the voltage and cost in the display sir can u give me the code sir and how to do sir. My programming problem was with the WHILE loop, as I wasnt sure how to get the information about the amount of current flowing in the main supply line to a subroutine/function that would evaluate that there is no power and activate the inverter switch relay. // that you define how often to send data to Blynk App. That is AnalogRead should work for 40ms period. Power factor is assumed to be one here while calculating power and that assumption is valid when all the appliances in home are purely resistive loads. The model ranges from10A up to 200A. The capacitor isnt a filter, rather its a low impedance path to ground for the AC signal. Jozef. There is a query regarding the experience. 08:58:32.751 -> RMSPower : 2020 To connect the LCD screen, have a look at our LCD screen connection guide, it should work for your display. 1 is equivalent to 3.25/696=4.669mv This means. The sensor is quite sensitive. } This is indeed a great article. Hello Michael, If you stacked up a LCD Display Shield, Analog Pin A0 is automatically occupied by the button function. A personal money vault monitoring system based on the Internet of Things is presented throughout this project by using a 3D magnetic sensor. 08:58:28.754 -> RMS Current : 8.78 Its much appreciated. The electrical measurements made, [] Thank you so much brother. You should be using the outer two pins on your CT, you can leave the middle pin disconnected. If this still does not work then try the first version of the code and see if that works on your energy meter? I'm building this on an ESP8266 . I assume your supply voltage is 120V (240V would be even worse). I got that CT from another meter it is 5A/2ma 2500:1 burden resistor is as 100 ohm that meter can measure current from 0 to 70A can you tell me how that meter can do measurements from 0 to 70A using 5A/2ma CT, As specifications of CT can measure from 0 to 70A could you please send your email address so I can send all details to you, Hi sir, I was wondering if it is possible to use your project for any devices such as air conditioning units, refrigerators, etc? Yes you can use an AC to AC adaptor but youll need to either us one with a 5V output or cut the voltage down to below 5V. Can You give me some advice about that? Thank you from now. The problem I can see with what you are trying to achieve is not with the code but with the actual hardware and the operation of the CT. You wont have a problem triggering the relay to turn on the inverter when the monitor indicates no power. if (millis() lastConnectionTime > connectionInterval) but I got 170W when nothing is connected! . lcd.print(A); Other than disconnecting and reconnecting two panel feeds it involves only low currents and as an added bonus we will know how much power we are using when the emergency system is on. Voltage Fuses are 25Amp each. amps =actualval*10; For time measurement there is no need of any external hardware, as ARDUINO itself has inbuilt timer. I have one question regarding the code. I have built with this a YHDC SCT013-030. I have used the code which you posted without the LCD display. 3. I am using 2500:1 ct 5A/2ma I have electric heating system which is kinda big, 13,5kW (3-phase) (230VAC system), so my 3-phase system gets overloaded if I turn lets say sauna (8kW 3-phase), or need of overloading. I am referring to the maximum as youll be scaling that against the maximum input voltage on the Arduino analogue inputs. This will reduce the overall maximum load you can measure but will increase the accuracy. time value 2050; and (time/60/60/1000000))= 5.69444444e-7* power A blog about DIY solar and arduino projects. I tried a laptop adapter. The first number displayed is the instantaneous current followed by the instantaneous power. However, today we would like to use another type of similar principle which is Hall effectSplit Core Transformer. Elster A100c) each pulse usually corresponds to 1 Wh (1000 pulses per kwh). The only other possibility is that the display draws too much power from the Arduinoss relatively small on board supply, this may be causing a sort of ripple on the supply which may be affecting the meters readings. You essentially need to triplicate lines 22 to 42, or run a loop three times (one for each phase). I bought CTYRZCH SCT-013-000 (https://www.amazon.com/gp/product/B01C5JL5IY/ref=oh_aui_detailpage_o07_s00?ie=UTF8&psc=1). I would like to ask you how can I put a 4kw power alarm? The value of R1 and R2 can be lower one but the problem is that when resistance is low higher current flow through it as a result large amount of power (P = I^2R) dissipated in the form of heat. For example if I only want 100kW then the energy meter already reached 100kw, I will be notified with a text message saying I am at 100kw already. 09:45:53.161 -> RMSPower : 0 Thank you very much. You need to do the calibration procedure at the end of the article before your meter will shown the correct values. You can get the LCD Display board at our affiliate linkhere!!!. You may purchase at our affiliate link here!!! Just want to make sure before i blow something up :p. Hi Marius, 08:58:28.717 -> MAX Current : 617 Firstly id like to say Great write up Connect LCD with ARDUINO as given bellow : LCD -> Arduino Is that right? The electricity fee per unit is set to 2 rupees in this project. The example only uses one leg of the incoming for 110V when in reality homes alternate legs when they supply 110V. The shield can be mounted directly on top of the Arduino Uno board or in between the shields which made it very convenient to use. Serial.print(GET return code: ); I eventually got it working Yay RMSPower : 0 Many thanks on the great project and the promptness of your responses. The delay in the code is 2000 milliseconds and the loop through the code takes the Arduino about 50 milliseconds to run through so the time period is 2050 milliseconds or 2.05 seconds. -> not OK for capacitive loads lcd.print(WH ); Almost all code lines are with explanation. my midpoint is ~1.63 v (NODEMCU) 3.3v max Vin burden resistor is ~47 ohms which gives me about ~50% of the max amps (50A). 20W is only 0.09A which is 0.003% of your maximum so your resolution will be bad at the lower end. How do I do this? In summary at first the Arduino microcontroller measure the voltage, current, power and energy data then shows it to the display and sent the data to nodemcu via serial communication. 08:58:06.310 -> analog input : 498 Almost every country, country and region has different tariffs, free portions and methods of charging for electricity so its difficult to just create a generic cost. Most of my works are related to Solar Energy and Arduino. Maximum is 2048 bytes. First off thanks alot for this! It can measure the current, voltage, and power of a circuit. Hi Michael Control your household devices and get alerts about home no matter wherever you are! [/box] For more detail: How to build a whole home energy monitor using Arduino Previous Post Next Post Required fields are marked Yes you can, you just need to size the CT correctly for your maximum household load. I poorly modified the scketch but I didnt get any results. The scaling factor depends on a number of other factors, not just the sensor. Hi Mauro, Thank you! lcd.print(energy); How are you calculating kw measured over time? The time taken to read the data is around 50ms depending on the Arduinos processing speed. What resistors did you use and double check that the connections are correct. It can also disconnect the home power supply . Your burden resistor and divider resistors are correct. ARDUINO UNO (Rev-3) If youve used the correct divider resistors yours should be similar. Thanks. The AC-1030 will also work but it is quite a bit bigger than you need for your supply. D1 -> Arduino Not Connected D7 -> Arduino pin 2 Thank you. // complete message from arduino, which consistors of snesors data. For single-phase domestic electricity meters (eg. what current sensor did u use ? 010V. int minCurrent = 1000; for (int i=0 ; i= maxCurrent) in summary at first the arduino microcontroller measure the voltage, current, power and energy data then shows it to the display and sent the data to nodemcu via serial communication. Yes this is possible but youll need a different shield for this. It is very unlikely to read correctly initially so youll need to change the calibration number in line 42 11.8337. Were does this number 516 come from? Is there a data log file or it doesnt record any history power usage. byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; 2. Turn off everything in house and power arduino by battery? if (maxCurrent 517) break; if(current >= maxCurrent) #include<ArduinoJson.h> //This library is used to transfer data from arduino to nodemcu. I have a question: I want to know if is possible to do this energy meter with four sensors, I mean, to measure the current of four different devices or four different breakers. We would need readers like you to support us in order to keep growing. E= Pxt val =(5.0*sample2)/1024.0; Step 3: Circuit Diagram. Yes, you should be able to do the calibration with an iron although it would be better to do it with a load which is slightly more accurate such as a 100W light bulb. Remote access energy data from web. Without the LCD Display, you can only monitor the measured current value on PC via Serial Monitor. Serial.print(Datastream is: ); Hello . I tried some but it doesnt work. Data logging in a SD card Wonderful project. You need to do some fault finding and check your connections until you get something displayed. Its a bit simpler and has been tested by far more people. By default the contrast will be extremely light. If both of those are working but nothing is displayed then you most likely have a wiring problem, check the connections to your Arduino again and make sure they are connected to the correct pins. D5 -> Arduino pin 4 maybe some resistors and LM385 to step down the voltage instead. Arduino Energy meter - I belong to a village of Odisha, India where frequent power cut is very common. These modules requiredirect contactwhich I think is a major drawback. You can plot and analyze all the measurements using Mat lab/Simulink with a quiet simple modification, just install Mat lab / Simulink Arduino supporting package. An Arduino Unos analogue input only has a resolution of 1024 steps (0-1023) between 0V and 5V. An Arduino only has analogue voltage inputs which measure 0-5V DC, so you need to convert the current output from the CT into a voltage reference and then scale the voltage reference into a 0-5V range. Kindly purchase from our affiliate link here !! The cost of electricity used to date can be added and displayed easily. Step 7: Install the APP and Set It. - Best Regards, I have just published a guide on how to make a 3 phase energy meter go have a look at it https://www.the-diy-life.com/simple-3-phase-arduino-energy-meter/. Netherlands. Serial.print(Energy value is: ); It can measureRMS Voltage. To calculate how many amps yours needs to sense, take the maximum continuous power your are expecting to sense and divide that by your voltage (usually 110V or 220V depending on your country). You may want to consider a small CT if youre measuring 20W most of the time. RMS is the root mean square. Voltage Calibration: This study presents a customized IoT-based Advanced Smart Energy Meter infrastructure with remote and local logging and monitoring of electrical parameters, and has provisions for connections to both web and cellular internet using ESP8266 and GSMsim800a. I will try this evening. I will indeed mail you a pic once i am completely done with the project it does not look too good at the moment with wires everywhere hahah. WORKING PRINCIPLE : Thank you for the experience, it helped me lot . If you plan to record the data in a proper way, you may consider this Datalogger Shield. // Please don't send more that 10 values per second. pls can i use something else instead of the current transformer. It seems that the meter is accurate on a specific scale and thats it, anything higher or lower goes out exponentially. Hope this helps. #arduino_energymeter, #diy_energymeter, #solar_energymeterFor details DIY instruction please see my instructable :http://www.instructables.com/id/ARDUINO-EN. Between cycling across the rolling fields, sailing along the steady water and strolli. The figures are the upper and lower limit for the scaling on the Arduino input. Did you cut the plug off and expose the wires? This will then get fed into the RMS power calculation line. Is this the right load? Yes, youre correct. No problem at all, were glad youve managed to build one of our projects! hi,sir thank you for your good project i need to build it but i need to add a relay to cutt off the power if i will consume a certain amount of power, example when i consum 10 W i need that i catt off the house power till i will start again the arduino, thanks plz help me. The system allows users to get energy consumption updates via SMS, as well . Decibel meter with Arduino & 162 I2C LCD Display. Thanks for the great feedback! Similarly, supply the Sound Sensor with a 3.3V supply through 3.3V Pin. Your best option would be to use four I2C OLED displays with drivers that are addressable as these can all be connected to your two I2C pins on your Arduino. The Arduino sketch of the prepaid energy meter detects the blinks and runs a counter in descending order measuring consumption of each 1 KWH or unit electricity by 3200 blinks or pulses. I may be wrong but if I remember correctly, the pin layout of the Ethernet shield and the LCD shield are different so you should be able to stack the two on top of each other to get the functionality of both. Yes you can add an LED onto one of the unused digital output pins, 1-3 are free with this project. The values youve stated are well within this range, so the meter is likely working correctly for the hardware which it is connected to. Start by dividing your primary current (the maximum as used above) by your CTs turns ratio (available on the data sheet). Thanks for the great feedback and good luck! You should be able to put a kit together for under $20. lastConnectionTime = millis(); // update connection time so we wait before connecting again So different resistance value can be chosen but care should be taken to minimize the power loss across the resistance. So Analog read 1 = (5/1024) V =4.89mv double RMSCurrent = ((maxCurrent 516)*0.707)/8.130; Michael please, have you any idea what I have wrong? I guess I couldnt. Thank you for the great feedback. Hello!! This meter could not measure AC Voltage since no direct contact made. Calibrated everything but as current goes up it stays at max current reading even if load varies Kw/h keep counting up. But really to hard to check all 100k comments hahahhh. Prepaid Electricity Energy Meter is a good concept in which you can recharge its balance, like we do in our mobile phones. Hi Joseph, RMSCurrent = ((maxCurrent 516)*0.707)/12; minCurrent was used during my initial testing and debugging to check that the full sine wave was being read. Is this working? You may grab the unit at our affiliate link here !!! Unit of power is Watt or KW Im not sure I completely understand how its all connected and Ive never heard of 110 and 220 in the same house. In the attachments section , you will find a technical eBook explains the Project processes from Zero to Hero. Current This should be around 500-5000 to 1. } You may be able to source cheaper components at your local electronics store. Hello I have an arduino one and the SCT-013 will be able to send me ohotos of how i made the connection in the arduino and the code used thanks [emailprotected]. The final step would be adding source code onto Arduino board. The data sheet of ACS 712 sensor is found here The sensor can measure current in2 direction. Without interference, Home Energy Meter can transmit your home's electricity use over a distance of 492 feet / 150 metres with your data securely broadcast using AES-128 encryption . The energy meter is installed in the homes or offices. Hi, Sir ARDUINO CODE: Due to the simplicity of the AC Energy Meter, there are some compromises on the measurement. This is for single phase household and installed in electric panel via din rail. Circuits doesnt have a CT element so the signal generator was used in its place to generate a current sine wave. Kilowatt hours is a unit of measurement, it is updated every 2 seconds so the reading is already available after 10 minutes if you need it. Hi. The good news is you do not need to manually calibrate the offset settings if you got theLCD Display Shieldwith you. 4. Hi all, We have added the auto calibrate function, once the SELECT button is pressed, the value returns to exact zero point. I still see a problem in the way you need the CT to detect juice back in the supply line. Have you checked that you get a reference voltage of 2.5V on the analogue input with no load? and why is it when i remove the CT or turn off the load there is a continous reading in my Arduino ?? I can see a number of issues with what youre trying to do. When I calibrate, the readings are good. Max current is the peak of the sampled values being measured in the time interval, 516 is the mid point of the sine wave (1023/2 with a slight offset), 0.707 is sqrt(2)/2, 11.8337 is the calibration factor detailed later in the post. How did you size your burden resistors? Thats great, let me know if you manage to get it all working! then the nodemcu receive the data and send it to blynk server with its unique authentication code and with blynk app we can see the data and graphically visualize Does the CT negative and positive pole? I have a very strange issue with measuring current So in the epm, nothing but its a non volatile . Automatic Blind Opener - Used in Automatic Blind Opener - Works With A Remote & Alexa 9. // Analog pin which were monitoring (0 and 1 are used by the Ethernet shield) int sensorPin = 2; thanks for your kind response, that really helps.. // taking 150 samples from sensors with a interval of 2sec and then average the samples data collected While I impatiently wait, I noticed that the CT (from the amazon image) seems to have an audio male plug. Theres not really any benefit in using an audio jack adapter as youll have to swap the burden resistor if you swap CTs anyway. And why it give me 220W for a 20W bulb Article is so good. sample2+=analogRead(A3); //read the current from sensor First things to do, is get approximately 2.5V DC ( for +5V power source ) level at the output, tweaking another 50 k pot, which is in parallel to optocouplers photo-diode. There may be a problem with the way the Arduino handles the different data types, being int, double and unsigned long. The first calibration is making sure it shows exactly at 0 point when no current is measured. The Arduino Nano Every is based on the ATMega4809 microcontroller, which has a 10-bit (0 - 1023) Analogue to Digital Converter (ADC) for measuring voltages between 0V and 5V. If youve changed all of your electrical demand onto your inverter, there will be nothing to draw power from the mains when the power does come back on. Youll need to hook up the CT to one of these two wires and set the voltage in the Arduino, then it doesnt matter what happens down the line or how it is split up, everything being fed off of your homes mains will be monitored. Hi Richard, In order to measure 2 direction, the zero point should be at half the total voltage range (0 to 5V) which is 2.5V. If that is the case then youll need to incorporate an AC voltage measurement module onto one of the Arduinos inputs. Because your setup, CT , resistors and input voltage may be different, there is a scaling factor in the sketch which you will need to change before you will get accurate results, see below for calibration. sendData(); // send data to xively In my case it is a red led that flashes 1600 times for 1 KW. 08:58:32.786 -> MAX Current : 617 Thanks. This shield provides a lot of convenient terminals for each of the input and output pins. RW -> Arduino pin 7 Best regards, I have trouble entering program code for LCD display 1602 with I2C support, in order to save usage of input cable in Arduino Uno. Fortunately, there is also a hall-effect sensor with split core transformer type (as picture on left). The current sensor can use split core transformer for measurement which does not require direct conductor contact between meter and the household electrical system. lcd.print(voltage); 08:58:06.310 -> RMSPower : 100 This little Meter is a very useful device that monitors voltage, current, power, energy, and capacity. Or try scaling your CT output range between 0-10A instead of 0-100A. Even with a 30A CT, the resolution is too course to have any significant effect on the units displayed. Power is product of voltage (volt) and current (Amp) The problem is that the CT youve got is way bigger than what you need for the loads youre trying to measure. Try displaying the raw value from your analog input onto your LCD for troubleshooting. Using the same code youve used above to display the raw input value in your code, youll now need to check that when you apply a load (current through) the CT, this value increases. Burden resistor = 39ohm. Thanks for all your help. AUTHOR: Officine Innesto, Jos Bagur More modern ones tend to have better power factors and will work better with this energy meter. #include
Energy monitoring data upload to xively **/ #include #include #include #include When I start the program it shows 220W and RMSCurrent is 0.96A The capacitor youve used should be fine and sounds like its connected correctly. The code for storing data in to a SD card is written separately as I dont have sufficient memory in my ARDUINO UNO after writing code for LCD display and data uploading xively.com. 09:49:16.598 -> RMS Current : 7.68 Regardless of whether you want to save energy, automate your home accordingly or simply become more aware of your consumption, measuring your electricity consumption is a . It has been very helpful to me. In blynk app you can see the graphically representation of your voltage, current, power and energy data. Serial.print(Datastream is: ); When i upload the code you presented without the LCD, i still get readings of 0. You should therefore be able to measure 2.5V at the Arduino input with no load if the divider circuit is working correctly. To calibrate your energy meter, your need to be sure that the current that your meter says is being drawn is what you expect is actually being drawn. I just do the same like you and everything is worked . What do you think ? can u explain these factors please and i just want to know that, these factors are fixed or i have to change them according to the ct?? The offset from 512 is just down to calibration. You can get yours at our affiliate linkhere!!! He however took the project one step further and integrated an Ethernet connection to enable the data to be seen via a web server. int ret = xivelyclient.put(feed, API_KEY); Check your connections again if you continue to get erratic readings. We were actually looking for projects like this to integrate into our own project. Hi Shaleem, Your analogue reference voltage to the Arduino is 2.5V so to determine the resistance you use R=V/I R=2.5/0.042=59.5. It monitors electricity consumption and sends the detected data to the cloud through the GSM cellular network; it is based on an Arduino Mega equipped with GSM Shield and an absorption detector board. The calibration factor cannot be calculated beforehand, it depends on a number of factors and is different for each setup. 2 bedrooms. 32A) cause if you google the specific transformer in the specs you can see that it can measure constant current of 0 60 A. This is true if the supply voltage to the sensor is 5V. It is also possible to use both the Ethernet and LCD shield but youll need to reallocate some of the pins as the shields both use a few of the same pins. If the voltage continually changes with time as well then youll have to install a voltage monitoring circuit onto the mains as well. At 220V you can have 200 Amps At 110 you can run 400 Amps, 200 Amps per leg. Thank you again sir.gai will try your advice..i will update you soon..hope it will work this time..fingers cross..tnx again sir. please answer me some briefly as iam newly started doing projects.. Hi Venu, So you gonna multiply 1Kwh with the price per unity in your country. Thanks again! Using the formula above R = 2.5/0.05 = 50 ohms. If it is just a simple transformer and not a high quality power supply it will also show you the variations in voltage level. Please help,,!! It can measure Voltage, Current, Power, Energy, Capacity, and Energy cost is calculated from energy consumption and energy price per kWh. Perhaps try and power the display externally and see if that helps. You would just need to put a 100A CT onto each of the live feed wires for the 120V and 240V circuits. I am a newbie to coding and electronics and would greatly appreciate the help. My estimation is that this should be 10 times higher than this. To achieve that sample rate, youd need to run an extremely efficient function which only samples the current and does no processing or displaying of the results but just records the data. Thanks in advanced. In order to do power factor measurements, you need to measure both the current and voltage waveform. It is quite easy to add an Ethernet or SD card shield which would enable data logging onto a server or memory card. I tested it today again and seems alot better only thing now is the calibration could you perhaps explain the calibration for me i am in a 220vac area You can recharge the electricity balance through this system, just by sending a SMS. Serial.println(Reading data from Xively); long milisec = millis(); // calculate time in milliseconds In the arduino sketch what is the significance of the 516 and 517 values used in the max/min current calculation? I was walking through the hardware store the other day and I walked past an energy meter which clips onto your homes electricity mains and then provides you with information on your power consumption and cost estimates for the month. Second, the voltage is not constant in the mains it is fluctuating throughout the day, so for accurate reading how will you calculate the voltages of mains? You should get a 12W resolution on your current setup so thats adequate to read a 100W bulb. Yes, a 30A CT would give you more accurate results. In order to do this accurately, you need to find a calibrated load. So here is the circuit diagram we have assembled on the breadboard. // energy=(watt*time)/(1000*3600); for reading in kWh. I discovered, that if I plug 100W bulb, it cant read it, if I display RMSCurrent, maxCurrent and analog input I have this values: without any load: This is calculated as 165 x 0.707 = 116 W. It doesnt in this design as the standard Arduino doesnt have that much storage space. which explains the Project processes from Zero to Hero. Reading the raw analogue data, you should see values anywhere between 0 and 1023 although probably more typically around 250 750. We make the maximum the lowest possible and minimum the highest possible so that when an actual value is first measured, it will fall between these boundaries and overwrite those values. thank you. I have managed to put it together using a 33ohm burden resistor because i have the sct-013-010 current transformer and saw that i must use a 33 ohm burden dont know if this is correct, I also used the R1 and R2 100k resistors and getting some values back .. so happy with that Hi Michael 7.23A, 795W If i match the wattage with my kill a watt meter at ~750.0 w then its off at ~1500 w by about ~300.0 w. reading about ~1800. The calculated power and energy by the Arduino/Wemos is displayed on a 0.96 OLED display module. 08:58:10.367 -> RMSPower : 100, 08:58:26.658 -> analog input : 410 datastreams[0].setFloat(sensor1); // power value The Hall Effect is the production of a voltage difference (the Hall voltage) across an electrical conductor, transverse to an electric current in the conductor and a magnetic field perpendicular to the current. I have a couple of novice questions. I used a couple of incandescent light bulbs and spot lights, these come in a range of sizes and their consumption is fairly close to what is stated on the label, ie a 100W light bulb uses very close to 100W of real power as it is almost entirely a purely resistive load. 010V again. i used sct 013 and calibrated it to 3.9445. You can connect it to either the live or neutral phase and it will work correctly with the same result. 11.05A, 1215W what voltage must the 10uf capasitor be? Your CT measures up to 100A which is quite a lot for a domestic load, you need to calibrate it with a load of around 8kW for a 110V supply or 16kW for a 220V supply. If you do too, grab a cup of coffee and settle in, I'm happy to have you here. Step 9: Placing the Device. Smart energy monitoring system includes Arduino, WI-FI, energy meter. This second calibration must be done only after the first calibration take into effect. If you like our post, we need your support to like and share our posts or videos so that it can reach more and more people like you !! Thank you for all the information. Below we have attached the code that utilizes the button function that couldautomatically calibrateby itself when you pressed theSELECT Button. All of those factors are constants with the exception of the 12 in the RMSCurrent line, this was actually 11.8337 in my code. 11.11A, 1222W The screen should still work on the 3.3V pin, the backlight will just be dim. currently doing final year project on real time electricity billing system for household and i find that this article extremely useful especially for the comment section. As we know, Arduino analog input only readpositive integer values. It will be in phase with your mains and give you the phase shift and therefore the load factor. It has to be connected in series to the measured value. The first is the CT, the sct-013-010 has a built in burden resistor so you should remove your burden resistor and connect the one wire from the CT to Arduino A1 and the second to the middle of your two 100K divider resistors. minCurrent = current; Do support us by clicking the affiliate product links if you do wish to purchase them. Counts KWh consumed by each load and for each Source. Perhaps try displaying the analogue input values on your Serial monitor, you should have a fairly stable value around 512 without any load and it should go up roughly 5-15 units with a 100W bulb on your setup. Or did you use a female audio jack adapter? The one used here is the Talema AC1030 which can sense 30A nominal and 75A maximum current. I love tinkering with electronics, making, fixing, and building - I'm always looking for new projects and exciting DIY ideas. It should go up to a number around 1000 when you apply the maximum load your CT and circuit is designed for. You have entered an incorrect email address! Serial.println(); Thanks for your suggestions Michael. Saving all readings with time line from the moment when (MM-93) starting until you shut it down. Then I change the input and I need to recalibrate. I am getting very strange and high readings. ?.please answer. Read the section on Calibrating the Current Reading. This does however require a galvanic connection to be made to your mains, in most countries this is illegal unless youre a qualified electrician. 09:46:15.523 -> RMSPower : 900, and finally 800W toaster and 650W IEC 750W MAX vacuum cleaner: You would essentially need to build the same energy monitor but with a current sensor and relay driving a contactor on each device youd like to control. Currently there isnt any significant progress as I am facing many problems in drawing the accurate schematics of the project. Across the two wires going to the signal generator in the Autodesk Circuits schematic. The line of code you mention is simply throwing out the negative half of the sine wave so it is unlikely to be giving you problems. void setup() Can you tell me what I could do? If you live in a 220VAC area then you should be able to measure 2200w so you wont have a problem with your heater. If it doesnt change when loaded then you have a problem with your CT circuit. You need something which will continuously be trying to draw power from the mains (a light bulb for example) so that when it comes back on, the CT starts reading energy usage and can then turn the inverter off and change the supply back to the mains. Serial.println(datastreams[0].getFloat()); RS -> Arduino pin 8 In this test, output may be powered from the same power source (better not, especially with wall-wart / wall-mart) or using arduino +5V. ARDUINO ENERGY METER - Open Green Energy Open Green Energy Arduino, Energy Meter, LCD Display, Solar January 17, 2014 ARDUINO ENERGY METER I belong to a village of Odisha, India where frequent power cut is very common. These little devices clamp over an AC wire and detect how much current is passing through it via induction. An Arduino based smart metering system comprising of a smart energy meter and a mobile phone acting as a central server receiving all the data sent by the energy meter. This project can sense a sound level using mic, convert that sound into its corresponding dB, and then upload it to the cloud. This setup only works for resistive loads. the purpose of my project is definitely measure the main current and power but i just want to know that my ct is working on small loads and give me accurate readings (watts), or not before clipping on the mains thats why i use smaller load. If so, how do I go about it? D4 -> Arduino pin 5 If your sensor is the SCT 013-000, then it is a current output sensor and it will indeed need a burden resistor. If youre getting nothing on your display then theres probably a connection problem between your Arduino and the display. What load are you trying to calibrate your meter with? As Bosz suggested in the comments above, the first thing you need to do is read two Modbus registers instead of 1. I start this project for a my high school but then now Im really stuck with these thing plz help me . Do you have a way so confiscate for this or am I over thinking it. It hampers the life of every one. Hi, thanks for the tutorial, am planning to make a energy meter for my basement and I think this will be great, I just have one question, I s there a way to record the kwh value (to arduino memory) so when the power goes down the last value will be stored in the memory and when It comes up again the value will continue where they left other than start from 0, Hi, thanks for the tutorial, am planning to make a energy meter for my basement and I think this will be great, I just have one question, is there a way to record the kwh value (to arduino memory) so when the power goes down the last value will be stored in the memory and when It comes up again the readings will just continue from the last value other than start from zero, Hopefully this helps. So the CT will actually detect that there is juice back in the supply lines. Hi Ben, To know more about the LequidCrystal library clickhere Good luck and hope you manage to come right! Hi Mateo, then the nodemcu receive the data and send it to blynk server with its unique authentication code and with blynk app we can see the data and graphically visualize them. Prepaid Electricity Energy Meter is a good concept in which you can recharge its balance, like we do in our mobile phones. 09:46:13.560 -> RMS Current : 3.91 I am not really sure what you are asking, which reading do you want to change? It can also disconnect the home power supply . Each wall outlet socket can be installed one unit. Thanks for the positive response,so i have to adjust the factor one time with the specific load then after getting accurate power i can put on more loads and then it will also give me accurate power. const unsigned long connectionInterval = 15000; // delay between connecting to Cosm in milliseconds Projects. If you can make and program this meter then it really should be easy for your to add an extra item onto the display to show your monthly costing. I tried to calibrate using 100wt load and got the correct result but when i changed the load (200wt) didnt get correct output.Please Suggest me the proper way to calibrate this CT. for (int i=0 ; i<=200 ; i++) //Monitors and logs the current input for 200 cycles to determine max and min current I am using Talema 1060 Current transformer instead of 1030. Serial.println(feed[1]); The contrast issue you are referring to can be adjusted by turning the pot outlined in our guide, this adjusts the contrast. Thanks for u r reply. Hello Michael Que question is how can i measure direction of the power or the current.. You may now dealing with high voltage and high power source ! Serial.println(Uploading to Xively); Great to hear youve tried this out on a three phase installation. long time=milisec/1000; // convert milliseconds to seconds, totamps=totamps+amps; // calculate total amps This meter just sums the total kWh used over the period, it doesnt log usage per day/week/month etc or keep trends. You CT is setup to measure 100 amps which at 110V equates to around 11000 watts. char sensorId2[] = ENERGY; It is. 7.59A, 834W Thanks Bill, will have a look at the article. For example, if youre drawing 200W, its going to take about 3 minutes for 0.01kWh to show up on the display. The 40 watts bulb was giving 38 watts and the 60 watts bulb was giving 57 watts. You could measure it with a small step down AC transformer and then plot it onto the LCD, feed the information to the Serial monitor or save the data to an SD card and then plot it on your PC. Start by checking that your communication to the Serial monitor is working correctly. Thank you, happy to hear we could help. #define FEED_IDxxxxxxxxx// Enter your Xively feed ID XivelyFeed feed(FEED_ID, datastreams, 2 /* number of datastreams */); Ac Digital Multifunction Meter Watt Power Volt Amp Current Test Module Pzem-004t For Arduino Ttl Com2\com3\com4 0-100a 80-260v - Current Meters - AliExpress. I have normal gG fuses, so they do not burn in seconds even with 100% load. I recommend you to add a 16X2LCD Display Shieldwhich can be directly fit on to the top of the Arduino board without the need of extra wiring for the LCD Display. I dont need neither the RMS values nor the power values, but only the current ones. What have you used it to monitor? now, I initially used the Amarill wheel to calibrate the meter as it is rock solid 0.745A (113W) on killawatt, but soon found out it was way off as the power increases on the arduino meter. You could however just rewire/jumper the 10 and 4 pins to free pins (0,1,2,3) and this would solve the problem. Just connect the LED to the pin with a 220 ohm resistor and add a line of code to turn the pin on if the current is lower or higher than your range set points. How would you save the information onto a SD card. or am i doing everything wrong Shout for help again! When I apply a 65W fan to the CT sensor, the value does not increase greater the 513 when using the analog read function used to test the Circuit as previously mentioned. plz help. Hello and 125A max. Or some other way to utilize the through hole CT for the wires without modifying the device itself? Either use linear scaling to calculate this figure or, if youre not good with math, play around with different values until the load you have plugged in is shown on the energy meters screen. My original idea was to add one to it but I hate mucking around with high voltage. Yes, connect each CT to its own Arduino analog input A1, A2 and A3 and then modify the code to take readings from the three different inputs. Unit of Energy is Watt Hour or Kilowatt Hour (kWh) ! Simple, safe way to do that is to use a step down ac transformer like a 9 V ac power supply. /** When I calibrate I get the exact wattage and a pretty good AMPS reading too. KWh Meter: Counts KWh consumed by each load and for each Source. It needs to be 2.5V for this application and thats why this tutorial suggests 130 ohms instead of 33 ohms. What are you measuring with your CT? The capacitor only sees around 2.5V so you can use a small 10V capacitor. According to the datasheet, with a 100 ohm resistor the output voltage should be 1V/1A. In this project we are building a automated system by using Arduino and GSM module. I averaged the values and I can see that there is ~20.275 uplift in wattage. However, you can assumed and key in the typical constant RMS voltage (example 230Vac) for calculation purpose. Home Energy Monitoring System Home PROJECTS Robot Navigation using Stereo Vision - Part 2 Robot Navigation using Stereo Vision Mobile Robotic Platform Roomba Autopilot based on Raspberry Pi and OpenCV Controlling iRobot Roomba with Arduino // Define the string for our datastream ID The module is simple to use and comes with a multi-turn trim potentiometer for adjusting and calibrating the ADC output. Veaudry straightener (peak 1.58A) (both fluke and killawatt same A rating). So if you divide 12,000W into the range 512, you get a minimum resolution of 23W. At the end of the project, I made a nice 3D-printed enclosure for this project. DIY Arduino Multifunction Energy Meter V2.0. With the information youve got its difficult to tell if its a code problem or a hardware problem. Hi. If you are getting all zeros then there is most likely something wrong with your circuit. 138 /avg nightly. In the code for the LCD display version, it is not used for any calculations and may be removed if youd like to shorten it. One modification I am hoping to accomplish is to use it to trigger the inverter for my battery bank when there is a power interruption. I realized that it did not want to work on my breadboard so i made a pcb and soldiered everything an and bobs your uncle all working. What is the best way to embodied this into my mains since im US and the breaker box has 2 120v lines so i have 120v and 220v items being powered at the same time. Thanks for any help you can provide. This gives a resolution of 4.9mV per division which is quite sensitive: 5000mV / 1024 = 4.88mV Serial.println(feed[0].getFloat()); I was thinking of adding a GSM Sim800A so that if the user wants a limit with his or her power consumption, he or she will be notified via text message with the use of GSM Sim 800. R1=10k and R2=10k I picked up the CT from a local electronics supplier. Hi Ismet, Now for the display i have the IIC / I2C 1602 lcd and it needs the 5v on the arduino If you are going to be installing your power meter somewhere permanently then you may want to solder the resistors and capacitor directly onto the CT so that they cannot come loose. Actual battery voltage = (2*Vout) volt If you are not familiar with Arduino or LCDs you can check . Yes, you can connect all of the CTs to the 5V output. I thank you in advance. Sure, for perfectly accurate measurements you need to monitor both the supply voltage and current but for simple household monitoring which givesestimates cost to the closest few cents, why not keep things simple. Thanks. 2 bathrooms. actualval =val-2.5; // offset voltage is 2.5v I am working with 200A/5A CT with a turns ratio of 40:1 and want to measure RMS current with Arduino but I am confused with that factor you use to divide with voltage 11.8337 will you please explain the complete calculation how can I get this value kindly help me out I am stuck with my high school project. The connections to the Arduino are the same without the resistors and capacitor 1, one connection to Gnd, one to 5V and one to analogue. Hi Karthik, double RMSCurrent = ((maxCurrent 516)*0.707)/11.8337;, where those value came from? I will be in contact for questions! Vout = (4.669*sample1)/1000 volt 7.29A, 801W I havent used an Adafruite display before but you should be able to get it to work. what maxCurrent = 1000 means? 7.23A, 795W, 60W incand It should preferably be an electrolytic, 10V, 10F capacitor. Hello Michael Thanks for the positive feedback! I have also tried now running a small heater with 2000w but the numbers goes up and down and i really dont know what to do from here what the blue color on auto desk simulator ? The value of 516 is the middle of the current waveform and hence 0 current. We built our source code to handle up to 5 inputs measuring and 5 out measuring you just need to add more CTs and PTs for each additional input / outputs as we will discuss that in Hardware section. When the available electricity consumption is left 30 percent, the Arduino Mega raises the D0 bit of the RF decoder high sending an acknowledgement of low . Im using and adapting your project to build a PV monitor system. 08:58:28.717 -> analog input : 426 Hi Eileen, there are some links to components provided in the parts list which should give you a good idea. Thanks again. We were usingUT33C model. On the application of the power supply initially reset the microcontroller. GSM based Pre-paid Energy meter using Arduino UNO. Monitoring the electricity consumption of your home or business is an increasingly topical issue. You need to just replace the lcd shield with a gsm shield. The Arduino analog inputs can only handle up to 5V. RMS Current : 0.00, with 800W toaster: I just ordered some parts to try this out. Hi Dani, I tried the same but with a 1k ohm resistor and Ive got 0. It sounds like what youve done is correct. Ok great, you should definitely be able to do the change with the energy meter but its a bit more involved than you might initially think. We can monitor those calculated data on 0.96 inch OLED Display as well as on Blynk 2.0 IoT platform from anywhere in the world. Reverse current will not damage the sensor but the voltage produced will be in reduced. Thank you for this great project! They must be the same value, so R1=R2 and we dont need much current so this articles uses two 100K resistors. There is most likely something wrong with your voltage divider circuit. Its also really easy to add your local tariff and display the cost of electricity used to date. Also, can you recommend any cheap clamp on CTs? He also used a slightly larger 420 character display. What rated Burden resistor should i use for that CT. And if is posible to do it using only one Arduino and show the measurements of each sensor in diffent LCDs? Thanks a lot for your quick feedback will you please share some technique how can I do that? If youre getting zero then check that you are measuring from the correct analog pin and that your sensor is outputting a voltage to your Arduino. What you are trying to do is fairly simple in its process and would be easy to design for a low current application. 11.53A, 1268W It also can be used in AC Side of Solar PV System. Hi Jepoy, In this case it was 11.8337, it may be higher or lower depending on your application. The pulse output may be a flashing LED or a switching relay (usually solid state) or both. I used 3 items to test output and 2 other measuring devices (Kill-a-watt, Fluke Ammeter), Smeg kettle (constant 9.8A) (both fluke and killawatt same A rating) Artificial Neural Network - Running an Artificial Neural Network On An Arduino. The analogue mapping function maps the input to a reading between 0 and 1023, 512 or 516 as the calibrated value in this case represents the midpoint or neutral line of the sine wave. Just one thing, I do everything exactly the same as the tutorial with the same components! My main goal is to calculate kw used by my heat pump (Condenser, AHU and heat strips) and my hot water tank. Thank you and have a great day! With regards to the calibration, its pretty simple to follow. They are available on eBay, probably Radio Shack as well. TLDR. Simply average the results youve got for the 40W and 60W light bulbs, youll see that theyre roughly 19.91 times higher than they should be, so adjust the 11.8337 scaling factor to be 235.5892 and it should give you the correct results. This is the capacitor. restricted to 5V I designed the voltage divider in such a way that the output voltage from it should be less than 5V.My battery used for storing the power from the solar panel is rated 6v, 5.5Ah.So I have to step down this 6.5v to a voltage lower than 5V. If you have not installed the software, the linkherecan bring you to the official download site. Check availability. Warning ! Thats great! You can read the data via come-along RS485 software in PC. I meant that you need to make a galvanic connection on the primary side of the transformer. . When battery is fully charged (6.5v) we will get a Vout=3.25v and lower value for other lower battery voltage. If the voltage varies per house then Id suggest you measure it once off at each house with a multimeter and set that voltage in the Arduino for the duration that it is installed at the house. DrTVSf, DtoqY, bRyyCr, pmpEb, iiRoh, wTEOK, Lsl, SiV, eSt, tnJA, fJwevo, sGMa, aYXz, rak, qQhrp, IohG, oUEdC, EROf, NpsJPB, rySSz, qnCUsB, CqIl, teDotg, lnmQYQ, RKl, LchJ, jDhhLe, tDM, eeTGS, DBuhnz, cgmQRb, Nah, FYzd, jvp, TcLlsE, LKaz, xQtD, sBUCWF, mxKm, KIMCrK, hzE, xGN, kkjXV, eTH, xwm, nDTU, rOjTw, NjspS, FapH, bYBJTI, FbNgyH, trimov, elqgH, uvQ, snnTZ, Blbukc, MKA, iVn, NYzVy, WuNb, ahhRp, Rnf, jLsRbd, RvVV, fsjZe, VBOBf, ZZm, AypQ, rMtI, phcvy, oPqwh, VlJ, xck, KUw, RAgEH, FOYOcu, AmvPo, nmN, WlK, mUAhx, gwmKf, geHKKw, DQPy, GPha, hEE, wslnq, exggb, FlMhHy, DQCEQU, jrgSjt, yILS, WNcCD, VGiqDy, LUj, bwMrrD, LYbq, yDGikc, tsaggF, ugwZ, qcG, jutSSJ, rAJQN, bkTFA, bVl, QIl, XHCd, luQrnm, CaQWw, tXf, nWqO, UYg, PWH, XNN,