Ein einfaches Messmodul für Strom und Spannung mit LCD-Anzeige und Ausgabe im seriellen Plotterin der Arduino IDE.
Herzstück ist ein INA219 von Texas Instruments. Dieser Integrierte Schaltkreis dient zur Messung von Strom durch einen Messwiderstand. Gleichzeitig wird auch noch die Spannung gemessen. Der Anschluss an einen Mikroprozessor erfolgt über den I2C-Bus.
Mit dem Beispielprogramm kann man einen Strom bis zu 1A und eine Spannung bis zu 32V messen.
Das LCD-Display und das Messmodul INA219 werden beide am I2C-Bus angeschlossen. Dabei ist darauf zu achten das unterschiedliche Bus-Adressen verwendet werden:
INA219: 0x40
LCD: 0x27
INA219 Zerø-Drift, Bidirectional Current/Power Monitor With I2C Interface
In diesem Beispiel wird ein Beakout-Board auf dem ein INA219 montiert ist verwendet:
Dieses Beispielprogramm misst im Sekundenabstand den Strom der durch den Messwiderstand auf dem INA219-Modul. Gleichzeitig wird die Spannung die an dem Verbraucher anliegt gemessen. Strom und Spannung werden dann auf dem LCD-Display ausgegeben.
LCD:
Ausgabe eines Messwertes auf dem seriellen Plotter der Arduino-IDE:
(hier wird nur der Strom in mA geplottet)
Der Funktionsplotter in der Arduino IDE wird über die serielle Schnittstelle mit Messdaten beliefert. Jeder Messdatensatz muss mit einem Zeilenvorschub abgeschlossen sein. Die einzelnen Messwerte werden durch Kommas getrennt:
12.71,67.20
12.74,67.40
12.72,67.40
12.67,67.72
12.64,67.80
12.62,67.72
Das Beispielprogramm kann auch ohne angeschlossenes LCD-Display gestartet werden. In diesem Fall werden die Messdaten nur auf der seriellen Schnittstelle ausgegeben.
Für den Anschluss des INA-Messmoduls und der LCD-Anzeige wird das Telemetrie-Shield verwendet:
Beispielprogramm:
Die Messfrequenz ist in diesem Beispiel auf ca. 1Hz eingestellt. Sie kann einfach geändert werden. Z.B. für "Langzeitmessungen" muss man die Zeit in dem delay am Programmende einfach entsprechend hoch setzen.
Die Messbereiche kann man mit dem Befehl setCalibration_... festlegen:
Durch die Verwendung von Librarys kann das Programm recht kompakt gehalten werden.
INA219
Die INA219-Library von Adafruit Industries ermöglicht mit sehr geringem Programmieraufwand die Erfassung der Messdaten des INA219.
LCD-Anzeige
Mit der LiquidCrystal-I2C-Library kann man LCD-Displays einfach ansteuern. Die Library übernimmt die Kommunikation über den I2C-Bus zwischen dem Arduino und dem LCD-Display.
Arduino-LiquidCrystal-I2C-library
Update: Messmodul mit drei Kanäle
Auf einer Lochrasterplatine sind drei INA-219-Breakout-Boards montiert. Damit können drei Strompfade unabhängig über den I2C-Bus gemessen werden.
Verweise und weitere Informationen:
...
08.10.2017
Dipl.-Ing. (FH) Jürgen Mayer, DL8MA - Weinstadt-Grossheppach
Impressum