sequence_ET_04
Einleitung
Der Funktionsblock sequence_ET_04 ist ein Sequenzer mit vier Ausgabezuständen. Er ermöglicht die Steuerung einer zyklischen Abfolge von vier Schritten (State_01 bis State_04), wobei der Übergang zwischen den Zuständen entweder durch ein externes Ereignis oder nach Ablauf einer einstellbaren Zeit erfolgen kann. Der Baustein ist für Anwendungen konzipiert, bei denen Prozessschritte sequenziell und mit zeitlicher oder ereignisgesteuerter Flexibilität ausgeführt werden müssen.
Schnittstellenstruktur
Ereignis-Eingänge
START_S1: Wechselt vonSTARToderState_00in den ersten ZustandState_01. Überträgt die Zeitparameter für alle Zustandsübergänge (DT_S1_S2,DT_S2_S3,DT_S3_S4,DT_S4_START).S1_S2: Manueller Übergang vonState_01zuState_02.S2_S3: Manueller Übergang vonState_02zuState_03.S3_S4: Manueller Übergang vonState_03zuState_04.S4_START: Manueller Übergang vonState_04zurück in denSTART-Zustand (überState_00).RESET: Setzt den Baustein aus jedem beliebigen Zustand sofort in denSTART-Zustand zurück.
Ereignis-Ausgänge
CNF: Ausführungsbestätigung. Wird bei jedem Zustandswechsel ausgelöst und liefert die neue Zustandsnummer (STATE_NR).EO_S1: Wird bei Eintritt inState_01ausgelöst und liefert den AusgangswertDO_S1.EO_S2: Wird bei Eintritt inState_02ausgelöst und liefert den AusgangswertDO_S2.EO_S3: Wird bei Eintritt inState_03ausgelöst und liefert den AusgangswertDO_S3.EO_S4: Wird bei Eintritt inState_04ausgelöst und liefert den AusgangswertDO_S4.
Daten-Eingänge
DT_S1_S2(Typ:TIME): Zeit für den automatischen Übergang vonState_01zuState_02. Der WertNO_TIMEdeaktiviert den Zeitübergang für diesen Schritt.DT_S2_S3(Typ:TIME): Zeit für den automatischen Übergang vonState_02zuState_03. Der WertNO_TIMEdeaktiviert den Zeitübergang für diesen Schritt.DT_S3_S4(Typ:TIME): Zeit für den automatischen Übergang vonState_03zuState_04. Der WertNO_TIMEdeaktiviert den Zeitübergang für diesen Schritt.DT_S4_START(Typ:TIME): Zeit für den automatischen Übergang vonState_04zurück zumSTART-Zustand. Der WertNO_TIMEdeaktiviert den Zeitübergang für diesen Schritt.
Daten-Ausgänge
STATE_NR(Typ:SINT): Aktuelle Zustandsnummer gemäß der Konstantensequence::State_XX(START = 0, State_01 = 1, State_02 = 2, State_03 = 3, State_04 = 4).DO_S1(Typ:BOOL): IstTRUE, wennState_01aktiv ist.DO_S2(Typ:BOOL): IstTRUE, wennState_02aktiv ist.DO_S3(Typ:BOOL): IstTRUE, wennState_03aktiv ist.DO_S4(Typ:BOOL): IstTRUE, wennState_04aktiv ist.
Adapter
timeOut(Typ:ATimeOut): Ein Stecker (Plug) für einen Timeout-Adapter. Dieser Adapter wird intern verwendet, um die zeitgesteuerten Zustandsübergänge zu realisieren.
Funktionsweise
Der Baustein implementiert einen endlichen Automaten (ECC) mit den Zuständen START, State_01 bis State_04, State_00 und RESET. Der Zyklus beginnt im Zustand START. Ein START_S1-Ereignis startet die Sequenz und wechselt in State_01.
In jedem aktiven Zustand (State_01 bis State_04) werden folgende Aktionen ausgeführt:
Der interne Timer (
timeOut) wird gestoppt.Der Ausgang des vorherigen Zustands wird deaktiviert (Exit-Algorithmus
State_XX_X).Die Bestätigung
CNFmit der neuen Zustandsnummer wird gesendet und die Zeit für den nächsten möglichen automatischen Übergang wird an den Timer übergeben (Confirmation-AlgorithmusState_XX_C).Der Ausgang des aktuellen Zustands wird aktiviert (Entry-Algorithmus
State_XX_E).Der interne Timer mit der für diesen Zustand konfigurierten Zeit (
DT_...) wird gestartet.
Ein Zustandswechsel kann auf zwei Arten erfolgen:
Ereignisgesteuert: Durch das entsprechende Eingangsereignis (z.B.
S1_S2).Zeitgesteuert: Durch ein
TimeOut-Ereignis des Adapters, sofern die ZeitDT_...nicht aufNO_TIMEgesetzt ist.
Nach State_04 wechselt der Baustein in den Zustand State_00 (von wo aus die Sequenz mit START_S1 neu gestartet werden kann) oder via RESET direkt zurück in den START-Zustand. Ein RESET-Ereignis deaktiviert sofort alle aktiven Ausgänge und bringt den Baustein in den Ausgangszustand zurück.
Technische Besonderheiten
Hybride Übergänge: Jeder Zustandsübergang kann individuell als rein ereignisgesteuert, rein zeitgesteuert oder als Kombination aus beidem konfiguriert werden. Ein zeitgesteuerter Übergang hat Vorrang, sofern die Zeit nicht
NO_TIMEist.Initialwerte: Alle Zeit-Eingänge (
DT_...) sind standardmäßig mitNO_TIMEvorbelegt, was bedeutet, dass die Sequenz nach dem Start zunächst rein ereignisgesteuert abläuft.Adapter-Nutzung: Die Zeitsteuerung wird vollständig über den gekoppelten
ATimeOut-Adapter abgewickelt, was eine klare Trennung der Funktionalität und potenzielle Wiederverwendbarkeit ermöglicht.Zustandsrückmeldung: Die Ausgabe
STATE_NRbietet eine einfache Möglichkeit, den aktuellen Schritt extern zu überwachen oder zu visualisieren.
Zustandsübersicht
START: Initialer, inaktiver Zustand. Alle Ausgänge sindFALSE.State_01: Erster Sequenzschritt.DO_S1istTRUE. Übergang zuState_02viaS1_S2-Ereignis oder nach ZeitDT_S1_S2.State_02: Zweiter Sequenzschritt.DO_S2istTRUE. Übergang zuState_03viaS2_S3-Ereignis oder nach ZeitDT_S2_S3.State_03: Dritter Sequenzschritt.DO_S3istTRUE. Übergang zuState_04viaS3_S4-Ereignis oder nach ZeitDT_S3_S4.State_04: Vierter Sequenzschritt.DO_S4istTRUE. Übergang zuState_00viaS4_START-Ereignis oder nach ZeitDT_S4_START.State_00: Wartezustand nach Sequenzende. Alle Ausgänge sindFALSE. Von hier aus kann mitSTART_S1eine neue Sequenz gestartet werden.sRESET: Übergangszustand für den Reset. Deaktiviert alle Ausgänge und wechselt automatisch zuState_00.
Anwendungsszenarien
Steuerung von Batch-Prozessen: Sequenzielle Aktivierung von Ventilen, Pumpen oder Heizungen in einem chemischen oder verfahrenstechnischen Prozess.
Automatisierte Handhabungsgeräte: Steuerung der einzelnen Schritte eines Pick-and-Place-Roboters (Greifen, Bewegen, Positionieren, Ablegen).
Verpackungsmaschinen: Koordination der Abläufe wie Produktzuführung, Verpacken, Etikettieren und Ausstoßen.
Teststände: Automatisierte Abfolge von Prüf- und Messschritten an einem Bauteil.
⚖️ Vergleich mit ähnlichen Bausteinen
Im Gegensatz zu einfachen Timer-Bausteinen (TON) oder reinen Zustandsmaschinen (E_SR) kombiniert sequence_ET_04 beides in einem spezialisierten Baustein. Er bietet eine vordefinierte, vierstufige Struktur mit dedizierten Ausgängen für jeden Schritt, was die Programmierung im Vergleich zur manuellen Verknüpfung mehrerer Einzelbausteine vereinfacht und übersichtlicher macht. Bausteine wie E_CYCLE bieten zyklische Ereignisauslösung, aber keine individuellen, zustandsabhängigen Datenausgänge oder hybride Trigger.
🛠️ Zugehörige Übungen
Fazit
Der sequence_ET_04 ist ein praktischer und flexibler Funktionsblock für alle Anwendungen, die eine klare, zyklische Schrittkette erfordern. Die Kombination aus ereignis- und zeitgesteuerten Übergängen sowie die klare Schnittstelle mit separaten Ausgängen für jeden Zustand machen ihn besonders wartungsfreundlich und einfach in übergeordnete Steuerungen zu integrieren. Die Verwendung eines Standard-Adapters für die Zeitfunktion hält den Baustein schlank und kompatibel.