XOR_10¶
Einleitung¶
Der XOR_10 Funktionsblock ist ein generischer Baustein zur Berechnung einer bitweisen XOR-Verknüpfung mit bis zu 10 Eingängen. Er ist Teil der IEC 61131-3 Standardbibliothek für bitweise boolesche Operationen und kann mit verschiedenen Bit-Datentypen (ANY_BIT) verwendet werden.
Schnittstellenstruktur¶
Ereignis-Eingänge¶
- REQ: Startet die Berechnung der XOR-Verknüpfung. Verknüpft mit allen Daten-Eingängen (IN1 bis IN10).
Ereignis-Ausgänge¶
- CNF: Signalisiert die Beendigung der Berechnung und liefert das Ergebnis über den OUT-Ausgang.
Daten-Eingänge¶
- IN1 bis IN10 (ANY_BIT): Bis zu 10 Eingangswerte für die XOR-Berechnung. Jeder Eingang kann einen beliebigen Bit-Datentyp (BOOL, BYTE, WORD, DWORD, LWORD) enthalten.
Daten-Ausgänge¶
- OUT (ANY_BIT): Ergebnis der bitweisen XOR-Verknüpfung aller aktiven Eingänge.
Adapter¶
Dieser FB verwendet keine Adapter.
Funktionsweise¶
Bei Empfang des REQ-Ereignisses berechnet der FB eine bitweise XOR-Verknüpfung aller aktiven Eingänge (IN1 bis IN10). Das Ergebnis wird am OUT-Ausgang ausgegeben und das CNF-Ereignis ausgelöst.
Die XOR-Operation wird für jedes Bitposition separat durchgeführt: - Ergebnisbit = 1, wenn eine ungerade Anzahl von Eingangsbits an dieser Position 1 ist - Ergebnisbit = 0, wenn eine gerade Anzahl von Eingangsbits an dieser Position 1 ist
Technische Besonderheiten¶
- Unterstützt generische Bit-Datentypen (ANY_BIT)
- Verarbeitet bis zu 10 Eingangswerte
- Alle Eingänge müssen denselben Datentyp haben
- Nicht verwendete Eingänge werden als 0 behandelt
- Teil des
iec61131::bitwiseOperatorsPakets
Zustandsübersicht¶
- Wartezustand: Wartet auf REQ-Ereignis
- Berechnungszustand: Führt XOR-Operation durch
- Ausgabezustand: Sendet Ergebnis und CNF-Ereignis
- Rückkehr in Wartezustand
Anwendungsszenarien¶
- Bitweise Verschlüsselungsoperationen
- Paritätsprüfungen
- Fehlererkennung in digitalen Systemen
- Steuerungslogik mit mehreren Eingangssignalen
- Generische Logikoperationen in Automatisierungssystemen
⚖️ Vergleich mit ähnlichen Bausteinen¶
- Im Vergleich zu einfachen XOR-Blöcken mit 2 Eingängen bietet XOR_10 mehr Flexibilität
- Ähnlich zu OR_10/AND_10 Blöcken, aber mit XOR-Logik
- Generische Implementierung im Gegensatz zu typ-spezifischen Blöcken (z.B. XOR_BOOL, XOR_WORD)
Fazit¶
Der XOR_10 Funktionsblock bietet eine flexible Lösung für komplexe bitweise XOR-Operationen in IEC 61131-3 basierten Steuerungssystemen. Seine generische Natur und Unterstützung für bis zu 10 Eingänge machen ihn besonders geeignet für Anwendungen, die mehr als die traditionellen zwei Eingänge erfordern.