Arduino VoltAmmeter: Unterschied zwischen den Versionen

Aus Happylab
Zur Navigation springen Zur Suche springen
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 15: Zeile 15:
 
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; http://fritzing.org/
 
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, 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  
Zeile 40: 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.

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.