Sie sind auf Seite 1von 1

Carl-Severing-Berufskolleg

für Metall- und Elektrotechnik SPS IEC 61131-3


der Stadt Bielefeld
Hermann-Delius-Straße 4 ST – Befehlssatz [SPS]
33607 Bielefeld (ohne Schleifen und EXIT)

Operation Symbol (absteigende Priorität)


Klammerung (Ausdruck) Zahl := x1 * (z1 + z2)
Funktionsauswertung Bezeichner (Argument-Liste)
B :=LN(A) ; maxWert :=MAX(X,Y); usw.
Potenzierung EXPT(Basis,Exponent)
Kreisflaeche:=EXPT(Radius,2)*3.141592;
Negation (Werte) - {Zahl:= -1.345;}
Komplement (BOOL) NOT {Stop := NOT Start;}
Multiplikation * { Umfang:=Breite*2; }
Division / { maxWert:=Wert/2; }
Modulo MOD { Rest:= 14 MOD 3;  Rest=2 }
Addition + {Summe := Wert1 + Wert2 }
Subtraktion - {Differenz := maxWert – minWert; }
Vergleich =, <>, <, >, <=, >= [gleich, ungleich, kleiner,größer,kleiner gleich, größer gleich]
 [Ergebnis BOOL] {maxWert := Wert > 10;} {minWert := Wert<= 0.123;}
Boolesches UND & AND {Betrieb: = Start AND Endschalter1}
Bool. Exklusiv ODER XOR
Boolesches ODER OR
Zuweisung A:=B; CV:=CV+1; {Addition pro Aufruf, kann wie CTU arbeiten}
C:=SIN(X);
Funktionsbaustein-Aufruf Ton1(IN:=Start, PT:=T#300ms, ET=>Zeit1); [!! Bausteinname in Var.Tabelle]
Gebrauch des Ausganges Motor1 := Ton1.Q;
Einbindung der Baustein_E/A’s in beliebiger Reihenfolge und Menge
[z.B. nur T1(); Aufruf der E/A’s im Progr. Oder T1(IN:=Start,Q=>Motor1)]
IF ….. then IF Start=TRUE THEN [Vergleicher] (=0 oder =TRUE)
Ventilator:=1; [Zuweisung]
{Funktion: TASTER} ELSE
Ventilator:= 0; [Zuweisung]
END_IF; [gesprochen: Wenn Start=1 DANN Ventilator an SONST Ventilator aus]
IF ….. then wie RS: [vorrangig Rücksetzend] wie SR: [vorrangig Setzend]
…… IF Start=TRUE THEN IF Stop=TRUE THEN
End_if {Funkion: Schalter} Ventilator:=1; Ventilator:=0;
CoDeSys END_IF; END_IF;
{Funktion: Selbsthaltg., Speicher} IF Stop=TRUE THEN IF Start=TRUE THEN
Siemens: SR, RS von der Ventilator:= 0; Ventilator:= 1;
Benennung getauscht
END_IF; END_IF;
CASE INT1 OF CASE Zaehler OF {Beispiel, Weiterschaltung durch externe Zählung}
1, 5: BOOL1 := TRUE; 1: Heizung1 := 1;
Wert1 := 12.33; 2: Motor1 := 1;
2: BOOL2 := FALSE;
LEDBetrieb := 1;
BOOL3 := TRUE;
ELSE 4: Heizung1 := 0;
BOOL1 := NOT BOOL1; Zaehler:=8; [Weiterschaltung in CASE-Ablauf]
Wert1 := 0; 8: Motor2 := 1;
END_CASE ELSE
{Nutzung z.B. wie Motor1:=0; {wenn kein Zahlenwert zutrifft}
Schrittkette}
End_Case

__SC_ST_BefehlesSatz.doc Seite 1 / 1 BOPP 11/14

Das könnte Ihnen auch gefallen