In Desigo gibt es zwei Bausteine für die übergeordnete Anlagensteuerung:

  • CMD_CTL Befehlssteuerung für Sequenzsteuerung
  • PWR_CTL Leistungssteuerung für Stufensteuerung

Die beiden Bausteine basieren auf dem Standard BACnet Command Object. Sie haben beide Tabellen, in denen die Betriebsarten und das Schaltverhalten der darunter liegenden Aggregate definiert werden. Die kommandierbaren Bausteine in den Aggregaten müssen eine BACnet-[PrioArr] aufweisen, sodass folgende Ausgangs- und Wertbausteine verwendet werden können: AO, BO, MO, AVAL, BVAL und MVAL.

PWR_CTL kann aufgrund der spezialisierten Aufgabe – dem Ansteuern von Stufen – nur mit MVAL-Bausteinen kommunizieren.

Referenzierung:

Die Kommunikation der übergeordneten Steuerbausteine mit den zu kommandierenden Ausgangs- und Wertbausteinen in den Aggregaten geschieht ausschliesslich über Referenzierung. Die Referenzen sind von den Technischen Bezeichnern (TD) des Bausteins abgeleitet. Die Referenz wird relativ vom Steuerbaustein zum kommandierten Baustein definiert. Das Aggregat muss sich nicht in der gleichen Hierarchie befinden – eine anlagenübergreifende Kommunikation ist möglich.

Example for a reference: B = \...\...\PreHcl’CmdVal

Dabei ist CmdVal der Bezeichner für ein BVAL-Objekt im Aggregat PreHcl. Pro Aggregat kann mehr als ein Baustein referenziert werden.

Da die projektspezifische Wurzel in der Adressierung nicht enthalten ist, müssen die Referenzen bei Änderung der Wurzel nicht angepasst werden. Dies vereinfacht das Kopieren sowohl einer Bibliothekslösung in ein Projekt als auch einer projektspezifischen Namensänderung.

Die Referenzen, das heisst, die Technischen Bezeichner mit Relativadressierung, werden zur Laufzeit im Controller aufgelöst. Fehler in der Adressierung treten demnach erst zur Laufzeit aus. Diese Fehlerquelle ist jedoch bei der Parametrierung der Steuerbausteine mit Hilfe des Plant Control Editors weitgehend ausgeschaltet.

Das nachstehende Bild zeigt, dass [PrioArr] direkt mit den referenzierten Bausteinen kommuniziert. So können sie definierte Schalt- oder Stellwerte kommandieren und auch wieder freigeben. Ein kommandierter Befehl bleibt solange gültig, bis der Prioritätseintrag wieder freigegeben wird. Die Freigabe aller kommandierbaren Prioritäten wird von den Steuerbausteinen automatisch gesetzt, wenn der Steuerbaustein die Aggregate in eine neue Anlagenbetriebsart kommandiert. Bei einem Neustart des PX-Controllers werden die Einträge der [PrioArr] in den kommandierten Bausteinen gelöscht, mit Ausnahme von lokalen Handeingriffen auf Priorität 8.

Ermittlung der Anlagenbetriebsart

Eine übergeordnete Anlagensteuerung hat in der Regel unterschiedliche Quellen wie Anlagenschalter, Zeitprogramm oder auch wichtige Störmeldungen, aus der sie die resultierende Anlagenbetriebsart bestimmen muss.

Zur Evaluation der resultierenden Anlagenbetriebsart stehen die Bausteine ENSEL_MS (Enable Selector Multistate) und auch ENSEL_BO (Enable Selector Boolean) in der Firmware-Bibliothek von Desigo zur Verfügung. Der Baustein wird in der Regel vor der Anlagensteuerung platziert, wie in der folgenden Abbildung zu sehen ist. Sämtliche Einflussquellen werden nach ihrer Wichtigkeit priorisiert auf den Baustein verschaltet und die entsprechend erforderliche Anlagenbetriebsart wird ermittelt.

Beispiel:

  • Ein Brandmelder hat hohe Priorität (P04) und erfordert die Anlagenbetriebsart Not-Aus.
  • Ein Entrauchungsschalter hat die höchste Priorität (P01) und erfordert die Anlagenbetriebsart Entrauchung.
  • Ein Zeitprogramm hat eine niedrige Priorität (P11) und erfordert die Anlagenbetriebsarten Stufe 1, Stufe 2 und Aus.

Der Ausgang [Val] des ENSEL_MS liefert nun dem CMD_CTL die resultierende Anlagenbetriebsart zur weiteren Verarbeitung. Wichtig ist, dass die Multistate-Enumerationen der beiden Bausteine ENSEL_MS und CMD_CTL gleich sind. Die Multistate-Werte sind nicht text- sondern zahlenbasiert.

Übergeordnete Befehlssteuerung CMD_CTL

Der Baustein Befehlssteuerung CMD_CTL (Command Control) wird primär für die Sequenzregelung in Lüftungsanlagen verwendet. Der Baustein ermöglicht das sequenzielle Ein- und Ausschalten von Aggregaten. Da er sehr allgemein und flexibel implementiert ist, sind auch weitere Einsatzbereiche denkbar, z. B. für Kälteerzeugungsanlagen.

Der Baustein CMD_CTL steuert und überwacht Ausgangs- und Wertbausteine, welche auf BACnet abgebildet sind. Zur Optimierung des Engineering-Aufwandes basiert die Kommunikation zwischen den Bausteinen nicht auf Verdrahtung, sondern auf BACnet-Referenzierung. Die nachstehenden Bausteine werden zusamment mit CMD_CTL: AO, BO, MO und AVAL, BVAL und MVAL verwendet.

Die Sequenzreihenfolge wird im CMD_CTL in Tabellenform festgelegt. Die Befehle für die einzelnen Aggregate und auch Komponenten können in Abhängigkeit von der Anlagenbetriebsart bestimmt werden.

Die Hauptfunktionalität des Bausteins CMD_CTL ist die sequenzielle Steuerung von Aggregaten und Komponenten in Abhängigkeit von der vorgegebenen Anlagenbetriebsart [ValPgm]. Dabei wird die Einschaltreihenfolge über die Ordnung in der Funktionstabelle [FnctTb] definiert. Die Ausschaltreihenfolge ist die Umkehrung der Einschaltreihenfolge. Unabhängige Sequenzen für das Ein- und Ausschalten sind in diesem Baustein nicht implementiert.

Eingeschaltete Bausteine können auf ihren Schaltzustand überwacht werden. Der Ausschaltzustand wird nicht überwacht.

Vor dem Einschalten eines Bausteines wird überprüft, ob die Bedingungen für die Ausführung des Befehls gegeben sind. Bei einer aktiven Einschaltverzögerungen, minimalen Ausschaltzeiten oder eines höherprioritären Schaltbefehles (z. B. eines Revisionsschalters), wird der Einschaltvorgang gar nicht erst freigegeben. Dieser vorwärtsschauende Mechanismus ist in diesem Kapitel näher beschrieben.

Nicht in diesem Baustein enthalten sind Verriegelungen einzelner Funktionseinheiten innerhalb von Aggregaten. Diese werden lokal, via Datenfluss direkt zwischen den entsprechenden Bausteinen realisiert.

Plant Control Editor

Die Parametrierung des Bausteins erfolgt im Plant Control Editor.

Der obere Teil des gezeigten Dialogfensters dient vor allem dazu, im Online-Modus einen schnellen Überblick über den aktuellen Anlagenbetriebszustand zu bekommen. Des Weiteren kann der Ausnahmewert definiert werden, welcher bei einer Anlagenstörung als Anlagenbetriebsart wirksam wird.

Im oberen Teil der Tabelle werden die Sequenzkonfigurationen gemacht. Die Einschaltreihenfolge der Objekte, die Überwachungsart und die Ein- und Ausschaltarten der Sequenzelemente können hier definiert werden.

Im unteren Teil der Tabelle werden die Betriebsarten der Anlage definiert. Für jedes Sequenzelement kann nun pro Anlagenbetriebsart bestimmt werden auf welchen Befehl und mit welcher Priorität es kommandiert werden soll.

Folgende Prioritäten für die Befehlskommandierung stehen zur Verfügung:

  • Priorität 2: Personenschutz Automatik
  • Priorität 5: Anlagenschutz Automatik
  • Priorität 14: Spezifische OBJECT
  • Priority 16: Systemsteuerung

In Anlagenbetriebsarten, in denen die lokale Steuerung des Aggregates die Kontrolle übernehmen soll, lässt sich mit dem Wert Nicht kommandiert die Freigabe der kommandierbaren Prioritäten bewirken.

Ist die [PrioArr] des entsprechenden Bausteins zu diesem Zeitpunkt leer – das heisst, keine Aktivkennung gesetzt – so wird sein [DefVal] gültig.

Funktionsabläufe im CMD_CTL

Bei jeder Änderung der Anlagen-Betriebsart werden im Baustein CMD_CTL eine Reihe von Sicherheits-, Überwachungs- und Schaltaktionen ausgeführt.

Stufe

Funktion

Aktion

1

Sicherheitsfunktion

Überprüfung AllLifeSafety-Anlagenbetriebsart

2

Vorschau

Überprüfung ob die betroffenen Aggregate geschaltet werden können

3

Sequenzabbruch

Nicht abgeschlossene Sequenzen werden abgebrochen

4

Rückschaltsequenz

Ausschalten der nicht mehr benötigten Aggregate

5

Hochschaltsequenz

Einschalten der neu benötigten Aggregate

6

Überwachung des Einschaltzustandes

Start der Überwachung nach Ablauf der Verzögerungszeit

Sicherheitsfunktion (AllLifeSafety)

Haben alle Schaltbefehle bei einer bestimmten Anlagenbetriebsart die Priorität Personensicherheit, so bezeichnet man dies als AllLifeSafety-Anlagenbetriebsart.

Steht in [ValPgm] eine AllLifeSafety-Anlagenbetriebsart an, so wird diese Anlagenbetriebsart in jedem Fall sofort ausgeführt und beibehalten, unabhängig von bereits vorhandenen oder neu auftretenden Störungen in der Anlage – Menschenleben haben Vorrang vor Anlagensicherheit.

Beinhaltet der AllLifeSafety Modus Einschaltbefehle, werden die vordefinierten Verzögerungszeiten (Verzögerung und Timeout) überwacht. Bei Timeout-Einstellungen wird die Schaltsequenz fortgesetzt unabhängig davon, ob ein Rückmeldesignal fehlt. Verriegelungen sind somit nicht mehr gewährleistet, ausgenommen sind lokale Verriegelungen welche über die Priorität 1 (Personensicherheit, manuell) realisiert werden.

Priorität 1 (Personensicherheit, manuell) kann auch in der AllLifeSafety-Anlagenbetriebsart nicht überschrieben werden.

Vorausschau (Look Ahead)

Vor der Ausführung einer neuen Anlagenbetriebsart, in der referenzierte Bausteine eingeschaltet werden müssen, überprüft Baustein CMD_CTL, ob sich sämtliche Aggregate überhaupt in einem einschaltbaren Zustand befinden. Dazu werden in den Bausteinen der Schaltsequenz vorgängig die Einträge in der Prioritätsmatrix [PrioArr] überprüft. Sind bereits Schaltbefehle mit einer höheren Priorität aktiv (z. B. minimale Ausschaltzeit oder Aus-Befehl eines Revisionsschalter), so wartet CMD_CTL mit der Ausführung der neuen Anlagenbetriebsart, bis die gesamte Schaltsequenz schaltbar geworden ist. Überprüft werden nur referenzierte Bausteine, welche in der neuen Anlagenbetriebsart mit einem Einschaltwert kommandiert werden und sofern die Betriebszustandsüberwachung aktiviert wurde.

Folgende Prioritäten werden überprüft:

  • Priorität 1 [EnSfty/ValSfty], Personensicherheit, manuell
  • Priorität 7 [EnSwi/ValSwi], Manueller Betrieb, z. B. Handschalter
  • Priorität 8 [EnOp/ValOp], Manueller Betrieb, Bediengerät
  • Priorität 6 [TiMinOff], Minimale Ausschaltzeit

Priorität 6 wird nur auf einen Einschaltbefehl geprüft, um zu bestimmen, ob das Aggregate noch innerhalb der minimalen Ausschaltzeit sich befindet. Trifft dies zu, so wartet es, bis die Ausschaltzeit abläuft und schaltet danach wieder ein.

Bei Desigo 7 gibt es keine Vorausschau.

Priorität 4 (Anlagensicherheit, manuell [EnCrit/ValCrit]) wird bei der Überprüfung nicht berücksichtigt, da die lokale gegenseitige Verriegelung über Datenflussverschaltung, wie in Abbildung Aggregatübergreifende Verriegelung von Klappe/Ventilator dargestellt, während des Einschaltvorgangs diesen Wert ändern würde.

Die aktuelle Betriebsart bleibt solange bestehen, bis sichergestellt ist, dass alle betroffenen Aggregate mit aktiver Betriebszustandsüberwachung in ihren neuen Sollzustand geschaltet werden können. Falls ein überwachter Baustein nicht einschaltet, wird im CMD_CTL ein Prozessalarm ausgelöst. Als neue Anlagenbetriebsart wird in diesem Fall der Ausnahmewert [EcptVal] aktiv. In der Online-Diagnose des Plant Control Editors lässt sich feststellen, welches Element die Ursache für die Störung war.

Schritt 3: Sequenzabbruch

Laufende Schaltsequenzen werden abgebrochen, auch wenn noch Verzögerungszeiten aktiv sind. Tritt bei der internen Überwachung des Bausteins ein Fehler auf, so wird ein Alarm generiert. In diesem Fall wird die geforderte Anlagenbetriebsart durch den Ausnahmewert [EcptVal] bestimmt. Ist diese Schaltsequenz aktiv, jedoch noch nicht abgeschlossen, so wird sie NICHT unterbrochen, sondern fertig ausgeführt.

Schritt 4: Zurückschaltsequenz

Zuerst wird für die neue Anlagenbetriebsart die Zurückschaltsequenz gestartet. Dabei werden alle Aggregate ausgeschaltet, die gemäss neuer Anlagenbetriebsart ausgeschaltet sein müssen. Das Ausschalten erfolgt in der Tabellenreihenfolge von rechts nach links, das heisst, das letzte Aggregat in der Schaltsequenz wird zuerst ausgeschaltet. Beim Zurückschalten auf Aus sind die parametrierten Zeiten für die Ausschaltverzögerung aktiv. Die Ausschaltverzögerung lässt sich mit einer fixen Verzögerungszeit oder mit einer maximalen Wartezeit (Timeout) aktivieren oder mit der Option Sofort deaktivieren. Bei Timeout ist die Länge der Verzögerung abhängig vom Ausschaltzustand der überwachten Sequenzelemente. Sobald diese Ausgeschaltet melden, also der Prozesswert des Bausteins [PrVal] = Aus und der Übergangszustand abgeschlossen ist [TraSta] = Nein, erfolgt der Übergang zur nächsten Sequenz. Bleibt die Ausschalt-Meldung aus, so wird nach Ablauf der Timeout-Zeit weitergeschaltet.

Wird ein Sequenzelement mit der Priorität Personensicherheit oder Anlagensicherheit ausgeschaltet, so werden die parametrierten Verzögerungszeiten NICHT abgewartet.

Schritt 5: Hochschaltsequenz

Anschliessend wird für die neue Anlagenbetriebsart die Hochschaltsequenz gestartet. Dabei werden alle übrigen Aggregate gemäss den Angaben in der Funktionstabelle eingeschaltet. Das Einschalten erfolgt in der Tabellenreihenfolge von links nach rechts, das heisst, das erste Aggregat in der Schaltsequenz wird zuerst eingeschaltet.

Beim Hochschalten sind die parametrierten Zeiten für die Einschaltverzögerung aktiv.

Die Hochschaltverzögerung lässt sich mit einer fixen Verzögerungszeit oder mit einer maximalen Wartezeit (Timeout) aktivieren oder mit der Option Sofort deaktivieren. Bei Timeout ist die Länge der Verzögerung abhängig vom Einschaltzustand der überwachten Sequenzelemente. Sobald diese Eingeschaltet melden, also der Prozesswert des Bausteins [PrVal] <> Aus und der Übergangszustand abgeschlossen ist [TraSta] = Nein, erfolgt der Übergang zur nächsten Sequenz. Bleibt die Einschalt-Meldung aus, so wird nach Ablauf der Timeout-Zeit weitergeschaltet.

Wird ein Sequenzelement mit der Priorität Personensicherheit oder Anlagensicherheit eingeschaltet, so werden die parametrierten Verzögerungszeiten abgewartet.

Überwachung des Einschaltzustands

Ist das überwachte Aggregat nach Ablauf der Sequenz-Verzögerungszeit nicht eingeschaltet, so wird ein Prozessalarm (OffNormal) erzeugt.

Ist die aktuelle Anlagenbetriebsart keine AllLifeSafety-Anlagenbetriebsart, so wird die aktuelle Schaltsequenz sofort abgebrochen und der Ausnahmewert [EcptVal] als neue Betriebsart gewählt.

Ist jedoch der Ausnahmewert [EcptVal] bereits die aktuelle Anlagenbetriebsart, so wird die Schaltsequenz nicht abgebrochen und die Anlagenbetriebsart nicht gewechselt.

Einschalten von Aggregaten

Die folgende Abbildung zeigt das Schaltverhalten und die Überwachungsmechanismen des Bausteins CMD_CTL.

Zunächst wird überprüft, ob mit der neuen Anlagenbetriebsart eine AllLifeSafety-Anlagenbetriebsart vorliegt. Im zweiten Schritt erfolgt die Vorausschau-Überprüfung; anschliessend die Überprüfung und der Abbruch von laufenden Sequenzen. Im nächsten Schritt wird die Ausschaltfolge durchgeführt, in der die Objekte 8 und 4 ausgeschaltet werden, sofern sie nicht bereits vorher schon ausgeschaltet waren. In der anschliessenden Einschaltfolge werden die Sequenzen nacheinander eingeschaltet.

Eine eingestellte Zeit (Verzögerung oder Timeout) markiert eine Einschalt- oder Ausschaltsequenz, die aus einem oder mehreren Objekten bestehen kann. Die Zeiten gelten für die gesamte Sequenz und werden wirksam, wenn ein Ein- bzw. Hochschaltbefehl oder ein Aus- bzw. Runterschaltbefehl verlangt wird.

Das Einschalten je Sequenz erfolgt parallel. Die Überprüfung des Einschaltzustandes erfolgt nur in der Einschaltart Timeout. Die nächste Sequenz wird erst gestartet, wenn entweder alle zu überwachenden Objekte ihren eingeschalteten Zustand gemeldet haben oder die Timeout-Zeit abgelaufen ist. Die Betriebszustandsüberwachung der zu überwachenden Objekte wird erst, wie in der folgenden Abbildung dargestellt, nach abgeschlossenem Einschaltvorgang einer Sequenz aktiv.

Die Betriebszustandsüberwachung ist optional und überwacht nur Bausteine im Zustand Eingeschaltet. Wird bei aktiver Betriebszustandsüberwachung festgestellt, dass ein referenzierter Baustein ausgeschaltet wurde, der im Zustand Eingeschaltet sein sollte, so wird ein Prozessalarm generiert und die Anlagenbetriebsart wechselt zum Ausnahmewert [EcptVal].

Der momentane Alarmzustand ist aus der Zustandsflagge [StaFlg] ersichtlich.

Die Überwachung ist ab dem Zeitpunkt aktiv, an dem die entsprechende Sequenz den Einschaltvorgang erfolgreich abgeschlossen hat, das heisst, der Prozesswert des Bausteins [PrVal] ungleich Aus und der Übergangszustand abgeschlossen ist [TraSta] = Nein.

Der [PrVal] des Bausteins wird überwacht. Nur Ereignisse, die sich auf den [PrVal] auswirken, können somit erkannt werden, also:

  • Lokale Störabschaltung mittels Verschaltung von Störung [Dstb] auf Personensicherheit, manuell [EnSfty].
  • Lokales Ausschalten des Bausteins im Anwendungsprogramm mit höherer Priorität.
  • Ausschalten mittels Handeingriff an Output-Modul, falls I/O-Modul den Handstellwert zurückliefert.
  • Ausschalten des Bausteins mittels MMI-Bedienung oder mittels Handschalter am Schaltschrank.

Nur wenn lokal die Verdrahtung aller relevanten Störungen [Dstb] auf einen überwachten Ausgangs- oder Wertbaustein auf [EnSfty] erfolgt, ist die Befehlssteuerung in der Lage, störungsbedingte Abweichungen zu erkennen und entsprechend zu reagieren. Wird ein referenzierter Ausgabe- oder Wertbaustein ausser Betrieb genommen [OoServ] = Ein, so wird sein Vorgabewert [DefVal] zum Prozesswert [PrVal]. Somit kann die Zustandsüberwachung der Anlage nicht korrekt funktionieren, da [PrVal] nicht mehr den tatsächlichen Zustand des Aggregates wiederspiegelt.

Um die Schalthäufigkeit von Aggregaten zu reduzieren, kann in den Aggregaten eine minimale Ausschaltzeit [TiOffMin] definiert werden. Der Look-Ahead-Mechanismus des CMD_CTL verhindert das Einschalten der gesamten Schaltsequenz, wenn in einem Aggregat mit aktiver Betriebszustandsüberwachung die minimale Ausschaltzeit noch aktiv ist. Der Ausgang [TraSta] zeigt den Übergangszustand an, [PrVal] bleibt auf dem letzten Wert stehen. Erst wenn alle in der Schaltsequenz einzuschaltenden Aggregate schaltbar geworden sind, wird die neue Anlagenbetriebsart ausgeführt.

Bei Aggregaten mit rotierender Schwungmasse (z. B. Ventilator) sollte immer eine minimale Ausschaltzeit parametriert werden.

Umschalten einer Betriebsart

Die folgende Abbildung zeigt das Umschalten von der Betriebsart Stufe Y auf Nachtkühlen.

In Stufe Y waren alle Objekte eingeschaltet. Beim Wechsel der Anlagenbetriebsart auf Nachkühlen wird zunächst überprüft, ob mit der neuen Anlagenbetriebsart eine AllLifeSafety-Anlagenbetriebsart vorliegt. Im zweiten Schritt erfolgt die Vorausschau-Überprüfung; anschliessend die Überprüfung und der Abbruch von laufenden Sequenzen.

Im nächsten Schritt wird die Ausschaltfolge durchgeführt, in der die Sequenzelemente der Ausschaltsequenz 1 parallel ausgeschaltet werden. Nach Ablauf der Verzögerungszeit, erfolgt der Übergang zur 2. Objekt 5 wird mit Anlagensicherheit, Priorität 5 auf Aus kommandiert. Bei den Prioritäten Anlagensicherheit oder auch Personensicherheit (Prio. 2) haben die Verzögerungszeiten- oder Timeout-Zeiten keinen Einfluss. Da Objekt 4 bereits eingeschaltet ist, erfolgt der Übergang zur Ausschaltsequenz 3 sofort.

Objekte 3 und 2 werden gleichzeitig mit Objekt 5 ausgeschaltet. Objekt 1 bleibt eingeschaltet.

Alarmmanagement

Baustein CMD_CTL ist alarmfähig und unterscheidet Prozess- und Systemalarme.

Ein Prozessalarm tritt auf, wenn:

  • Eines der überwachten Aggregate nicht eingeschaltet ist.
  • Eines der referenzierten Aggregate nicht eingeschaltet werden kann.

Als Reaktion auf einen Prozessalarm wird der Ausnahmewert [EcptVal] zur aktuellen Anlagenbetriebsart. Des Weiteren wird ein Alarm abgesetzt.

Ein Systemalarm tritt auf, wenn folgende Konfigurationsfehler vorliegen:

  • Ein referenziertes Aggregat ist nicht vorhanden.
  • Ein referenziertes Aggregat ist kein kommandierbares Objekt.
  • Nicht erlaubte Prioritäten werden verwendet (erlaubt sind Priorität 2, 5, 14, 16).
  • [ValPgm] oder [EcptVal] liegen ausserhalb des zulässigen Bereichs.
  • Die referenzierten Aggregate besitzen eine unterschiedliche Anzahl von Betriebsarten.

Bei einem Systemalarm versucht die Befehlssteuerung alle referenzierten Bausteine für die lokale Steuerung freizugeben. Die vier kommandierbaren Prioritäten kommandiert – also auf Not commanded freigegeben: Personensicherheit (2), Anlagensicherheit (4), Spezifische Befehlssteuerung (14) und Systemsteuerung (16).

Das Alarmverhalten des Bausteins ist einstellbar. Folgende Mechanismen wurden vorgesehen, um das Schaltpendeln von Anlagen zu verhindern.

  • Geht der Baustein in den Alarmzustand, so wird der Ausnahmewert [EcptVal] geschaltet. Sobald alle Aggregate wieder schaltbar sind, versucht CMD_CTL automatisch wieder die aktuelle Anlagenbetriebsart [PrVal] zu erreichen. Sind die Aggregate nach Ausführung des Ausnahmewertes [EcptVal] wieder direkt schaltbar, so besteht Schaltpendelgefahr. In diesem Fall blockiert CMD_CTL einen erneuten Schaltversuch, und es ist ein Wechsel der verlangten Anlagenbetriebsart [PrVal] notwendig.
  • Geht der Baustein in den Alarmzustand, so wird der Ausnahmewert [EcptVal] geschaltet. Der Alarm muss vom Betreiber zurückgesetzt werden, daher besteht keine Gefahr, dass die Anlage ins Pendeln gerät.

Der Baustein ist bei Desigo 7 nicht alarmfähig.

Ausser Betrieb

Der Baustein kann mit [OoServ] ausser Betrieb genommen werden. Beim Wechsel von [OoServ] auf Ein passiert folgendes:

  • Sofortiger Abbruch der Ein- und Ausschaltsequenzen und Überwachung.
  • Die vier kommandierbaren Prioritäten kommandiert – also auf Not commanded freigegeben: Personensicherheit (2), Anlagensicherheit (4), Spezifische Befehlssteuerung (14) und Systemsteuerung (16).

Übergeordnete Leistungssteuerungen PWR_CTL

Der Funktionsbaustein Leistungssteuerung PWR_CTR (Power Control) dient der Steuerung und Überwachung der Leistung von mehreren Energieerzeugern (Mehrkesselanlagen, Kältemaschinen). Wie beim Baustein Befehlssteuerung CMD_CTL werden die Daten zwischen Leistungssteuerung und den einzelnen Energieerzeuger (Kessel, Kälteaggregat) u.a. via Referenzierung bidirektionale ausgetauscht. Da die Energieerzeuger in der Regel als logische Aggregate ausgeführt werden und lokale Logik enthalten, kommuniziert der PWR_CTR nur mit MVAL-Bausteinen.

Die Steuerstrategie ist tabellenorientiert und für mehrstufigen Energieerzeuger ausgelegt. Je nach verlangtem Leistungsbedarf werden Stufen von Energieerzeuger dazugeschaltet oder weggeschaltet. Für stetige Energieerzeuger erfolgt die Wandlung von stufigen Leistungen auf einen stetigen Leistungsbereich innerhalb des Aggregates. Dies erlaubt die Handhabung des ganzen Leistungsbereichs (0…100%) mit einer Stufe oder die Aufteilung des Leistungsbereichs in mehrere Stufen (z. B. Stufe 1:

Plant Control Editor

Die Parametrierung des Bausteins wird im Plant Control Editor durchgeführt.

Der obere Teil des Dialogfensters dient vor allem dazu, im Online-Modus einen schnellen Überblick über den Zustand des Bausteins zu bekommen. Die obere Begrenzung der vom Baustein schaltbaren Leistung wird mit dem Parameter Maximale Leistung [MaxPwr] eingestellt. Der Wert muss >0 kW betragen, damit der Baustein arbeiten kann. Änderungen dieser Begrenzung wirken sich im Online-Modus direkt aus. Wird keine Begrenzung gewünscht, so muss die maximale Leistung entsprechend hoch eingestellt werden.

Im Register Aggregate werden die Steuergrössen der Aggregate (Kessel, Kältemaschinen) parametriert.

  • Aktivierung/Deaktivierung eines Eintrages. Nicht freigegebene Aggregate werden in der Profil-Tabelle nicht berücksichtigt.
  • Referenz (Relativadressierung) auf Multistate-Wert-Bausteine [MVAL] des entsprechenden Energieerzeugers. Bei der Konfiguration werden alle MVAL-Bausteine der gleichen und unterliegenden Hierarchiestufe angezeigt.
  • Mit der Referenz auf das Wertobjekt sind alle Informationen über das referenzierte Objekt im Befehlssteuerung durch Spezialdialog zugreifbar und damit bekannt.
  • Einschaltverzögerung: Verzögerungszeit beim Einschalten von Aus auf Stufe 1.
  • Ausschaltverzögerung: Verzögerungszeit beim Ausschalten von Stufe n auf Aus.
  • Verzögerungszeit beim Hochschalten von Stufe n auf Stufe n+1
  • Zurückschalt-Verzögerung: Verzögerungszeit beim Zurückschalten von Stufe n auf Stufe n-1.
  • Leistung Einschaltstufe: Leistung der untersten (ersten) Stufe.
  • Zusätzliche Leistung der weiteren Stufen in [kW]

Im Register Profil werden die Steuersequenzen der Aggregate (Kessel, Kältemaschinen) definiert. Jedes Profil beschreibt in welcher Reihenfolge mit welcher maximalen Stufe die Energieerzeuger geschaltet werden sollen. Insgesamt können 8 Profile mit jeweils 15 Sequenzeinträgen definiert werden.

Die aktive Profiltabelle wird mit dem Eingangsparameter Profilnummer [PrfNr], bzw. im Plant Control Editor in der Auswahlliste Profil bestimmt. Dieser Eingangsparameter ist verschaltbar, so dass in Abhängigkeit von anderen Ereignissen (Störungen, Sommerbetrieb, Kessellaufzeiten usw.) das Profil gewechselt werden kann. Wird das Profil im laufenden Betrieb gewechselt, so wird, um einen Leistungseinbruch zu vermeiden, die aktuell geschaltete Leistung [PrPwr] gemäss dem Leistungsprofil der neuen Profiltabelle geschaltet.

Die Definition des Profils bestimmt, in welcher Reihenfolge die einzelnen Aggregate zu- oder weggeschaltet werden sollen. Folgende Informationen müssen für jeden Sequenzeintrag eingegeben werden:

  • Auswahl aus den zuvor referenzierten Aggregaten
  • Grenze, bis zu der das Aggregat freigegeben werden darf
  • Angabe, ob die freigegebenen Stufen fest geschaltet oder zur Regelung freigegeben werden sollen:
    • Fest (True): Die Gesamtleistung, die von einer Schaltstufe zur Verfügung gestellt wird, wird fix zu- oder weggeschaltet. Damit lässt sich beispielsweise eine bestimmte Grundlast schalten, welche immer vorhanden sein soll. Die Kommandierung erfolgt mit Priorität 14.
    • Die effektive benötigte Leistung der freigegebenen Schaltstufe wird durch die lokale Regelung der Aggregate bestimmt. Die Kommandierung erfolgt mit Priorität 16.

Für jeden Sequenzschritt gibt der Funktionsbaustein jeweils nur das letzte Aggregat markiert als Freigabe für das System frei. Es zeigt das freigegebenes Objekt[RlsObj] zusammen mit der freigegebenen Objektstufe [RlsObjSt] am Ausgang an. Alle anderen Aggregate werden auf den freigegeben Stufenwert fixiert. Ist kein Aggregat mit Freigabe markiert, so wird automatisch das Aggregat des aktuellen Sequenzschritts für die Regelung freigegeben.

Ein-/Ausschalten des PWR_CTL

Beim Einschalten [ValPgm = Ein] wird der erste Sequenzschritt des aktuellen Profils sofort ausgeführt. Die Einschaltverzögerung ist in diesem Fall nicht gültig. Ist der Auslöser Standardleistung [PwrTrg = Ein], so wird direkt auf die Standardleistung [DefPwr] geschaltet.

Beim Ausschalten [ValPgm = Aus] werden alle in der Profiltabelle definierten Energieerzeuger mit Priorität 14 ausgeschaltet.

Ausser Betrieb

Wird der PWR_CTL [OoServ = Ein] genommen, so werden alle referenzierten Aggregate, ohne Berücksichtigung der Verzögerungszeiten, mit Priorität 14 auf Aus geschaltet. Die Überwachung der Aggregate wird abgeschaltet.

Anforderungssignale

Der momentane Leistungsbedarf wird lokal in den Energieerzeugern ermittelt. Liegt ein Leistungsdefizit bzw. ein Leistungsüberschuss vor, so schickt das Aggregat ein entsprechendes Bedarfssignal an den PWR_CTL. Das Bedarfssignal des Aggregats kann, z. B. anhand der Sollwertabweichung des Kessels und des Hauptvorlaufes, generiert werden. Die Bedarfssignale der einzelnen Aggregate werden zusammengeführt und auf die Eingänge [StepUp] bzw. [StepDn] des PWR_CTL geführt. Nach Ablauf der entsprechenden Verzögerungszeiten wird dann vom Baustein ein entsprechender Sequenzschritt zur Leistungssteigerung bzw. Leistungsverminderung ausgeführt.

Liegen beide Bedarfssignale [StepUp] und [StepDn] gleichzeitig an, so hat [StepDn] Vorrang.

Direktes Schalten einer Leistung

In Fällen, in denen auf eine bestimmte Leistung hoch- oder zurückgeschaltet werden soll, ohne die Verzögerungszeiten einzuhalten, kann mit dem Eingang Auslöser Standardleistung [PwrTrg] eine definierte Standardleistung [DefPwr] direkt geschaltet werden. Der Baustein PWR_CTL ermittelt aus dem aktuellen Profil, unter Berücksichtigung der aktuellen Leistung, die zur Leistungsabdeckung benötigen Sequenzschritte und führt diese direkt aus.

Leistungsanzeige

Der Baustein hat zwei Ausgänge, an denen er die aktuelle, summierte Leistung der Energieerzeuger anzeigt. Zum einen ist dies die geregelte Leistung [CtldPwr]. Dieser Ausgang repräsentiert die Summe der durch den PWR_CTL geschalteten Leistung.

Zum anderen wird mit aktuelle Leistung [PrPwr] auch die Leistung der Energieerzeuger berücksichtigt, die nicht direkt vom PWR_CTL geschaltet wurden. Dazu evaluiert PWR_CTL die Prioritätsmatrix [PrioArr] der Bausteine MVAL. So erkennt er, dass ein Energieerzeuger z.B. manuell [Prio8] auf eine bestimmte Stufe geschaltet wurde.

Konfigurationsfehler

Die beiden Konfigurationstabellen werden zyklisch auf Gültigkeit der Einträge überprüft.

  • Ein Störungsalarm wird in den folgenden Fällen ausgelöst:
  • Aggregate sind nicht mehr vom PWR_CTL erreichbar, aufgrund von z. B. nachträglichen Änderungen in der technischen Hierarchie, welche Einfluss auf die Referenzen der Energieerzeuger hat
  • Nachträgliche Änderungen der Stufenbegrenzung im Aggregat, so dass in der Profiltabelle ein zu grosser Wert konfiguriert ist
  • Kein Multistate-Value-Objekt
  • Referenzierter Baustein nicht mehr vorhanden: z. B. mit Delta-Download gelöscht
  • Gleicher Baustein mehrfach referenziert
  • Leere Profiltabelle

Bei einem Störungsalarm werden alle noch erreichbaren Aggregate vom PWR_CTL auf Aus fixiert.

Alarmmanagement

Der PWR_CTL ist im System alarmfähig, Alarmklasse [AlmCl] und Alarmfunktionalität [AlmFnct] sind einstellbar.

Ein OffNormal-Prozessalarm wird ausgelöst:

  • Falls Bedarfssignal für Hochschalten [StepUp] länger als [TiMonDev] und kein weiterer Sequenzschritt mit Leistungserhöhung mehr vorhanden ist.
  • Falls Bedarfssignal für Hochschalten [StepUp] länger als [TiMonDev] + Verzögerungszeit für Hochschalten nächster Sequenzschritt vorhanden ist und die Leistungsbegrenzung Maximale Leistung [MaxPwr] beim Hochschalten überschritten würde.

Der Prozessalarm wird wieder auf Normal zurückgestellt:

  • Falls wieder ein Sequenzschritt mit Leistungserhöhung geschaltet werden kann. Es kann ein weiterer Sequenzschritt mit Leistungserhöhung geschaltet werden, falls Leistungsbegrenzung MaxPower nicht mehr überschritten wird oder ein weiterer Sequenzschritt mit Leistungserhöhung vorhanden ist.
  • Falls Bedarfssignal [StepUp] nicht mehr anliegt.

Die Alarmtexte für Prozessalarme lassen sich kundenspezifisch definieren.

Schaltvarianten

Mit den Einträgen in der Profiltabelle lassen sich beliebige Schaltvarianten definieren. Zu beachten ist, dass Sequenzschritte, welche beim Hochschalten (Leistungssteigerung) einen Leistungseinbruch verursachen würden, automatisch durchgeschaltet werden, bis zu dem Sequenzeintrag, in dem die Leistung wieder zunimmt. Siehe dazu auch nachfolgendes Beispiel.

Aus den Leistungsdaten in der Objekttabelle und den Sequenzeinträgen in der Profiltabelle aus Abbildung Beispiel Aggregat Tabelle, ergibt sich ein in Abbildung Beispiel Profileinträge mit Leistungseinbruch dargestelltes Leistungsprofil.

Profil 1

In der Hauptanwendung der Funktion PWR_CTL wird pro Sequenzeintrag in der Profiltabelle ein neuer Leistungserzeuger dazugeschaltet. Ein Aggregat muss dazu nur einmal in der Sequenztabelle eingetragen werden.

Bei einem Leistungsbedarf, welches der Kessel durch das Bedarfssignal [StepUp] dem PWR_CTL mitteilt, wird nach Ablauf der Hochschalt-Verzögerung eine weitere Kesselstufe/Sequenzschritt freigegeben. Hat ein Kessel die Stufenbegrenzung erreicht, wird nach Ablauf der Einschaltverzögerung auf den nächsten Kessel hochgeschaltet. Die zuletzt freigegebene Kesselstufe wird zur lokalen Leistungsregelung freigegeben, alle anderen Kessel werden auf die aktuelle Leistung fixiert.

Muss die Leistung reduziert werden, so wird dies PWR_CTL durch das Bedarfssignal [StepDn] mitgeteilt. Die Sequenzschritte werden dann in umgekehrter Reihenfolge ausgeführt. Es gelten die Ausschalt- und Zurückschaltverzögerungszeiten.

Profil 2

In Profil 2 wurde die Reihenfolge der Kesselzuschaltungen geändert und Folgesequenzen definiert, die durch die kleineren Kessel einen Leistungseinbruch im Leistungsprofil ergeben. Im dargestellten Beispiel wird im 2. Sequenzeintrag Boiler 3 ausgeschaltet, welcher aktuell 200 kW geschaltet hat. Als Folge-Objekt ist Boiler 1 definiert, welcher mit den freigegebenen Stufen eine Leistung von 150 kW erreichen könnte. Dadurch ergibt sich ein Leistungseinbruch, wodurch der Funktionsbaustein automatisch bis zu einer tatsächlichen Leistungssteigerung durchschaltet.

Im Sequenzeintrag 4 ist Boiler 2 bis zu Stufe 2 freigegeben, was eine zusätzliche Leistung von 150 kW ergibt. Somit werden Boiler 1 und Boiler 2 gleichzeitig bis Stufe 2 freigegeben, um einem Leistungseinbruch vorzubeugen. Als wirksame Verzögerungszeit für die gemeinsame Schaltung wird aus den betroffenen Kesseln die maximale Verzögerungszeit ermittelt. Da die Einschaltverzögerung vom Boiler 1 mit 15 Minuten die grösste Verzögerungszeit ist, wird bis zur Ausführung der gesamten Schaltaktion diese Zeit abgewartet.

Im Sequenzeintrag 5 würde wiederum die Leistung einbrechen, da die 2. Stufe des Boiler 2 nicht mehr freigegeben ist. Somit schaltet der Baustein direkt auf den Sequenzeintrag 6 durch, womit das Leistungsdefizit durch Boiler 3 wieder aufgeholt werden kann. Als wirksame Schaltzeit gilt nun die Einschaltverzögerung von Boiler 3 (10 Minuten).

Online-Diagnose

Im Xworks Plus (XWP) Online-Modus steht ein Diagnosefenster für den PWR_CTL zur Verfügung.

Folgende Zustände werden für die schnelle Übersicht dargestellt:

  • Betriebszustand am Ausgangs-Bausteinanschluss [PrVal]
  • Übergangszustand [TraSta] je nach aktueller Schaltsituation:
  • Wert am Ausgangs-Bausteinanschluss [PrPwr]
  • Zustandsflagge: Gemäss BACnet Definition ist der Wert von [StaFlg] immer Übersteuert. Alarme können auch hier angezeigt werden.
  • Angezeigt werden der aktuelle Sequenzeintrag, das freigegebene Objekt [RlsObj] und die freigegebene Objektstufe [RlsObjSt]
  • Letzte Alarm-/Ereignismeldung: Wert am Ausgangs-Bausteinanschluss [LstMsg]