Musterlösung Verteilte Summe mit Fehlerkorrektur
Aus BusWiki
Inhaltsverzeichnis
Anforderung
Eine Aktion (z.B. Relais der FBH-Pumpe ein-/ausschalten) soll in Abhängigkeit von Zuständen (Ausgängen, Relais, Binärsensoren, Summen; z.B. Raumtemperatur unter/über Schwellwert), die über verschiedene Module verteilt sind, ausgeführt werden. Wenigstens ein "positiver" Zustand soll zum Ausführen der Aktion reichen.
Lösung
(Die Lösung entspricht zu weiten Teilen dem "Fensterkontakte"-Beispiel aus der Techn. Dokumentation zu Logikfunktion von Issendorff, geht jedoch darüber hinaus.)
Für die Programmierbeispiele werden die Zustände der Relais, die die Ventile der Heizkreise der einzelnen Räume steuern, ausgewertet. Wenn im ganzen Haus wenigstens ein Ventil offen ist, wird die Heizkreispumpe per Relais freigegeben. Das endgültige Einschalten der Pumpe ist Aufgabe der Heizungssteuerung, die nicht mit LCN gekoppelt ist.
Zustände lokal sammeln
Die auszuwertenden Zustände werden als erstes auf LEDs eines "LED-Sammler-Moduls" - oder wenn es mehr als 12 Zustände sind, auf die LEDs weiterer "LED-Sammler-Module" - gelegt. Damit zeigen diese LEDs genau die auszuwertenden (evtl. schon verteilten) Zustände in einem Modul an. Pro "LED-Sammler-Modul" wird eine Summe angelegt, die genau die in diesem Modul abgelegten LEDs enthält.
Modul: 10 Heizung OG LEDs: LED 01: Quelle: Segment 0, Modul 10, Relais 1 Aus: LED aus An: LED an LED 02: Quelle: Segment 0, Modul 10, Relais 2 Aus: LED aus An: LED an LED 03: Quelle: Segment 0, Modul 12, Relais 5 Aus: LED aus An: LED an LED 04: Quelle: Segment 0, Modul 13, Relais 8 Aus: LED aus An: LED an Logik-Funktionen (Summen): Summe 1 (Taste C1): • kombiniert lokale LEDs LED 1-4 Überprüft auf Status: EIN
Sind die Zustände über mehrere Module verteilt, so wird bei den ersten "LED-Sammler-Modulen" die zur Summe zugehörige C-Taste mit einem "Leerkommando" auf Kurz, Lang und Los programmiert, so dass keine unschönen "Unprogrammierte Taste gedrückt"-Fehlermeldungen durch den Bus geistern.
Modul: 10 Heizung OG Taste C1 • Dummy für Summe (1) -> Segment 0, Modul 10 "Heizung OG" (Statuskommandos Summe 1;) Kurz: Leerkommando Lang: Leerkommando Los: Leerkommando
Verteilte Summen sammeln und kombinieren
Beim letzten "LED-Sammler-Modul" werden zusätzlich zu den dort auf die LEDs duplizierten Zuständen auch noch die Summen der anderen "LED-Sammler-Module" auf LEDs dupliziert. "Quelle dimmt" bedeutet dabei eine Summe ist teilerfüllt, was bei unserer Vorgabe von wenigstens einem positiven Zustand für das LED "an" bedeutet.
Modul: 12 Heizung EG LEDs: LED 01: Quelle: Segment 0, Modul 12, Relais 1 Aus: LED aus An: LED an LED 02: Quelle: Segment 0, Modul 12, Relais 2 Aus: LED aus An: LED an LED 03: Quelle: Segment 0, Modul 6, Relais 1 Aus: LED aus An: LED an LED 04: Quelle: Segment 0, Modul 6, Relais 2 Aus: LED aus An: LED an LED 09: Quelle: Segment 0, Modul 10, LEDs-Summe 1 Aus: LED aus An: LED an Dimmt: LED an
Die Summe des letzten "LED-Sammler-Moduls" wird dann über die Zustands-LEDs und die Summen-LEDs gebildet.
Modul: 12 Heizung EG Logik-Funktionen (Summen): Summe 1 (Taste C1): • kombiniert lokale LEDs und Summe 1 von Modul 10 LED 1-4 9 Überprüft auf Status: EIN
Aktion auslösen
Die C-Taste dieser Summe löst auf Lang/Los die Aktion aus.
Modul: 12 Heizung EG Taste C1 • FBH-Pumpe schalten (1) -> Segment 0, Modul 12 "Heizung EG" (Statuskommandos Summe 1;) Kurz: Relais: - - - - - - - 1 Lang: Relais: - - - - - - - 1 Los: Relais: - - - - - - - 0
Fehlerkorrektur
Da die LEDs intern über die Statusmeldungen der Zustände gesetzt werden und solch eine Statusmeldung schon mal verloren gehen kann, sollte ein periodischer Zeitgeber zur Fehlerkorrektur die Zustände wiederholen lassen und auch die Summen der "LED-Sammler-Module" per "Statusmeldungen"-Kommando wiederholen lassen.
Hier nur die Wiederholung der Summen und damit auch das Sicherstellen, dass durch die Summe in Modul 10 auch das LED 9 in Modul 12 korrekt gesetzt wird.
Modul: 12 Heizung EG Periodischer Zeitgeber: • Fehlerkorrektur Sendet Tabelle A, Taste 1 alle 120.0 s
Taste A1 • Aktualisieren Summen für FBH-Pumpe (1) -> Segment 0, Modul 10 "Heizung OG" • Status OG-Relais abfragen Kurz: Abfrage Zustand Summen: 1--- Lang: Unprogrammiert Los: Unprogrammiert (2) -> Segment 0, Modul 12 "Heizung EG" • Status EG-Relais abfragen Kurz: Abfrage Zustand Summen: 1--- Lang: Unprogrammiert Los: Unprogrammiert
Bewertung
Trotz der "Perfektion" von LCN gehen "manchmal" Meldungen verloren. Daher sollte diese Lösung nicht ohne die beschriebene Fehlerkorrektur betrieben werden. Das Erkennen eines falsch gesetzten LEDs und die manuelle Korrektur dessen besitzt nämlich absolut keinen WAF!
Alternative Einsatzgebiete
Die Steuerung über LEDs und Summen lässt sich in allen Szenarien einsetzen, in denen in Abhängigkeit der Status von mehreren Ausgängen, Relais, Binärkontakten oder Summen eine Aktion ausgelöst werden soll.