FHEM Forum

FHEM => Codeschnipsel => Thema gestartet von: hugomckinley am 27 Juli 2017, 22:48:40

Titel: Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 27 Juli 2017, 22:48:40
Für alle Besitzer einer Helios Lüftung die per ModbusTCP erreichbar ist. (Sollte aber auch über Modbus per RS485 leicht anpassbar sein)

Ältere Helios-Anlagen(ohne EasyControl): Diese sind anscheinend über das Vallox-Modul per USB zu RS485 Converter ansteuerbar.
siehe: https://forum.fhem.de/index.php/topic,74788.msg922421.html#msg922421

Ich werde diesen Artikel immer auf dem aktuellen Stand halten, damit jeder die aktuelle Version des Scripts herunterladen kann.   

Meine Anforderungen waren:

Voraussetzungen:
Hinweis: Wer Interesse hat, die Lüfterstufen anzupassen -> https://www.kwleasyplan.de/Downloads/Planung-Einregulierung/17.html

Bedienungsanleitung:
Hinweis: Es wird ein notify angelegt, welches die Funktionen der Readingsgroup aufruft.

Update von bestehenden Anlagen:
Sollte es schon eine KWL geben, muss diese erneut mit dem gleichen Namen angelegt werden. (Defmod macht das Update des Objekts.) Das wars schon.
Achtung: Ein Update überschreibt alle bestehenden Attribute (z.B. Lüfterstufen, Zeitlisten)! Tipp: Vorher einen Screenshot machen, um nichts zu verlieren.
Wichtig: Man muss die Regelung wieder durch einen Klick in der Readingsgroup auf helios unter Automatik aktivieren.


Im Betrieb sieht das dann wie unten im Bild aus.
Erklärung:

Im nächsten Screenshot sieht man zum besseren Verständnis, wie das bei mir aussieht. (Das Rollo gehört natürlich nicht zur Lüftung ;-)

... und noch ein aktueller Screenshot des Winterbetriebs, bei dem man die Leistung der Vorheizung und den Zeitbetrieb sieht.

Folgende Parameter sind als Attribute der Lüftungsdevices konfigurierbar:

Das war es schon aus Endanwendersicht :-)

Das vorliegende Script ist noch nicht fertig. Folgende Punkte stehen auf meiner Wunschliste.

Diese Liste ist sicher nicht vollständig und deckt nur meine Wünsche ab.
Weitere Details findet ihr im Changelog im Scriptfile.
Ich möchte euch bitten, diese Liste per Post in diesem Thread mit euren Wünschen zu erweitern und ich schaue was ich realisieren kann.

Technische Details für die, die es genauer wissen wollen.
Zur Regelung:

Hinweise/Tipps:
(Folgende Dinge sind mir aufgefallen und ich denke, dass sie auch für euch interessant sein könnten)

Für jegliche Anregung und Kritik/gefunden Fehler bin ich dankbar. Ansonsten bastle ich im stillen Kämmerlein weiter und melde mich bei Neuigkeiten.

Grüße,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 21 September 2017, 20:21:15
#   V1.8:
#      - bugfix: remove zombie-requests. FHEM restarts leave requests in queues, because of killed sleeps that should decrease the levels.
#
#   V1.7:
#      - bugfix: change at for level-decrement/level-limit to fhem sleep to avoid generation of logentries for the temporary at devices
#             Perlmodul Data::UUID no longer needed
#      - bugfix: for bugfix of V1.4 changed event-on-update-reading to event-on-change-reading to lower the eventload
#      - bugfix: code cleanup
#   V1.6:
#      -bugfix: don't allow cooling mode when bypass is closed, to avoid useless power consumption
#   V1.5:
#      -feature: manual_level_limit: limit the maximum of the ventilation
#   V1.4:
#      - bugfix: name of device need not to start with KWL any longer (attribute subType is now used to filter the devices)
#      - bugfix: max_allowed_level not set before the first change of levellimit below 4
#      - bugfix: changed event-on-update-reading to event-on-change-reading to lower the eventload
#      - bugfix: added min-event-interval for some readings
#   V1.3:
#      - feature: timelist for levellimit to keep the ventilation silent (replaces the old max_allowed_level)
#      - bugfix: restore (pollenfilter)levels after switching back from helios to fhem control
#   V1.2:
#      - bugfix: changed some loglevels from 2 to 3 (ventilation level)
#      - bugfix: fixed typos ;-)
#   V1.1:
#      - bugfix: added WBG to event-update (couldn't be plotted without event)
#      - bugfix: added tempgain to event-update for plotting
#      - bugfix: fixed switch-date for cooling mode
#   V1.0:
#      - bugfix: removed WBG from event-update (other values are updated)
#      - feature: added fresh air and exhaust air temperature
#      - feature: added temperature gain of the heat exchanger (added userreading tempgain)
#   V0.99:
#      - bugfix: set the correct readings after changing the pollen-filter
#      - bugfix: corrected loglevels
#   V0.98:
#      - bugfix: corrected timing for communication (dev-timing-sendDelay, dev-timing-commDelay)
#      - bugfix: queuelength set to 500 to avoid "queue too long" error for the long_poll
#   V0.97:
#      - bugfix: corrected link in readingsgroup for filterreset
#      - feature: filterreset implemented (v01034 noticed as flag for filterreset)
#      - bugfix: execute long_poll after setting a register via the readingsgroup
#   V0.96:
#      - bugfix: corrected Preheating value (event-on-update-reading was not set)
#      - feature: added functional readingsgroup (switch steeringmodes, manual long_poll, enable/disable pollen filter,
#        switch max_allowed_level between 3 and 4, reset filter time(not funtional yet))
#      - bugfix: wrong split pattern in some cases
#      - bugfix: no RW check in helios_reg subroutine
#      - feature: easier redefinition of device (defmod replced define)
#   V0.95:
#      - feature: timeautomatic implemented
#   V0.94:
#      - bugfix: consider the max_allowed_level attribute
#   V0.93:
#      - feature: consider the summerbypass setting
#      - feature: allow cooling mode only if summerbypass/passive cooling is allowed (uses v02120 v02121 v02128 and v02129)
#   V0.92:
#      - bugfix: changed switching value for control_mode from hysteresis/3 to hysteresis/2 (hystersis/3 lead to fast switching of mode)
#   V0.91:
#      - bugfix: correct generation of ATs to avoid concurrent time of polls (alignTime)
#    V0.9:
#       - initial release
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: amthenia am 25 September 2017, 18:15:30
 8) Super!
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 14 Oktober 2017, 19:35:23
V0.95 ist online

Hier ist jetzt auch die Zeitsteuerung außerhalb des Kühlbetriebs implementiert. Derzeit macht das Ding schon genau das, was ich möchte und somit werde ich in nächster Zeit nicht aktiv daran weiter arbeiten. Sollte jemand eine Funktion benötigen, einfach kurz melden, vielleicht kann ich das dann kurzfristig einbauen.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 02 März 2018, 13:51:41
V0.96 ist online

- Jetzt gibt es eine Readingsgroup mit der man die Automatik ein-/ausschalten kann, den Pollenfilter aktivieren/deaktivieren kann (Kennlinie wechseln, einbauen muss man selber;-), max. erlaubte Lüftungsstufe und manuelles Ausführen eines long_poll
- Diverse Fehlerkorrekturen

Kurzanleitung für Update:
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 11 März 2018, 10:55:21
V0.97 ist online

- Das Bestätigen des Filterwechsels kann jetzt per FHEM gemacht werden. (startet die Laufzeit neu)

Hinweis für Update: readingsgroup Update ist erforderlich. (Neuanlegen mit gleichem Namen)
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 11 Juni 2018, 22:31:37
Hallo Leute,

habe es jetzt hinbekommen die PM-Datein einzubinden.

Wenn ich allerdings jetzt wie in der Anleitung

{helios_define_kwl("KWL_EG_KG","192.168.0.20","Technik")}     (in meinem Fall anderer Name und andere IP)


eingebe kommt die Meldung:

"Unknown command helios_define_kwl("KWL_EG_KG","192.168.0.20","Technik")}, try help. "

Was mache ich falsch? Muss ich erst noch etwas anderes machen?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 11 Juni 2018, 22:47:09
Guten Abend,

ich nehme an, dass die geschwungene Klammer vor dem helios_define_kwl auch dabei war, oder?
Hast du fhem nach dem Reinkopieren der Datei neu gestartet?
Versuch mal unter "Edit Files", ob du die 99_heliosUtils.pm öffnen und speichern kannst -> führt auch zum neu Laden dieser Datei.

Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 11 Juni 2018, 22:58:51
Guten Abend,

vielen Dank für die fixe Antwort! Geschwungene Klammern waren dabei. Neu gestartet hab ich.

Beim speichern der 99_heliosUtils.pm bekomme ich die Meldung:

./FHEM/99_heliosUtils.pm: Permission denied



Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 11 Juni 2018, 23:12:14
Dann stimmen die Rechte im Filesystem nicht. Setz die selben Rechte wie für die andern pm Dateien in diesem Verzeichnis. Neu starten und fhem sollte die datei lesen und schreiben können. Wie sind denn die Rechte jetzt gesetzt? Lesen geht ja jetzt auch schon. Ganz klar ist mir das jetzt nicht, warum es die funktion nicht gibt.

Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 12 Juni 2018, 18:29:04
also die Rechte der 99_heliosUtils.pm waren wie bei allen anderen PM-Dateien in dem Ordner rw-r--r--. Allerdings war der Besitzer bei dieser "root" und nicht wie bei den anderen "fhem". Ich habe deshalb den Besitzer ebenfalls auf "fhem" geändert.

Nach Neustart und Eingabe von:
{helios_define_kwl("KWL_EG_KG","192.168.0.20","Technik")}
bekomme ich jetzt die Meldung:
ZitatUndefined subroutine &main::helios_define_kwl called at (eval 59) line 1.
Wenn ich in Edit files die 99_heliosUtils.pm speichern will bekomme ich folgende Meldung:
ZitatCan't locate Data/UUID.pm in @INC (you may need to install the Data::UUID module) (@INC contains: . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/arm-linux-gnueabihf/perl5/5.24 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base ./FHEM) at ./FHEM/99_heliosUtils.pm line 47. BEGIN failed--compilation aborted at ./FHEM/99_heliosUtils.pm line 47.

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 12 Juni 2018, 22:37:14
Wie in der Fehlermeldung (und in meiner Anleitung angegeben) fehlt das Modul UUID

Zitatyou may need to install the Data::UUID module

Ich nehme an, dass die Fehlermeldung auch irgendwie daher kommt.

Grüße
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 13 Juni 2018, 22:04:53
Ups...sorry. Hab ich wohl überlesen. Bzw. konnte ich micht nicht mehr dran erinnern, dass das Vorraussetzung war. Ich habs dann doch hin bekommen obwohl ich von Perl noch keine Ahnung hab.

Hab etwas gesucht und gefunden wie man Module nachläd. Für alle die das auch nicht wissen:

In der Raspi-Console eingeben
Zitatcpan
und dann
Zitatinstall Data::UUID

Wenn alles installiert ist kommt man mit
Zitatexit
wieder aus der cpan Konsole

Bei mir hat es komischerweise beim ersten mal nicht geklappt. Ich hab die Installation dann noch ein zweites mal durchgeführt und jetzt funktionierts. Jetzt muss ich mich nur noch etwas damit beschäftigen, damit ich es verstehe und es so läuft wie ich es brauche.

Hab übrigens eine Helios KWL EC 370 WR. Aktuell mit Pollenfilter. Und mich nervt, dass die Bypassklappe tagsüber bei hohen Temperaturen nicht mehr zu geht und die warme Luft ins Haus strömt.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 14 Juni 2018, 08:15:53
Hast du die "passive Aussenluftkühlung" aktiviert? (Im Webfrontend der Anlage, wo man die schwierige Rechenaufgabe lösen muss? ;-)
Erst durch diese wird die Bypassklappe freigegeben, da in diesem Fall unbedingt der kleine Plastikstöpsel im Boden entfernt werden muss, da in diesem Fall das Kondenswasser auf der anderen Seite des Wärmetauschers entsteht und sonst nicht abfließen kann --> Elektronik säuft ab.

Grüße
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 14 Juni 2018, 11:30:59
Die passive Außenluftkühlung lässt sich bei mir nicht aktivieren. In der Bedienungsanleitung steht zwar, dass es geht und auch die Vorgehensweise mit dem Stopfen steht in der Bedienungsanleitung; aber die Funktion wurde wohl irgendwann von Helios herausgenommen.
In einem Forum hab ich gelesen, dass es bei Lüftungen im südlichen Euroraum, wo Klimaanlagen verwendet werden, wohl zu zu viel Kondensat kam und die Funktion deshalb deaktiviert wurde.
Bei meiner Anlage ist der, auch in der Bedienungsanleitung beschriebene Stöpsel, standardmäßig gar nicht vorhanden. Ich weiß auch nicht wo genau das Kondenswasser da abfließt. Es fällt nämlich so oder so immer etwas Kondenswasser auf der anderen Seite an. Ein Auslass für einen zweiten Siphon ist zwar im Boden der Anlage ausgestanzt, allerdings ist keiner montiert. Fließt das Wasser dann da raus???
Die Bypassklappe lässt sich aber dennoch öffnen. Allerdings ist die Funktion, ohne passive Außenluftkühlung, nicht so ganz sinnvoll. Die Bypassklappe geht nämlich auf wenn die Außentemperatur kühler ist als die Raumtemperatur (und noch ein paar weitere Bedingungen), allerdings nicht mehr zu wenn die Außenluft wieder wärmer ist als die Raumtemperatur. Hier ist es gut beschrieben:

https://www.easycontrols.net/de/service/faq/225-faq-h%C3%A4ufig-gestellte-fragen/564-bypass-funktion (https://www.easycontrols.net/de/service/faq/225-faq-h%C3%A4ufig-gestellte-fragen/564-bypass-funktion)

Ich behelfe mir aktuelle damit, die Temperaturgrenze für die Bypassklappe manuell in der früh und am Abend anzupassen damit die Klappe in der Nacht offen und am Tag geschlossen ist. Bisher hab ich noch kein Kondensat-Problem. Scheint in unseren Breitengraden und ohne Klimaanlage wohl kein Problem zu sein.
Ich werde mich beim Helios-Kundendienst nochmal erkundigen warum ich keinen Stöpsel habe und wo das Kondenswasser hin fließt wenn zu viel Kondensat anfällt. Die Elektronik wird ja wohl hoffentlich nicht unten am Boden liegen.

Wie ist das bei deiner Regelung hugomckinley? Wird da die Bypassklappe geöffnet und geschlossen? Oder geht deine Kühlung nur über mehr Luftdurchsatz?

Kann ich die passive Außenluftkühlung eigentlich auch über Modbus aktivieren obwohl sie nicht in der Helios Software aktivierbar ist? Die Helios Software v2.26 ist ja anscheinend bei allen Lüftungsanlagen gleich. Nur die Funktion ist bei einigen Anlagen nicht auswählbar.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 14 Juni 2018, 12:57:01
Ich habe gerade die Bedienungsanleitung deiner Anlage gesehen und festgestellt, dass der Aufbau ganz anders ist! (Die KWL EC 500W sind keine Passivhausgeräte) Ich habe z.B. die kleinen Filter für die Bypassfunktion gar nicht!
Ich habe in der Bedienungsanleitung deiner Anlage auch keinen Hinweis auf die passive Sommerkühlung gefunden, sondern nur den Bypass.
Siehst du die Einstellung in der Software? (Bild von meiner Anlage angehängt. Ich habe auch die v2.26 drauf)
Ich sehe das auf den Explosionszeichnungen nicht, aber ich schätze auch, dass die zweite Öffnung für einen zweiten Siphon für den Kühlbetrieb wäre, aber warum das nicht ausgeführt ist, kann ich mir nicht erklären. (evtl. hat die 300er das selbe Gehäuse, denn das ist auch kein Passivhausgerät)
Die Luftführung ist auf jeden Fall völlig anders als bei mir.

Btw.: Mit oder ohne Kühlung hat keine Auswirkung auf die Regelung von mir.

Das mit dem Bypass stimmt schon so wie du es beschreibst: Wenn es draußen kühler als drinnen ist, wird kühle Luft nach innen geführt. (sonst würde die kühle Nachtluft ja durch den Wärmetauscher vorgewärmt)
Der Bypass darf aber nicht zugehen, wenn es draußen wärmer wird, da ja sonst Kondensat auf der "falschen" Seite des Wärmetauschers anfallen würde, was anscheinend bei deiner Anlage nicht vorgesehen ist.
Wenn du die Bypasstemperatur so einstellst, dass trotzdem eine passive Kühlung erreicht wird, ist es auch klar, dass du auf der anderen Seite auch Kondenswasser hast, aber das ist meiner Meinung nicht gut, denn Helios wird schon einen Grund haben warum das bei deiner Anlage nicht vorgsehen ist, obwohl es die Software kann!
Kondensatmenge ist bei mir extrem unterschiedlich, da würde ich mich nicht auf eine momentane Beobachtung verlassen!
Im Hochsommer bei 26° innen und 37° außen und bei hoher Luftmenge fällt sicher sehr viel Kondensat an. (Klimaanlage hin- oder her, ob 26° oder 24° ist egal)
Meine Anlage steuert den Bypass völlig selbständig, ich habe auch keine Möglichkeit die Bypasstemperatur einzustellen.
Man könnte meine Regelung sicher erweitern, um deine "Bypassklappensteuerung" temperturgeführt zu machen, aber es bleibt das Kondensatproblem. Wo läuft es hin und warum macht es Helios nicht von Haus aus?
Übrigens: bei mir ist die Elektronik tatsächlich bodennahe ;-)
Ich wüsste nichts davon, ob man die Kühlung durch ein Register aktivieren kann, aber nachdem meine das automatisch(und gut) macht, habe ich das noch nicht angesehen.



Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 15 Juni 2018, 09:02:24
ZitatIch habe gerade die Bedienungsanleitung deiner Anlage gesehen und festgestellt, dass der Aufbau ganz anders ist! (Die KWL EC 500W sind keine Passivhausgeräte) Ich habe z.B. die kleinen Filter für die Bypassfunktion gar nicht!

Die kleinen Bypassfilter sind auch ein Nachteil dieser Anlage. Dadurch, dass der Querschnitt des Bypassfilters so klein ist, geht bei Bypassfunktion dei Lüfterdrehtzahl der Zuluft nach oben  (in meinem Fall um ca. 400U/min).

ZitatIch habe in der Bedienungsanleitung deiner Anlage auch keinen Hinweis auf die passive Sommerkühlung gefunden, sondern nur den Bypass.
Siehst du die Einstellung in der Software?

Die Einstellung sehe ich nur bei der Weboberfläche. Dort ist sie aber ausgegraut und nicht anwählbar.

ZitatMeine Anlage steuert den Bypass völlig selbständig, ich habe auch keine Möglichkeit die Bypasstemperatur einzustellen.

Bist du dir sicher? In deinem angefügten Bild sind doch die Bypassparameter einstellbar.


Ich hab nochmal mit dem Kundendienst telefoniert. Es ist bei meiner Anlage so, dass sie für Passivhäuser konzipiert ist. Deshalb ist sie mit Styropor so gut isoliert. Zudem sind diese Geräte Volumenstrom-konstant. D.h. es wird immer versucht (egal wie groß die Widerstände im System sind) den Volumestrom über die Lüfterdrehzahl konstant zu halten. Das merk ich z.B. dadurch, das bei eingesetzem Pollenfilter die Lüfterdrehzahl der Zuluft höher ist, während die Drehzahl der Abluft gleich bleibt.

Scheinbar sind die Passivhausanlagen so dicht, dass ein Ablauf in der Zuluft gar nicht so leicht funktionieren würde. Hätte ich da ein Loch im Boden würde da ja gar kein Wasser ablaufen weil durch das Loch Luft angesaugt werden würde.
Komischerweise ist bei meiner Anlage in der Abluft aber eine Art Überlauf und ein Auffangbecken für Kondensat. Und auch eine Loch im Styropor. Allerdings kann ich nicht erkennen ob das Loch auch wirklich durchgängig ist. Ich stelle nochmal ein Bild dazu ein. VLt komme ich noch dahinter wie das ganze funktioniert (evtl. durch Wasser rein schütten).

Ich werde jetzt mal so vorgehen, dass ich beobachte ob und wieviel Kondensat anfällt, bei meiner täglichen manuellen Steuerung, und dann entscheide ich wie ich weitermache.

Option 1: Es fällt nur wenig Kondensat an => Ich versuche über die hugomckinley-Steuerung mit FHEM ein passive Außenluftkühlung zu realisieren
Option 2: Es fällt zu viel Kondensat an => Ich lasse die Anlage nur Nachts laufen und schalte sie tagsüber komplett aus. Wenn die Garantie der Anlage dann mal abgelaufen ist baue ich mir einen eigenen Ablauf. Habe da schon ein paar Ideen. (Loch in das Styropor und den Boden bohren und an das Abwasser anschließen, der Unterdruck verhindert zunächst einen Ablauf des Kondensats. Durch einen Schwimmer-Schalter wird erkannt wenn zu viel Kondensat vorhanden ist. Dann geht die Anlage kurz aus und das Wasser fließt ab. Ist doch ganz einfach, Helios ;-) )

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 17 Juni 2018, 20:53:34
ZitatDie kleinen Bypassfilter sind auch ein Nachteil dieser Anlage. Dadurch, dass der Querschnitt des Bypassfilters so klein ist, geht bei Bypassfunktion dei Lüfterdrehtzahl der Zuluft nach oben  (in meinem Fall um ca. 400U/min).
Das mit den kleinen Filtern habe ich mir auch so gedacht. Der Unterschied zwischen Passivhausgeräten und nicht Passivhausgeräten ist meines Wissen nach die Regelung des Luftstroms (und die gute Isolierung), wie du unten schreibst. Ich könnte mir vorstellen, dass das der Grund ist, warum die Anlage so dicht sein muss und darum so anders konstruiert ist. Denn in deinem Passivhaus wird es sonst evtl. mit der Atemluft knapp, wenn die Luftmenge Aufgrund von vollen Filtern oder der Bypassfunktion zu wenig wird ;-) Meine Anlage regelt gar nichts, die habe ich mit neuen Filtern eingemessen und dann ist die Lüfterdrehzahl immer konstant.

ZitatBist du dir sicher? In deinem angefügten Bild sind doch die Bypassparameter einstellbar.
Ja das schon. ich dachte du hast einen Parameter der "Bypasstemperatur" heißt. Ich hatte auch am Anfang überlegt, dass ich die Klappe über diese Werte "manuell" ansteuere, aber das Verhalten der Anlage passt von der Regelung her ganz gut, da habe ich dann nichts geändert. Sie verhält sich ja auch genauso wie deine, nur eben mit der passiven Außenluftkühlung mit dem Wärmetauscher.

ZitatOption 1: Es fällt nur wenig Kondensat an => Ich versuche über die hugomckinley-Steuerung mit FHEM ein passive Außenluftkühlung zu realisieren
Option 2: Es fällt zu viel Kondensat an => Ich lasse die Anlage nur Nachts laufen und schalte sie tagsüber komplett aus. Wenn die Garantie der Anlage dann mal abgelaufen ist baue ich mir einen eigenen Ablauf. Habe da schon ein paar Ideen. (Loch in das Styropor und den Boden bohren und an das Abwasser anschließen, der Unterdruck verhindert zunächst einen Ablauf des Kondensats. Durch einen Schwimmer-Schalter wird erkannt wenn zu viel Kondensat vorhanden ist. Dann geht die Anlage kurz aus und das Wasser fließt ab. Ist doch ganz einfach, Helios ;-) )

Meine Meinung zu deinen zwei Überlegungen:
zu 1.: Das würde ich nicht riskieren, wie gesagt kann es meinen Beobachtungen nach extrem schnell gehen, dass viel Kondensat anfällt. (z.B. ein langes Bad)
Ich hatte auch den Fall, dass eine Anlage von mir Kondensat erzeugt hat und die zweite über mehrer Tage gar nicht. (war zwar im Winter und lt. Helios liegt dass an ihrem ausgefuchsten, streng geheimen Algorithmus, der die Luftfeuchte schätzt aufgrund der Temperaturen und des Luftstroms.)
zu 2.: Deiner Aussage entnehme ich, dass du gar kein Passivhaus hast, denn sonst wäre das Abschalten keine gute Idee meines Wissen nach.

Meine Überlegungen(aus meiner Erfahrung) wären folgende:
Da die Lüftung bei Zulufttemperaturen, die über der Ablufttemperatur liegen ohnehin auf die kleinste Stufe schaltet, ist der Wärmeeintrag durch die warme zuluft so gering, dass es eigentlich nur ein psychologisches Problem ist ;-) Fakt ist nämlich, dass trotz Wärmetauscher die Zulufttemperatur trotzdem ca. 1-2 Grad wärmer ist als die Abluft und somit erwärmt sie (theoretisch) trotzdem das Innere des Hauses. Was wir aber als wirklich angenehm empfinden, ist die hohe Luftmenge in der kühlen Nacht bei offenen Bypass(und den hast du ja auch), denn da bemerkt man auch, dass die Zuluft deutlich kühler ist als die Raumluft (wenn es draußen kühl genug ist)
Dazu habe ich die Behaglichkeitstemperatur auch auf 10° gesetzt, damit mir in einer wirklich kühlen Nacht der Wärmetauscher ja nicht aktiv wird.
Auch hier ist die Psyche stark beteiligt, da man die hohen Lüfterstufen auch hört ;-) --> Der Energiegehalt dieser kleinen Luftmengen (im Vergleich zu der umgewälzten Luftmenge einer Klimaanlage) ist verschwindend klein (ohne nachgerechnet zu haben ;-)

Ich hätte folgenden Vorschlag:
Da ich bisher nicht wusste, dass sich die Anlagen hier in der Arbeitsweise so stark unterscheiden, wäre es wahrscheinlich sinnvoll, eine Unterscheidung zwischen Passivhausgerät und Nicht-Passivhausgerät zu machen.
Wenn du im Sommer heuer genug Erfahrung gesammelt hast, dann könnte ich das nach deinen Vorgaben in die Regelung einbauen.
Ich werde mittelfristig noch die Unterscheidung einbauen, ob die Helioslüfterstufen von der Einregulierung verwendet werden, oder mein Vorschlag mit dem Wegfall der Feuchteschutzeinstellung und dafür die hohe Stufe mit +60% Luftmenge. --> Meine Regelung ist eigentlich nur sinnvoll mit der hohen Stufe, denn sonst sind alle Stufen um eine zu niedrig!
Wenn im Sommer bei extremen Temperaturen auch in der Nacht die Anlage auf der kleinsten Stufe läuft, merkt man, dass es schon etwas wenig Frischluft ist, wenn sich unter Tag alle im Haus verkriechen. Ist natürlich Jammern auf hohem Niveau, denn ohne Lüftung wäre es noch etwas ganz anderes, aber man ist halt verwöhnt von der Luftqualität mit einer KWL :-) Die Feuchteschutzstufe mit noch weniger Luft würde da definitiv zu wenig sein, wobei ich sagen muss, dass wir auch 5 Personen sind, die die Luft "wegatmen". 



Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 17 Juni 2018, 21:12:12
V0.99 ist online

- diverse Bugfixes
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 16 September 2018, 21:21:33
V1.1 ist online

- diverse bugfixes
- Readingsgroup zeigt jetzt alle Temperaturen an
- Wärmegewinn durch Wärmetauscher wird berechnet (tempgain)
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: MegaData am 01 Oktober 2018, 15:11:18
Interessant wäre ein normaler Timer und ein erweiterter Timer. Ich möchte die Anlage z.B. dann höher laufen lassen wenn viel Solarstrom da ist, sonst eher runter regeln... Da kann man derzeit nur umständlich und wenig genau über Sonnenauf- und -untergang regeln... Vielleicht so als Idee für die nächste Version ;-) ?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 05 Oktober 2018, 15:47:55
Das verstehe ich nicht ganz. Möchtest du sozusagen einen Offset für die Lüftung, der die aktuelle Stufe der Automatik erhöht oder erniedrigt in Abhängigkeit der Leistung der Solaranlage?
Wie machst du das derzeit über Sonnenauf- und Untergang? Wie wird das der Lüftung übergeben?
Was mir nicht ganz klar ist, was die Einstellung der Luftmenge mit dem Solarertrag zu tun haben soll. Die Luftmenge soll sich ja nach der Luftqualität, Temperatur und auch Lautstärke richten, aber nicht danach, ob Strom da ist der verbraten gehört ;-)
Runterregeln würde ich aus dem selben Grund nicht, denn ich würde wegen ein paar Watt keine schlechtere Luftqualität in Kauf nehmen. (Was besonders im Winter der Fall wäre, da ja die Fenster immer geschossen sind und der Solarertrag gering ist)

Aber wenn ich weiß, wie du das meinst, kann ich mir das gerne anschauen.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Reliktdragon am 15 Dezember 2018, 19:38:14
Hallo.

Ich wollte noch fragen ob es irgendwie möglich ist die maximale Stufe zeitabhängig zu steuern. Zum Beispiel Tagsüber 4 und nachts wegen dem Lärm nur 3.
Gerade wegen dem Kühlmodus.

Wird die Passive Außenluftkühlung hier verwendet oder nur der beipass? Ich habe nämlich den Kondesat Ablauf.

Bei Restlaufzeit Filter zeigt es mit nur Opened an. Muss ich da was ändern?

Bin noch Anfänger mit FHEM
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 17 Dezember 2018, 16:54:52
Die zeitabhängige Begrenzung der maximalen Lüfterstufe gibt es (noch) nicht. Ich werde mir das bei der nächsten Version ansehen.
Gerade im Kühlbetrieb macht es aber wenig Sinn, denn am Tag wird nicht nach oben geregelt, da es so heiß ist und in den Nachtstunden ist die einzige Chance, dass es draußen so kühl ist, dass man die hohen Stufen erreicht und die sind gerade dann verboten. Sinn macht da glaube ich nur, dass in den Nachtstunden die Toilettenlüftung nicht zu laut ist, oder übersehe ich etwas?
Die Kühlung ändert nichts am Bypass oder an der passiven Aussenluftkühlung, das macht die Lüftungsanlage selbständig und wird nicht von dieser Regelung beeinflusst.
Passivhausgeräte (z.B. 270er und 370er Geräte) haben meines Wissens nach gar keine passive Außenluftkühlung, wegen des fehlenden Kondensatablauf auf der anderen Seite des Wärmetauschers. d.h. das muss man an der Anlage selbst einstellen, ob man das nutzen will oder nicht.
Bezüglich des opened, nehme ich an, dass noch nicht alle Werte gelesen wurden (weshalb einige Werte fehlen und die anderen nachrücken. opened sollte eigentlich unter "Zustand" stehen). Sollte eigentlich beim Anlegen der Anlage automatisch ausgeführt werden oder dann nach spätestens einem Tag stimmen.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Reliktdragon am 18 Dezember 2018, 22:33:37
Vielen Dank für die Antworten. :)

Die zeitabhängige Begrenzung benötige ich für die Toiletten Taste und für die Kühlung. Die höchste Stufe ist leider gut hörbar beim einschlafen. Deshalb würde ich die gerne so begrenzen können das die Hohe Stufe erst spät abends startet.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 19 Dezember 2018, 20:11:00
O.K. das das ist mir klar. Ich werde mir das bei Gelegenheit anschauen. Ist in der nächsten Version drinnen, wenn halbwegs einfach möglich. Dauert aber sicher, da ich derzeit einige andere Projekte mit Priorität zu erledigen habe. (Bis zum Frühling, wenn die Kühlung anläuft sollte es aber fertig sein ;-)

Passen die Anzeigen der Readingsgroup jetzt? Waren im Log Fehler wie "Queue too long" oder ähnliches nach dem Anlegen der Anlage zu sehen?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Reliktdragon am 19 Dezember 2018, 20:45:30
Danke  :)

Die Readinggroups funktionieren jetzt alle. Fehler beim Anlegen habe ich nicht bemerkt.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: michisa86888 am 28 Dezember 2018, 20:28:17
Hallo zusammen,
ich bin noch ziemlicher Laie. Habe aber die KWL erfolgreich eingebunden. Readingsgroup ist auch komplett da.

Nun will ich ein DOIF einrichten, dass die automatische Helios Steuerung erstetzt. Also z.b von 7 Uhr bis 12 Uhr Stufe 1 und von 12 bis 16 Stufe 2, usw...

Wie kann ich den Schaltbefehl definieren?

set KWL_EG_KG <Stufe 1> ????
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 28 Dezember 2018, 20:41:12
Ich verstehe die Frage nicht, denn genau das macht ja diese Regelung.

time_list bei den Attributen macht genau das, was du willst, oder verstehe ich da was nicht?

Das ist z.B. meine: 06:00|2 20:00|1

ab 6:00 Stufe 2 und ab 20:00 Stufe 1
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: choetzu am 24 Februar 2019, 14:46:29
Hallo in die Runde!
Ich beneide Euch brutal um diese Anbindung. ich habe KWL 300 pro und soweit ich das erkenne, geht das mit meiner Version nicht, da keine IP. Gibt es evt einen Workaround zum einbinden?
Lg c
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: michisa86888 am 25 Februar 2019, 20:07:59
Könnte man in die Readingsgroup auch noch den internen Feuchtefühler Abluft mit auf nehmen?
Würde den Wert gerne benutzen um andere Geräte abhänging zur aktuellen Luftfeuchte zu steuern..
Wäre dies möglich bzw. findet sich der Wert bereits in irgendeinem Reading?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 27 Februar 2019, 20:57:40
Zitat von: michisa86888 am 25 Februar 2019, 20:07:59
Könnte man in die Readingsgroup auch noch den internen Feuchtefühler Abluft mit auf nehmen?
Würde den Wert gerne benutzen um andere Geräte abhänging zur aktuellen Luftfeuchte zu steuern..
Wäre dies möglich bzw. findet sich der Wert bereits in irgendeinem Reading?

Ich nehme an, du  meinst den externen Feuchtefühler? Lt. Helios-Doku sind das die Readings v00111 - v00118 (Fühler 1-8)
Versuch bitte mal, dass du dieses Register (v00111) zum Atribut short_poll_registers hinzufügst, dann sollte dieses Reading nach ca. 10 Minuten da sein.

Bitte um kurze Rückmeldung, ob das funktioniert, denn ich habe diesen Fühler nicht und kann es daher leider nicht probieren.

Wenn das funktioniert, werde ich mir was einfallen lassen, wie solche unterschiedlichen Hardwareausführungen berücksichtigt werden können, denn mit einem Update des KWL Objekts in FHEM werden diese Atribute derzeit wieder überschrieben.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 27 Februar 2019, 21:06:00
Zitat von: choetzu am 24 Februar 2019, 14:46:29
Hallo in die Runde!
Ich beneide Euch brutal um diese Anbindung. ich habe KWL 300 pro und soweit ich das erkenne, geht das mit meiner Version nicht, da keine IP. Gibt es evt einen Workaround zum einbinden?
Lg c

Kann die KWL 300 pro Modbus per RS485 bzw. gibt es ein Modul dafür? Ich nehme an, dass sich mein Script relativ leicht an Modbus über RS485 anpassen lassen sollte, wenn sich die "pro" Geräte ansonsten gleich verhalten (Registernamen, Art des Lesen und Schreibens, usw.).
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: choetzu am 09 März 2019, 17:15:56
Zitat von: hugomckinley am 27 Februar 2019, 21:06:00
Kann die KWL 300 pro Modbus per RS485 bzw. gibt es ein Modul dafür? Ich nehme an, dass sich mein Script relativ leicht an Modbus über RS485 anpassen lassen sollte, wenn sich die "pro" Geräte ansonsten gleich verhalten (Registernamen, Art des Lesen und Schreibens, usw.).

Super, danke. Ja, ich habe ein RS485 Modul. Dort ist z.Z. die Fernbedienung drangehängt. Siehe anliegendes Bild.

Wie kann ich nun das RS485 Modul mit dem Raspi (FHEM) verbinden ohne TCP.  Du schreibst im ersten Post

ZitatFür alle Besitzer einer Helios Lüftung die per ModbusTCP erreichbar ist. (Sollte aber auch über Modbus per RS485 leicht anpassbar sein)

Aber ich finde leider nirgends eine Anleitung. Wäre um eine Hilfestellung brutal dankbar.

Lg c
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 09 März 2019, 22:31:04
Das würde glaube ich in Kombination mit einem USB zu RS485 Wandler dein Problem lösen: https://medium.com/@boonsanti/raspberry-pi-3-model-b-modbus-rs-485-to-modbus-tcp-ip-gateway-9ed14ce2c08e

Dieser mbusd wird auch lokal arbeiten, falls dein Raspi neben der Lüftug steht. Sonst könntest du einen 2 zweiten Raspi als RS485 zu TCP-Gateway nehmen.
Aber damit habe ich keine Erfahrung. Da die Wandler aber sehr günstig sind, ist glaube ich nichts verloren, wenn du es versuchst.

Alles unter der Voraussetzung, dass sich die Pro Geräte genauso ansprechen lassen wie die neuen EC Geräte.

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: choetzu am 10 März 2019, 11:50:12
Super, danke. Ich bestell mir https://www.play-zone.ch/de/yf-usb-zu-rs485-adapter.html der sollte gehen, oder?

Zitat von: hugomckinley am 09 März 2019, 22:31:04
Alles unter der Voraussetzung, dass sich die Pro Geräte genauso ansprechen lassen wie die neuen EC Geräte.

Wie finde ich das raus? By doing?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 10 März 2019, 20:13:37
Ich nehme an, dass der funktioniert. Evtl. gibt es auch das Problem mit dem Pegel. Bei RS232 gibt es den Standardpegel und auch TTL kompatible. Ich habe gelesen, dass es das auch bei RS485 gibt. Evtl. steht es in der Beschreibung, ansonsten messen, oder probieren.

Ob die Ansteuerung so ist, wie bei den Easycontrol-Anlagen wird man dann sehen, wenn es funktioniert, oder auch nicht. ;-)
Für die Easycontrol-Anlagen gibt es eine Doku für den Modbus, vielleicht gibt es das auch für deine.

Was auf jeden Fall geht, ist, dass man die Funktionen des Bediengeräts nachbildet, denn das ist ja auch per RS485 angeschlossen, wie du gesagt hast.
Wenn das notwendig ist, muss man schauen wie mein Script anzupassen ist.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: choetzu am 13 März 2019, 20:39:15
So, ich komme der Sache näher.

Ich habe nun folgendes gemacht:
An meiner Rs485 Schnittstelle am Kwl hab ich 5 Kabel:
- A
- B
- plus
- minus
- M

Und an meinem RS45toUSB hab ich 4 Anschlüsse
-A
-B
-gnd
-gnd
- +5v

Ich habe nun die A mit A und B mit B verbunden. sonst nichts.

Danach bin ich gemäss dieser Anleitung vorgegangen:

https://medium.com/@boonsanti/raspberry-pi-3-model-b-modbus-rs-485-to-modbus-tcp-ip-gateway-9ed14ce2c08e

Und dann gemäss deiner Anleitung installiert (Data::UUID). Dabei wurde das Device und die 2 at-s angelegt. Der Status auch mit "opened".

Hier nun das Listing:

nternals:
   CFGFN     
   DEF        180 10 10.0.1.75:502 TCP
   DeviceName 10.0.1.75:502
   EXPECT     idle
   FD         11
   FUUID      5c897546-f33f-97bd-4a40-60402df716ea46ab
   INTERVAL   10
   IODev      KWL_EG_KG
   LASTOPEN   1552513068.1851
   MODBUSID   180
   MODE       master
   MODULEVERSION Modbus 4.0.24 - 18.2.2019
   NAME       KWL_EG_KG
   NOTIFYDEV  global
   NR         42
   NTFY_ORDER 50-KWL_EG_KG
   PARTIAL   
   PROTOCOL   TCP
   STATE      opened
   TCPConn    1
   TRIGGERTIME 1552513090.34314
   TRIGGERTIME_FMT 2019-03-13 22:38:10
   TYPE       ModbusAttr
   devioLoglevel 3
   lastUpdate 1552513080.34314
   nextOpenDelay 60
   QUEUE:
   READ:
     BUFFER     
   READINGS:
     2019-03-13 22:35:23   WBG             Error evaluating KWL_EG_KG userReading WBG: Illegal division by zero at (eval 343) line 1.

     2019-03-13 22:25:26   control_mode    helios
     2019-03-13 22:35:23   cooling_allowed 0
     2019-03-13 22:37:48   state           opened
     2019-03-13 22:35:23   tempgain        0.0
   REMEMBER:
     lid        180
     lname      KWL_EG_KG
     lrecv      1552512390.91678
     lsend      1552512943.05537
   defptr:
     KWL_EG_KG  180
   lastRead:
Attributes:
   control    helios
   control_mode_limit 24.0
   dev-defShowGet 1
   dev-h-defPoll 0
   dev-h-read 3
   dev-h-write 16
   dev-timing-commDelay 0.2
   dev-timing-sendDelay 0.2
   dev-timing-timeout 2
   enableControlSet 0
   event-on-update-reading v02117,v02119,v00106,v00107,v00105,v00104,v00101,v00102,v00103,v00024,v00093,last_auto_level,WBG,tempgain
   group      KWL
   hysteresis 0.5
   long_poll_registers v01033 v01103 v01104 v01105 v01106 v01109 v01123 v01124 v01125 v01301 v01302 v01303 v01304 v01305 v01306 v02020 v02021 v02022 v02023 v02024 v02025 v02026 v02027 v01300 v02120 v02121 v02128  v02129
   manual_poll_registers v00000 v00001 v00002 v00003 v00004 v00005 v00006 v00007 v00008 v00012 v00013 v00014 v00015 v00016 v00017 v00018 v00019 v00020 v00021 v00022 v00023 v00025 v00026 v00027 v00028 v00029 v00030 v00031 v00032 v00033 v00034 v00035 v00036 v00037 v00038 v00039 v00040 v00041 v00042 v00043 v00051 v00052 v00053 v00091 v00092 v00094 v00096 v00097 v00099 v00201 v00303 v00601 v00602 v00603 v00604 v00605 v00606 v01010 v01017 v01019 v01020 v01021 v01031 v01032 v01035 v01036 v01037 v01041 v01042 v01061 v01062 v01063 v01064 v01065 v01066 v01068 v01071 v01072 v01073 v01074 v01075 v01076 v01077 v01078 v01081 v01082 v01083 v01084 v01085 v01086 v01087 v01088 v01091 v01092 v01093 v01094 v01095 v01096 v01097 v01098 v01101
   max_allowed_level 4
   max_cooling_diff 4.0
   nonPrioritizedSet 1
   obj-h1-expr {if ($inCheckEval) {$val=(split /\x00/,$val,2)[0]; my ($param,$value) = split(/=/,$val);; readingsBulkUpdate($hash,$param,$value); Log3 $name, 5, 'set reading '. $param .'=' .$value . ' in expr'}; return $val;}
   obj-h1-format %.20s
   obj-h1-len 20
   obj-h1-poll 0
   obj-h1-reading Register
   obj-h1-set 1
   obj-h1-setexpr ($val."\0")
   obj-h1-textArg 1
   obj-h1-unpack (a*)
   pollen_filter no
   queueMax   500
   room       Technik
   short_poll_registers v00024 v00093 v00098 v00101 v00102 v00103 v00104 v00105 v00106 v00107 v00348 v00349 v01050 v01051 v02119 v01108 v02117
   sortby     1
   std_cooling_diff 2.0
   time_list  06:00|2 20:00|1
   userReadings WBG {sprintf("%.1f",(ReadingsVal("KWL_EG_KG","v02119",0) eq "1" ? "0": (ReadingsVal("KWL_EG_KG","v00107",0) - ReadingsVal("KWL_EG_KG","v00106",0))/(ReadingsVal("KWL_EG_KG","v00107",0) - ReadingsVal("KWL_EG_KG","v00104",0))*100))}, tempgain {sprintf("%.1f",(ReadingsNum("KWL_EG_KG","v00105",0) - ReadingsNum("KWL_EG_KG","v00104",0)))}
   userattr   control control_mode_limit dev-defShowGet dev-h-defPoll dev-h-read dev-h-write dev-timing-timeout hysteresis level_G4_F7 long_poll_registers manual_poll_registers max_allowed_level max_cooling_diff obj-h0-format obj-h0-len obj-h0-poll obj-h0-reading obj-h0-set obj-h1-bswapRegs obj-h1-expr obj-h1-format obj-h1-len obj-h1-map obj-h1-poll obj-h1-reading obj-h1-set obj-h1-setexpr obj-h1-textArg obj-h1-unpack pollen_filter short_poll_registers sortby std_cooling_diff time_list verbose



Und die Fehlermeldungen im 5-/Minutentakt

2019.03.13 22:30:37 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:30:37 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:30:39 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 27, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 16.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:30:41 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 47, type h, adr 1, len 20, value 76303031303200 for device KWL_EG_KG reading Register (set Register), queued 18.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:30:41 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:30:41 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:30:43 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 238, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 20.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:30:45 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 124, type h, adr 1, len 20, value 76303031303500 for device KWL_EG_KG reading Register (set Register), queued 22.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:31:43 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:31:43 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:32:43 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:32:43 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:33:43 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:33:48 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:34:48 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:34:50 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:23 1: Error evaluating KWL_EG_KG userReading WBG: Illegal division by zero at (eval 343) line 1.

2019.03.13 22:35:25 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 221, type h, adr 1, len 20, value 76303030323400 for device KWL_EG_KG reading Register (set Register), queued 2.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:25 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:35:26 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:27 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 115, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 4.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:29 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 125, type h, adr 1, len 20, value 76303030393300 for device KWL_EG_KG reading Register (set Register), queued 6.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:29 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:35:30 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:31 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 161, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 8.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:33 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 218, type h, adr 1, len 20, value 76303030393800 for device KWL_EG_KG reading Register (set Register), queued 10.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:33 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:35:33 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:35 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 208, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 12.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:37 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 251, type h, adr 1, len 20, value 76303031303100 for device KWL_EG_KG reading Register (set Register), queued 14.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:37 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:35:38 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:39 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 250, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 16.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:41 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 130, type h, adr 1, len 20, value 76303031303200 for device KWL_EG_KG reading Register (set Register), queued 18.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:41 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:35:42 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:35:43 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 3, tid 156, type h, adr 1, len 20 for device KWL_EG_KG reading Register (set Register Rd), queued 20.01 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:35:45 3: KWL_EG_KG: Timeout waiting for a modbus response request: id 180, fCode 16, tid 25, type h, adr 1, len 20, value 76303031303500 for device KWL_EG_KG reading Register (set Register), queued 22.00 secs ago, sent 2.00 secs ago, read buffer empty
2019.03.13 22:36:43 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:36:48 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:37:48 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:37:48 3: 10.0.1.75:502 reappeared (KWL_EG_KG)
2019.03.13 22:38:48 3: 10.0.1.75:502 disconnected, waiting to reappear (KWL_EG_KG)
2019.03.13 22:38:50 3: 10.0.1.75:502 reappeared (KWL_EG_KG


Irgendwie scheint was mit den IDs nicht zu funktionieren... Any help?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 16 März 2019, 18:57:16
Das mit der ID kann ich nicht sagen. Bei den Easycontrol-Anlagen ist die ID immer 180.
Ich könnte mir auch gut vorstellen, dass die Parameter der Schnittstelle nicht passen. (Geschwindigkeit, usw.)
Gibt es von Helios eine Doku dieser Schnittstelle?
Das habe ich gefunden: https://www.haustechnikdialog.de/forum/t/132169/RS485-Protkoll-von-Helios-KWL (Geschwindigkeit sollte somit 9600 sein und nicht 19200) Vielleicht wars das ja schon.
Evtl. kannst du auch noch außerhalb von FHEM, direkt mit mbusd mitlesen, dann wäre eine weitere Fehlerquelle ausgeschlossen.
Was sagt den journalctl -u mbusd@ttyUSB0.service -f -n 10 aus der Anleitung?
Am zielführendsten wäre es glaube ich, wenn man zuerst mit dem mbusd eine funktionierende Verbindung diagnostiziert und dann mit FHEM weitermachen.
Ich hoffe, dass geht irgendwie mit mbusd.

Mein nächster Versuch wäre, dass du den Modbusadapter im passiven Modus bei angestecktem Bedienpanel mitlesen lässt, dann solltest du sehen was drinnen steht.
siehe: https://fhem.de/commandref.html#ModbusAttr (Passive listener)
Da musst du dann die IDs durchprobieren soweit ich das gesehen habe.

Ich hoffe, dass du damit Erfolg hast, aber da ich weder Modbus noch RS485 im Einsatz habe, kann ich nur raten.
Vielleicht liest hier ein Kundiger mit und kann Tipps geben?

Nach der teilweisen Lektüre der folgenden Links bin ich aber der Meinung, dass du deine Helios Anlage per Vallox Modul einbinden kannst.
Ich glaube, das ist kein Modbus-Protokoll das das Bedienteil mit der Anlage spricht, sondern dieses Digit-Protokoll

Viel Erfolg!

P.S.:
Hier noch noch einige Links die ich bei der Suche nach "helios rs485 protokoll" gefunden habe:
https://www.symcon.de/forum/threads/29825-Anbindung-von-Helios-KWL-370-Pro/page5
https://knx-user-forum.de/forum/%C3%B6ffentlicher-bereich/geb%C3%A4udetechnik-ohne-knx-eib/18742-vallox-rs485-schnittstellenbeschreibung
https://homematic-forum.de/forum/viewtopic.php?t=22129
https://wiki.fhem.de/wiki/Vallox
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: choetzu am 22 März 2019, 22:42:55
Hey Hugo, herzlichn Dank. Du hast mich auf die Lösung gbracht, Super!

Ich musste zuerst den Modbus Service (https://medium.com/@boonsanti/raspberry-pi-3-model-b-modbus-rs-485-to-modbus-tcp-ip-gateway-9ed14ce2c08e) ausschalten und dann das Modul Vallox installieren. Jetzt gehst perfekt.

Danke nochmals!

Lg c
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 26 März 2019, 19:36:49
V1.3:

- Das Attribut time_level_limit ermöglicht jetzt das zeitabhängige Begrenzen der Lüfterstufe

Hinweis: Update von Script, Lüftungsanlage und Readingsgroup ist nötig!

Da es sich um überraschend komplexe Änderungen der Steuerlogik handelt, hoffe ich alles berücksichtigt und getestet zu haben. Sollte etwas "merkwürdig" sein, bitte bei mir melden. Danke!

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: huri-kane am 10 April 2019, 07:59:09
Hallo Hugo,

ich bin durch Zufall auf Deine Lösung gestoßen - habe mir für meine EC 340D vor einiger Zeit eine eigene Frickellösung als ein neues FHEM-Device gebaut, mit der ich aber nie zufrieden war, da sie auf das MBclient Perl-Modul zurückgreift und damit nicht blockierungsfrei ist. Mein Plan war ebenfalls das "irgendwann" auf das ModbusAttr Device umzubiegen - aber offenbar ist das nun nicht mehr nötig, Dein Ansatz funktioniert wunderbar ;)

Mir ist allerdings aufgefallen, dass das Skript momentan zumindest für das Anlegen der ReadingsGroup "helios_define_rg()" voraussetzt, dass der Name des KWL-Device' zwingend mit "KWL" beginnt. Ich hatte dafür einen anderen Namen gewählt, da mein eigenes Device ebenfalls "KWL" hieß - und da blieb die ReadingsGroup leer. Hier wäre es wohl sinnvoll, den Namen des angelegten KWL-Devices ebenfalls als Parameter in die helios_define_rg() Funktion zu geben.

Ansonsten bin ich total begeistert von dem Ansatz, der die Anlage quasi mit FHEM Board-Mitteln ohne separates Device steuert. Top!

Viele Grüße
André
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 10 April 2019, 11:54:42
Zitat von: huri-kane am 10 April 2019, 07:59:09
Mir ist allerdings aufgefallen, dass das Skript momentan zumindest für das Anlegen der ReadingsGroup "helios_define_rg()" voraussetzt, dass der Name des KWL-Device' zwingend mit "KWL" beginnt. Ich hatte dafür einen anderen Namen gewählt, da mein eigenes Device ebenfalls "KWL" hieß - und da blieb die ReadingsGroup leer. Hier wäre es wohl sinnvoll, den Namen des angelegten KWL-Devices ebenfalls als Parameter in die helios_define_rg() Funktion zu geben.

Ups, das ist mir bis jetzt entgangen, da meine beiden Geräte immer KWL.... geheißen haben  :-\
Als kurzfristige Lösung reicht, wenn du in der Definition der ReadingsGroup den Namensfilter auf dein Namensschema änderst.
Werde ich demnächst ändern.

Danke für den Hinweis!

Grüße
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: enno am 11 April 2019, 08:56:12
Moin Hugo,

habe gestern dein Script bei mir installiert. Klappt soweit schon mal ohne Fehlermeldung. Frage zu deinen Plänen.

1. Ich nutze die Luftfeuchtigkeit (1 Sensor Aussen und 1 Sensor Innen beides Homematik) um die Lüftung bei zu geringer Luftfeuchtigkeit im Haus runter zu regeln. Kannst du dir sowas auch vorstellen?
2. Ich habe einen Taster der die Anlage für 60 oder 120 Minuten komplett abschaltet. Das brauche ich, wenn der Nachbar mal wieder den Kamin angeworfen hat und ich den Gerucht mir nicht ins Haus holen will. Das lässt sich mit einen DOIF leicht steuern, aber ich dachte ich sag es mal 8) Ist eigentlich nur das Gegenteil von den "WC-Lüftungs-Tastern", die du ja schon eingebaut hast.

Sonst danke für deine Arbeit und das Teilen, ich bin auf den Sommer gespannt und deine "Kühlfunktion".

Gruss
  Enno

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 30 April 2019, 08:51:58
Servus Enno,
freut mich, dass es funktioniert.

Ich werde mir für die nächste Version deine beiden Anliegen anschauen. Ich nehme an, dass sich das in einer brauchbaren Form integrieren kann.
Ich werde das vermutlich so realisieren, dass man das Maximum der Lüftung (auch)von außen beeinflussen kann und nicht nur durch time_list_limit.
Sprich, du kannst dann die Begrenzung per DOIF oder notify festlegen, indem du die maximal erlaubte Stufe wie in deinem Fall auf 0 setzt, oder einen beliebigen anderen Wert.
Ich hoffe, dass es so funktioniert wie ich mir das überlegt habe, aber es dauert sicher noch eine Weile, da ich derzeit keine Zeit dafür habe.

Güße,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Reliktdragon am 18 Juni 2019, 14:01:56
Zitat von: hugomckinley am 26 März 2019, 19:36:49
V1.3:

- Das Attribut time_level_limit ermöglicht jetzt das zeitabhängige Begrenzen der Lüfterstufe

Hinweis: Update von Script, Lüftungsanlage und Readingsgroup ist nötig!

Da es sich um überraschend komplexe Änderungen der Steuerlogik handelt, hoffe ich alles berücksichtigt und getestet zu haben. Sollte etwas "merkwürdig" sein, bitte bei mir melden. Danke!


Vielen Dank

Funktioniert super  :)
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 05 August 2019, 23:47:35
V1.5:

- Der Name des Devices muss nicht mehr mit KWL beginnen, um in der ReadingsGroup angezeigt zu werden.
- Man kann die Lüftung jetzt manuell begrenzen (helios_limit_level()) -> siehe Anleitung erster Post

Hinweis: Update von Script, Lüftungsanlage und Readingsgroup ist nötig!
Achtung: Ein Update überschreibt alle bestehenden Attribute (z.B. Lüfterstufen, Zeitlisten)! Tipp: Vorher einen Screenshot der Attribute machen, um nichts zu verlieren.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 05 August 2019, 23:54:51
Zitat von: enno am 11 April 2019, 08:56:12
Moin Hugo,

habe gestern dein Script bei mir installiert. Klappt soweit schon mal ohne Fehlermeldung. Frage zu deinen Plänen.

1. Ich nutze die Luftfeuchtigkeit (1 Sensor Aussen und 1 Sensor Innen beides Homematik) um die Lüftung bei zu geringer Luftfeuchtigkeit im Haus runter zu regeln. Kannst du dir sowas auch vorstellen?
2. Ich habe einen Taster der die Anlage für 60 oder 120 Minuten komplett abschaltet. Das brauche ich, wenn der Nachbar mal wieder den Kamin angeworfen hat und ich den Gerucht mir nicht ins Haus holen will. Das lässt sich mit einen DOIF leicht steuern, aber ich dachte ich sag es mal 8) Ist eigentlich nur das Gegenteil von den "WC-Lüftungs-Tastern", die du ja schon eingebaut hast.

Sonst danke für deine Arbeit und das Teilen, ich bin auf den Sommer gespannt und deine "Kühlfunktion".

Gruss
  Enno

Hallo Enno,
die aktuelle Version sollte deine Wünsche halbwegs erfüllen. Wenn du noch mehr Eingriff haben möchtest, so kannst du mit:
setreading DeviceName manual_limit 2
{helios_calc_level("DeviceName")}

die Lüftung händisch auf Level 2 begrenzen.
Mit:
setreading DeviceName manual_limit none
{helios_calc_level("DeviceName")}

wird Begrenzung wieder über die Automatik wieder freigegeben.

Ich hoffe das passt so.

Grüße
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: HausHH am 01 Mai 2020, 13:17:58
Hallo Hugo,

in der Versionshistorie steht für die Version 1.4 ein Wechsel von Event-on-update-reading auf Event-on-change-reading. Da ich noch Version 1.3 eingesetzt habe, wollte ich diese Änderung gerne mitnehmen.
Nach einem Update stand bei mir aber immer noch alles auf Event-on-update-reading. Ich wusste nun nicht, ob das Update gezogen hatte und es wird ja innerhalb von FHEM auch keine Versionsnummer angezeigt - zumindest habe ich keine gefunden. Das macht die Kontrolle nicht einfach.
Ein Blick in die aktuelle 99_heliosUtils.pm zeigt aber, dass dort beides drinsteht: Zeile 120 Event-on-update-reading, Zeile 121 dann Event-on-change-reading, jeweils mit den gleichen Readings.
Vielleicht liegt es daran? Ich habe sogar Device, Readingsgroup und die ATs gelöscht und neu angelegt - keine Verbesserung an dieser Stelle. Da die Anzahl der Readings gegenüber vor dem Update deutlich zugenommen hat, gehe ich aber davon aus, dass ich jetzt definitiv die Version 1.5 im Einsatz habe.

Ich stelle also nun manuell um von *Update* auf *Change*. Vielleicht hilft ja der Hinweis, das Skript zu verbessern. Falls ich beim Update etwas falsch gemacht haben sollte, freue ich mich natürlich über einen Hinweis, um es nächstes Mal besser zu machen.
Vielen Dank jedenfalls für Deine Mühen, das Modul ist wirklich klasse! In Verbindung mit den diversen anderen Informationen in FHEM (Türen/Fenster auf, Anwesenheitsstatus, Feiertage, etc.) kann man da wirklich tolle Sachen mit machen.

Edith meint: wäre super, wenn die Readings v1035 und v1036 noch zur Verfügung stehen würden. Daraus könnte ich mir eine Push-Nachricht generieren, die mich informiert, wenn der Bypass verändert wird.

Grüße aus Hamburg
Helge
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 09 Oktober 2020, 23:52:04
Hallo Helge,
Danke für die Hinweise. Es hat etwas gedauert ;-)
Aber jetzt hatte ich Zeit dafür, denn ich wollte eine andere Änderung noch machen, die mich ein wenig geärgert hat.

Der Fehler mit dem doppelten Anführen der events ist behoben.

Die Readings v1035 und v1036 gibt es bereits, aber sie heißen v01035 und v01036.
Für die Funktion des Bypass würde ich aber das reading v02119 verwenden (offen = 1, geschlossen =0)

Versionsnummer ist immer im script ganz oben im Header ersichtlich. Ich wüsste nicht wo ich das sonst sinnvoll anzeigen könnte.


Grüße,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 10 Oktober 2020, 00:01:21
V1.7:

- Durch die Verwendung von fhem sleep ist das Perlmodul Data::UUID nicht mehr nötig. Ich habe zufällig bemerkt, dass jedes Erzeugen eines at's ein device im log generiert, was dazu führte, dass der Seitenaufbau beim Konfigurieren von Plots ewig dauert, da die Liste der verfügbaren devices extrem lang wird. Ist jetzt behoben durch die anonymen at's durch sleep
- Der bugfix von V1.4 für event-on-update-reading zu event-on-change-reading ist nun tatsächlich wirksam

V1.6:

- Wenn der Bypass geschlossen ist, wird in den Zeitbetrieb umgeschaltet, da sonst sinnlos Strom verbraucht wird.

Hinweis: Update von Script und Lüftungsanlage ist nötig!
Achtung: Ein Update überschreibt alle bestehenden Attribute (z.B. Lüfterstufen, Zeitlisten)! Tipp: Vorher einen Screenshot der Attribute machen, um nichts zu verlieren.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 13 Oktober 2020, 16:27:23
Hi, ein tolles Modul, dass ich dank deiner Vorarbeit schnell aktivieren konnte, als mein KWL EC270W ETR endlich installiert war.

Die Steuerung der Anlage möchte ich über einen kleinen Touch-Bildschirm selbst machen. Hierzu habe ich einen Nextion Bildschirm mit einem ESP8266 und der ESPEASY Firmware vorbereitet. Es hängen dann als Sensoren noch CO² und Temp/Feuchte am ESP.

Als Funktionen habe ich Auto / Manuell, Lüfterstufen in Manuell 0-4, Party Mode, und einiges mehr vorbereitet.

Aus deinem Code habe ich auch schon die passenden Funktionen herausgesucht, nur an dem setzen der Externen Werte scheitere ich. Im FHEM-Reading sind diese sauber gesetzt, aber die Anlage reagiert nicht auf die Änderungen. Laut Anleitung sollte sich im Auto-Mode die Lüfterdrehzahl ändern. Habe sowohl stufig als auch stufenlos probiert. Im Manuell Mode kann ich die Lüfterstufen problemlos setzen.

Den CO² Sensor habe ich wie folgt versucht zu ändern und die Anlage müsste dann im Auto-Mode auf Lüfterstufe 4 springen.
{helios_reg("Helios_KWL_OG","v00128=2700.0")}

Irgendwann dämmerte es mir dann, dass die Werte nicht zur Helios gesendet werden und ich habe long_poll und short_poll um diese Werte (v00111, v00119, v00128) erweitert. Jetzt kann ich die Werte hineinschreiben. Allerdings bleiben sie nur kurz und danach sind es wieder "-" "Irgendwas ließt die Werte aus der Anlage zurück und diese waren somit auch nicht korrekt gesetzt.

Die Anlage reagiert nach wie vor nicht.

Kannst du mir bitte auf die Sprünge helfen ?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 13 Oktober 2020, 17:10:49
Hallo Norbert,
die Anlage muss helios-seitig auf manuell stehen, nur so kann man von außen die Lüfterstufen umschalten (Ich bin mir ziemlich sicher, habe es aber nie versucht im Automatikmodus etwas zu schalten). Auto ist die sture Zeitautomatik von Helios.

long_poll und short_poll ist nur das Auslesen der Anlage, schreibt jedoch nichts.

Dein {helios_reg("Helios_KWL_OG","v00128=2700")} sollte schon auf der Anlage das Register setzen, wenn sie im manuellen Modus läuft und dieses Register beschreibbar ist.
Ob man den CO2 Wert so setzen kann weiß ich nicht.

Wo sind diese Minuszeichen zu sehen? Bei den Readings der drei Register?

Ich würde an deiner Stelle die Anlage von FHEM regelen lassen. Setz einfach die Lüfterstufe 4 per FHEM, das braucht ja nicht über die Automatik von Helios gehen.
Der Automatikmodus wird ja nicht mehr benötigt.

Gruß,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 13 Oktober 2020, 19:52:04
Die Lüfterstufen sind ja nicht mein Problem. Ich kann von FHEM auf manuell umschalten und die Stufen von FHEM problemlos setzen.

Mein Problem ist, dass es mir nicht gelingt die "Externen Werte" für Temperatur, Feuchte und CO² in die Helios zu schreiben.

Es sieht fast so aus, als seien diese Register nicht von extern zu beschreiben, aber der Helios KWL-CO2 macht ja auch nichts anderes. Also muss es gehen.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 14 Oktober 2020, 08:05:33
Wer lesen kann ist klar im Vorteil. Sowohl in der Beschreibung der ,,Funktions- und Schnittstellenbeschreibung" als auch bei der Helios KWL KNX Beschreibung sind die externen Sensor Werte mit read only gekennzeichnet.

Zu setzen sind diese nur über die RS485, Digital genannte, Schnittstelle.

Das KWL-BEC Bedienteil kann auch nur die Sollwerte setzen und hat, entgegen meinem ersten Eindruck, selbst keine Sensoren.

Somit bleibt mir drei Optionen.
- Sensoren von Helios kaufen für 150€ das Stück und dann überall Kabel hinlegen 😒
- Die Steuerung wie initial beschrieben bauen und die Sensor Werte nur an FHEM senden und auf dem TFT anzeigen.
- Die Steuerung bauen und die Sensor Werte an FHEM senden und die Anlage im manuellen Mode über FHEM steuern.
Oder
RS485 Datenstrom emulierten. Ein zentrales Gateway an das einzige Kabel, das ich vom Dach heruntergelegt habe anschließen. Dann von mehreren Sensoren, die über WIFI verbunden sind, die Steuerung über das Gateway umsetzen. Vorteil wäre dabei, dass ich an vielen Stellen im Haus Sensoren verteilen könnte, die nur über Batterie versorgt werden. Im Falle der Temperatur und Feuchte und der Party/Koch/Toiletten Taster würden die Batterien / Akkus ewig halten.

Der Vorteil, ohne FHEM Steuerung, wäre die Automatik von Helios, wo sicherlich viel Knowhow drinsteckt was ich aktuell nicht habe.

Am Ende alles eine Zeitfrage.

Nochmals Danke, dass du das Modul entwickelt hast.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 14 Oktober 2020, 19:02:00
Das klärt die ganze Sache natürlich auf. Ich dachte eher daran, dass man einen Sensor in der Anlage aktivieren muss, um die Register zu beschreiben, aber leider geht es ja gar nicht.

Ich wäre da ganz klar für die Regelung per FHEM, denn da ist alles schon "vorbereitet" durch dieses Modul. Und kosten würde es auch nichts ;-)
Hier kannst du dann auch beliebige Sensoren im Haus verteilen. Ich habe keine Sensoren, aber eine Menge Homematic-Taster im Haus verteilt.

Für diese Regelung ist nicht wirklich KnowHow nötig, denn wenn du meine Kühlfunktion anschaust, wäre die 1:1 umsetzbar für deine CO2 Regelung, mit dem Unterschied, dass die CO2 Konzentration statt der Temperatur verwendet wird. Durch die "Töpfe" der Regelung ist es auch möglich beides (Kühlung und CO2) geleichzeitig zu machen, denn welche der beiden Regelungen mit der Lüfterstufe nach oben fährt spielt ja keine Rolle und wenn die CO2 Regelung nach unten will/kann, aber es draußen noch Kühl ist, bleibt die Lüfterdrehzahl trotzdem hoch.
Ich unterstelle auch einfach mal, dass die Helios-Regelung auch nichts anderes macht, als die Luftmenge der CO2 Konzentration anzupassen, was sollte sie auch sonst machen.
Wenn die Steuerung nicht durch FHEM erfolgt, kannst du auch keine Funktionen dieses Moduls verwenden, da im Automatikmodus die Lüfterstufen ja durch die Helios-Regelung vorgegeben werden.

Gruß,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: enno am 14 Oktober 2020, 21:29:06
Zitat von: Norbert.Roller am 14 Oktober 2020, 08:05:33
- Die Steuerung bauen und die Sensor Werte an FHEM senden und die Anlage im manuellen Mode über FHEM steuern.

Moin Norbert,

ich nutze Teile (Ideen) von Hugos Lösung. Bei mir sind im ganzen Haus einige Luftfeuchtesensoren (HM und Shelly), CO2 (Bosch und andere) und ein paar Taster (HM, Shelly, 1-wire) und Fenstersensoren (1-Wire) verteilt. Das ganze wird ständig nach den Gewohnheiten der Mitbewohner verfeinert, so dass die Steuerung fast ohne manuellen Eingriff funktioniert, sogar der Kamin wird inzwischen erkannt. Wenn ich das mit Helios Technik umgesetzt hätte, wäre ich ein Vermögen los und die Logik wäre vermutlich auch eher limitiert. Daher wie Hugo auch sagt, nutze lieber FHEM und eigene Sensoren.

Gruss
  Enno
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 18 Januar 2021, 16:08:08
Hallo zusammen,
ich habe zwischenzeitlich reichlich Fortschritte gemacht.

Die Sensoren emuliere ich über einen Raspberry mit speziellem RS485 Head. Die Hauptarbeit, mit der speziellen Modbus Kommunikation, stammt allerdings nicht von mir, sondern Marc. 
Links:
https://knx-user-forum.de/forum/%C3%B6ffentlicher-bereich/geb%C3%A4udetechnik-ohne-knx-eib/1198515-helios-kwl-easycontrols-modbus-telegramme-der-ftf (https://knx-user-forum.de/forum/%C3%B6ffentlicher-bereich/geb%C3%A4udetechnik-ohne-knx-eib/1198515-helios-kwl-easycontrols-modbus-telegramme-der-ftf)
https://github.com/mb-repos/helios_modbus_sensor (https://github.com/mb-repos/helios_modbus_sensor)
Dem Raspberry sende ich die Sensor Werte aus FHEM mit dem UDP-Modul und dieser sendet mit I2C an den Head und dieser wiederum bedient den RS485/ Modbus.

Es sind 4x CO2, 4x VOC und 8x Temp/Humid Sensoren möglich, die alle in die Automatik der Helios einbezogen werden. Aus meiner Sicht eine optimale Lösung.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 18 Januar 2021, 16:19:57
Und jetzt meine Fragen zum nächsten Schritt:

Ich habe ein eigenes Bedienelement entworfen, das auf einem ESP07 (mit ESPEasy ) und einem Nextion Touch-Bildschirm basiert.
Hierbei sende ich die Buttons des Nextion Touch Bildschirm via ESPEasy an Fhem und mit deinem Modul an die Helios weiter. Das klappt auch problemlos.

Beim "Rückweg", also aktuelle(!) Einstellungen der Helios and das ESPEasy habe ich noch Probleme. Die readings ändern sich ja erst nach dem nächsten poll.

Nach den Änderungen der Paramter der Helios durch Fhem sende ich ein {helios_reg("Helios_KWL_OG","manual_poll")}. Das manual_poll habe ich auf eine Minimum Anzahl der v..... reduziert. Nur das was ich unbedingt brauche.

Nun das Problem:
Ich habe noch kein readings gefunden was entweder mitteilt, dass gerade ge-polled wird oder das der manual_poll gerade fertig ist.
Stur 10 Sekunden mit sleep warten geht sicherlich auch, ist aber nicht schön.

Bitte schubst mich mal in die richtiges Richtung.

Danke.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 18 Januar 2021, 21:04:18
Das neu Einlesen der Werte sollte nicht nötig sein, da helios_reg(vxxxxx=abc) das reading im Gerät setzt nachdem es übertragen wurde. Somit sollte ein Lesen des Readings den gesetzten Wert ergeben.

Gruß
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: Norbert.Roller am 19 Januar 2021, 12:36:01
Das ist korrekt für einen einzelnen Wert.
Jedoch benötige ich aktuelle begleitende Werte, die ich aber gerade nicht aktualisiere.

Beispiele:
Anlage läuft Manuell mit Lüfterstufe 4
Automatik setzen v00101=0. Eine Lüfterstufe wird nicht gesetzt, da diese von der Heliossteuerung selbst ermittelt und gesetzt wird.
Der v00102=Lüfterstufe wird aber erst beim nächsten Poll aktualisiert. Also stosse ich einen manuell Poll an und verarbeite die Werte. Wann der manuelle Poll fertig ist, kann ich jedoch nicht wissen, oder ?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 19 Januar 2021, 20:06:03
Wenn es wirklich halbwegs aktuell sein soll, dann würde ich wie du beschrieben hast wirklich einfach warten. (Aber auf jeden Fall mit einem FHEM-sleep und nicht mit Perl)
Oder alternativ gezielt einzelne Register auslesen unmittelbar nach dem Setzen der Automatik, dann sollte das als nächstes in der Queue von FHEM sein und du kannst dann mit einem aktuellen Wert weiter machen. (Ich glaube, dass das Lesen eines Registers atomar ist und nicht asynchron)
Einen Status in der Form eines Ready-Flags gibt es jedenfalls nicht.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 31 Dezember 2021, 15:19:42
Hallo zusammen,

Ich hab das Helios Modul per ModbusTCP vor ca. 2 Jahren auf meinem Fhem-Server installiert aber seitdem nicht wirklich benutzt. Jetzt habe ich folgendes vor:

Ich hab eine Fiabro Switch übrig. Damit möchte ich gerne den Partymodus der KWL für 30 Minuten einschalten. Ich hab allerdings keinen Taster sondern nur einen Schalter. Der Schalter soll also egal ob ich ein oder aus schalte den Party-Modus einschalten und wenn ich nochmal drücke (ein oder aus) wieder ausschalten. Ist das so möglich und wenn ja wie?

VG,

masterkey
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 31 Dezember 2021, 20:25:22
Ein notify auf den Schalter machen (egal ob ein oder aus) und dann mit ähnlich {helios_req_level("KWL_EG_KG",3,30)} für 30 Minuten den Level 3 aktvieren.
Der Partymodus von Helios ist nichts anderes als das.

Grüße und einen guten Rutsch
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 01 Januar 2022, 17:10:00
@hugomckinley: Danke!

Ich versuche das gerade umzusetzen. Habe es so eingerichtet, aber es funktioniert noch nicht:

Ich habe es mit "ZWave_Node_2.1:.* set {helios_req_level("KWL",3,30)}" versucht (siehe Anhang). Da tut sich allerdings nichts.

Kann es sein, dass ich erst noch das helios-Modul extra updaten muss? Oder wird das automatisch geupdatet wenn ich fhem update? Wenn nicht, wie mache ich das?
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 02 Januar 2022, 17:13:18
Du musst das ohne set machen, es handelt sich dabei um eine Perlfunktion die aufgerufen wird.
So sieht das z.B. bei mir aus DG_WC_Taster_Btn_01:Short.* { helios_req_level("KWL_OG_DG",4,10)}
Der erste Post sollte alles erklären, wenn was unklar ist, bitte melden, dann werde ich das ergänzen.

Zum Testen kannst du auch nur { helios_req_level("KWL_OG_DG",4,10)} im Befehlsfenster in FHEM probieren, dann siehst du, ob es funktioniert.

Ich würde dir generell die aktuelle Version des Skripts empfehlen. Da du ja noch nichts damit gemacht hast, würde ich die Anlage einfach löschen und das aktuelle Script verwenden.

Gruß,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 02 Januar 2022, 17:22:22
Version 1.8 ist online:

Bugfix: Ein Neustart von FHEM führt dazu, dass die sleeps, die die Lüfterstufen wieder zurücksetzen sollen nicht mehr ausgeführt werden und so die Anlage ewig auf einem zu hohen Level läuft. Solche Zombie-Requests werden nun bei jedem Stufenwechsel bereinigt.

Nur Update des Scripts ist nötig.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 03 Januar 2022, 13:34:15
Zitat von: hugomckinley am 02 Januar 2022, 17:13:18
Du musst das ohne set machen, es handelt sich dabei um eine Perlfunktion die aufgerufen wird.
So sieht das z.B. bei mir aus DG_WC_Taster_Btn_01:Short.* { helios_req_level("KWL_OG_DG",4,10)}
Der erste Post sollte alles erklären, wenn was unklar ist, bitte melden, dann werde ich das ergänzen.

Zum Testen kannst du auch nur { helios_req_level("KWL_OG_DG",4,10)} im Befehlsfenster in FHEM probieren, dann siehst du, ob es funktioniert.

Ich würde dir generell die aktuelle Version des Skripts empfehlen. Da du ja noch nichts damit gemacht hast, würde ich die Anlage einfach löschen und das aktuelle Script verwenden.

Gruß,
Hugo

Super! Vielen Dank. So funktioniert es.

Mir ist nur noch was aufgefallen was evtl ein Bug ist.

Wenn ich time_list 08:00|0 18:00|1 setze (also um 08:00Uhr soll die Lüftung bis 18:00Uhr aus sein), dann kann ich zwar mit
{ helios_req_level("KWL_OG_DG",4,10)}
die Lüftung auf Stufe 4 einschalten aber sie setzt sich nach den 10 Minuten nicht mehr zurück auf 0 sondern bleibt auf Stufe 4. Die Mindestlüfterstufe in Helios ist korrekt auf 0 gesetzt.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: tgut am 03 Januar 2022, 17:23:53
Hallo Hugo,

vielen Dank für das tolle Modul. Hab es vor Kurzem installiert und läuft problemlos.

Zitat von: michisa86888 am 25 Februar 2019, 20:07:59
Könnte man in die Readingsgroup auch noch den internen Feuchtefühler Abluft mit auf nehmen?
Würde den Wert gerne benutzen um andere Geräte abhänging zur aktuellen Luftfeuchte zu steuern..
Wäre dies möglich bzw. findet sich der Wert bereits in irgendeinem Reading?

Vielleicht noch eine Info zu den Anfrage von Michi: Das Register für die berechnete interne Feuchtigkeit ist v02136 (zumindest bei meiner KWL EC 500W ET L mit easyControls v2.27).

Grüße
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 03 Januar 2022, 17:50:46
Ist das tatsächlich die Feuchte? Bei mir ist der Wert 0 (ich habe die gleiche Anlage)
Woher hast du die Info?

Das Label ist bei mir "Vor:"


Gruß,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 03 Januar 2022, 18:33:37
Zitat von: masterkey am 03 Januar 2022, 13:34:15
Super! Vielen Dank. So funktioniert es.

Mir ist nur noch was aufgefallen was evtl ein Bug ist.

Wenn ich time_list 08:00|0 18:00|1 setze (also um 08:00Uhr soll die Lüftung bis 18:00Uhr aus sein), dann kann ich zwar mit
{ helios_req_level("KWL_OG_DG",4,10)}
die Lüftung auf Stufe 4 einschalten aber sie setzt sich nach den 10 Minuten nicht mehr zurück auf 0 sondern bleibt auf Stufe 4. Die Mindestlüfterstufe in Helios ist korrekt auf 0 gesetzt.

Das Script kann die Anlage nicht auf Stufe "0" regeln.
Ich weiß nicht was es dann macht muss ich gestehen.
Deinen Anwendungsfall kannst du aber mit:
Zitat{helios_limit_level("KWL","0","480")}
begrenzt die maximale Lüfterstufe für 480 Minuten auf Level 0 (Lüftung aus, muss in der KWL freigegeben sein). z.B. der Nachbar heizt seinen Kamin an und man will den Geruch nicht im Haus haben.
aus dem ersten Post abdecken.

Ich hoffe das löst dein Problem.

Gruß,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 04 Januar 2022, 06:57:16
Ah ok, du meinst, dass ich dann mit einem Timer (z.B. dem WeekdayTimer) um 8 Uhr mit:

{helios_limit_level("KWL","0","600")}

die Lüftung ausschalte und dann um 18 Uhr mit

{ helios_req_level("KWL",1,840)}

wieder ein auf Stufe 1?




Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 04 Januar 2022, 08:14:28
Das { helios_req_level("KWL",1,840)} ist nicht nötig.
Die Anlage wechselt nach den 600 Minuten in die Stufe, die durch die Automatik (oder andere Parameter, z.B. Toilettenlüftug o.ä.) festgelegt wurde.
Kann irgendein Wert zwischen 1 und 4 sein, aber eben nicht 0 ;-)

Grüße,
Hugo
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 05 Januar 2022, 12:57:56
Leider funktioniert das auch nicht so wie ich es gerne hätte.
Wenn über den timer um 08:00 Uhr das limit gesetzt wird mit:
{helios_limit_level("KWL","0","600")}
kann ich zwar über meinen switch und das notify mit:

ZWave_Node_2.1:reportedState:.* { helios_req_level("KWL",4,15)}

die Lüfuntg auf 4 stellen. Nach den 15 Minuten fällt die Anlage aber auf Stufe 1 zurück weil die time_list auf 06:00|1 20:00|1 steht.

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 08 Januar 2022, 00:47:59
Das ist merkwürdig, das sollte so nicht passieren.
Du solltest nichtmal auf den Level 4 kommen.
Kann ich mir auch nicht erklären, da das manual_limit das letzte ist, was ziehen sollte.
Was steht denn jeweils in den Readings manual_limit, last_auto_level und max_allowed_level? (vor dem Drücken, nach dem Drücken und nach den 15 Minuten)

Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: masterkey am 20 Januar 2022, 20:56:19
Also meine Anlage soll ja um 08:00 Uhr mit

{helios_limit_level("KWL","0","600")} auf 0 gesetzt werden und nur für 15 Minuten auf Stufe 4 laufen wenn ich den Schalter drücke. Nach Ablauf der 15 Minuten wieder auf Stufe 0 zurückfallen.

Vor dem Drücken steht da:
manual_limit = 0 / last_auto_level = 1 / max_allowed_level = 4

nach dem Drücken steht genau das gleiche drin und nach 15 Minuten auch.


Zwischen 18:00 Uhr und 08:00 Uhr wenn die Anlage auf Stufe 1 läuft funktioniert es wie ich es benötige:

Vor und nach dem Drücken Sowie nach 15 Minten steht dann:
manual_limit = none / last_auto_leve = 1 / max_allowed_level = 4
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: hugomckinley am 24 Januar 2022, 20:43:01
Das dürfte gar nicht sein, dass die Anlage auf Stufe 4 geht, wenn das manual_limit auf 0 gesetzt ist. Sie sollte auch nicht auf Stufe 1, denn das letzte was überprüft wird ist das manual_limit.

Wie sind denn die folgenden readings bei dir in den verschieden Zuständen?

req_level1, req_level2, req_level3, req_level4 und v00102
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: michael.thielmann am 01 September 2022, 21:46:39
Guten Abend,
ich bin neu bei FHEM und habe überall nach der Datei 99_heliosUtils.pm gesucht.
Wo finde ich diese?
Vielen Dank
Michael
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: enno am 02 September 2022, 07:05:02
Zitat von: michael.thielmann am 01 September 2022, 21:46:39
ich bin neu bei FHEM und habe überall nach der Datei 99_heliosUtils.pm gesucht.
Wo finde ich diese?

hier im ersten Beitrag ganz unten: https://forum.fhem.de/index.php/topic,74788.msg665205.html#msg665205

Gruss
  Enno
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: michael.thielmann am 06 September 2022, 11:25:18
Leider kann ich im ersten Beitrag keinen Download finden.
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: enno am 06 September 2022, 11:37:21
Erster Beitrag ganz unten...

Gruss
  Enno
Titel: Antw:Helios KWL per ModbusTCP regeln/steuern
Beitrag von: michael.thielmann am 06 September 2022, 16:50:43
Problem gefunden!
Ich war nicht eingeloggt und dann werden keine Anhänge angezeigt!
Vielen Dank
Michael