Die zweite Leistungsmessung mit externen Sensoren für Strom und Spannung. Hier bietet sich ein Modul an, in dem ein ACS712 Chip verbaut ist. Zusätzlich kommt ein Spannungsteiler für die Spannungsmessung dazu (7k5 + 30k).
Die Hardware
– Arduino Uno
– Ethernet Shield 2
– Messmodul mit ACS712 Chip
– Messmodul mit Spannungsteiler
Die Software
Im Internet findet sich schnell ein bereits realisiertes Projekt, das nur angepasst werden muss. Die Anpassung ist von der Art, die Messwerte und den berechneten Wert direkt auf einen MQTT Server abzulegen.
Die Topics dafür sind:
Sensor2/Spannung/Messwert/mV
Sensor2/Strom/Messwert/mA
Sensor2/Leistung/Messwert/mW
Die Messwerte sind alle als „milli“ angegeben, da der sprintf() für Floatwerte nicht richtig funktioniert.
Aufgetretene Probleme
Mit der berechneten Spannung und dem berechneten Strom werden Werte angezeigt, die so nicht stimmen können. Hier liegt die Ausgangsspannung bei 1V für anliegende 5V bis 5V für maximal anliegende 25V.
Gemessene Spannung für die Spannungsmessung: 1,00 Volt.
Gemessene Spannung für die Strommessung: 2,33 Volt.
Der Sensor arbeitet mit einem Offset, um die Flussrichtung darstellen zu können.
Die Berechnungsformel für die Spannung ändert sich damit in:
(eingelesene Bits * 5 Volt * faktor) / 1024
mit faktor = 5, da für jedes Volt Ausgangsspannung jeweils 5 Volt Eingangsspannung anliegen. Für den Strom fällt dieser Faktor weg, dafür kommt der Offset dazu. Die Berechnung dazu stammt aus der Software aus dem angegebenen Link unten.
Mit diesen angepassten Berechnungen kommt die Messung der Wahrheit deutlich näher…
Der Sketch
Spannung-Strom-Messen
Links
ACS712 Datasheet
https://www.allegromicro.com/~/media/Files/Datasheets/ACS712-Datasheet.ashx
Beschreibung Sensormodul
Software für ACS712
Mosquitto Subscriber
MQTT Spy
https://github.com/eclipse/paho.mqtt-spy/wiki/Downloads
MQTT fx
http://mqttfx.jensd.de/index.php/download