Beckhoff und Boolsche Algebra

Almighurt

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich bin so ein Depp.
Ich hatte bisher immer AWL programmiert. Erst seit kurzem programmiere ich in ST und hatte heute zuerst einfach nicht verstanden, warum eine einfache IF-Anweisung nicht funktionieren wollte.
Der Grund war, dass ich die AWL-Logik genauso in der IF-Anweisung runterprogrammiert habe. Nun weiß ich, dass das grundverschiedene Dinge sind.

Trotzdem habe ich anscheinend Schwierigkeiten in Boolscher Algebra zu denken.
Ich habe heute in der Firma die letzte Stunde damit verbracht herauszufinden, warum ein stinknormaler Timer (TON) ansprach, obwohl die Eingangslogik nach meinem Verständnis nicht erfüllt hätte sein dürfen:
Code:
Timer_1(IN: NOT Variable_1
AND Variable_2
AND Variable_3
AND NOT Variable_4

Variable_1 war False
Variable_2 und _3 waren True
Variable_4 war auch True, trotzdem lief die Timerzeit ab und meine Ausgang Q kam. Wie kann das sein? Nach meinem Verständnis muss Variable_4 False sein, damit die Bedingung erfüllt ist.
 
Bei mir geht das:
Code:
VAR
    myTimer :TON;
    Variable_1 :BOOL;
    Variable_2 :BOOL;
    Variable_3 :BOOL;
    Variable_4 :BOOL;
END_VAR
Code:
myTimer(IN:= NOT Variable_1 AND Variable_2 AND Variable_3 AND NOT Variable_4, PT:=t#5s);
 
Zurück
Oben