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.
