SPLIT_WORD_INTO_BOOLS

SPLIT_WORD_INTO_BOOLS


Einleitung

Der Funktionsblock SPLIT_WORD_INTO_BOOLS dient dazu, ein 16-Bit-Wort in seine einzelnen Bits zu zerlegen. Jedes Bit des Eingangswortes wird auf einen separaten BOOL-Ausgang abgebildet. Dies ist besonders nützlich, wenn einzelne Bits eines Wortes weiterverarbeitet oder überwacht werden müssen.

Schnittstellenstruktur

Ereignis-Eingänge

  • REQ (Normal Execution Request): Startet die Zerlegung des Eingangswortes. Wird mit dem Daten-Eingang IN verknüpft.

Ereignis-Ausgänge

  • CNF (Execution Confirmation): Bestätigt die erfolgreiche Zerlegung des Wortes. Wird mit allen 16 BOOL-Ausgängen verknüpft.

Daten-Eingänge

  • IN (WORD): Das 16-Bit-Wort, das in einzelne Bits zerlegt werden soll.

Daten-Ausgänge

  • BIT_00 bis BIT_15 (BOOL): Die einzelnen Bits des Eingangswortes, wobei BIT_00 das niederwertigste Bit (LSB) und BIT_15 das höchstwertige Bit (MSB) darstellt.

Adapter

  • Keine Adapter vorhanden.

Funktionsweise

Der Funktionsblock zerlegt das Eingangswort IN in seine 16 einzelnen Bits und weist diese den entsprechenden BOOL-Ausgängen zu. Die Zuweisung erfolgt direkt über die Bit-Adressierung des WORD-Datentyps (z.B. IN.%X0 für das erste Bit). Bei Auslösung des REQ-Ereignisses werden alle Bits extrahiert und das CNF-Ereignis bestätigt die erfolgreiche Ausführung.

Technische Besonderheiten

  • Die Bit-Extraktion erfolgt direkt über die Hardware-nahe Bit-Adressierung, was eine effiziente Verarbeitung ermöglicht.

  • Der Funktionsblock ist deterministisch und hat keine internen Zustände.

Zustandsübersicht

  • Idle: Wartet auf das REQ-Ereignis.

  • Processing: Zerlegt das Wort und aktualisiert die Ausgänge.

  • **Complete: Löst das CNF`-Ereignis aus und kehrt in den Idle-Zustand zurück.

Anwendungsszenarien

  • Verarbeitung von digitalen Eingangssignalen, die als WORD übertragen werden.

  • Dekodierung von Status- oder Steuerworten in Steuerungssystemen.

  • Schnittstelle zwischen Wort-basierten und Bit-basierten Systemkomponenten.

⚖️ Vergleich mit ähnlichen Bausteinen

  • Im Vergleich zu generischen Bit-Manipulationsfunktionen bietet dieser Baustein eine spezialisierte und einfache Schnittstelle für die Zerlegung von Wörtern.

  • Ähnliche Bausteine könnten eine flexible Anzahl von Bits unterstützen, was hier nicht der Fall ist.

Fazit

Der SPLIT_WORD_INTO_BOOLS-Funktionsblock ist ein einfacher und effizienter Baustein für die Zerlegung von 16-Bit-Wörtern in einzelne Bits. Er eignet sich besonders für Anwendungen, bei denen eine klare und direkte Bit-Extraktion benötigt wird.