XOR_7_BOOL
Einleitung
Der Funktionsblock XOR_7_BOOL ist ein generischer Baustein zur Berechnung der logischen Exklusiv-ODER (XOR) Verknüpfung. Er verarbeitet sieben boolesche Eingangssignale und liefert das Ergebnis der XOR-Operation als ein boolesches Ausgangssignal. Der Block folgt dem IEC 61131-3 Standard und ist für den Einsatz in Steuerungsanwendungen konzipiert, bei denen eine ungerade Paritätsprüfung oder eine logische Antivalenz über mehrere Signale erforderlich ist.
Schnittstellenstruktur
Ereignis-Eingänge
REQ (Normal Execution Request): Dieses Ereignis löst die Ausführung des Funktionsblocks aus. Bei seinem Eintreffen werden alle sieben Daten-Eingänge (
IN1bisIN7) ausgelesen und die XOR-Berechnung durchgeführt.
Ereignis-Ausgänge
CNF (Execution Confirmation): Dieses Ereignis signalisiert den Abschluss der Berechnung. Es wird zusammen mit dem berechneten Datenausgang
OUTausgegeben.
Daten-Eingänge
IN1 (XOR input 1): Boolescher Eingang 1.
IN2 (XOR input 2): Boolescher Eingang 2.
IN3 (XOR input 3): Boolescher Eingang 3.
IN4 (XOR input 4): Boolescher Eingang 4.
IN5 (XOR input 5): Boolescher Eingang 5.
IN6 (XOR input 6): Boolescher Eingang 6.
IN7 (XOR input 7): Boolescher Eingang 7.
Daten-Ausgänge
OUT (XOR result): Boolesches Ergebnis der XOR-Verknüpfung aller sieben Eingänge.
Adapter
Dieser Funktionsblock verfügt über keine Adapterschnittstellen.
Funktionsweise
Bei Eintreffen des Ereignisses REQ führt der Block die logische XOR-Operation über alle sieben booleschen Eingänge IN1 bis IN7 durch. Das Ergebnis OUT ist genau dann TRUE (1), wenn eine ungerade Anzahl der Eingänge den Wert TRUE aufweist. Ist die Anzahl der TRUE-Eingänge gerade (0, 2, 4, 6), ist das Ergebnis FALSE (0).
Mathematisch ausgedrückt: OUT = IN1 XOR IN2 XOR IN3 XOR IN4 XOR IN5 XOR IN6 XOR IN7
Unmittelbar nach der Berechnung wird das Abschlussereignis CNF zusammen mit dem gültigen Ergebnis OUT ausgelöst.
Technische Besonderheiten
Generischer Baustein: Der Block ist als generischer Funktionsblock (
GEN_XOR) implementiert, was eine flexible Wiederverwendung in verschiedenen Kontexten ermöglicht.Feste Eingangsanzahl: Im Gegensatz zu Bausteinen mit variabler Eingangsanzahl besitzt dieser Block exakt sieben fest definierte Eingänge.
Ereignisgesteuerte Ausführung: Die Operation wird ausschließlich durch ein eingehendes Ereignis (
REQ) getriggert, was eine deterministische und energieeffiziente Abarbeitung im Echtzeitsystem ermöglicht.
Zustandsübersicht
Der Funktionsblock besitzt keinen internen Zustand im Sinne eines Speichers. Sein Verhalten ist rein kombinatorisch und ausschließlich von den aktuellen Werten an den Eingängen zum Zeitpunkt des REQ-Ereignisses abhängig. Nach der Ausgabe von CNF verharrt der Block in einem wartenden Zustand bis zum nächsten REQ.
Anwendungsszenarien
Paritätsprüfung: Überwachung, ob eine ungerade Anzahl von Sensoren (z.B. Grenztaster, Lichtschranken) in einem bestimmten Zustand (
TRUE) ist.Sicherheitskritische Verknüpfungen: In Sicherheitsschaltungen, wo eine Antivalenz-Bedingung über mehrere Sicherheitseinrichtungen erforderlich ist.
Steuerungslogik: Implementierung von speziellen logischen Verknüpfungen in Ablaufsteuerungen oder Verknüpfungssteuerungen, die eine XOR-Funktion mit genau sieben Operanden benötigen.
⚖️ Vergleich mit ähnlichen Bausteinen
XOR(2 Eingänge): Der Standard-XOR-Baustein verknüpft nur zwei Eingänge. Für eine Verknüpfung von sieben Signalen müsste dieser Block mehrfach verschachtelt werden, was die Lesbarkeit des Programms verringert.XOR_7_BOOLbietet eine direkte und übersichtliche Lösung. Siehe: XOR_7GEN_XOR(Generisch, n Eingänge): Der zugrundeliegende generische BausteinGEN_XORkann mit einer variablen Anzahl von Eingängen instanziiert werden.XOR_7_BOOList eine spezifische, vorkonfigurierte Instanz mit sieben Eingängen, die direkt verwendet werden kann, ohne die Anzahl der Eingänge parametrieren zu müssen.PARITY_CHECK: Ein reiner Paritätsprüfblock könnte ähnliche Ergebnisse liefern, ist aber konzeptionell oft auf die Fehlererkennung in Datenströmen ausgelegt, währendXOR_7_BOOLals allgemeiner logischer Operator in der Steuerungslogik dient.
Fazit
Der XOR_7_BOOL Funktionsblock ist ein spezialisierter und effizienter Baustein für die logische Antivalenz-Verknüpfung von sieben booleschen Signalen. Durch seine ereignisgesteuerte, zustandslose Arbeitsweise und die klare Schnittstelle eignet er sich ideal für den Einsatz in strukturierten IEC 61131-3-basierten Steuerungsprogrammen, wo eine solche feste Verknüpfung benötigt wird. Er vereinfacht die Programmierung im Vergleich zur Verschachtelung mehrerer Zwei-Eingangs-XOR-Blöcke und bietet eine sofort einsatzbereite, zuverlässige Komponente.