Seite 1 von 3

Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 18.01.2019, 23:18
von Gelegenheitsbastler
Auf Grund der Bitte von DIJe beschreibe ich nachfolgend, wie ich zu meinem Drucksensor gekommen bin.
viewtopic.php?f=76&t=48389#p485108

Hintergrund ist, dass die Heizung zwei Heizkreise hat, von denen aber nur einer ca. 4-5 Monate im Jahr aktiv ist. Offenbar ist das der Grund, weshalb sich gelegentlich Luft im System sammelt, die dann über die Automatikentlüfter abgelassen wird. Fällt der Druck zu weit, schaltet sich die Heizung ab. Das wiederum führt zu kaltem (Dusch)Wasser. Eigentlich bräuchte ich keinen Sensor, um auf das Problem aufmerksam gemacht zu werden, denn die Tatsache, dass das Duschwasser zu kalt ist, wird mir in solchen Fällen sehr lautstark aus dem Bad mitgeteilt ;-)

Zu finden ist das Projekt von Jérôme hier:
https://github.com/jp112sdl/HB-UNI-Sen-PRESS

@Jérôme
ANALOG_SOCKET_VALUE musste ich auf 50 einstellen, damit der digitale Wert so genau wie möglich mit dem Wert des analogen Manometers übereinstimmt.

Den Hardwareaufbau habe ich weitestgehend so übernommen. Nur habe ich natürlich meine Platine "Modular" statt eines Arduino verwendet. So erspare ich mir eine Menge Kabel und damit potentielle Fehlerquellen. Der von mir verwendete Sensor ist die "0.5MPa" Version, da davon auszugehen ist, dass der Druck im Heizungssystem nicht über 5 bar steigen wird.

Um den Druck nicht nur über die Seite der HomeMatic sehen zu können, wollte ich zusätzlich ein kleines Display anschließen. Da Jérôme dazu schon etwas entwickelt hat, dachte ich, dass ich es so übernehmen kann. Aber leider hat das nicht geklappt.
viewtopic.php?f=76&t=48389#p485104
Da mir die Anzeige sowieso zu klein war, habe ich den Sketch auf die Verwendung eines 0802 LCD (8 Zeichen, 2 Zeilen) abgeändert.

Das Problem war nun aber, dass das LCD von Hause aus nicht per I²C angesprochen werden kann. Daher habe ich einen I²C Expander mit einem PCF8574 zwischen geschaltet. Diese günstigen fertigen Platinen werden bei den größeren LCDs direkt auf die Stiftleiste gelötet. Das ist auf Grund der geteilten Stiftleiste bei meinem LCD leider nicht möglich. Daher musste eine manuelle Verkabelung vorgenommen werden. So weit so gut. Nun kam das nächste Problem: Der AVR arbeitet in den HomeMatic Projekten nur mit 3V3. Die reichen aber nicht aus, um meinem LCD etwas Sichtbares zu entlocken. Also musste ich wohl oder übel noch einen bidirektionalen Levelshifter dazwischen setzen, um das I²C Signal auf die 5V anzuheben, mit denen das LCD betrieben werden muss. So ausgestattet war es nun möglich, die Infos auf dem LCD darzustellen. Da ich nur einen einzigen Sensor einsetze und auch keine Fehlermeldung und Dergleichen darstellen möchte, habe ich mich auf die Anzeige des Leitungsdrucks beschränkt.

Die Hardware wurde im Wandgehäuse neben der Heizung verbaut, von wo über ein bereits vorhandenes 5V Hutschinen-Netzteil die benötigten 5V bezogen werden. Die Spannung habe ich auf 5V2 eingestellt, damit auch ein über ein längeres Kabel verbundenes Gerät noch in den Genuss von 5V kommt. Um möglichst exakte Werte zu erhalten habe ich für den Spannungsteiler 1% Widerstände (80k6 und 221k) aus der E96 Reihe verwendet, die ich vorher durchgemessen habe. So komme ich sehr nahe an das von Jerome angegebene Verhältnis von 1,363 für den Spannungsteiler heran. (das passt bei 5V2 natürlich nicht mehr so richtig)

Um das Gerät in der HomeMatic Oberfläche nutzen zu können, muss das JP-HB-Devices-addon installiert werden.
https://github.com/jp112sdl/JP-HB-Devic ... s/tag/1.28

Sollte das Icon zum Drucksensor nicht erscheinen, könnte das Löschen des Browser-Caches Abhilfe schaffen.

Demnächst möchte ich den Druckverlauf über CUxD-Highcharts aufzeichnen (klappt aktuell noch nicht). Für die Zukunft werde ich mir eine Benachrichtigung auf dem Smartphone einrichten, sollte ein vorgegebener Wert unterschritten werden. So kann ich rechtzeitig Wasser nachfüllen. Damit sollten die lauten Benachrichtigungen aus dem Bad der Vergangenheit angehören ;-)

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 18.01.2019, 23:39
von jp112sdl
Vielen Dank für die Mühe, das alles niederzuschreiben und zu teilen!

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 19.01.2019, 11:12
von DiJe
Hallo,
danke für das teilen.
Gruß Dieter

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 03.02.2019, 14:53
von Zapo
Hallo!

Wenn ich das HB-UNI-Sen-PRESS.ino lade, wird es mit dem folgenden Fehler beendet. Ich bitte um Hilfe, was ist das Problem?

<title>HB-UNI-Sen-PRESS/HB-UNI-Sen-PRESS.ino at master · jp112sdl/HB-UNI-Sen-PRESS · GitHub</title>

stray '\302' in program

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 03.02.2019, 15:00
von jp112sdl
Du hast HTML Code in deine Arduino IDE kopiert und keinen Quelltext.

Bitte nur den reinen Text verwenden.
https://raw.githubusercontent.com/jp112 ... -PRESS.ino

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 06.02.2019, 17:30
von Zapo
Hallo!
Danke für deine antwort.
Ich benutze HB-UNI-Sen-Press.ino, das ist mit ssd1306 lcd. Welche Arduino-Pins sollten an den i2c-Bus scl und sda angeschlossen werden? Welche LCD eignet sich dafür, 128x32 oder 128x64 oder beide?

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 06.02.2019, 17:54
von jp112sdl
Zapo hat geschrieben:
06.02.2019, 17:30
Welche Arduino-Pins sollten an den i2c-Bus scl und sda angeschlossen werden?
An die Hardware-I2C Pins. Beim Pro Mini (ATmega 328P) sind das z.B. A4 und A5
Bild
Zapo hat geschrieben:
06.02.2019, 17:30
Welche LCD eignet sich dafür, 128x32 oder 128x64 oder beide?
Ich glaub das 128x64. Mit dem hatte ich damals den Sketch erstellt.
Wenn weniger Zeilen ausreichen, sollte auch das 128x32 gehen... musst du mal ein bisschen probieren.

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 07.02.2019, 16:49
von Zapo
Hallo !

Ich habe versucht, HB-UNI-Sen-Press.ino hochzuladen, das ist mit ssd1306 lcd( jp112sdl removed printDeviceInfo() ), jetzt habe ich folgende Fehlermeldung erhalten: Der Sketch verwendet 31712 Bytes (103%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
Mfg: Zapo

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 07.02.2019, 17:00
von jp112sdl
Wirst wohl nicht drumherumkommen, die Debugmeldungen zu deaktivieren.

Füg mal ein

Code: Alles auswählen

#define NDEBUG
an den Anfang des Sketches ein

Re: Heizung Druck auslesen mit HB-UNI-Sen-PRESS

Verfasst: 12.05.2019, 14:05
von Zapo
Hallo!

Die Druckmessung funktioniert, die Anzeige ist auch, aber die LED blinkt jede Sekunde. Wenn die Druckmessung eingeschaltet ist, wird die CCU in mehreren anderen Geräten gestört. Was bedeutet es, wenn die LED jede Sekunde blinkt?
Mfg Zapo