Ich musste mich echt überwinden, das Wort ultimativ im Titel zu vermeiden. Aber meine Freude ist riesig



Und Achtung: Der Bericht ist nun doch länger als geplant geworden....
Nach ein paar Tagen Einarbeitungszeit (und der Erfahrung, die ich mit den KB Einträgen gesammelt habe und @S. Kolbinger's punktuellen Anregungen) habe ich heute meine Gesamtbeschattungslogik fertiggestellt, die ich in den nächsten Tagen im Forum dokumentieren und teilen werde.
Vorgeschichte / Hintergründe:
Wir wohnen seit 8 Jahren in einem Passivhaus, wo der Anspruch solare Gewinne als auch maximaler Komfort heißt. Die Beschattung (und Zusammenspiel mit WP, Solar, Kühlung , KWL und Co) war Hauptentscheidung für KNX.
Anfangs habe ich diese Herausforderung mit der Logik der Wetterstation, RTR Funktionen und ein paar KNX Kunstgriffe umgesetzt, zwar funktional aber wenig komfortabel (bei 15m² Glas ist auf/zu selbst im Winter nichts).
Schnell folgte das Wiregate und die Logik wurde um diverse Plugins erweitert, die Sommer/Winter, Behanghöhe proportional Innentemperatur und Türstatus ergänzt hat. Alles in allem hat das jetzt 8 Jahre zufriedenstellend, aber nicht ganz fehlerfrei funktioniert.
Wartbarkeit ist katastrophal, da verteilte Logiken (und Zeitschaltuhren) Mist sind, außerdem hat der mehrfache Ausfall der Suntracer immer dazu geführt, dass gar nichts ging.
Was ist der aktuelle Status:
Die Suntracer ist gestern bei einem Blitzschlag (zusammen mit ein paar weiteren Teilen) endgültig abgeraucht. Zum Glück ist das Wetter gerade unschön und meine TWS Beschattungslogik gerade fertig geworden.
Danke Dok.-Mode konnte ich während der Entwicklungsphase kontinuierlich testen und bin im Moment selbstsicher, dass ich eine fehlerfreie Logik fertiggestellt habe, die funktional noch besser ist, als meine alte Lösung.
Ab morgen läuft die Logik mit einem Helligkeitssensor im Testbetrieb auf einer Türe (der komplexere Fall, siehe unten).
Aus Übersichtlichkeit ist die Logik in 2 Bausteine aufgeteilt.
Funktionsumfang - Baustein1:
- Oberer und unterer Schwellwert für Helligkeit und zusätzlich parametrierbare Verzögerungszeiten Höhe/Lamelle EIN, Höhe AUS und Lamelle AUS. Das hat mir immer gut gefallen, dass bei Wolken erstmal nur aufgedreht wird und erst nach längerer Verzögerungszeit die Jalousie ganz aufgefahren wird.
- Grenzen für Höhe und Winkel bei der beschattet wird (Fenster-/Fassadenparameter)
- Eingang für Auto-Höhe, wo der Innentemperaturabhängige Sollwert vorgegeben wird (für Winter)
- Prio-Position, mit der zB im Sommer die Jalousie immer auf 100% steht (ggf. Forecast-abhängig)
- Berechnung Lamellenwinkel inkl. Step-Funktion (Mindeständerung vor erneutem Senden)
- Lamellen-Parameter zu Berechnung der notwendigen Lamellenstellung
=> AUSGANG Automatikposition für Höhe und Lamelle
Funktionsumfang - Baustein2:
Diese Logik ist der wahre Gewinn gegenüber dem, was Wetterstationen in Kombination mit den Möglichkeiten der Jalousie-Aktoren können.
Der Baustein steuert die Jalousie auf Basis der Automatikposition für Höhe und Lamelle über 24 Stunden inkl. Türstellung.
1) Eingang Dämmerungsschwelle und Eingang Zeitfenster Lamellensteuerung
=> damit drehen die Lamellen auf 0%, sobald es hell genug ist und das Zeitfenster freigegeben ist (zB Haus wach)
=> wenn Lamellenposition Auto > 0%, wird dieser Wert verwendet, da die Sonnen bereits stark auf das Fenster scheint.
=> Wir die Fenster/Türe geöffnet fährt die Jalousie auf.
=> ABER: War das Fenster schon offen (Lüftung während der Nacht), bleibt die Jalousie unten (Latch Nacht). D.h. keine Höhenbewegung in dieser Phase, außer man steht vor der Tür und will hinaus.
2) Eingang Tag (klassischer Schwellwert) und Eingang Zeitfenster Tag (zB Hauswach +5min):
=> ab diesem Zeitpunkt wird die volle Automatik aktiv => Jalousie fährt auf Automatik_Höhe. Im Osten kann das bereits eine definierte Höhe/Lamellenstellung sein; im Süden und Westen fährt die Jalousie auf.
=> Öffnen der Tür bewirkt ein Auffahren auf eine definierte Position (Durchgangshöhe).
Aus 1/2 ergibt sich ein langsames Erwachen des Hauses an das ich mich sehr gewöhnt habe!
3) Über den ganzen Tag fahren die Jalousien in die richtige Höhe (abhängig vom Wärmebedarf), die Lamelle wird nachgeführt...
4) Ab dem Zeitpunkt Tag=FALSE fahren die Jalousien wieder in die Dämmerungsposition (typisch Höhe 100%, Lamelle 0%).
- Bei offener Türe fährt die Tür nur in die Durchgangshöhe. Beim Schließen der Türe fährt die Jalousie zu bzw. Öffnen wieder auf.
5) Ab Zeitpunkt Dämmerung = FALSE schließen die Lamellen auf 100%
- War die Türe bereits offen, bleibt die Jalousie Türe weiterhin offen (Latch Tür Abend).
- Erst ab Zeitfenster Lamelle = FALSE zB. "Alles Aus Schlafzimmer" schließt die Jalousie, unabhängig davon, ob die Türe noch offen ist oder nicht.
- Ab diesem Zeitpunkt fährt die Jalousie auf Lüftungsstellung (zB 50%), bis die Tür geschlossen wird (=> Lamelle 100%) oder der Tag wieder beginnt (Latch Nacht, siehe oben).
Anmerkung: Spätestens jetzt braucht es die Ergänzung, dass ich nur eine Verschlussüberwachung habe und nicht zwischen Kipp/Offen unterscheiden kann.
Es bleibt daher eine einzige Handbedienung, nämlich das Auffahren bei Nacht. Das stört mich aber nicht, da ich ohnehin nicht möchte, dass ein Öffnen der Türe in der Nacht die Jalousie auffährt => Lüften mit offener Tür bei Jalousie in Lüftungsstellung.
Was wird sonst benötigt:
Mit den beiden Bausteine je Fassade, Baustein 2 vielleicht 2-3x Extra, bei Fassaden mit mehreren Türen, ergänzt um 2 Dämmerungsschwellwerte, Standard-Astrobaustein (für die gesamte Steuerung) und Berechnung der SollHöhe im Automatikbetrieb (je Raum) ist die Steuerung komplett und deutlich ausgereifter als zuvor.
Gleich vorweg (in Hinblick auf die Hash-Diskussion): Auch bei der Suntracer muss man mindestens die gleiche Anzahl Parameter je Fassade d.h. bei mir 6x eingeben. Eine weitere sinnvolle Modularisierung ist mir nicht eingefallen, aber das ändert man ohnehin nicht mehr zu oft.
Der Jalousie-Aktor übernimmt manuelle Steuerung, Rückkehr zu Automatik nach x Stunden (das war in meiner bisherigen Lösung nicht möglich, da die Nachtposition eine manuelle Stellung war) und natürlich Windalarm.
Die Wetterstation übernimmt künftig nur mehr den Helligkeitswert und Windalarm (ich habe von Intelligenz/Elektronik am Dach echt genug, Messwert genügt)
Resumee:
Die Erstellung war durchaus eine Herausforderung, aber ich würde schätzen kleiner 12h Entwicklungszeit, wovon ein Teil Lernphase und Fehlersuche (Syntaxfehler, derzeit mit noch nicht vollständiger Fehlermeldung) war, die man abziehen muss + schlechte LE-Performance in der RC3.
Berücksichtigt man, dass ich die gesamte Intelligenz der Suntracer (Schwellwerte, Zeitverzögerungen, Winkelbereich, Zeitschaltungen etc.) nachprogrammiert habe, bin ich damit mehr als zufrieden und gerade mächtig stolz


Dinge wie "Latch Tür Offen" am Abend, damit man nicht ausgesperrt wird, aber gleichzeitig auf/zu wenn man in diesem Zeitfenster die Tür öffnet und "Latch Nacht" zur Unterdrückung des Auffahrens am Morgen, wenn die Tür offen geblieben ist und wieder auf/zu wenn man in diesem Zeitfenster die Türe öffnet, waren in perl (für mich) absolut unmöglich fehlerfrei realisierbar. Das gleiche gilt für Kombinationen von Ein-und Ausschaltverzögerungen mit Re-Trigger.
Schreckt euch nicht von den Screenshots, die Debug-Ausgänge kommen noch weg...
lg
Robert