Zehnder ComfoAir 350 über RS232 anbinden

Hallo Gemeinde,

ich habe seit kurzem eine KWL bekommen, um unser extrem gedämmten Altbau zu belüften. Es handelt sich um eine Zehnder ComfoAir 350, die mit anderen Geräten baugleich ist (siehe PDF im Anhang).
Parallel baue ich die Elektrik größten Teils auf LCN um (Danke an meike0_0) und habe auch schon eine UVR1611 im LCN Verbund. Jetzt würde ich gerne die Lüftung über die RS232 auslesen und auch steuern können, um nicht nur manuell (über 0-10V) eingreifen zu können. Da fehlt es mir aber an KnowHow, um das Protokoll in eine „Schnittstelle“ zu implementieren. Das angehängte PDF beinhaltet das komplette Protokoll und somit alles was man brauchen müsste.

Ist noch einer von euch mit einer Zehnder ComfoAir oder baugleich (WHR930 von StorkAir und G90-380 von Wernig) gesegnet und könnte hier weiterhelfen?

Gruß
911er

RS232-Protokollbeschreibung_ComfoAir.pdf (81 KB)

Demnaechst, wir bekommen unsere in ca 4 Monaten (das Haus drum rum muss noch gebaut werden). Danach werde ich mich an die Ansteuerung machen, wenn Du also was Geduld hast wird es nächstes Jahr was geben.

VG
Stephan

Hallo,

haben eine ComfoAir 550 in der Comfobox von Zehnder. Möchte die auch auslesen. Probiere mich am Auslesen des BackNet-Busses bin aber noch nicht sonderlich weit gekommen. Bin also an dem Thema auch sehr interessiert.

Gruß

hardlog

Hallo „Gemeinde“,

ich war ja schon mal froh die Protokollbeschreibung gefunden zu haben. Damit lässt sich bestimmt was anfangen. Ich denke, dass ich bis Mitte des kommenden Jahres noch genug andere Projekte in der Pipeline habe, um noch FREIZEITFREI über den Winter zu kommen. Unser Haus ist zwar Bj. 56, aber davon merkt man nix mehr. Haben es auf „fast Passivhaus“ gebracht und da gibts noch ein paar Themen: Einzelraumregelung mit LCN, Rollo und Raffstorsteuerung mit LCN, LCN für alles weiter (Licht, PIR-Melder außen & innen, Alarmanlage, Garagentor und Grundstückszufahrt, etc.), MOBOTIX - SIEDLE Sprechanlage mit Fritzbox an 2 Stationen, SmartMetering mit JANITZA UMG604, etc. Also ein Jahr habe ich bestimmt noch zu tun bis die Lüftung dran ist. Dann läuft sie diesen Winter wohl einfach über die 0-10V Ansteuerung vom LCN. Wollte nur schon mal die gefundenen Infos (Protokoll) bereitstellen, falls es hier „Gleichgesinnte“ mit viel Zeit gibt :smiley:

Gruß
Uwe

Würde mich da gerne beteiligen.

Wie bist Du an das Protokoll gekommen? Vielleicht komme ich auf gleichem Wege auch an das Protokoll der Steuerung der ComfoBox?!

Habe nur bislang keine Erfahrung mit dem Auslesen der RS232. Kann mir da jemand Starthilfe geben? Wie komme ich dann auf php?
Andere Sache: muß ich das Gerät auffordern zu senden, oder tut es dies selbstständig? Vermutlich muß ich den Datensätze nur mitschreiben um ihn dann decodiert irgendwie in IPS zu bekommen?

Gibts da schon irgendwelche Anfänge-Einstiegs-Anleitungen?

Gruß
hardlog

Hallo HardLog,

das gab es mit 2 Tagen googlen und ein wenig rummailen bei Leuten, die sich im MICROKONTROLLER-NET tummeln. Wenn DU dir mal das Protokoll ansiehst kannst DU Werte abfragen und auch Werte setzen. Die COMFOAIR-Schnittstelle eine REQUEST-RESPONSE Schnittstelle, mit der man über ein ACK-die entsprechende Anfrage bestätigt bekommt.
Es wäre toll wenn jemand ne DLL basteln würde, in der alle Komandos und das ACK-Handling als Schnittstelle hinterlegt sind.

Bin mal gespannt, ob da Bedarf besteht :confused:

Gruß
911er

Hallo,

so wie es momentan aussieht, werden wir in Mitte des Sommers auch eine ComfoAir350 bekommen. Ich habe eben mal bei Zehender angerufen. Nach deren Aussage ist die RS232 Schnittstelle nur für die Service-Techniker und nicht zum steuern der Anlage gedacht …

Aber wie ihr oben schon bemerkt habt, gibt es ja bereits ein Reverse-Engenierung vom Protokoll. Der zugehörige Thread ist übrigens Steuerung der ComfoAir über PC - HaustechnikDialog

Wir sollten mal nachhören, ob man das zugehörige Programm von
see-solutions nicht irgendwie mit IPS verbinden kann.

Ansonsten habe ich gesehen, dass es eine neues Protokoll PDF online gibt. Das aus Post 911er ist vom 21.08.2011. Das aktuelle was online steht ist vom 12.02.2012.

IPS wird in dem Thread erwähnt, aber nicht weiter darauf eingegangen.

Wie sieht es bei euch aus? Es waren ja einige, die Interesse hatten … Hat sich bei euch was getan?

Wie gesagt, bei mir ist es noch ein wenig hin, aber ich will mir keine Lüftungsanlage einbauen lassen, die ich hinterher nicht über IPS steuern kann. Aber so wie es aussieht, sollte das ja mit der CA350 klappen …

Gruß,

ernie

Hallo ernie,

bin mit meiner ComfoBox voll zufrieden.

Nein, bei mir hat sich bzgl. der Auslesen der Schnittstelle bzw. der Einbindung in IPS nichts neues getan.

Bin aber nach wie vor absolut daran interessiert.

Gruß
hardlog

Hallo,

das Thema geht relativ leicht. 0-10V Ausgang des LCN Moduls an Eingang 1 verkabel und dann folgende Einstellungen wählen:

Wenn man die Register P30 & P34 auf 0% gestellt hat kann man über den Analogeingang die Anlage auch auf 0% runterfahren - leider ohne das der Bypass funktioniert. Daher ist es wichtig, dass die Anlage im Winter auf Stufe A und im Sommer auf Stufe 1 steht, damit im Sommer der Bypass funktioniert um kalte Luft für ne Kühlung zu nutzen (in Abhängigkeit der Komfortemp). Dann geht zwar nicht mehr tiefer als Stufe 1 aber das ist im Sommer o.k. Im Winter braucht man keine Bypass-Funktion und man kann die Stufe A wählen, die auf 0 gesteuert werden kann.

Der Vollständigkeit halber die restlichen relevanten Register:
810 auf 1 = Analoger Einang 1 auf anwesend
811 auf 9 = Eingang 1 steuert
813 auf 0 (Minimalwert)
814 auf 100 (Maximalwert)

816 = auslesen des anliegenden Analogwertes (in %). Unter Register 38 (Abluft) und 39 (Zuluft) kann man direkt sehen welche %-Leistung die Lüfter gerade leisten.

Ich mache das noch mit LCN-GT10, sobald aber Feuchte-Sensoren vorhanden sind wird die Lüftung alles alleine machen :slight_smile:

GRUSS
911er

Hallo. Wir werden in Kürze auch eine ComfoAir 350 Luxe bekommen und LCN als Bussystem einsetzen. Mich würden Details zur Anbindung sehr interessieren. Z.b. welches LCN-Modul wird zur Ankopplung benutzt, wie sieht die Programmierung aus, etc. Bin noch ein Anfänger auf dem Gebiet und würde mich über Unterstützung sehr freuen. Vielen Dank vorab.

Hallo,

unsere Lüftung ist zwar noch nicht da und ich habe mich noch nicht intensiv damit beschäftigt. Aber wenn ich es nicht komplett falsch verstanden habe, wirst Du mit LCN da erst mal nicht viel anfangen können.

Die Anbindung funktioniert über die RS232 (COM) Service Schnittstelle. Wahrscheinlich wirst Du Dir einen USB-COM Adapter kaufen müssen.

Eventuell gibt es auch LCN-COM Adapter. Das weiß ich nicht.

Gruß,

ernie

Hallo,

hat derweilen jemand seine ComfoAir (per Rs232) oder die COmfoBox (per rs485) in IPS einbinden könnten?
Ich hab leider keine Ahnung wie man serielle schnittstellen ausließt? Das Protokoll der COmfoAir liegt ja schon vor. 1. Frage muß ich noch Hardware zwischen Anlage und Server bauen (abgesehen von ggf. seriell to usb?), wie bekomme ich dann die seriellen daten in IPS (z.B. in ein Reg-Var?)?

Gruß
hardlog

für meinen Teil lautet die Antwort leider noch immer: NEIN :frowning:

Die Renovierungen ziehen sich leider wie so oft etwas hin …

Die ComfoAir hängt seit Wochen im Keller, war aber noch nie an und so wird es die nächsten Wochen auch bleiben …

Vor Mitte 2013 dürfte zu diesem Thema von meiner Seite aus leider nicht neues kommen :frowning:

Dank der SEHR guten Protokollbeschreibung von ‚see-solutions.de‘ habe ich jetzt meine Wohnraumlüftung ‚Wernig G90-380‘ (ist Baugleich der ComfoAir) mehr oder weniger Problemlos an IP-Symcon anbinden können.

siehe dazu Fotoalbum (Kurzinfo ist beim jeweiligen Fotos verfügbar)

Aber ein Problem hab ich noch!
Wenn ich zu viele Schreibkommandos (Ventilationsstufe ändern, …) absetze, verschluckt sich öfter meine Raumbedieneinheit CC-Ease und zeigt nix mehr an -> Nach Stromlosmachen der WRL arbeitet die CC-Ease wieder korrekt.
Meine Frage: Könnte das mit dem RS232 Modus zusammenhängen? Meine Anlage ist noch auf ‚nur CC-Ease‘ gestellt und ich trau mich nicht umzustellen, da ich nicht genau weis, was die Modi ‚Nur PC‘, ‚PC Master‘ bzw. ‚PC Logmodus‘ bedeuten!
Weiters wäre es interessant die Anlage per Kommando auf ‚AUTO‘ zu setzen !?

DANKE und Lg.
PreinfalkG

Hallo zusammen,

habe einen ähnlichen Stand: Habe mir eine Routine zum Senden der Befehle und der Berechnung der CRC erstellt. Erste Tests klappen soweit auch.

Womit ich Probleme habe ist das Lesen von Daten, da bereits dort sehr viel gesendet wird und RegisterVariable das in einzelnen Bytes empfängt und das zu Verarbeiten bremst mein IPS stark ein.

Hatte gehofft, mit dem RS232 Modus „nur PC“ nur die Empfangsdaten für meine Befehle zu empfangen. Das klappt aber nicht. Frage mich daher auch wofür dieser Modus ist.

VG

Marcus

Hallo,

Dank an PreinfalkG. Jetzt hab ich auch den Einstieg ins Auslesen gefunden. Hab meine ComfoAir550 per Rs232 erfolgreich verkabelt und kann über den COMPort -> CUtter -> Reg.Var die Daten in einem Script abfragen bzw. auslesen. Ich komme allerdings nur bis zum Script in so fern, dass ich die ankommenden Daten der Reg.Var in eine normale Variable legen kann. Ich steige leider mit dem Syntax der Kommandos (Stichwort Hex etc.) noch ganz durch.
Wenn ich den Inhalt von $_IPS['VALUE] nun in seine Einzelteile zerlegen?
Irgendwie muss das doch wie folgt gehn:

if ($_IPS['SENDER'] == "RegisterVariable") {
        $Data    = $_IPS['VALUE'];
        $Kommando=substr($Data, ?????); // ersten wieviel Zeichen ausschneiden ergibt das KOmmando
        $Antwort=substr($Data, ????); // welche Zeichen für die Antwort
        switch($Kommando) {
           case '0x00 0x0F':  // Kommando: Temperaturstatus abrufen
				 if ($Antwort==.......) ......
						  $AußenTemp= ?????
              break;
			  case 'xxx': // 
					// .....
				  break;
				  }
        }

Wertet ihr die ankommenden Daten im rohformt aus oder müssen die umgewandelt werden (hexdec …) ?

Über ne Hilfe würde ich mich riesig freuen. Vielleicht könnte einer von euch mir nen Teil eurer Auswerte-Script schicken oder posten?

hardlog

Hallo hardlog

Gern kann ich dir meine derzeitigen IP-Symcon Skripte zur Unterstützung zukommen lassen.

Also die erste Hürde mit ‚Serial Port IO Instanz‘ und ‚Cutter mit Register Variable‘ hat du ja schon – oder ?
Aber hier noch mal Screenshots dazu:

[ol]
[li]IO Instanz und Splitter[/li][li]RS232 IO Instanz[/li][li]Cutter auf RS232 Instanz[/li][li]Register Variable ruft Skript ‚Wernig G90-380‘ (18414.ips.php) auf[/li][/ol]

Im Skript ‚Wernig G90-380‘ (18414.ips.php) werden wenn $IPS_SENDER == „RegisterVariable“ ist, per „if – else if – else if - …“ die ersten zwei Kommando Bytes gecheckt und die entsprechende Funktion zur Weiterverarbeitung aufgerufen.
Wenn $IPS_SENDER == „WebFront“ ist, werden Kommandos zur Steuerung versendet. Dazu habe ich bei der Variable ‚Stufe (24850)‘ ein einsprechendes Variablen Profil angelegt (1=Abwesend, 2=Stufe 1, 3=Stufe3, 4=Stufe3) und bei ‚Eigene Aktion‘ das Skript ‚ Wernig G90-380‘ (18414.ips.php) hinzugefügt.

Im Skript ‚Wernig G90-380 Library‘ (40414.ips.php) stecken dann die einzelnen Funktion zur Weiterverarbeitung der einzelnen Messages/Kommandos. Dieses Funktionen sind per Include auch in 18414.ips.php verfügbar.

Zusätzliche Hinweise:

[ul]
[li]Bitte bedenke, dass dies hier auch mein erster Versuch sind die Wohnraumlüftung (WRL) einzubinden[/li][li]Da die Anlage unermüdlich Status Messages sendet, hab ich derzeit Counter Variablen eingebaut um zu sehen welche Message wie oft empfangen wird. Um Rechenzeit einzusparen, werde ich im nächsten Schritt bei diversen Messages die Auswertung nur alle xx Sekunden machen. Sprich den Aufruf der Funktionen ‚Extract_Cxx‘ werde ich nicht bei jedem Empfang der Message ausführen[/li][li]Derzeit habe ich mal so viele Informationen als Möglich aus den Message Daten extrahiert um diese in IP-Symcon zu visualisieren. Da man die meisten aber fast nie braucht, verwende ich sehr viele ‚String‘ Variablem mit dem Profil ‚~HTMLBox‘ um möglichst viel Daten mit wenig IP-Symcon Variablem anzeigen zu können.[/li][li]Da ich die Variablen im Skript direkt über die ID anspreche, musst du dir aus diesen Screenshotsdie Variablen bzw. Variablen IDs zusammensuchen[/li][li]Mit solchen Update Skripts sende ich entsprechende Kommandos an die WRL (siehe die Ganzen ‚Update‘ Skripts in den Screenshots)[/li][/ul]

Die WebFront Screenshots sind hierzu sehen. Man knn auch gut die ‚Update‘ Skripts für die einzelnen Kommandos, Message Counter (Cnt), bzw. String Variablen mit ‚~HTMLBox‘ Profilen sehen/erkennen!

Ich hoffe, ich kann dir bzw. auch anderen damit den Einstieg erleichtern.
Feedback würde mich freuen bzw. würde die gern den ‚RS232 Modus‚ noch mit Euch diskutieren !

Lg. PreinfalkG

Hallo zusammen,

ich war jetzt krankheitsbedingt ne Weile nicht hier, aber das klingt ja FANTASTISCH :eek:

Ich werde mir die Scripte mal anschauen und dann an meiner ComfoAir350 testen, sobald alles verkabelt ist.

JEDENFALLS DANKE AN ALLE
911er

Tausend Dank PreinfalkG für die Hilfe, so müßte ich eigentlich reinkommen. Wie gesagt, empfangen tu ich die daten schon. Mein Hauptproblem ist die Datenflut, die mein System ordenlicht belastet…

Wenn ich tiefer eingedrungen bin werd ich meine Fortschritte posten, auch bzgl, der diversen Modi (RS232 etc.)

Gruß
hardlog

Hallo,

besten Dank an PreinfalkG, dessen Anleitung sehr nützlich ist. Mir geht es in erster Linie nur um die Abfrage der Temperaturwerte und der Darstellung im Webfront. Klappt soweit ganz gut.

Leider habe ich das Problem, dass aufgrund des Datenstroms die CPU meines Rechners allein schon durch die Cutter Instanz sehr stark ausgelastet wird. Schöner wäre es, wenn die Daten nur nach vorheriger Abfrage von der Lüftungsanlage gesendet werden. So hätte man keine Datenflut und die CPU wäre nicht ständig belastet.

Irgendwie sollte dies ja auch möglich sein, da das Tool ComfoPC.exe von see-solutions ja auch nach dem Öffnen der RS232 Schnittstelle nicht automatisch mit Daten geflutet wird. Die Daten kommen nur nach vorheriger Abfrage (Request an die Lüftungsanalge).

Hat vielleicht jemand eine Idee, wie man das auch mit IP Symcon realisieren könnte?

Viele Grüße…

markusk