OR_16_BOOL
Einleitung
Der Funktionsblock OR_16_BOOL ist ein Standard-Baustein zur Berechnung der logischen ODER-Verknüpfung. Er führt die ODER-Operation über 16 separate boolesche Eingänge durch und stellt das Ergebnis an einem einzigen Ausgang zur Verfügung. Dieser Baustein ist Teil der IEC 61131-3-konformen Bibliothek für bitweise Operationen und eignet sich für Anwendungen, in denen eine logische Verknüpfung mehrerer Signale erforderlich ist.
Schnittstellenstruktur
Ereignis-Eingänge
REQ (Normal Execution Request): Dieses Ereignis löst die Berechnung der ODER-Funktion aus. Es ist mit allen 16 Dateneingängen (
IN1bisIN16) verknüpft.
Ereignis-Ausgänge
CNF (Execution Confirmation): Dieses Ereignis signalisiert den Abschluss der Berechnung. Es wird zusammen mit dem aktualisierten Datenausgang
OUTausgegeben.
Daten-Eingänge
Der Baustein verfügt über 16 identische boolesche Dateneingänge:
IN1 bis IN16 (BOOL): Die zu verknüpfenden Eingangssignale. Jeder Eingang repräsentiert einen Operanden für die ODER-Operation.
Daten-Ausgänge
OUT (BOOL): Das Ergebnis der logischen ODER-Verknüpfung aller 16 Eingänge. Der Ausgang ist
TRUE(1), wenn mindestens einer der EingängeTRUEist. Er ist nurFALSE(0), wenn alle 16 EingängeFALSEsind.
Adapter
Dieser Funktionsblock verwendet keine Adapter-Schnittstellen.
Funktionsweise
Die Funktionsweise ist deterministisch und ereignisgesteuert:
Bei Eintreffen eines Ereignisses am Eingang
REQwird der Baustein aktiviert.Der Baustein liest die aktuellen Werte aller 16 Eingänge
IN1bisIN16.Es wird die logische ODER-Operation über alle gelesenen Werte berechnet:
OUT = IN1 OR IN2 OR ... OR IN16.Das Ergebnis wird am Datenausgang
OUTgesetzt.Unmittelbar nach der Berechnung wird das Bestätigungsereignis
CNFzusammen mit dem neuen Wert vonOUTausgegeben.
Technische Besonderheiten
Generischer Baustein: Der Block ist als generischer Baustein (
GEN_OR) gekennzeichnet, was auf eine mögliche Wiederverwendung der zugrundeliegenden Logik für andere ODER-Bausteine mit unterschiedlicher Eingangsanzahl hindeutet.Feste Eingangsanzahl: Im Gegensatz zu Bausteinen mit variabler Eingangsanzahl besitzt
OR_16_BOOLexakt 16 Eingänge. Dies bietet eine klare und fest definierte Schnittstelle.Ereignisgesteuerte Ausführung: Die Berechnung erfolgt nur bei einem eingehenden
REQ-Ereignis, was eine energieeffiziente und bedarfsgerechte Abarbeitung im Echtzeitsystem ermöglicht.
Zustandsübersicht
Der Baustein besitzt keinen internen Zustand im Sinne eines Speichers. Er verhält sich rein kombinatorisch in Bezug auf die Eingangsdaten. Sein „Zustand“ ist ausschließlich durch das Vorhandensein oder Fehlen eines ausstehenden Berechnungsauftrags (REQ) definiert. Nach der Bearbeitung und dem Senden von CNF kehrt er in einen passiven Wartezustand zurück.
Anwendungsszenarien
Überwachungslogik: Zusammenfassen mehrerer Fehler- oder Warnsignale zu einem gemeinsamen Störsignal. (z.B. „Maschine anhalten, wenn Sensor A ODER Sensor B ODER … ODER Sensor P eine Störung meldet“).
Freigabelogik: Prüfen, ob mindestens eine von mehreren Bedingungen für den Start eines Prozesses erfüllt ist.
Verknüpfung von Tastergruppen: In einer Bedienstation, bei der eine Aktion durch das Betätigen mindestens eines von mehreren (bis zu 16) Tastern ausgelöst werden kann.
⚖️ Vergleich mit ähnlichen Bausteinen
OR_2_BOOL,OR_8_BOOL: Dies sind baugleiche ODER-Bausteine mit einer geringeren Anzahl an Eingängen (2 bzw. 8).OR_16_BOOLerweitert diese Reihe für Anwendungen mit höherer Eingangsanzahl. Siehe: OR_16AND_16_BOOL: Führt die logische UND-Verknüpfung durch. Das Ergebnis ist nurTRUE, wenn alle EingängeTRUEsind, während es beiOR_16_BOOLreicht, wenn mindestens ein EingangTRUEist.Bausteine mit variabler Eingangsanzahl: Einige Bibliotheken bieten ODER-Bausteine an, bei denen die Anzahl der Eingänge konfigurierbar ist.
OR_16_BOOLbietet hingegen eine feste, optimierte Schnittstelle für genau 16 Signale.
Fazit
Der OR_16_BOOL ist ein robuster und einfach zu verwendender Standardbaustein für die logische ODER-Verknüpfung einer größeren Gruppe von booleschen Signalen. Seine feste Struktur mit 16 Eingängen macht ihn vorhersagbar und einfach in der Anwendung, insbesondere wenn die benötigte Anzahl an Signalen bekannt und konstant ist. Die ereignisgesteuerte Ausführung integriert ihn nahtlos in die Datenfluss-orientierte Architektur von 4diac. Er ist die erste Wahl, wenn bis zu 16 digitale Signale auf ein gemeinsames ODER-Ergebnis reduziert werden sollen.