Weisshaupt Heizungssteuerung

Begonnen von Elektrolurch, 19 Dezember 2013, 13:15:50

Vorheriges Thema - Nächstes Thema

Elektrolurch

Update 14.3.2015

Hallo,

ich habe eine neue Weisshaupt - Heizungsanlage mit Gastherme und Solarzuheizung. Alles ist vernetzt über ein Modul Wcom, ein Webserver, der mit dem Client über json und etwas entkryptischen Telegrammen spricht. Nach einigem Reverse-Engineering habe ich das ganze aber "geknackt" und kann die Werte / Parameter auch von fhem schon auslesen.
Hat noch jemand so eine Anlage, dann würde es sich ja lohnen, aus dem bestehenden Code ein Modul zu machen?


Ergänzung:
Habe jetzt mal meine Version des Moduls hier angehängt.

Die 99_myUtilsHeizung enthält das Modul Wcmcom mit den devices für einen Gasbrenner, Heizkreise und Solaranlage. Welche devices verwendet werden sollen, werden über
attr HzAnlage devices <Liste...>
gesteuert.
Das Kommunikationsmodul von Weisshaupt enthält Unterseiten für Prozesswerte (_P), Konfiguration (_C) und für Einstellungen des Fachmanns (_F). Entsprechend sind die devices auch in meinem Modul Wcmcom benannt.
Alle seitens der Anlage  schreibbaren Werte sind auch von fhem damit änderbar. Die seitens Weisshaupt hinterlegten min und max-Werte werden auch von fhem berücksichtigt und können nicht über- bzw. unterschritten werden.
(Die Menüs, die per stList definiert werden, werden automatisch mit den Grenzwerten berechnet!)

Da Weisshaupt auch die Öffnung des Gasventils des Brenners ausgibt (Laststellung) und mein Modul 1 x Minute alle Werte ausliest, habe ich gleich eine Gasverbrauchsmessung implementiert. Man muss einmal die gemessenen Werte mit dem Gaszähler abgleichen.
Dazu ruft man zum Start der Kalibrierung
set HzAnlage GasStart <Wert des Zählers in cbm>
auf.
Nach einigen Wochen dann
set HzAnlage GasEnd <Zählerstand in cbm<
Daraus wird dann die Kalibrierung automatisch berechnet. Bei mir ergab sich ein Wert von 0.041 = 2.2 cmbm/je Stunde, was ziemlich genau der Maximalleitung der Anlage von 22 kWh entspricht.
Zusammen mit der Solaranlage, die ihre Ertragswerte ebenfalls in kWh angibt, wird dann eine "Gesamtenergiebilanz" inkl. Öko-Anteil errechnet.

Die 99_myUtilsHeizung setzt so um 23:45  die berrechneten Grenzwerte zurück, wie z.B. auch die Kollektortemp und Außentemps.
(Anpassung ggfs. notwendig).


Die 00_utils_Solar enthält ein
define HzAnlage Wccmcom <IP-Adresse> anpassen!
die zu setzenden Attribute der HzAnlage
die Definition einer readingsGroup zur Anzeige der HzaAnlage (Gasbrenner, Heizkreise)
die Definition einer readingsGroup  zur Anzeige der Solaranlage, der Jahres- und Monatsstatistik
die Definition einiger at's und notify's.

Die readingsGroups für die Anzeige des Gasbrenners und der Solaranlage und der Steuerung durch die Raumthermostate (PID) wurden nun dynamisch gestaltet:
- Es gibt zwei Modi für die Ansicht: Normal und Fachmann. Die Neuberechnung der rgs erfolgt in der 99_myUtilsSolar mit den subs "Modify...".
Außerdem wurden nun für die Temperaturen und Zustände Farben und Icons zum Aufhübschen hinzugefügt.


Die 99_myUtilsSolar enthält perl-Routinen für die erweiterte Steuerung der HzAnlage.

wie da u.a. wären:
- ein notify auf die Werte der HzAnlage zur Überwachung von Grenzwerten, Steuerung des Pufferschutzes und der Solarpriotät bei zu erwartendem Schönwetter.

- Vorlauftemperaturkontrolle (VTK)
wertet periodisch für vordefinierte Leiträume die Differenzen zwischen Soll- und Ist-Temperatur aus und steuert damit die Vorlauftemperatur der HzAnlage.
Dazu muss der HK2 (bei mir der Heizkreislauf, HK1 ist WW) auf die Regelvariante = Konstantvorlauf geschaltet werden.
Mit HK2-Betriebsart = Sommer schaltet man im übrigen die Umwälzpumpe aus, was VTK bei ausreichenden Raumtemperaturen zur Stromerspranis automatisch macht.

Die Parameter für die Vorlaufsteuerung über die Raumtemperatur und die Solar-Priosierung / Pufferschutz werden über den dummy PID und der Darstellung in der rg PID_rg gesteuert.
Setzt man dnen Zustand von PID auf "ein", so wird automatisch der Heizkreis (HK2) auf die Regelvariante "Konstantvorlauf" umgeschaltet.

Die VTK hat einige Parameter, die in dem dummy PID hinterlegt sind und ebenfalls über diereadingsGroup  PID angezeigt werden (Schaltschwelle zwischen Komfort und Absenk (Temp 18.5, Ventilschwelle 80 %, Regeldiefferenz 0.8 Grad)


Die VTK wird immer 5 Minuten nach Wechsel eines an den Thermostaten hinterlegten Programms (Wechsel zwischen Komfort und Absenk) automatisch aufgerufen, aber mindestens einmal je Stunde.
(Die Praxis hat gezeigt, die VTK auch durch Änderung der "desired-temp" an den Thermostaten anzustossen, um so auch schnell auf manuelle Änderungen reagieren zu können. Ist aber nicht hier Bestandteil -> Thermostate_notify notify ...)


Die VTK versucht die Vorlauftemperatur so einzustellen, dass das Regelventil an den Heizkörpern so um die 80 %  geöffnet ist.
Ist die Ventilstellung geringer, ist die Vorlauftemperatur zu hoch, ist sie größer, ist sie zu gering.
Durch die oben beschriebenen Zeitintervalle der VTK und durch ein bisschen Mathematik wird das Regelverhalten der VTK gedämpft, so dass kein Schwingen entstehen sollte.

Ein paar Stellen sind noch experimentell und für den Einsatz in einem anderen Umfeld sind sicher auch noch einige Anpassungen notwendig.
Ich habe jetzt ca. 4 Monate Heizbetrieb damit geschafft und das Ergebnis war durchaus zufriedenstellend.

Werden andere Thermostate als FHTs verwendet, so müssen Anpassungen vorgenommen werden.
Bei den Thermostaten ist ein reading "Leitraum" hinterlegt, welches die Werte ja, nein, 0.5, 0.75, 1.0, 1.25 und 1.5 haben kann. (Wichtung bei der VTK-Berechnung)
Gruß

Elektrolurch

Version vom 5.6.2015
kleine Änderungen, readingsGroup zur Anzeige kleinere Optimierungen
configDB und Windows befreite Zone!

extraem

Hallo Elektrolurch

da bei mir demnächst (2014) meine in die Jahre gekommene Gasheizung durch eine Weishaupt Gastherme ersetzt werden soll habe ich schon Interesse an einem Modul um die Daten in fhem zu bekommen ich kann dir nur leider nicht dabei helfen da ich die Anlage ja noch nicht habe
Ich hoffe du machst ein Modul

Elektrolurch

Hallo,

bei der Konzeption der Anlage ist darauf zu achten, dass die Komponenten tatsächlich auch mit dem Wcmcom - Modul zusammenarbeiten können. Mein Heizungsbauer hatte für den Solarteil zuerst das falsche Modul verbaut. Das konnte zwar den internen Bus, aber nicht mit dem Wcmcom zusammenarbeiten.
Mit der SW geht's schon ganz gut weiter, nach dem ich Reverse Engineering betrieben habe....
Ich denke, dass ich da in den nächsten Wochen ein Modul hier einstellen kann.

Elektrolurch
configDB und Windows befreite Zone!

extraem

Hallo Elektrolurch

danke für den Hinweis
Solar werd ich nicht machen nur die Gastherme welche hast du und wie bist du zufrieden
Welche Daten lassen sich den Auslesen

Gruß
Extraem

Elektrolurch

Hallo,

ich habe: WTC-G
WCM-SOL
Die Gastherme macht einen recht soliden Eindruck. Man sollte allerdings auf alle Fälle eine feste Installation mit Pumpe für das Kondensat vorsehen.
Auslesen über das Wcmcom lassen sich alle Prozesswerte für die Therme und die Heizkreise. Einstellen div. Programme für die Heizkreise und Zirkulationspumpe.
Mit dem Solar bin ich rechts zufrieden. Wir haben SW - Ausrichtung und 12 qm auf dem Dach. Seit Oktober wurden ca. 130 kWh an Zusatzwärme erzeugt.
Sogar am 21.12. gab es noch bei niedrigstem Sonnenstand 5,5 kWh.

Gruß

Elektrolurch
configDB und Windows befreite Zone!

gibacht

Hallo,

ich habe jetzt ebenfalls eine Weishaupt-Anlage und interesse mich auch für die Anbindung per FHEM.
Welches Modul, Home oder Expert verwendet ihr? So wie ich das gelesen habe, ist bei der Expertvariante die Zählerauswertung mit dabei. Ist das evtl. nur ein Unterschied in der Software, die man eh nicht braucht oder in der Hardware?

Veröffentlicht doch bitte einmal euren Code.

Gruß Dirk





HMLAN, TVserver Headless YAVDR mit LMS und FHEM, Rasperry PI Openelec als Clients.

Elektrolurch

Hallo Dirk,

ich verwende das wcmcom Home - Modul. Es reicht, um alle Daten aus der Anlage auszulesen und die wichtigsten Parameter seitens fhem zu steuern, wie z.B. "Vorlauftemperatur in Abhängigkeit des Heizungsbedarfs der einzelenen Räume" statt durch Außentemperatur.

Ich habe ein Modul programmiert, welche für eine Gastherme und eine Solaranlage + 2 Heizkreise (Zz, WW) die Daten ausliest, visualisiert und Sttistiken macht.
Es gibt aber noch mehr Komponenten, die die Wcmcom bedienen kann, die ich aber nicht habe. Daher ist mein Modul nur ein erster Anstatz und decktdie Konfiguration meiner Anlage ab.

Gruß


Elektrolurch
configDB und Windows befreite Zone!

gibacht

Hallo Elektrolurch,

anscheinend muß ich Profileinstellungen überarbeiten, da ich keine Benachrichtigung über Deine Info bekommen habe.
Daher melde ich mich erst jetzt. Die Heizung (ohne Solaranlage) läuft auch gerade erst 2 Tage und werde mir dann auch das Home-Modul besorgen. Das mit der Vorlauftemperatur und den Statistiken ist sehr interessant. Ich wäre Dir sehr dankbar, wenn Du mir Dein Modul einmal zeigen könntest. Meine Perl-Kenntnisse sind, naja sagen wir mal, so 'lalala'. Aber mit einer Grundlage überhaupt an die Daten zu kommen, sollte das wohl klappen und vielleicht kann ich dann auch noch die ein oder andere Funktion beisteuern.

Gruß
Dirk
HMLAN, TVserver Headless YAVDR mit LMS und FHEM, Rasperry PI Openelec als Clients.

Elektrolurch

Hallo,

ist es eine Gastherme?
Es gibt ein Modul, mit dem ich die Werte periodisch auslese und setze.
Und in einer zweiten 99_myUtilsSolar.pm ist dann u.a. die Steuerung der Vorlauftemperatur über die Raumthermostate.
Das dann anzupassen dürfte (bei nur geringen perl-Kenntnissen) schon eine gewisse Herausforderung darstellen.
Der Clou bei der VTK - Steuerung ist, die Vorlauftemperatur nicht zu schnell hochzufahren, wenn z.B. der Raum 3 Grad Differenz meldet. An der Strategie feile ich seit Januar herum und bin gespannt, ob die im nächsten Winter auch alle Situationen vernünftig abdecken wird ohne das es WAF wg. zu kaltem Wohnzimmer gibt.

Das WCMCOM Home hat einen Passwortschutz. Da ich das derzeit noch nicht in meinem Modul berücksictige, muss man den beim WCMCOM ausschalten und das Gerät muss eine feste IP im Netz haben.

Gruß


Elektrolurch
configDB und Windows befreite Zone!

gibacht

Hallo,

nunja, ich bewege mich auch beruflich im IT-Sektor und war auch mal Techniker. Programmierer bin ich nicht, jedoch sind einige Kenntnisse aus unterschiedlichen Bereichen vorhanden. Ich habe daher auch mal meine Signatur angepasst ;-). Einige Sachen laufen ...und ich bin wirklich ehrgeizig. Lass doch einfach mal sehen. Veröffentlicht hast Du ja - soweit ich es sehe - noch nichts.

Danke!

Gruß Dirk
HMLAN, TVserver Headless YAVDR mit LMS und FHEM, Rasperry PI Openelec als Clients.

gibacht

Zitat von: gibacht am 10 September 2014, 14:55:21
Hallo,

nunja, ich bewege mich auch beruflich im IT-Sektor und war auch mal Techniker. Programmierer bin ich nicht, jedoch sind einige Kenntnisse aus unterschiedlichen Bereichen vorhanden. Ich habe daher auch mal meine Signatur angepasst ;-). Einige Sachen laufen ...und ich bin wirklich ehrgeizig. Lass doch einfach mal sehen. Veröffentlicht hast Du ja - soweit ich es sehe - noch nichts.

Danke!

Gruß Dirk

und, ja es ist eine Gastherme
HMLAN, TVserver Headless YAVDR mit LMS und FHEM, Rasperry PI Openelec als Clients.

Elektrolurch

Hallo,

auf Wunsch habe ich jetzt mein Modul, nebst dem Kram drum rum für die Anzeige und Steuerung der HzAnlage oben an den ersten Beitrag angehängt und auch dort die Erklärungen eingefügt.
Als Neuling von fhem und perl sollte man sich nicht abschrecken lassen, nur Geduld und Stück für Stück.
Und viel Erfolg, hoffe es ist Dir nützlich.

Gruß


Elektrolurch
configDB und Windows befreite Zone!

gibacht

Hallo,

vielen Dank! Werde es mir heute Abend ansehen.

VG Dirk
HMLAN, TVserver Headless YAVDR mit LMS und FHEM, Rasperry PI Openelec als Clients.

rabbit02

Hallo,

bin Fhem-Neuling und sehr begeistert.
Danke an alle Mitwirkenden. Habe auch eine Weishaupt-Heizung mit WCM-COM und nutze die
Module von Elektrolurch. (Super, genau was ich gesucht habe!)

Gibt es dazu Updates und nähere Beschreibungen?

Gruß

Holger




Elektrolurch

Hallo,

leider hatte ich bislang keine Zeit, eine Doku dafür zu erstellen. War auch mein erstes Modul und an dem habe ich mir wegen der Codierung der Infos in der Hz die Zähne ausgebissen.
Wahrscheinlich habe ich noch einige Kleinigkeiten geändert und verbessert. Mittlerweile auch die Thermostate eingebunden, um damit die Vorlauftemperatur der Hz zu steuern.
Die GUI für die Hz und die Solaranlage etwas bunter gemacht und man kann die Ansicht zwischen Fachmann und Normal umschalten.
Da ich hier im Forum bislang der Einzige war, der eine Weisshaupt hat, habe ich die SW erst einmal für mich gemacht....

Wenn also konkrete Fragen bestehen... beantworte ich gerne.

Elektrolurch
configDB und Windows befreite Zone!