sequence_ET_08
Einleitung
Der Funktionsblock sequence_ET_08 ist ein Sequenzer mit acht Ausgängen. Er ermöglicht die Abarbeitung einer festen Schrittkette, wobei der Übergang von einem Schritt zum nächsten entweder durch ein externes Ereignis oder durch einen einstellbaren Zeitablauf erfolgen kann. Der Baustein ist besonders für Steuerungsaufgaben geeignet, bei denen eine zyklische oder zeitgesteuerte Abfolge von Aktionen benötigt wird.
Schnittstellenstruktur
Ereignis-Eingänge
START_S1: Springt vomSTART-Zustand in den ZustandState_01. Überträgt alle Zeitdaten (DT_S1_S2bisDT_S8_START).S1_S2: Springt vonState_01zuState_02.S2_S3: Springt vonState_02zuState_03.S3_S4: Springt vonState_03zuState_04.S4_S5: Springt vonState_04zuState_05.S5_S6: Springt vonState_05zuState_06.S6_S7: Springt vonState_06zuState_07.S7_S8: Springt vonState_07zuState_08.S8_START: Springt vonState_08zurück in denSTART-Zustand.RESET: Setzt den Baustein aus jedem beliebigen Zustand zurück in denSTART-Zustand.
Ereignis-Ausgänge
CNF: Ausführungsbestätigung. Wird bei jedem Zustandswechsel gesetzt und überträgt die aktuelle Zustandsnummer (STATE_NR).EO_S1bisEO_S8: Zustands-spezifische Ereignisausgänge. Werden beim Eintritt in den entsprechenden Zustand (State_01bisState_08) ausgelöst und übertragen den jeweiligen booleschen Datenausgang (DO_S1bisDO_S8).
Daten-Eingänge
DT_S1_S2bisDT_S8_START(TypTIME): Definieren die Zeitdauer für den automatischen Übergang vom aktuellen zum nächsten Zustand. Wenn der Wert aufNO_TIMEgesetzt ist, ist der zeitgesteuerte Übergang für diesen Schritt deaktiviert und ein Ereignis ist erforderlich.
Daten-Ausgänge
STATE_NR(TypSINT): Gibt die aktuelle Zustandsnummer aus (START = 0,State_01 = 1, …,State_08 = 8).DO_S1bisDO_S8(TypBOOL): Logische Ausgänge, dieTRUEsind, solange sich der Baustein im entsprechenden Zustand (State_01bisState_08) befindet.
Adapter
timeOut(Typiec61499::events::ATimeOut): Ein Zeitgeber-Adapter, der für die Realisierung der zeitgesteuerten Zustandsübergänge verwendet wird.
Funktionsweise
Der Baustein ist als Basic-FB mit einer Execution Control Chart (ECC) implementiert. Er startet im initialen Zustand xSTART. Ein START_S1-Ereignis führt in den ersten aktiven Zustand sState_01. Jeder aktive Zustand (sState_01 bis sState_08) führt beim Eintritt folgende Aktionen aus:
Stoppt den laufenden Zeitgeber.
Führt den Exit-Algorithmus des vorherigen Zustands aus (schaltet den vorherigen Ausgang aus).
Führt den Confirmation-Algorithmus (
*_C) aus, der dieSTATE_NRsetzt und die Zeit für den nächsten möglichen automatischen Übergang imtimeOut-Adapter konfiguriert.Führt den Entry-Algorithmus (
*_E) aus, der den zugehörigen booleschen Ausgang (DO_Sx) aktiviert und das entsprechende Ereignis (EO_Sx) auslöst.Startet den Zeitgeber mit der für diesen Zustand eingestellten Dauer (
DT_*).
Der Übergang zum nächsten Zustand kann auf zwei Arten erfolgen:
Ereignisgesteuert: Durch das entsprechende Sprung-Ereignis (z.B.
S1_S2).Zeitgesteuert: Durch das
TimeOut-Ereignis des Adapters, sofern die Zeitdauer (DT_*) nichtNO_TIMEist.
Das RESET-Ereignis führt in einen dedizierten Reset-Zustand (sRESET), der alle aktiven Ausgänge ausschaltet, bevor er in den inaktiven START-Zustand (sState_00) übergeht.
Technische Besonderheiten
Hybride Transitionen: Jeder Schritt bietet zwei parallele Übergangsbedingungen (Ereignis ODER Zeit), was maximale Flexibilität bietet.
Sichere Zustandsbehandlung: Beim Zustandswechsel wird der Zeitgeber immer gestoppt, und die Ausgänge werden durch definierte Exit-Algorithmen sauber deaktiviert.
Konfigurierbare Zeiten: Die Zeit für jeden Schritt kann individuell eingestellt oder durch
NO_TIMEdeaktiviert werden.Explizite Zustandsrückmeldung: Der Ausgang
STATE_NRerlaubt eine einfache externe Überwachung der aktuellen Schrittposition.
Zustandsübersicht
xSTART: Initialer, inaktiver Zustand (beim Start des FBs).
sState_00: Inaktiver
START-Zustand (nach Reset oder Zyklusende).STATE_NR = 0.sState_01 bis sState_08: Aktive Zustände der Sequenz.
STATE_NR = 1bis8. Die entsprechenden AusgängeDO_S1bisDO_S8sind aktiv.sRESET: Temporärer Zustand, der bei einem
RESET-Ereignis alle aktiven Ausgänge ausschaltet.
Anwendungsszenarien
Steuerung von zyklischen Prozessen in Verpackungs- oder Fertigungsmaschinen.
Schrittkette für einen automatisierten Test- oder Kalibrierablauf.
Steuerung einer Belichtungs- oder Spülsequenz in der Halbleiterfertigung.
Allgemeine Zustandsautomaten, bei denen Schritte sowohl durch Sensorik (Ereignis) als auch durch feste Zeiten vorangetrieben werden können.
⚖️ Vergleich mit ähnlichen Bausteinen
Im Vergleich zu einfacheren Sequenzern (z.B. E_SR oder E_CTU in Reihe) bietet sequence_ET_08 eine vollständig vordefinierte Schrittkette mit integrierter Zeitsteuerung und dedizierten Ausgängen pro Schritt. Im Gegensatz zu einer individuell programmierten SFC (Sequential Function Chart) ist die Logik fest verdrahtet, was die Anwendung einfacher, aber auch weniger flexibel macht. Bausteine wie E_DELAY müssten extern hinzugefügt werden, während hier die Zeitfunktionalität integriert ist.
Fazit
Der sequence_ET_08 ist ein robuster und einfach zu konfigurierender Sequenzer-Baustein für IEC 61499. Seine Stärke liegt in der kombinierten Ereignis- und Zeitsteuerung sowie der klaren, pro Schritt definierten Schnittstelle. Er eignet sich ideal für standardisierte Steuerungsabläufe mit bis zu acht Schritten, bei denen ein hohes Maß an Vorhersagbarkeit und einfache Parametrierung gewünscht ist. Für Prozesse mit variabler Schrittanzahl oder komplexeren Verzweigungen sind flexiblere Lösungen wie Composite-FBs oder eigene SFCs vorzuziehen.