Zeile 5: |
Zeile 5: |
| [[Image:AmmeterInBetrieb_Schaltplan.jpg|thumb|'''ammeter circuit diagram''']] | | [[Image:AmmeterInBetrieb_Schaltplan.jpg|thumb|'''ammeter circuit diagram''']] |
| | | |
− | I describe a volt-amperemeter using Arduino microcontroller. | + | I describe a voltmeter and an ammeter using an Arduino microcontroller, |
− | The measurements (voltage and current in one) can be made permanently
| + | measuring voltage and current simultanenously, all in one circuit. |
− | (for instance every second). | + | These measurements can be made permanently (for instance every second). |
| | | |
| In picture ''ammeter on breadboard'' you see at the | | In picture ''ammeter on breadboard'' you see at the |
| ''input'' a battery block and at the ''output'' a LED | | ''input'' a battery block and at the ''output'' a LED |
− | with its safety resistor. These two components can be | + | with its safety resistor. These components can be |
− | replaced by any two power source and current consumer | + | replaced by any power source and current consumer |
| respectively, as long as they are in a certain range. | | respectively, as long as they are in a certain range. |
| In following attachment you find the Arduino code, the DS1307 library | | In following attachment you find the Arduino code, the DS1307 library |
| and also the Fritzing scheme for closer reference; http://fritzing.org/ | | and also the Fritzing scheme for closer reference; http://fritzing.org/ |
| | | |
− | {{zip|ArduinoAmmeter.zip|118KB|Version from 05.02.2012}} | + | {{zip|ArduinoAmmeter.zip|118KB|}} |
| | | |
− | ==Resistor Values==
| + | =Resistor Values= |
| The values of the given resistors are in the breadboard | | The values of the given resistors are in the breadboard |
| picture | | picture |
− | (from left to right) 100K 10K, 0.47 Ohm, 220 Ohm, 100K, 2.2K (twice). | + | (from left to right) 100K, 50K(10K/6.8K), 47(0.47/4.7) Ohm, 220 Ohm, 100K, 2.2K (twice). |
| Henceforth, I refer to them as R1, R2, R3, R4, R5, R6 und R7 respectively, | | Henceforth, I refer to them as R1, R2, R3, R4, R5, R6 und R7 respectively, |
| | | |
− | With those given values a maximum voltage of 55 Volt and
| + | The values of R2 and R3 depend from the range you are taking measurement. To decide their proper |
− | a maximum current of 10.6 Ampere can be measured. For different voltages
| + | value use the table below. Note that you must adapt also the Arduinocode accordingly; |
− | choose a differnt R2, für different currents a different R3.
| + | R2 refers to variable '''V10K_RESISTOR ''' and R3 is '''I0_47_RESISTOR''' |
| + | |
| | | |
| Following table lists different values of R2 and its corresponding maximum voltage; | | Following table lists different values of R2 and its corresponding maximum voltage; |
− | for differnt values of R3 its maximum current. | + | for different values of R3 its maximum current. |
| Note that R2 and R3 can be chosen independently from | | Note that R2 and R3 can be chosen independently from |
| each other. To calculate different values you may use the Libre Office calc file contained | | each other. To calculate different values you may use the Libre Office calc file contained |
Zeile 46: |
Zeile 47: |
| | | |
| |} | | |} |
− | In case you choose a different value you have to adapt that in the Arduino source, respectively,
| |
− | Regarding R2, modify the initialization of variable V10K_RESISTOR,
| |
− | for R3 the variable I0_47_RESISTOR.
| |
| | | |
| The value of the resistors R6 und R7 (here given as 2.2K) need not to be exactly like that, | | The value of the resistors R6 und R7 (here given as 2.2K) need not to be exactly like that, |
| for instance a value of 4.7K worked as fine. There is nothing to adapt in the code in this case. | | for instance a value of 4.7K worked as fine. There is nothing to adapt in the code in this case. |
| | | |
− | ==Logging==
| + | =Logging= |
| [[Image:DS1307.jpg|thumb|'''timer DS1307''']] | | [[Image:DS1307.jpg|thumb|'''timer DS1307''']] |
| Time and Date information is delivered by DS1307 break out board. | | Time and Date information is delivered by DS1307 break out board. |
Zeile 74: |
Zeile 72: |
| log permanent OFF | | log permanent OFF |
| | | |
− | ==References== | + | =Accuracy= |
| + | Alas, the values are not too accurate. Check out discussion and proposals |
| + | for bettery accuracy at following link |
| + | http://arduino.cc/forum/index.php/topic,140203.0.html |
| + | For one thing you can lower the resistor values when it is safe for your |
| + | application. |
| + | |
| + | =References= |
| My circuit is an adaption of Renatos blog | | My circuit is an adaption of Renatos blog |
| http://rexpirando.blogspot.com/2011/03/arduino-volt-ammeter-part-1-breadboard.html | | http://rexpirando.blogspot.com/2011/03/arduino-volt-ammeter-part-1-breadboard.html |