Steuerung Eingabe Ausgabe Aktoren Sensoren
Steuerung Eingabe Ausgabe Aktoren Sensoren
Steuerung Eingabe Ausgabe Aktoren Sensoren
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Vorlesung "Automatisierungstechnik" – Teil 1: "Speicherprogrammierbare <strong>Steuerung</strong>en"<br />
Arbeitsblätter "Abbildungen" [ABB 15]<br />
FUNCTION_BLOCK puls (* puls ist selbstgewählter Name des FB-Typs *)<br />
(* Beachte: Ein FB hat im Gegensatz zur Funktion keinen Rückgabewert! *)<br />
(* Funktionsbaustein-Kopf = Deklarationsteil *)<br />
VAR_INPUT (* die Eingangsparameter i1, i2 werden links im FBS-Symbol dargestellt *)<br />
i1 : BOOL;<br />
i2 : BOOL;<br />
END_VAR<br />
VAR_OUTPUT (* der Ausgangsparameter g wird rechts im FBS-Symbol dargestellt *)<br />
q : BOOL;<br />
END_VAR<br />
VAR (* die lokale Variable m wird nicht im FBS-Symbol dargestellt *)<br />
m : BOOL;<br />
END_VAR<br />
(* Funktionsbaustein-Rumpf = Anweisungsteil *)<br />
q := i1 AND i2 AND NOT m;<br />
m := q;<br />
END_FUNCTION_BLOCK<br />
Abbildung 4.3.2.2: Beispiel zur Deklaration von eigenen Anwender-Funktionsbausteinen<br />
PROGRAM test (* test ist selbstgewählter Name des Programms *)<br />
(* Programm-Kopf = Deklarationsteil in ST *)<br />
VAR<br />
start_puls, sperr_puls : puls; (* start_puls und sperr_puls sind die Namen der FB-Instanzen<br />
(* puls ist der FB-Typ *)<br />
sensor AT %IX0.0 : BOOL; (* located Variablen vom Daten-Typ BOOL *)<br />
schalter AT %IX0.1 : BOOL;<br />
start, sperre : BOOL; (* unlocated Variablen *)<br />
freigabe : BOOL := 1; (* Variablen-Anfangswert 1 *)<br />
…<br />
END_VAR<br />
(* Programm-Rumpf = Anweisungsteil in FBS *)<br />
(* Aufruf der FB-Instanz start_puls mit Werteübergabe der Variablen sensor an den Parameter i1 *)<br />
freigabe<br />
start_puls<br />
EN<br />
puls<br />
ENO<br />
sperr_puls<br />
puls<br />
ENO<br />
sensor<br />
i1 q<br />
start schalter<br />
i1 q<br />
sperre<br />
1 i2<br />
…<br />
i2<br />
EN<br />
…<br />
END_PROGRAM<br />
Abbildung 4.3.2.3: Beispiel zum Aufruf von Funktionsbausteinen<br />
Prof. Dr.-Ing. Andreas Kegler [File: AUT1_abb.doc 20.10.05] Seite 15