Möchte man mehrere Bedingungen prüfen, kann man diese mit logischen Operatoren tun. Logische Operatoren sind Funktionen, die einen Wahrheitswert aus mehrer Bedinugugen liefert. Kurz gesagt, am Ende ist das Ergebnis für die Bedingung aus mehrern Operatoren trotzdem erfüllt (WAHR) oder nicht erfüllt (FALSCH). Also eine NULL oder eine EINS.
Für den Teste Block brauchen wir solche Bedingungen. Es kann zum Beispiel ein digitaler Eingang sein. Bekommt dieser durch eine Spannung ein HIGH Signal ist die Bedingung erfüllt und das Programm im folgenden wird ausgeführt. Der Block wird also erst ausgeführt wenn dies Bedingung erfüllt ist.
In dem Programm oben reicht eine Bedingung aus, ein Taster am digitalen Eingang D2. Wenn eine Bedingung nicht ausrecht, weil zum Beispiel das grüne Licht eines Bahnübergang erst angehen darf, wenn:
- Der Zug durchgefahren ist --> Magnetschalter
- Die linke Schranke oben ist --> Endschalter
- Die rechte Schranke oben ist --> Endschalter
- Kein Signal vom Stellwerk kommt das gleich wieder ein Zug kommt
Dann braucht es logische Operatoren, wie UND, ODER und NICHT.
Diese logischen Operatoren werden das "teste" Feld mit eingefügt.
Die logischen Operatoren können natürlich frei miteinander kombiniert werden am Ende gibt es immer nur ein Ergebnis und das ist entweder WAHR oder FALSCH, der folgende Block wird also ausgeführt oder nicht ausgeführt.
"NICHT" Negation Block
Mit der Negation wird ein Wert invertiert, also umgekehrt. Das heißt aus WAHR wird FALSCH und aus FALSCH wird WAHR.
Im Beispiel unten wird ein digitaler Eingang umgekehrt. Mit dem "NICHT" Block reagiert der digitale Eingang nun auf ein LOW Signal und nicht wie üblich auf HIGH Signal.
UND Verknüpfung Block
Mit dem logischen UND wird überprüft ob mehrer Bedingugen erfüllt sind. Erst wenn Bedingungen eins+zwei+drei+vier erfüllt sind ist das Ergebnis Wahr. Im Beispiel müssen vier Bedingungen erfüllt sein. Damit der digitale Ausgang HIGH geschaltet wird. Dies könnte zum Beispiel an einer Stanzmaschine sein. Der Arbeiter muss beide Hände aus der Presse habe, also zwei Taster außerhalb der Presse drücken und zudem muss das Programm noch über eine digitale Variable bestätigen dass ein Werkstück in der Presse liegt, erst dann darf die Presse sich nach unten senken.
Natürlich können "UND" Blöcke auch negiert oder kombiniert werden.
ODER Verknüpfung Block
Muss nur eine von mehreren Bedingungen erfüllt sein, damit der nachfolgende Block ausgeführt wird, wird eine ODER Verknüpfung verwendet. Bei dieser Operation reicht wes wenn eine Bedingungen erfüllt ist. So wie es in einem Treppenhaus ist, wenn das Licht an mehren Tastern angeschaltet werden kann. So auch im Beispiel unten, egal welchen der Taster gedrückt wird, das Licht geht immer an.
Ohne die logischen Operatoren würde das ganze dann so aussehen und in vielen Fällen wäre Programme ohne UND, ODER und NICHT gar nicht möglich.
Natürlich können "ODER" Blöcke auch negiert oder kombiniert werden.