Zum Inhalt

AL_DEMUX_2

AL_DEMUX_2


Einleitung

Der Funktionsbaustein AL_DEMUX_2 ist ein generischer AL-Demultiplexer. Er leitet einen über einen Adapter-Socket eingehenden Datenstrom wahlweise an einen von zwei Adapter-Plugs weiter. Die Auswahl des Ausgangs erfolgt über einen Index-Parameter, der durch ein Ereignis gesetzt und aktiviert wird. Der Baustein ist für den Einsatz in automatisierten Systemen konzipiert, bei denen Datenpfad-Umschaltungen auf Basis diskreter Steuersignale erforderlich sind.

Schnittstellenstruktur

Ereignis-Eingänge

Ereignis Datenparameter Beschreibung
REQ K Setzt den Index K und startet die Weiterleitung des aktuellen Werts vom Eingang an den entsprechenden Ausgang.

Ereignis-Ausgänge

Ereignis Beschreibung
CNF Bestätigt die erfolgreiche Umschaltung und Weiterleitung des Wertes.

Daten-Eingänge

Name Datentyp Beschreibung
K UINT Index zur Auswahl des Ausgangs (0 → OUT1, 1 → OUT2).

Daten-Ausgänge

Keine eigenen Datenausgänge. Die Datenweitergabe erfolgt ausschließlich über die Adapter-Plugs.

Adapter

Richtung Name Typ Beschreibung
Socket IN adapter::types::unidirectional::AL Eingangsadapter, der den zu demultiplexenden Wert bereitstellt.
Plug OUT1 adapter::types::unidirectional::AL Erster Ausgang (aktiv bei K = 0).
Plug OUT2 adapter::types::unidirectional::AL Zweiter Ausgang (aktiv bei K = 1).

Funktionsweise

Der Baustein arbeitet ereignisgesteuert: 1. Im Ruhezustand wartet er auf das Ereignis REQ. 2. Bei Eintreffen von REQ wird der an K anliegende Wert ausgelesen. 3. Der aktuelle Wert des Eingangsadapter IN wird auf den durch K bestimmten Ausgangsadapter (OUT1 bei K=0, OUT2 bei K=1) kopiert. 4. Nach erfolgreicher Weiterleitung wird das Bestätigungsereignis CNF gesendet.

Handelt es sich bei K um einen Wert außerhalb des gültigen Bereichs (≥2), erfolgt keine Weiterleitung und es wird kein CNF ausgelöst (oder das Verhalten ist anwendungsspezifisch).

Technische Besonderheiten

  • Generischer Baustein: Der FB ist als generischer Typ (GEN_AL_DEMUX) deklariert und kann für verschiedene AL-Adapter-Varianten wiederverwendet werden.
  • Unidirektionale Adapter: Alle verwendeten Adapter sind vom Typ unidirectional::AL, was bedeutet, dass Daten nur in eine Richtung fließen (vom Socket zum Plug). Dies vereinfacht die Kopplung und reduziert potentielle Nebenwirkungen.
  • Keine Zustandsmaschine in der XML: Die Logik wird implizit durch die Ereignisverarbeitung realisiert; eine explizite ECC existiert nicht, was die Implementierung schlank hält.

Zustandsübersicht

Eine formale Zustandsmaschine ist nicht definiert. Der Baustein verhält sich wie folgt: - Idle: Warten auf REQ. - Processing: Nach Eintreffen von REQ wird die Weiterleitung durchgeführt. - Done: Nach erfolgreicher Weiterleitung wird CNF ausgegeben und der Baustein kehrt in den Idle-Zustand zurück.

Anwendungsszenarien

  • Aktuatorenselektion: In einer Maschinensteuerung kann ein analoger oder digitaler Wert (z.B. Drehzahlvorgabe) wahlweise an zwei verschiedene Motortreiber weitergeleitet werden.
  • Datenpfadumschaltung: In einem Messsystem, bei dem ein Sensorwert abwechselnd an zwei Auswertemodule übergeben werden muss.
  • Ressourcensparen: Statt zwei paralleler Kommunikationskanäle kann ein Demultiplexer verwendet werden, um Hardware-Schnittstellen zu teilen.

Vergleich mit ähnlichen Bausteinen

  • AL_MUX_2 (Multiplexer): Führt mehrere Quellen auf einen Ausgang zusammen – das Gegenstück zum Demultiplexer.
  • SIMPLE_SELECT: Einfache Weiche auf Basis eines Booleschen Signals. AL_DEMUX_2 arbeitet dagegen mit einem ganzzahligen Index und AL-Adapter-Schnittstellen.
  • Standard-Demultiplexer in Bibliotheken: Viele IEC-61499-Bibliotheken bieten Demultiplexer mit mehr als zwei Ausgängen (z.B. DEMUX_4), die jedoch oft nur einfache Datentypen und keine Adapter verwenden. Der AL_DEMUX_2 ist speziell für Adapter-basierte Anwendungen optimiert.

Fazit

Der Funktionsbaustein AL_DEMUX_2 stellt eine kompakte, generische Lösung zur Datenweiterleitung an zwei Adapterausgänge dar. Durch die ereignisgesteuerte Auswahl per Index eignet er sich besonders für zeitgesteuerte oder sequenzielle Umschaltvorgänge in Automatisierungssystemen. Die Verwendung von AL-Adaptern gewährleistet eine einfache Integration in bestehende Adapter-basierte Architekturen.