Arduino VoltAmmeter: Unterschied zwischen den Versionen

Aus Happylab
Zur Navigation springen Zur Suche springen
 
(14 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
For the English version go to [[Arduino voltammeter]]
 
For the English version go to [[Arduino voltammeter]]
 +
 
=Allgemeines=
 
=Allgemeines=
 
[[Image:AmmeterInBetrieb_Steckplatine.jpg|thumb|'''Ammeter auf Steckplatine''' gemessen wird die Spannung
 
[[Image:AmmeterInBetrieb_Steckplatine.jpg|thumb|'''Ammeter auf Steckplatine''' gemessen wird die Spannung
 
des Batterieblocks und der Strom der durch die LED fließt]]
 
des Batterieblocks und der Strom der durch die LED fließt]]
 
[[Image:AmmeterInBetrieb_Schaltplan.jpg|thumb|'''Ammeter Schaltplan''']]
 
[[Image:AmmeterInBetrieb_Schaltplan.jpg|thumb|'''Ammeter Schaltplan''']]
Im folgenden beschreibe ich den Bau eines Volt-Amperemeters mit Arduino Mikrokontroller.
+
Im folgenden beschreibe ich den Bau eines Voltmeter und Amperemeter mit dem Arduino Mikrocontroller;
 +
in einer gemeinsamen Schaltung und Messung.
 
Diese Messungen passieren gleichzeitig und können auf permanent
 
Diese Messungen passieren gleichzeitig und können auf permanent
 
gestellt werden, d.h. man erhält einen Log für Spannung und
 
gestellt werden, d.h. man erhält einen Log für Spannung und
Zeile 10: Zeile 12:
 
der Schaltung ein Batterieblock und beim Ausgang eine LED mit einem
 
der Schaltung ein Batterieblock und beim Ausgang eine LED mit einem
 
Vorwiderstand angeschlossen. Diese Komponenten können durch
 
Vorwiderstand angeschlossen. Diese Komponenten können durch
andere Stromquellen beziehungsweise andere Verbraucher ausgetauscht werden.
+
andere Stromquellen beziehungsweise andere Verbraucher ersetzt werden.
 
Im angehängten File ArduinoAmmeter.zip findest du den Arduino Code (.pde File), die DS1307 Library
 
Im angehängten File ArduinoAmmeter.zip findest du den Arduino Code (.pde File), die DS1307 Library
und das Fritzing Schema.
+
und das Fritzing Schema; http://fritzing.org/
{{zip|ArduinoAmmeter.zip|118KB|Version vom 05.02.2012}}
+
{{zip|ArduinoAmmeter.zip|118KB|}}
  
==Widerstandswerte==
+
=Widerstandswerte=
 
Die Werte der einzelnen Widerstände sind in der Breadboarddarstellung   
 
Die Werte der einzelnen Widerstände sind in der Breadboarddarstellung   
(v.l.n.r.) 100K 10K, 0.47 Ohm, 220 Ohm, 100K, 2.2K (2mal).  
+
(v.l.n.r.) 100K, 50K(10K/6.8K), 47(0.47/4.7) Ohm, 220 Ohm, 100K, 2.2K (2mal).  
 
In der Folge seien sie mit R1, R2, R3, R4, R5, R6 und R7 referenziert.
 
In der Folge seien sie mit R1, R2, R3, R4, R5, R6 und R7 referenziert.
Mit diesen Werten kann man eine Spannung von maximal 55 Volt und einen
+
Die Werte von R2 und R3 hängen ab in welchen Bereichen gemessen wird und
Strom von maximal 10.6 Ampere messen. Für andere Spannungsbereiche wählt
+
können der Tabelle unten entnommen werden. Auch der Arduinocode muss entsprechend
man ein anderes R2 wählen, für andere Stromstärken ein anderes R3.
+
angepasst werden; R2 ist im Code '''V10K_RESISTOR ''' und R3 ist
 +
'''I0_47_RESISTOR'''
  
 
Folgende Tabelle gibt an mit welchem R2 welche maximale Spannung gemessen werden  
 
Folgende Tabelle gibt an mit welchem R2 welche maximale Spannung gemessen werden  
 
kann und mit welchem R3 man bis zu welcher Stromstärke gehen darf. Die Wahl von R2 und R3 ist
 
kann und mit welchem R3 man bis zu welcher Stromstärke gehen darf. Die Wahl von R2 und R3 ist
dabei gegenseitig unabhängig.
+
dabei gegenseitig unabhängig. Im Archiv ArduinoAmmeter.zip ist auch ein Libre Office Calcfile,
 +
mit dem beliebige Werte berechnet werden können.
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
Zeile 37: Zeile 41:
  
 
|}
 
|}
Wählt man andere Widerstände, muss das im Arduinosourcecode entsprechend angepasst werden.
 
Der Widerstand R2 entspricht der Variable V10K_RESISTOR,
 
der Widerstand R3 der Variablen I0_47_RESISTOR.
 
  
Auch der Wert der Widerstände R6 und R7 (jeweils 2.2K) ist ein ''gutmütiger'', wenn man statt dessen etwa
+
 
 +
Der Wert der Widerstände R6 und R7 (jeweils 2.2K) ist ein ''gutmütiger'', wenn man statt dessen etwa
 
4.7K Widerstände verwendet funktioniert das timing ebenso gut. Hier braucht im Arduino Code nichts
 
4.7K Widerstände verwendet funktioniert das timing ebenso gut. Hier braucht im Arduino Code nichts
 
angepasst werden.
 
angepasst werden.
  
==Der zeitliche Log==
+
=Der zeitliche Log=
 
[[Image:DS1307.jpg|thumb|'''Zeitgeberbaustein DS1307''']]
 
[[Image:DS1307.jpg|thumb|'''Zeitgeberbaustein DS1307''']]
 
Die Zeit bestimme ich mit dem DS1307 Baustein.  
 
Die Zeit bestimme ich mit dem DS1307 Baustein.  
Zeile 66: Zeile 68:
 
log permanent OFF
 
log permanent OFF
  
==Referenzen==
+
=Genauigkeit=
 +
Die Messung ist leider nicht allzu genau. Unter folgendem Link gibt es eine Diskussion
 +
und Vorschläge um die Genauigkeit zu erhöhen
 +
http://arduino.cc/forum/index.php/topic,140203.0.html
 +
 
 +
=Referenzen=
 
Die Messschaltung ist eine Adaption des Blog von Renato
 
Die Messschaltung ist eine Adaption des Blog von Renato
 
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
 
die ihrerseits in der grundsätzlichen Idee von der Seite
 
die ihrerseits in der grundsätzlichen Idee von der Seite
 
http://electronics-diy.com/70v_pic_voltmeter_amperemeter.php inspiriert wird.
 
http://electronics-diy.com/70v_pic_voltmeter_amperemeter.php inspiriert wird.
 +
 +
 +
[[Category:Projekte]]

Aktuelle Version vom 15. Juli 2014, 19:41 Uhr

For the English version go to Arduino voltammeter

Allgemeines

Ammeter auf Steckplatine gemessen wird die Spannung des Batterieblocks und der Strom der durch die LED fließt
Ammeter Schaltplan

Im folgenden beschreibe ich den Bau eines Voltmeter und Amperemeter mit dem Arduino Mikrocontroller; in einer gemeinsamen Schaltung und Messung. Diese Messungen passieren gleichzeitig und können auf permanent gestellt werden, d.h. man erhält einen Log für Spannung und Strom. In Darstellung Ammeter auf Steckbrett ist am Eingang der Schaltung ein Batterieblock und beim Ausgang eine LED mit einem Vorwiderstand angeschlossen. Diese Komponenten können durch andere Stromquellen beziehungsweise andere Verbraucher ersetzt werden. Im angehängten File ArduinoAmmeter.zip findest du den Arduino Code (.pde File), die DS1307 Library und das Fritzing Schema; http://fritzing.org/

Widerstandswerte

Die Werte der einzelnen Widerstände sind in der Breadboarddarstellung (v.l.n.r.) 100K, 50K(10K/6.8K), 47(0.47/4.7) Ohm, 220 Ohm, 100K, 2.2K (2mal). In der Folge seien sie mit R1, R2, R3, R4, R5, R6 und R7 referenziert. Die Werte von R2 und R3 hängen ab in welchen Bereichen gemessen wird und können der Tabelle unten entnommen werden. Auch der Arduinocode muss entsprechend angepasst werden; R2 ist im Code V10K_RESISTOR und R3 ist I0_47_RESISTOR

Folgende Tabelle gibt an mit welchem R2 welche maximale Spannung gemessen werden kann und mit welchem R3 man bis zu welcher Stromstärke gehen darf. Die Wahl von R2 und R3 ist dabei gegenseitig unabhängig. Im Archiv ArduinoAmmeter.zip ist auch ein Libre Office Calcfile, mit dem beliebige Werte berechnet werden können.

R2 U_max R3 I_max
50K 15V 0.47 Ohm 10.6A
10K 55V 4.7 Ohm 1060mA
6.8K 79V 47 Ohm 106mA


Der Wert der Widerstände R6 und R7 (jeweils 2.2K) ist ein gutmütiger, wenn man statt dessen etwa 4.7K Widerstände verwendet funktioniert das timing ebenso gut. Hier braucht im Arduino Code nichts angepasst werden.

Der zeitliche Log

Zeitgeberbaustein DS1307

Die Zeit bestimme ich mit dem DS1307 Baustein. Man kann diesen Baustein und die damit verbundenen Kabel und Widerstände auch weglassen, wenn man nur eine adhoc Messung von Spannung und Strom benötigt; dann steht im Zeit-Datums-Teil jeweils 0.

BEISPIEL (aus SERIAL MONITOR)

log permanent on

V=5.86;mA=10.27;R_v=523.30;mW=60.14;time=19:2:58;day=5;monat=2

V=5.86;mA=10.27;R_v=523.30;mW=60.14;time=19:2:59;day=5;monat=2

V=5.86;mA=10.27;R_v=523.30;mW=60.14;time=19:3:0;day=5;monat=2

V=5.86;mA=10.27;R_v=523.30;mW=60.14;time=19:3:1;day=5;monat=2

log permanent OFF

Genauigkeit

Die Messung ist leider nicht allzu genau. Unter folgendem Link gibt es eine Diskussion und Vorschläge um die Genauigkeit zu erhöhen http://arduino.cc/forum/index.php/topic,140203.0.html

Referenzen

Die Messschaltung ist eine Adaption des Blog von Renato http://rexpirando.blogspot.com/2011/03/arduino-volt-ammeter-part-1-breadboard.html die ihrerseits in der grundsätzlichen Idee von der Seite http://electronics-diy.com/70v_pic_voltmeter_amperemeter.php inspiriert wird.