loading






I belong to a village of Odisha, India where frequent power cut is very common. It hampers the life of every one. During my childhood days continuing studies after dusk was a real challenge. Due to this problem I designed a solar system for my home on a experimental basis. I used a solar panel of 10 Watt ,6V for lighting few bright LEDs. After facing lot of hardships the project was successful. Then I decided to monitor the voltage, current, power & energy involved in the system. This brought the idea of designing an ENERGY METER.I used ARDUINO as the heart of this project because it is very easy to write code in its IDE and there are huge numbers of open source library available in the internet which can be used according to the requirement.I have experimented the project for very small rated (10Watt) solar system but this can be easily modified to use for higher rating system.

Feature:
Energy monitoring by
1.LCD display
2. via internet (Xively upload)
3. Data logging in a SD card

You can see my new instructable ARDUINO MPPT SOLAR CHARGE CONTROLLER ( Version-3.0)

You can also see my other instructables on

ARDUINO SOLAR CHARGE CONTROLLER ( Version 2.0)

ARDUINO SOLAR CHARGE CONTROLLER (Version-1)

Step 1: Parts Required :

1. ARDUINO UNO ( Amazon)
2. ARDUINO ETHERNET SHIELD ( Amazon )

3. 16x2 CHARACTER LCD ( Amazon )

4. ACS 712 CURRENT SENSOR ( Amazon )
4. RESISTORS (10k ,330ohm) ( Amazon )
5. 10K POTENTIOMETER ( Amazon )
6. JUMPER WIRES ( Amazon )
7. ETHERNET CABLE (Amazon)
8. BREAD BOARD ( Amazon )

<p>For your voltage measurement you use the USBs &quot;5&quot; volts as the reference voltage but that varies from one PC to the next. There is a 1.1 reference voltage on the Arduino which can be used to truly calibrate the this meter. Have you considered that? I use a backup PC for development and and another in the field so I need to see the same performance on both systems.</p>
<p>You are right.It is the best option.Thanks for suggestion.</p>
<p>i want make a final project is a solar charge controller. capacity battery is 12 V 100 Ah, i using Solar Cell capacity 100 Watt 25 A. So I should to make a solar charge controller capacity more than 25 A. Please give me solution . Thank you brother :)</p>
<p>i want make a final project is a solar charge controller. capacity battery is 12 V 100 Ah, i using Solar Cell capacity 100 Watt 25 A. So I should to make a solar charge controller capacity more than 25 A. Please give me solution . Thank you brother :)</p>
<p>hello deba. pls tell how to modify to 230v AC.</p>
<p>is it possible to deal with 230v ac?</p><p>is so...?how</p>
<p>use transformer and bridge rectifier to get voltage measurement</p>
<p>If transformer been used than battery for ac as concern ,Will it not affect to the power factor ?</p>
<p>use transformer and bridge rectifier to get voltage measurement</p>
<p>but this code calculate ah of battery from zero.. what if ah of the battey is 50% when it connected to arduino..</p>
<p>I have a 12V, 7ah battery. Are there any changes? If any, what should I change?<br></p>
<p>hello !</p><p>i am doing the same project, i would like to know how to measure readings of actual load(100 W bulb,fans,refrigerator etc..) with the same circuitry...waiting for quick reply....my email address is &quot;sravaninri@gmail.com&quot;</p><p>thank uuu......</p>
<p>Hi,</p><p>You can see the folowing link for reference </p><p><a href="https://openenergymonitor.org/emon/buildingblocks">https://openenergymonitor.org/emon/buildingblocks</a></p>
<p>is it 5A current sensor sir</p>
<p>Yeah I have used 5A. But use the sensor according to the load current + some margin</p>
Hello deba..i hope u can clarify me on this line<br><br>Amps=actualval*10<br><br>Why did u multiply it with 10? I still can't get it
<p>He multiplied by 10 because he used the ACS712 - 20A where its sensitivity is equal to 100 mV/A (sensitivity can be found in ACS712 data sheet).</p><p>Below is the detailed calculations if you use ACS712 - 5A:</p><p>Current = (0.00489 * Analog_Read - 2.5) / 0.185</p><p>where the 0.185 is the sensitivity of ACS712 - 5A (mV/A)</p>
Current = (0.00489*Analog_read - 2.5) M 0.185<br><br>Which one (Analo_read) value??
<p>sir what is the rating of the current sensor module?thanks in advance</p>
<p>Hello !</p><p>I am also doing same project. But it is the first time to use the arduino. So Would you send me a Sketch about your project. </p><p>My e-mail address is dbrqudgh92@gmail.com </p><p>Thank you! </p>
<p>You can download the code from step-9 and 10.It is attached in .txt format.</p>
<p>HI I AM A FINAL YEAR STUDENT AND I AM WORKING ON A PROJECT IN WHICH I HAVE TO CALCULATE POWER, VOLTAGE, CURRENT, POWER AND ENERGY. I WANT TO ASK YOU THAT, WILL THIS ENERGY METER WORK FOR AC DEVICES LIKE IF I WANT TO MEASURE THE POWER FROM 220V AC ???????????</p>
I have the same project but im facing a prob with the lcd here is my email ill send u the sketch amora.mirza@gmail.com
<p>sample1=sample1/150; <br>voltage=4.854*2*sample1/1000;</p><p>I have a question about the codes above. I don't understand why you have to divide 150 to sample1. Also, why didn't you just directly input the decimal from the analog input/digital input? Instead, you converted it into milli and divided it into 1000 at the end. It would be a lot of help if you respond thanks!</p>
<p>Oh if I understood it correctly, it was just the average of 150 samples all put together. Just to show an average digital output already? Am I right? </p>
<p>send me the code for current sensor and voltage sensor using arduino and display that into the lcd....</p>
<p>im final year student im workng on bidirectional solar energy measurement using arduino could u plse tell me how to write code for it</p>
<p>HI I AM A FINAL YEAR STUDENT OF ELECTRONICS AND I AM WORKING ON A PROJECT IN WHICH I HAVE TO MONITOR POWER, VOLTAGE, CURRENT, POWER FACTOR. I WANT TO ASK YOU THAT WILL THIS ENERGY METER WORK FOR AC DEVICES LIKE IF I WANT TO MEASURE THE POWER FROM 220V AC ???????????</p>
<p>hello deba,<br>I am trying to make a device that measure how much a battery still have capacity and display it in percentage, so i started by simple circuit like yours a red LED with 270 Ohm resistor, but while making the arduino sketch, i tried to use some of your codes for current measure, i couldn't understand why in Step 4 you did actualval = val -2.5; instead of + 2.5 ?<br>and then why you did amps = actualval*10 ? why you multiplied by 10 ? how did you convert from volts to amps here ??</p>
<p>As per the ACS712 data sheet the offset voltage is Vcc/2.In our case Vcc is 5V.</p><p>So the offset is 2.5V.</p><p>Offset means when you read zero current the sensors output is 2.5V.</p><p>So the measured reading should be subtracted by the offset to get the actual reading.</p><p>You can follow this basic tutorial for clear understanding.</p><p><a href="http://henrysbench.capnfatz.com/henrys-bench/the-acs712-current-sensor-with-an-arduino/">http://henrysbench.capnfatz.com/henrys-bench/the-a...</a></p>
<p>thanks for your reply deba, hahaha that's exactly the tutorial i found <br>after i posted my comment yesterday, yes pretty easy which got me to <br>understand the idea, it's very easy, but in the tutorial they doesn't do<br> any average data</p><p>and by the way, there is one more thing i found in my search, the sensor float, it give around 0.03 Amps or more of error which is exactly my case because it was measuring for a simple red 5mm LED with a 1K resistor, it gave me a value of 0.05 or 0.06 amps around that but in fact it should give a value of 0.002amps, this value is for amps not amps per hour, because when i added time factor i got a value of ampHour: 0.05237 Amps for time: 3601 sec<br>any idea why does that happen for amps alone and change for amps/hour ?</p>
<p>How did you measure current and voltage coming from the same source? As I try it here, I will never be able to measure voltage because the acs712 needs a short circuit to measure the current, then, when I try to measure voltage and curret at same time, I always get a zero for voltage. I know I'm doing something wrong, just don't know what.</p>
<p>Hey please go throgh this basic tutorial.Hope it will be helpful for you.</p><p><a href="http://henrysbench.capnfatz.com/henrys-bench/the-acs712-current-sensor-with-an-arduino/">http://henrysbench.capnfatz.com/henrys-bench/the-a...</a></p>
Thanks deba168, it's finally working. Very nice project.
Hi there,<br><br>Is it possible to make a battery bar ? I want to measure how long the batteries can power the circuit? And then shows up on LCD ?<br><br>Thanks
<p>It is possible..</p>
<p>Hi Deba, So this was your first Technical Instructable? Wow no wonder all your projects are so well done. You have talent for technical design, development, and the writing. I'll probably use part of this project. That is the fun thing in this community, taking parts and making what is truly useful to one's self. You are doing a good job young man. Be proud. Your friend and volt-brother, David (volthaus)</p>
<p>Yeah this was my first tech. Instructable.I was quite nervous when I was writing this.</p><p>Never thought viewers will like my writing style.</p><p>Thank You so much brother for your encouragement.It matters a lot for me.</p>
<p>I want to work on it but a bit of different way!!!<br>Can any one help me with measuring two way flow of energy???<br>#SmartMeter #Concept </p>
http://youtu.be/gYU0EWI3RmQ video i test with variable dc power source
<p>how about ac..? it usable?</p>
If you read the datasheet you will find out that there will be no problem with AC.
http://youtu.be/qz08mY2SStM this is ac watt meter
<p>I tried to copy and paste all the code but it fails to compiled. can i get the full code, please?</p>
<p>Deba</p><p>I am planning to follow your instructions to measure my house power conception. Can I use this for 15A [water heater, refrigerator] likes in 230v ? will ACS 712 support?</p>
<p>UPS - i don't think so! 230V so Close to you 5V stuff, even if the ASC712 cope with it. BUT it will not work as Your 230V is on AC - and that is not so easy to measure to arduinos DC. You rather have to to it With a AC-clap - there is some instruction how to to it. openenergy monitor I think</p>
<p>This looks excellent and I've ordered the hall effect sensor to build it. Thank you :-)<br><br>Just one comment... the delay is 2 msec (milliseconds) not 2 sec, which I'm sure is just a typo. :-)</p>
<p>Thanks for sporting the error.</p>
<p><em> have tried to copy and paste just the code I need but keep getting errors when compiling...</em></p><p><em><br></em></p><p><em><br></em></p><p>sketch_jun03a:2: error: expected unqualified-id before 'for'</p><p>sketch_jun03a:2: error: expected constructor, destructor, or type conversion before '&lt;' token</p><p>sketch_jun03a:2: error: expected constructor, destructor, or type conversion before '++' token</p><p>sketch_jun03a:7: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:8: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:10: error: expected unqualified-id before 'for'</p><p>sketch_jun03a:10: error: expected constructor, destructor, or type conversion before '&lt;' token</p><p>sketch_jun03a:10: error: expected constructor, destructor, or type conversion before '++' token</p><p>sketch_jun03a:15: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:16: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:17: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:18: error: expected constructor, destructor, or type conversion before '=' token</p><p>sketch_jun03a:21: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:22: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:23: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:24: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:25: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:26: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:27: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:28: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:29: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:30: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:31: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:32: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:33: error: expected constructor, destructor, or type conversion before '.' token</p><p>sketch_jun03a:34: error: expected constructor, destructor, or type conversion before '(' token</p><p>sketch_jun03a:36: error: expected constructor, destructor, or type conversion before '(' token</p><p>sketch_jun03a.ino: In function 'void setup()':</p><p>sketch_jun03a:42: error: 'lcd' was not declared in this scope</p><p>sketch_jun03a.ino: In function 'void loop()':</p><p>sketch_jun03a:47: error: 'lcd' was not declared in this scope</p><p>sketch_jun03a:52: error: 'watt' was not declared in this scope</p><p>sketch_jun03a:54: error: 'voltage' was not declared in this scope</p><p>sketch_jun03a:57: error: 'energy' was not declared in this scope</p><p>sketch_jun03a:59: error: 'amps' was not declared in this scope</p>

About This Instructable

268,087views

720favorites

License:

Bio: I am an Electrical Engineer.I love to harvest Solar Energy and make things by recycling old stuffs. I believe in ""IF YOU TRY YOU ... More »
More by deba168:DIY 3D Hologram PyramidSIMPLE QUADCOPTER ( HUBSAN X4 )ESP8266 Weather Widget
Add instructable to: