Anda di halaman 1dari 301

Festo Software Tools

Lehrbuch

Automatisieren mit
FST

682 299
de 0403NH
Inhalt und allgemeine Sicherheitshinweise

Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B. Plagemann

Original . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . de

Ausgabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . de 0403NH

Bezeichnung . . . . . . . . . . . . . . . . . . . . . . P.BE−FST4−LB−DE

BestellNr. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682 299

E (Festo AG&Co. KG, D73726 Esslingen, 2004)


Internet: http://www.festo.com
e−mail: service_international@festo.com

Weitergabe sowie Vervielfältigung dieses Dokuments, Ver


wertung und Mitteilung seines Inhalts verboten, soweit nicht
ausdrücklich gestattet. Zuwiderhandlungen verpflichten zu
Schadenersatz. Alle Rechte vorbehalten, insbesondere das
Recht, Patent−, Gebrauchsmuster oder Geschmacksmuster
anmeldungen durchzuführen.

Festo P.BE−FST4−LB−DE de 0403NH I


Inhalt und allgemeine Sicherheitshinweise

Microsoft® Windows® eingetragenes Warenzeichen der


Microsoft Corporation

II Festo P.BE−FST4−LB−DE de 0403NH


Inhalt und allgemeine Sicherheitshinweise

Inhaltsverzeichnis

Bestimmungsgemäße Verwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX
Zielgruppe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX
Beispielprojekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX
Wichtige Benutzerhinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X

1. Programmieren für die Automatisierungstechnik . . . . . . . . . . . . . . . . . . . . 1−1

1.1 Zu diesem Buch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1−4


1.2 Programmieren für die Automatisierungstechnik oder den PC . . . . . . . . . . . 1−4

2. Die Grundregeln eines FST Projektes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2−1

2.1 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2−3

3. Das erste FST Projekt: Ein Garagentor steuern . . . . . . . . . . . . . . . . . . . . . . 3−1

3.1 Projekt, E/As, Programm, WENN ... DANN ... SONST . . . . . . . . . . . . . . . . . . . 3−5
3.1.1 Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−5
3.1.2 Steuerungstyp auswählen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−6
3.1.3 E/A−Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−7
3.1.4 Programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−11
3.1.5 Übersetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−30
3.1.6 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−34
3.1.7 Prüfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−37
3.1.8 Dokumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−40
3.1.9 Das Projekt Garage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−42
3.2 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−43

4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern . . . . . . . . 4−1

4.1 Die Bohrmaschine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−4


4.1.1 Die Bedienung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−4
4.1.2 Die Aktorik und Sensorik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−5
4.1.3 Das Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−6
4.1.4 Die Belegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−7

Festo P.BE−FST4−LB−DE de 0403NH III


Inhalt und allgemeine Sicherheitshinweise

4.2 Programmorganisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−8


4.3 Die ersten Schritte des Projektes in Anweisungsliste . . . . . . . . . . . . . . . . . . 4−10
4.3.1 Programm starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−10
4.3.2 Sequentielles Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−11
4.3.3 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−12
4.4 Die ersten Schritte des Projektes in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . 4−13
4.4.1 Programm starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−13
4.4.2 Sequentielles Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−14
4.4.3 Die Schrittprogrammierung mit Zählern . . . . . . . . . . . . . . . . . . . . . 4−19
4.4.4 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−20

5. Die Operation SCHRITT in der Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . 5−1

5.1 Der SCHRITT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−4


5.2 Der Inhalt eines Schritts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−5
5.3 Die Weiterschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−5
5.4 Der Name des Schrittes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−7
5.5 Der Sprung von Schritt zu Schritt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−8
5.6 Der letzte Schritt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−11
5.7 Die alternative Schrittkette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−11
5.8 Die parallele Schrittkette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−12

6. Multitasking mit FST: Betriebsarten der Bohrmaschine . . . . . . . . . . . . . . . 6−1

6.1 Programme arbeiten simultan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−3


6.2 Programme beaufsichtigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−5
6.3 Programme zeitgesteuert starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−7
6.4 Daten austauschen zwischen Programmen . . . . . . . . . . . . . . . . . . . . . . . . . . 6−8

7. Die Bohrmaschine wächst in Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . 7−1

7.1 Automatikprogramm starten und stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−3


7.2 Der Tippbetrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−7
7.3 Die Flankenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−10
7.3.1 Programmierung der Flankenerkennung . . . . . . . . . . . . . . . . . . . . . 7−11
7.4 Das Richtprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−13

IV Festo P.BE−FST4−LB−DE de 0403NH


Inhalt und allgemeine Sicherheitshinweise

8. Die Bohrmaschine wächst in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . . . . . 8−1

8.1 Automatikprogramm starten und stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−3


8.2 Der Tippbetrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−6
8.3 Die Flankenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−8
8.3.1 Programmierung der Flankenerkennung . . . . . . . . . . . . . . . . . . . . . 8−9
8.4 Das Richtprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−11

9. Zeiten und Zähler mit FST in Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . 9−1

9.1 Der Zeitbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−3


9.1.1 Beginnen wir mit einem einfachen Beispiel: . . . . . . . . . . . . . . . . . . 9−4
9.1.2 Der Timer ohne Schritte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−7
9.1.3 Die Anzugsverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−8
9.1.4 Die Abfallverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−10
9.1.5 Der Blinker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−12
9.2 Der Zählerbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−13
9.2.1 Der Vorwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−13
9.2.2 Der Rückwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−15
9.2.3 Der Zähler ohne den Zähler(baustein) . . . . . . . . . . . . . . . . . . . . . . . 9−18
9.2.4 Zeiten und Zähler kombinieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−20
9.3 Grenzen des Einsatzes von Zeiten und Zählern . . . . . . . . . . . . . . . . . . . . . . . 9−23
9.4 Praktische Anwendung von Zeiten und Zähler . . . . . . . . . . . . . . . . . . . . . . . . 9−24
9.4.1 Das Garagentor mit Zeiten/Zählern . . . . . . . . . . . . . . . . . . . . . . . . . 9−24

10. Zeiten und Zähler mit FST in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . . . . . 10−1

10.1 Der Zeitbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−3


10.1.1 Beginnen wir mit einem einfachen Beispiel: . . . . . . . . . . . . . . . . . . 10−4
10.1.2 Die Einschaltverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−6
10.1.3 Die Abfallverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−7
10.1.4 Der Zeitbaustein im Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−9
10.2 Der Zählerbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−11
10.2.1 Der Vorwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−11
10.2.2 Der Universalzähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−13
10.2.3 Zeiten und Zähler kombinieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−14
10.3 Grenzen des Einsatzes von Zeiten und Zählern . . . . . . . . . . . . . . . . . . . . . . . 10−16

Festo P.BE−FST4−LB−DE de 0403NH V


Inhalt und allgemeine Sicherheitshinweise

11. Unterprogramme mit FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−1

11.1 Bausteine importieren, benennen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−4


11.2 Übergabe− und Rückgabeparameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−7
11.2.1 Beispiel Rückgabeparameter in Anweisungsliste . . . . . . . . . . . . . . 11−7
11.2.2 Beispiel Übergabeparameter in Anweisungsliste . . . . . . . . . . . . . . 11−9
11.2.3 Beispiel Übergabe− und Rückgabeparameter in Anweisungsliste . 11−11
11.2.4 Beispiel Rückgabeparameter in Kontaktplan . . . . . . . . . . . . . . . . . 11−14
11.2.5 Beispiel Übergabeparameter in Kontaktplan . . . . . . . . . . . . . . . . . . 11−15
11.3 Unterprogramme mit FST: Eigene Bausteine erstellen . . . . . . . . . . . . . . . . . 11−17
11.3.1 Mein eigener Schiebe−Baustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−17
11.4 Unterschied BAF/BAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−19

12. Fehler erkennen mit FST: Das FST Fehlerprogramm . . . . . . . . . . . . . . . . . . 12−1

12.1 Allgemeines zu Fehlern in einem FST System . . . . . . . . . . . . . . . . . . . . . . . . . 12−3


12.2 Das Verhalten bei einem Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−6
12.3 Das Fehlerprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−8
12.3.1 Das Fehlerverhalten mit Fehlerprogramm: . . . . . . . . . . . . . . . . . . . . 12−9
12.3.2 Das Garagentor mit Fehlerprogramm . . . . . . . . . . . . . . . . . . . . . . . . 12−10
12.3.3 Die Beschreibung eines Fehlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−12

13. Bedienen mit FST: Bedienterminals anschließen und programmieren . . . 13−1

13.1 Der Anschluss der Bedienterminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−4


13.1.1 Die EXT Schnittstelle in den FECs (Front End Controller) . . . . . . . . . 13−5
13.1.2 Kommunikation zwischen FED und Programmier−PC . . . . . . . . . . . 13−6
13.2 FED Designer und FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−8
13.2.1 Eine Variable auf dem Display anzeigen . . . . . . . . . . . . . . . . . . . . . 13−10
13.2.2 Eine Variable vom Display aus verändern . . . . . . . . . . . . . . . . . . . . 13−12
13.3 Das FED im Ethernet Netzwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−14
13.3.1 Das FED Designer Projekt für die Ethernet Kommunikation . . . . . . 13−14
13.3.2 Mehrere Steuerungen im Netzwerk an einem FED . . . . . . . . . . . . . 13−17

VI Festo P.BE−FST4−LB−DE de 0403NH


Inhalt und allgemeine Sicherheitshinweise

14. Vernetzen mit FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−1

14.1 Voraussetzung für die Nutzung von Ethernet  der TCP/IP Treiber . . . . . . . 14−3
14.1.1 Exkurs IP Adresse und Netzmaske . . . . . . . . . . . . . . . . . . . . . . . . . . 14−6
14.1.2 Ist die Steuerung im Netz zu finden? . . . . . . . . . . . . . . . . . . . . . . . . 14−7
14.1.3 DHCP Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−11
14.1.4 Programmabhängige IP Adressen . . . . . . . . . . . . . . . . . . . . . . . . . . 14−12
14.2 Programmieren und Fehlersuche im Netz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−13
14.3 Kommunizieren zwischen den Steuerungen im Netz . . . . . . . . . . . . . . . . . . . 14−16
14.3.1 IP_Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−17
14.3.2 Easy_S und Easy_R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−18
14.3.3 Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−18
14.3.4 Überwachung der Datenkommunikation . . . . . . . . . . . . . . . . . . . . . 14−21
14.4 Kommunizieren zu Windows Anwendungen mit DDE . . . . . . . . . . . . . . . . . . 14−22
14.4.1 Mit DDE zu Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−22
14.5 Einige Regeln für die Nutzung von Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . 14−30
14.5.1 Ethernet ist genormt: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−30
14.5.2 Ethernet hat genormte Kabel und Stecker . . . . . . . . . . . . . . . . . . . . 14−31
14.5.3 HUBs und Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−33
14.5.4 Mit Ethernet von der Fertigung ins Büro . . . . . . . . . . . . . . . . . . . . . 14−34
14.5.5 EasyIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−36
14.5.6 Die Regeln für die Nutzung von Ethernet (10 MBit/s) . . . . . . . . . . . 14−36

15. Der WEB Server in der Steuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−1

15.1 Was ist ein WEB Server? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−3


15.2 WEB Server und FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−4
15.2.1 Notwendige Browser Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . 15−5
15.2.2 Einige Regeln des FST WEB Server . . . . . . . . . . . . . . . . . . . . . . . . . . 15−6
15.2.3 Wo sind die HTML−Seiten? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−6
15.3 HTML Seiten für den WEB Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−11
15.3.1 Die erste HTML Seite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−11
15.3.2 Ein wenig mehr Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−13
15.3.3 Zugriff auf den Prozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−14

Festo P.BE−FST4−LB−DE de 0403NH VII


Inhalt und allgemeine Sicherheitshinweise

16. Tipps und Tricks  mal hilfreich mal lustig . . . . . . . . . . . . . . . . . . . . . . . . . . 16−1

16.1 Belegliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−3


16.2 Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−6
16.3 Projekt aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−7
16.4 Syntaxfehler finden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−8

17. Fehlermeldungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−1

17.1 Allgemeine FST Fehlernummern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−3


17.2 Festo Feldbus Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−4
17.3 AS−Interface Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−5
17.4 PROFIBUS−DP (CP62) Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−6

18. Der FST CI−Kommandointerpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−1

18.1 Die FST Operanden / Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−3


18.1.1 Operanden anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4
18.1.2 Operanden ändern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4
18.2 Einige sonstige Befehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4

VIII Festo P.BE−FST4−LB−DE de 0403NH


Inhalt und allgemeine Sicherheitshinweise

Bestimmungsgemäße Verwendung

Mit diesem Software−Paket kann der Anwender, der mit der


jeweiligen SPS/IPC vertraut ist, die Konfiguration, Program
mierung und Inbetriebnahme der vom Software−Paket unter
stützten SPS/IPC vornehmen.

Beachten Sie die in den jeweiligen Kapiteln angegebenen


Normen sowie die Vorschriften der Berufsgenossenschaften,
des Techn. Überwachungsvereins, die VDE−Bestimmungen
oder entsprechende nationale Bestimmungen.

Zielgruppe

Dieses Handbuch richtet sich an ausgebildetes Fachpersonal


der Steuerungs− und Automatisierungstechnik, Monteure,
usw., die sich zum ersten Mal mit softwareunterstützter Inbe
triebnahme von SPS/IPC befassen.

Information:
Ergänzende Software zu Ihrem Produkt finden Sie auf den
Internetseiten von Festo unter der Adresse: www.festo.com
unter [Industrie−Automation] [Service & Support] [Download
Area].

Beispielprojekte

Die Beispielprojekte aus diesem Buch sind auf der FST−CD


archiviert im Unterverzeichnis \Samples\Deutsch bzw. \Sam
ples\English. Bei Bedarf können Sie diese mit Hilfe der FST
einlesen (wiederherstellen).

Wenn Sie bei der Installation der FST auch Beispieldateien


installiert haben, befinden die Beispielprojekte bereits im
FST−Projektverzeichnis.

Festo P.BE−FST4−LB−DE de 0403NH IX


Inhalt und allgemeine Sicherheitshinweise

Wichtige Benutzerhinweise

Gefahrenkategorien
Diese Beschreibung enthält Hinweise auf mögliche Gefahren,
die bei unsachgemäßem Einsatz des Produkts auftreten kön
nen. Diese Hinweise sind mit einem Signalwort (Warnung,
Vorsicht, usw.) gekennzeichnet, schattiert gedruckt und zu
sätzlich durch ein Piktogramm gekennzeichnet. Folgende
Gefahrenhinweise werden unterschieden:

Warnung
... bedeutet, dass bei Missachten schwerer Personen− oder
Sachschaden entstehen kann.

Vorsicht
... bedeutet, dass bei Missachten Personen− oder Sach
schaden entstehen kann.

Hinweis
... bedeutet, dass bei Missachten Sachschaden entstehen
kann.

Zusätzlich kennzeichnet das folgende Piktogramm Textstel


len, die Tätigkeiten mit elektrostatisch gefährdeten Bauele
menten beschreiben:

Elektrostatisch gefährdete Bauelemente: Unsachgemäße


Handhabung kann zu Beschädigungen von Bauelementen
führen.

X Festo P.BE−FST4−LB−DE de 0403NH


Inhalt und allgemeine Sicherheitshinweise

Kennzeichnung spezieller Informationen


Folgende Piktogramme kennzeichnen Textstellen, die spe
zielle Informationen enthalten.

Piktogramme

Information:
Empfehlungen, Tipps und Verweise auf andere Informations
quellen.

Zubehör:
Angaben über notwendiges oder sinnvolles Zubehör zum
Festo Produkt.

Umwelt:
Informationen zum umweltschonenden Einsatz von Festo Pro
dukten.

Textkennzeichnungen

· Der Auflistungspunkt kennzeichnet Tätigkeiten, die in


beliebiger Reihenfolge durchgeführt werden können.

1. Ziffern kennzeichnen Tätigkeiten, die in der angegebenen


Reihenfolge durchzuführen sind.

 Spiegelstriche kennzeichnen allgemeine Aufzählungen.

Festo P.BE−FST4−LB−DE de 0403NH XI


Inhalt und allgemeine Sicherheitshinweise

XII Festo P.BE−FST4−LB−DE de 0403NH


Programmieren für die Automatisierungstechnik

Kapitel 1

Festo P.BE−FST4−LB−DE de 0403NH 1−1


1. Programmieren für die Automatisierungstechnik

Inhaltsverzeichnis

1. Programmieren für die Automatisierungstechnik . . . . . . . . . . . . . . . . . . . . 1−1

1.1 Zu diesem Buch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1−4


1.2 Programmieren für die Automatisierungstechnik oder den PC . . . . . . . . . . . 1−4

1−2 Festo P.BE−FST4−LB−DE de 0403NH


1. Programmieren für die Automatisierungstechnik

Automatisierung kann man definieren als Einsatz von Rech


nern zum selbsttätigen Betrieb technischer Prozesse".
Ausgangspunkt der Automatisierung ist ein technischer Pro
zess der so betrieben werden soll, dass bestimmte Ziele (z.B.
Wirtschaftlichkeit, Sicherheit, Verfügbarkeit) erreicht werden.
Damit dies selbsttätig, d.h. ohne permanentes Eingreifen des
Menschen erfolgt, wird eine Automatisierungseinrichtung
benötigt. Sie realisiert die Funktionen Signalerfassung, Si
gnalverarbeitung und Signalausgabe.

Die Realisierung des Verarbeitungs−Algorithmus erfolgt als


logische und arithmetische Verknüpfungen, früher auf der
Basis unterschiedlicher Hilfsenergien (z.B. elektrisch, pneu
matisch, hydraulisch), heute fast ausschließlich als Pro
gramme in Rechnern.1

Netzwerk
Rechnernetz

Mensch Technischer
Automati−
Maschine Prozess:
sierungs−
Interface Ein−/Ausgänge
system
Feldbus

Bild1/1

1 http://alex.fh−trier.de/info/automatisierung.html

Festo P.BE−FST4−LB−DE de 0403NH 1−3


1. Programmieren für die Automatisierungstechnik

1.1 Zu diesem Buch

In diesem Buch wird beschrieben, wie dieser Verarbeitungs−


Algorithmus mit Hilfe der FST2 Software entwickelt, getestet
und optimiert wird. Ziel ist, dass mit Hilfe des Buches ein
eigenständiges Erlernen und Erfahren der wesentlichen und
notwendigen Eigenschaften der FST Software möglich ist. Alle
Beispiele wurden mit der FST Software Version 4.1 entwickelt.

1.2 Programmieren für die Automatisierungstechnik oder den PC

Im Gegensatz zu Programmen, die beispielsweise für PCs


oder Handheld Computer geschrieben werden, müssen Pro
gramme für die Automatisierungstechnik in der Regel ohne
permanentes Eingreifen des Menschen" funktionieren. Wäh
rend also beispielsweise die Textverarbeitung, mit der dieser
Text erfasst wird, eine ständige Betreuung durch den bedie
nenden Menschen verlangt, muss der Schweißroboter die
Kfz−Karosserie verschweißen, ohne dass ständig Menschen
eingreifen müssen. Dennoch werden selbstverständlich Men
schen benötigt, damit der technische Prozess überhaupt
zustande kommt. Es bedarf also der planenden und program
mierenden Hand sowie des bedienenden Eingriffs.

Das Planen und Programmieren erfolgt heute praktisch im


mer an PCs, die für diesen Zweck speziell entwickelte Pro
grammiersoftware nutzen. Das Ausführen der Programme
erfolgt dann in der Steuerung.

Damit sind wir an einem wesentlichen Unterschied zwischen


der Programmierung für typische PC−Anwendungen und der
für typische Automatisierungsanwendungen angelangt:

In der Automatisierungstechnik sind der Programmier−Rech


ner und der Steuerungs−Rechner zwei getrennte unabhängige
Einheiten.

2 FST−Festo Software Tools

1−4 Festo P.BE−FST4−LB−DE de 0403NH


1. Programmieren für die Automatisierungstechnik

Computer mit Computer zum


Programmiersoft Steuern
ware (FEC Compact,
(PC mit FST 4.1) FEC Standard, CPX...)

Bild1/2

Wir gehen also in der Automatisierungstechnik immer davon


aus, dass mindestens zwei Geräte benötigt werden:
Das Programmiergerät und das Steuerungsgerät, einfacher:
Die Steuerung.

Festo P.BE−FST4−LB−DE de 0403NH 1−5


1. Programmieren für die Automatisierungstechnik

1−6 Festo P.BE−FST4−LB−DE de 0403NH


Die Grundregeln eines FST Projektes

Kapitel 2

Festo P.BE−FST4−LB−DE de 0403NH 2−1


2. Die Grundregeln eines FST Projektes

Inhaltsverzeichnis

2. Die Grundregeln eines FST Projektes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2−1

2.1 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2−3

2−2 Festo P.BE−FST4−LB−DE de 0403NH


2. Die Grundregeln eines FST Projektes

2.1 Übersicht

Im Folgenden soll die Vorgehensweise der Programmierung


mit FST im Detail erläutert werden. Sie werden einen mög
lichst vollständigen Überblick erhalten. Was auch immer be
schrieben wird, es gibt eine gemeinsame Basis für die Bear
beitung eines Automatisierungsprojektes mit einigen
grundlegenden immer notwendigen Aufgaben:

Nr. Was tun Kommentar

1 Neues Projekt aufrufen Im Menü Projekt

2 Projektnamen vergeben In der Dialogbox

3 Richtige Steuerung auswählen, Mit der FST Software können Sie ganz unterschiedliche
Projektkommentar eintragen CPUs einer ganzen Steuerungsfamilie programmieren.

4 E/A−Konfiguration Es dürfte kaum ein Automatisierungsprojekt ohne Ein−


und Ausgänge geben.

5 Programmieren Mindestens ein Programm 0 ist zwingend notwendig


Entscheidung, ob Kontaktplan oder Anweisungsliste be
nutzt werden soll

6 Übersetzen Hierzu werden Sie automatisch aufgefordert

7 Projekt laden Dafür muss eine Verbindung zur Steuerung bestehen

8 Prüfen Und evtl. korrigieren, verbessern, optimieren

9 Dokumentieren Beschreiben, kommentieren, drucken

Tab.2/1

Festo P.BE−FST4−LB−DE de 0403NH 2−3


2. Die Grundregeln eines FST Projektes

2−4 Festo P.BE−FST4−LB−DE de 0403NH


Das erste FST Projekt: Ein Garagentor steuern

Kapitel 3

Festo P.BE−FST4−LB−DE de 0403NH 3−1


3. Das erste FST Projekt: Ein Garagentor steuern

Inhaltsverzeichnis

3. Das erste FST Projekt: Ein Garagentor steuern . . . . . . . . . . . . . . . . . . . . . . 3−1

3.1 Projekt, E/As, Programm, WENN ... DANN ... SONST . . . . . . . . . . . . . . . . . . . 3−5
3.1.1 Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−5
3.1.2 Steuerungstyp auswählen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−6
3.1.3 E/A−Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−7
3.1.4 Programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−11
3.1.5 Übersetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−30
3.1.6 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−34
3.1.7 Prüfen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−37
3.1.8 Dokumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−40
3.1.9 Das Projekt Garage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−42
3.2 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3−43

3−2 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Das erste praktische Beispiel soll sich eine Kleinststeuerung


zum Vorbild nehmen  und auch diese nochmals reduziert auf
die einfachsten Grundfunktionen: Ein Garagentor soll von
innen und außen geöffnet und geschlossen werden.

3 4 5 6 7
2

1 Endschalter (unten) 5 Garagentorsteuerung Außenbereich


2 Endschalter (oben) 6 Schlüsselschalter
3 Garagentor 7 Garagentorsteuerung Innenbereich
4 Motor auf− und abwärts
Bild3/1

Das Garagentor soll so gesteuert werden, dass

 das Tor von innen und außen jederzeit geschlossen wer


den kann

 das Tor von außen nur bei gleichzeitigem Betätigen des


Schlüsselschalters und des AUF Tasters geöffnet werden
kann

 das Tor von innen jederzeit geöffnet werden kann

 das Tor beim Öffnen immer bis zum Endschalter (oben)


fährt

 das Tor beim Schließen nur solange schließt, wie der ZU−
Taster betätigt ist.

Festo P.BE−FST4−LB−DE de 0403NH 3−3


3. Das erste FST Projekt: Ein Garagentor steuern

Grafisch kann man das so darstellen:

Bild3/2

Als Steuerung wird ein IPC FEC FC203 benutzt, also eine Kom
paktsteuerung mit 12 Ein− und 8 Ausgängen.

3 Selbstverständlich kann jede andere FST−Steuerung für dieses Bei


spiel ebenso benutzt werden. Anbieten würde sich für dieses Bei
spiel auch ein IPC FEC Standard, etwa der FC400. Aber auch ein
IPC PS1 wäre einsetzbar, der wegen seines modularen Aufbaus
mehr Erweiterungsmöglichkeiten bietet.

3−4 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

3.1 Projekt, E/As, Programm, WENN ... DANN ... SONST

Wir gehen streng nach der Reihenfolge aus Kapitel 2 vor 4:

3.1.1 Projekt

· Bitte legen Sie ein neues Projekt an.

Bild3/3

· Bitte nennen Sie Ihr Projekt ’Garage’

Bild3/4

4 Dieses Beispiel finden Sie als gar_awl.zip auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 3−5


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.2 Steuerungstyp auswählen

· Bitte wählen Sie die richtige Steuerung  hier der FEC


Compact5  aus und vergeben Sie, wenn gewünscht einen
Kommentar.

Bild3/5

5 Wenn Sie einen FEC Standard benutzen, dann muss dieses Bild so
aussehen:

Bild3/6

3−6 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.3 E/A−Konfiguration

· Bitte öffnen Sie die E/A−Konfiguration mit einem Doppel


klick auf den Eintrag im Projektfenster.

Bild3/7

Sie sehen, dass hier bereits ein E/A−Modul eingetragen ist.


Für alle Steuerungen, bei denen zwingend immer ein be
stimmtes E/A−Modul vorhanden ist, wird dieses automatisch
eingetragen. Unter der Spalte EW erkennen Sie, dass die Ein
gänge mit E0.0 beginnen, in der Spalte AW erkennen Sie,
dass die Ausgänge mit A0.0 beginnen. Diese Vorgabe können
Sie bei Bedarf ändern.

E/A−Konfiguration beim FEC Standard


Benutzen Sie einen Steuerungstyp, bei dem die Möglichkei
ten der Ein−/Ausgangsmodule größer sind, dann müssen Sie
hier ein E/A−Modul einsetzen.

1. Dazu klicken Sie mit der rechten Maustaste in die leere


E/A−Konfiguration und wählen Einfügen aus dem Kontext
menü oder machen einen Doppelklick in die leere Konfi
guration.

2. Jetzt öffnen Sie das Menü und wählen die für Ihre Anwen
dung gewünschte E/A−Karte aus.

Festo P.BE−FST4−LB−DE de 0403NH 3−7


3. Das erste FST Projekt: Ein Garagentor steuern

Bild3/8

Ein FEC FC400 hat 16 Eingänge und 8 Ausgänge. Die Eingänge


sind in 2 Gruppen zu je einem Byte (8 Bit, 8 Eingänge) grup
piert (Draufsicht FC400).

Wählen Sie FC400 im Menü aus, dann wird jedem Byte ein
Eingangswort zugewiesen. Es werden also automatisch be
legt:

E0.0 ... E0.7


E1.0 ... E1.7
A0.0 ... A0.7

Wählen Sie im Menü FC400 (Word) aus, dann werden zwei


Eingangsbyte in einem Wort zusammen gefasst. Es werden
also belegt:

E0.0 ... E0.15


A0.0 ... A0.7

3−8 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

E/A−Adressen
Vielleicht ist es nicht ganz einfach zu verstehen, was diese
Adressen sollen.
Das Beispiel des Garagentors zeigt, dass für einen Prozess
Sensoren, Aktoren und die Steuerung notwendig sind. Senso
ren und Aktoren sind eigenständige Geräte (ein Grenztaster,
ein Taster, ein Temperaturwächter, ein Ventil, ein Schütz, ein
Motor ....). Damit die Steuerung mit diesen Geräten etwas
anfangen kann, muss es eine Verbindung geben zwischen
den Sensoren/Aktoren und der Steuerung:

Bild3/9

Die Verbindung von den Sensoren und zu den Aktoren erfolgt


über die E/A−Module. Diese E/A−Module benötigen einen
Namen, damit die CPU mit ihnen kommunizieren kann. Dabei
erfolgt die Namensgebung bei FST immer wortweise, daher
das ’EW’ für ’Eingangswort’ und das ’AW’ für ’Ausgangswort’.
Innerhalb eines ’Wortes’ kann dann auf ein einzelnes Bit zu
gegriffen werden.
Bei größeren oder vernetzten Steuerung können das viele
E/A−Module sein.

Festo P.BE−FST4−LB−DE de 0403NH 3−9


3. Das erste FST Projekt: Ein Garagentor steuern

Im Grunde handelt es sich um nichts anderes als um eine


’Adresse’. Wenn ein Briefträger Briefe austrägt, dann hat er
beispielsweise 16 verschiedene Briefe für die ’Kaiserstraße’ 
die Steuerung würde sagen: Daten für das Ausgangswort
AW66.
In der Kaiserstraße werden die Briefe an 16 Briefkästen ver
teilt  die Steuerung würde an die Ausgangsbits verteilen:
A66.0, A66.1, A66.2 .... A66.15

Die Belegliste für dieses Beispiel würde so aussehen:

Bild3/10

3−10 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.4 Programmieren

Das Programmieren wird in der Praxis meist damit begonnen,


dass in die Belegungsliste die Ein− und Ausgänge eingetragen
werden.
So soll auch hier vorgegangen werden.

Belegliste
· Sie öffnen die Belegliste mit einem Doppelklick.

Bild3/11

· In der leeren Belegliste können Sie wieder mit einem Dop


pelklick oder mit dem Kontextmenü der rechten Mausta
ste den ersten Operanden eintragen.

Bild3/12

Festo P.BE−FST4−LB−DE de 0403NH 3−11


3. Das erste FST Projekt: Ein Garagentor steuern

· Nun tragen Sie alle Operanden in die Belegliste ein. Das


folgende Bild zeigt eine mögliche Belegliste.

Bild3/13

Hier noch einige Regeln für die Belegliste:

 Die Adresse des Operanden muss zur Eintragung in der


E/A−Konfiguration passen. Wäre in der E/A−Konfiguration
als Eingangswort ein EW20 eingetragen, dann müssten
hier die Adressen E20.0 usw. benutzt werden.

 Das Symbol darf höchstens 9 Zeichen, keine Sonderzei


chen und auch keine bereits vordefinierten
Zeichen haben. Beispielsweise sind E0 oder K10 als sym
bolischer Operand6 verboten, weil E0 für einen Eingang
benutzt wird und K10 für eine Konstante.

 Der Kommentar darf beliebige Zeichen benutzen.

6 Eine Liste aller FST Operanden finden Sie in Abschnitt 18.1.

3−12 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Programm als Anweisungsliste7


Wenn die Belegliste erstellt ist, wird es endlich Zeit, das Pro
gramm zu schreiben. Jedes FST Projekt benötigt das Pro
gramm mit der Nr. 0.
Mit einem rechten Mausklick auf das Verzeichnis Programme
im Projektfenster öffnen Sie das Kontextmenü mit der Mög
lichkeit ein neues Programm einzufügen. Oder Sie benutzen
das Icon für ’Neues Programm’ oder das Menü Einfügen.

Bild3/14

Jetzt wählen Sie die gewünschte Programmiersprache. Beach


ten Sie bitte, dass Sie zwischen Anweisungsliste und Kontakt
plan nicht automatisch übersetzen können. Eine Festlegung
für eine der beiden Sprachen gilt also für das gesamte Pro
gramm. Dagegen können innerhalb eines Projektes Pro
gramme mit verschiedenen Programmiersprachen gemischt
werden  Programm 0 könnte also in Anweisungsliste (AWL),
Programm 12 aber in Kontaktplan (KOP) geschrieben sein.

Bild3/15

7 Wenn Sie in Kontaktplan programmieren möchten, wechseln Sie


bitte zum Abschnitt ’Programm als Kontaktplan’ auf Seite 3−20.

Festo P.BE−FST4−LB−DE de 0403NH 3−13


3. Das erste FST Projekt: Ein Garagentor steuern

Die folgenden Eintragungen sind jetzt möglich:

Bild3/16

Typ: Programm oder BAP oder BAF  hier bleibt es


bei Programm
Nummer: 0 ... 63  hier bleibt es bei 0
Version: 1 ... 9  hier bleibt es bei 1
Kommentar: Garagentorsteuerung

· Mit dem Klick auf OK wird das noch leere Programmfen


ster geöffnet. Sollte die ’Schnelleingabe’ bei Ihnen nicht
sichtbar sein, dann können Sie sie öffnen, indem Sie im
Menü Ansicht auf Schnelleingabe klicken.

3−14 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Bild3/17

Nun soll die Garagentorsteuerung beschrieben werden.


Wann soll das Tor öffnen?
Das Tor soll sich öffnen, wenn entweder

 innen auf den Taster auf gedrückt wird ODER

 außen auf den Taster auf gedrückt UND gleichzeitig der


Schlüsselschalter betätigt wird.

In der FST Anweisungsliste kann man fast die gleichen Worte


benutzen:

Bild3/18

Dabei können Sie nahezu alle Eintragungen mit der Schnell−


eingabe und der Maus tätigen oder alles tippen mit der Tasta
tur (oder beliebig mischen).

Auch die Nutzung des Symbols im Vergleich zur absoluten


Operandenadresse ist frei gestellt. Das folgende Programm
ist also gleichwertig:

Festo P.BE−FST4−LB−DE de 0403NH 3−15


3. Das erste FST Projekt: Ein Garagentor steuern

WENN E0.2 ’Auf_in: ’Taster AUF innen


ODER ( E0.4 ’Auf_auss: ’Taster AUF außen
UND E0.6 ) ’Schluess: Schlüsselschalter außen
DANN SETZE A0.0 ’Motor_auf: K1: Garagentor öffnen

Bild3/19

Mit der Zeile DANN SETZE A0.0 haben wir den Motor zum
Öffnen zwar eingeschaltet, er wird aber bislang nicht abge
schaltet. Wann soll der Motor abgeschaltet werden?
Der Motor soll abgeschaltet werden, wenn das Tor offen ist.

WENN offen ’E0.0: Grenztaster Garagentor ist offen


DANN RESET Motor_auf ’A0.0: K1: Garagentor öffnen

Bild3/20

Beim Schließen des Tors soll aus Sicherheitsgründen der je


weilige Taster dauernd betätigt bleiben.
Also können wir formulieren:
Das Tor soll schließen, wenn Innen oder Außen ZU gedrückt
wird und das Tor noch nicht geschlossen ist. Sonst soll es
wieder stehen bleiben.

WENN ( Zu_in ’E0.3: Taster ZU innen


ODER Zu_auss ) ’E0.5: Taster ZU außen
UND N geschloss ’E0.1: Grenztaster Garagentor ist zu
DANN SETZE Motor_zu ’A0.1: K2: Garagentor schließen
SONST RESET Motor_zu ’A0.1: K2: Garagentor schließen

Bild3/21

Nun wird uns jeder Experte der Automatisierungstechnik sa


gen, dass wir noch einige Randbedingungen vergessen ha
ben. Einmal muss sichergestellt werden, dass der Motor nicht
in beide Richtungen gleichzeitig fahren kann. Folglich muss in
beide Richtungen die Gegenrichtung mit abgefragt werden.
Und zweitens muss gewährleistet werden, dass gleichzeitiges
Betätigen von ZU und AUF den Motor einfach stehen lässt.

3−16 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Das endgültige Programm könnte dann so aussehen.

WENN Auf_in ’E0.2: Taster AUF innen


ODER ( Auf_auss ’E0.4: Taster AUF außen
UND Schluess ) ’E0.6: Schlüsselschalter außen
UND N Motor_zu ’A0.1: K2: Garagentor schließen
UND N Zu_in ’E0.3: Taster ZU innen
UND N Zu_auss ’E0.5: Taster ZU außen
UND N offen ’E0.0: Grenztaster Garagentor offen
DANN SETZE Motor_auf ’A0.0: K1: Garagentor öffnen
WENN offen ’E0.0: Grenztaster Garagentor offen
ODER Zu_in ’E0.3: Taster ZU innen
ODER Zu_auss ’E0.5: Taster ZU außen
DANN RESET Motor_auf ’A0.0: K1: Garagentor öffnen
WENN ( Zu_in ’E0.3: Taster ZU innen
ODER Zu_auss ) ’E0.5: Taster ZU außen
UND N geschloss ’E0.1: Grenztaster Garagentor ist zu
UND N Motor_auf ’A0.0: K1: Garagentor öffnen
UND N Auf_in ’E0.2: Taster AUF innen
UND N Auf_auss ’E0.4: Taster AUF außen
DANN SETZE Motor_zu ’A0.1: K2: Garagentor schließen
SONST RESET Motor_zu ’A0.1: K2: Garagentor schließen

Bild3/22

Auch wenn das so schon ganz schön aussieht, fehlt eine sehr
wichtige Komponente: Die Kommentierung. Ein Programm ist
nur dann wirklich ’gut’, wenn auch der Kollege in 2 Jahren
noch versteht, was damals beabsichtigt war. Daher sollte ein
Programm vernünftig kommentiert sein.
Vielleicht wäre das folgende besser:

Festo P.BE−FST4−LB−DE de 0403NH 3−17


3. Das erste FST Projekt: Ein Garagentor steuern

””Projekt: Garage
””Autor: Bernhard Plagemann
””Datum: 1. Oktober 2015”
””Garagentor öffnen
WENN Auf_in ’E0.2: Taster AUF innen
ODER ( Auf_auss ’E0.4: Taster AUF außen
UND Schluess ) ’E0.6: Schlüsselschalter außen
UND N Motor_zu ’A0.1: K2: Garagentor schließen
UND N Zu_in ’E0.3: Taster ZU innen
UND N Zu_auss ’E0.5: Taster ZU außen
UND N offen ’E0.0: Grenztaster Garagentor offen
DANN SETZE Motor_auf ’A0.0: K1: Garagentor öffnen
””Garagentor stoppen
WENN offen ’E0.0: Grenztaster Garagentor offen
ODER Zu_in ’E0.3: Taster ZU innen
ODER Zu_auss ’E0.5: Taster ZU außen
DANN RESET Motor_auf ’A0.0: K1: Garagentor öffnen
””Garagentor schließen
WENN ( Zu_in ’E0.3: Taster ZU innen
ODER Zu_auss ) ’E0.5: Taster ZU außen
UND N geschloss ’E0.1: Grenztaster Garagentor zu
UND N Motor_auf ’A0.0: K1: Garagentor öffnen
UND N Auf_in ’E0.2: Taster AUF innen
UND N Auf_auss ’E0.4: Taster AUF außen
DANN SETZE Motor_zu ’A0.1: K2: Garagentor schließen
SONST RESET Motor_zu ’A0.1: K2: Garagentor schließen

Bild3/23

Hier noch einige Hinweise zur Eingabe der Anweisungsliste:

 Sie können die Anweisungsliste tippen, wie einen Brief an


die Steuerung. Sobald Sie die Enter Taste betätigen,
wird Ihr Programm formatiert und es werden die Kom
mentare der Belegliste angefügt.

 Zwischen jeder Operation und jedem Operanden muss


mindestens ein Leerzeichen sein

 In einem Namen, Operanden oder einer Operation darf nie


ein Leerzeichen sein

3−18 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

 Wenn Sie etwas eintippen, was FST nicht kennt, dann wird
angenommen, dass Sie einen neuen Operanden definie
ren wollen. Sie erhalten dann die folgende Abfrage:

Bild3/24

FST vermutet, ’Mist’ sei das Symbol für einen neuen Ope
randen. Klicken Sie einfach auf Abbrechen (oder betäti
gen Sie die Esc−Taste), korrigieren Sie, und es geht wei
ter.

 FST verlangt grundsätzlich eindeutige boolesche Sätze.


Ein boolescher Satz besteht aus WENN und DANN, evtl.
auch zusätzlich noch aus SONST. In einem Satz darf im
mer nur genau ein WENN und nur genau ein DANN und
nur genau ein SONST auftauchen.

Festo P.BE−FST4−LB−DE de 0403NH 3−19


3. Das erste FST Projekt: Ein Garagentor steuern

Programm als Kontaktplan8


Wenn die Belegliste erstellt ist, wird es endlich Zeit, das Pro
gramm zu schreiben. Jedes FST Projekt benötigt das Pro
gramm mit der Nr. 0.
Mit einem rechten Mausklick auf das Verzeichnis Programme
im Projektfenster öffnen Sie das Kontextmenü mit der Mög
lichkeit ein neues Programm einzufügen. Oder Sie benutzen
das Icon für ’Neues Programm’ oder das Menü Einfügen.

Bild3/25

Jetzt wählen Sie die gewünschte Programmiersprache. Beach


ten Sie bitte, dass Sie zwischen Anweisungsliste und Kontakt
plan nicht automatisch übersetzen können. Eine Festlegung
für eine der beiden Sprachen gilt also für das gesamte Pro
gramm. Dagegen können innerhalb eines Projektes Pro
gramme mit verschiedenen Programmiersprachen gemischt
werden  Programm 0 könnte also in Anweisungsliste (AWL),
Programm 12 aber in Kontaktplan (KOP) geschrieben sein.

Bild3/26

8 Dieses Projekt finden Sie als gar_kop.zip auf Ihrer CD.

3−20 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Die folgenden Eintragungen sind jetzt möglich:

Bild3/27

Typ: Programm oder BAP oder BAF − hier bleibt es bei


Programm
Nummer: 0 ... 63  hier bleibt es bei 0
Version: 1 ... 9  hier bleibt es bei 1
Kommentar: Garagentorsteuerung

Mit dem Klick auf OK wird das noch leere Programmfenster


geöffnet. Sollte die ’Schnelleingabe’ bei Ihnen nicht sichtbar
sein, dann können Sie sie öffnen, indem Sie im Menü Ansicht
auf Schnelleingabe klicken.

Festo P.BE−FST4−LB−DE de 0403NH 3−21


3. Das erste FST Projekt: Ein Garagentor steuern

Bild3/28

Nun soll die Garagentorsteuerung beschrieben werden.


Wann soll das Tor öffnen? Das Tor soll sich öffnen, wenn ent
weder

 innen auf den Taster auf gedrückt wird ODER

 außen auf den Taster auf gedrückt UND gleichzeitig der


Schlüsselschalter betätigt wird.

Im Kontaktplan wird aus einem ODER eine Parallelschaltung,


aus einem UND eine Reihenschaltung, aus einem NICHT ein
Öffnerkontakt.

Bild3/29

3−22 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Auch die Nutzung des Symbols im Vergleich zur absoluten


Operandenadresse ist frei gestellt. Das folgende Programm
ist also gleichwertig:

Bild3/30

Allerdings hat unser Programm noch einen gravierenden Feh


ler. Die Tür beginnt zwar, sich zu öffnen, sie wird aber sofort
angehalten, wenn eine der beteiligten Tasten nicht mehr betä
tigt wird  eine wahrlich unbequeme Art, die Garage zu öff
nen.

Was fehlt ist eine ’Selbsthaltung’, der Speicher des Kontakt


plans. Dazu muss definiert werden, wie die Selbsthaltung
gesetzt und wie gelöscht wird. Gesetzt wird sie mit der oben
beschriebenen Bedingung, gelöscht wird sie, sobald das Gar
agentor offen ist. Dann wird das Programm wie folgt ausse
hen.

Bild3/31

Festo P.BE−FST4−LB−DE de 0403NH 3−23


3. Das erste FST Projekt: Ein Garagentor steuern

Noch einige Hinweise zum Bedienen des Kontaktplan−


Editors
Ein Kontaktplan ist in Netzwerke unterteilt. Ein einzelnes Netz
werk besteht aus ’Kontakten’ und ’Spulen’.
Kontakte und Spulen können negiert werden.
Kontakte können in Reihe und parallel geschaltet werden.

 Neue Netzwerke werden entweder vor oder nach dem


gerade aktuellen Netzwerk eingefügt.

Bild3/32

 Ein zusätzlicher Kontakt in Reihe zu einem vorhandenen


Kontakt wird eingefügt, indem der aktuelle Kontakt mar
kiert wird und mit dem Kontaktsymbol der Schnelleingabe
ein weiterer davor eingefügt wird.

Bild3/33

3−24 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

 Ein Parallelkontakt wird zugefügt, indem der oder die


Kontakte markiert werden, zu denen der neue Kontakt
parallel sein soll. Anschließend wird die Schnelleingabe
bemüht.

Bild3/34

 Eine weitere parallele Spule wird zugefügt, indem die


vorhandene Spule markiert wird, und die Schnelleingabe
eine weitere hinzufügt.

Bild3/35

 Ein Kontakt oder eine Spule werden negiert (oder die Ne
gation aufgehoben), indem er/sie markiert und mit Hilfe
der Schnelleingabe negiert wird.

Bild3/36

Festo P.BE−FST4−LB−DE de 0403NH 3−25


3. Das erste FST Projekt: Ein Garagentor steuern

 Eine Spule wird mit anderen Steuerungsattributen (S 


Setzen, R  Rücksetzen, I  Increment, zähle vorwärts, D 
Decrement, zähle rückwärts) versehen, indem sie mar
kiert wird und anschließend mit der Schnelleingabe rotie
rend die Möglichkeiten solange angeklickt werden, bis die
gewünschte eingetragen ist.

Bild3/37

 Die Kommentare zu den Operanden werden in diesen


Beispielen zweizeilig angezeigt. Dies kann eingestellt wer
den im Menü Extras → FST−Einstellungen → KOP → Zei
len für Operandenkommentare.

 Wenn Sie als Operanden etwas eintippen, was FST nicht


kennt, dann wird angenommen, dass Sie einen neuen
Operanden definieren wollen. Sie erhalten dann die fol
gende Abfrage:

Bild3/38

3−26 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

 FST vermutet, ’Mist’ sei das Symbol für einen neuen Ope
randen. Klicken Sie einfach auf Abbrechen (oder betäti
gen Sie die Esc−Taste), korrigieren Sie, und es geht wei
ter.

Zurück zum Garagentor:


Beim Schließen des Tors soll aus Sicherheitsgründen der je
weilige Taster dauernd betätigt bleiben.
Also können wir formulieren:
Das Tor soll schließen, wenn Innen oder Außen ZU gedrückt
wird und das Tor noch nicht geschlossen ist. Sonst soll es
wieder stehen bleiben.

Bild3/39

Nun wird uns jeder Experte der Automatisierungstechnik sa


gen, dass wir noch einige Randbedingungen vergessen ha
ben. Einmal muss sichergestellt werden, dass der Motor nicht
in beide Richtungen gleichzeitig fahren kann. Folglich muss in
beide Richtungen die Gegenrichtig mit abgefragt werden.
Und zweitens muss gewährleistet werden, dass gleichzeitiges
Betätigen von ZU und AUF den Motor einfach stehen lässt.

Festo P.BE−FST4−LB−DE de 0403NH 3−27


3. Das erste FST Projekt: Ein Garagentor steuern

Das endgültige Programm könnte dann so aussehen.

Bild3/40

3−28 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Auch wenn das so schon ganz schön aussieht, fehlt eine sehr
wichtige Komponente: Die Kommentierung. Ein Programm ist
nur dann wirklich ’gut’, wenn auch der Kollege in 2 Jahren
noch versteht, was damals beabsichtigt war. Daher sollte ein
Programm vernünftig kommentiert sein.
Vielleicht wäre das folgende besser:

Bild3/41

Festo P.BE−FST4−LB−DE de 0403NH 3−29


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.5 Übersetzen

Nicht immer ist die FST Software mit dem einverstanden, was
wir schreiben. Beim Übersetzen wird eine Syntaxkontrolle
durchgeführt, die das Programm auf formale Fehler durch
sucht. Klicken Sie auf das Icon für ’Alles Übersetzen’.

Bild3/42

Sie erhalten eine Meldung über die Prüfung und Übersetzung


der Anweisungsliste oder des Kontaktplans.

Bild3/43

3−30 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Fehler in der Anweisungsliste9


Nicht immer klappt das auf Anhieb so schön. Das folgende
Beispiel zeigt einen Fehler:

Bild3/44

FST meldet in diesem Beispiel 4 Fehler. Die 4 Fehler sollen zu


finden sein in:

CZ0P00V1.AWL[24] DANN erwartet


und
CZ0P00V1.AWL[24] DANN Unzulässige Operation
und
CZ0P00V1.AWL[28] WENN, SONST oder SCHRITT erwartet
und
CZ0P00V1.AWL[29] WENN oder SCHRITT erwartet

Die Bedeutung ist:


CZ0P00  Programm 00 (P00)
V1  Version 1
[24]  in Zeile 24

9 Wenn Sie in Kontaktplan programmiert haben, dann wechseln Sie


bitte zum Kapitel ’Fehler im Kontaktplan’ auf der nächsten Seite.

Festo P.BE−FST4−LB−DE de 0403NH 3−31


3. Das erste FST Projekt: Ein Garagentor steuern

· Mit einem Doppelklick auf die Zeilennummer z.B. auf [24]


wechselt FST automatisch an die angegebene Stelle.

Bild3/45

Unten rechts in der Statusleiste ist außerdem die aktuelle


Zeilennummer zu sehen, wenn sich der Cursor im Program
mierfenster befindet.

In diesem Beispiel wurde in einem booleschen Satz zweimal


der Satzanfang WENN eingetragen.

Fehler im Kontaktplan
Nicht immer klappt das auf Anhieb so schön. Das folgende
Beispiel zeigt einen Fehler:

Bild3/46

3−32 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Die drei Fehler sollen zu finden sein in:


CZ0P00V1.OUT(13) Unbekannter Operand
und
CZ0P00V1.OUT(13) Einbitoperand erwartet
und
CZ0P00V1.OUT(19) Leerer Satzteil

Die Bedeutung ist:


CZ0P00  Programm 00 (P00)
V1  Version 1
[13]  in Zeile 13 des übersetzten Codes. Ein Doppelklick auf
den ersten Fehler öffnet das Programm 0 und positioniert den
Cursor in das Netzwerk, in dem der Fehler vermutet wird.

Bild3/47

In diesem Fall ist ein Kontakt ohne die Angabe des Operanden
(Eingang, Ausgang, Merker ...) eingetragen.

Festo P.BE−FST4−LB−DE de 0403NH 3−33


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.6 Projekt laden

· Jetzt schließen Sie bitte Ihre Steuerung an Spannung an


und verbinden Sie die Steuerung und Ihren Programmier−
PC mit dem Programmierkabel.

In unserem Beispiel, dem FEC Compact FC20 wird das


Programmierkabel KSD2 beim FEC in die mit ’COM’ be
zeichnete Schnittstelle gesteckt, bei dem Programmier−PC
in der Regel in die COM1 oder die COM2.

· Sobald Sie die Steuerung angeschlossen und das Pro


grammierkabel gesteckt haben, können Sie testen, ob Sie
eine Verbindung herstellen können, indem Sie das Icon
’Schalttafel’ benutzen.

Bild3/48

Kommt die Verbindung zustande, erhalten Sie eine Meldung,


die etwa so aussehen könnte:

Bild3/49

3−34 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Kommt keine Verbindung zustande, dann prüfen Sie bitte

· die Einstellungen an Ihrem PC. Öffnen Sie das Menü Ex


tras, Eintrag FST−Einstellungen, Karte ’Kommunikation’.
Dort prüfen Sie, ob die richtige serielle Schnittstelle und
als Baudrate 9600 eingetragen sind.

Bild3/50

· An der Steuerung muss die Power−LED grün leuchten und


das Programmierkabel in der COM Schnittstelle stecken.
Die RUN−LED kann je nach vorheriger Benutzung der
Steuerung grün, orange oder rot leuchten.

Ist der Verbindungsaufbau gelungen, dann können Sie das


Projekt laden.

Festo P.BE−FST4−LB−DE de 0403NH 3−35


3. Das erste FST Projekt: Ein Garagentor steuern

Bild3/51

Im Meldefenster muss die Meldung ’Laden beendet’ gegeben


werden.

Je nach vorhergegangener Nutzung Ihrer Steuerung, müssen


Sie die Steuerung jetzt auf RUN stellen.

Hinweis
· Bitte prüfen Sie die RUN−LED:
Ist sie grün, dann arbeitet Ihre Steuerung bereits im RUN
Modus.
Ist die LED orange, dann müssen Sie die Steuerung mit
dem RUN/STOP−Schiebeschalter9 auf RUN stellen.

Bild3/52

9 Wenn Sie einen FEC Standard verwenden, dann wird ein Drehschal
ter für RUN/STOP verwendet. In Stellung 0 steht die Steuerung auf
STOP, in jeder anderen Stellung auf RUN.

3−36 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.7 Prüfen

Es ist natürlich von größter Bedeutung, zu prüfen, ob ein Au


tomatisierungsprojekt auch so arbeitet, wie es gewünscht ist.
Dafür können Sie die entsprechenden Taster und Grenztaster
betätigen und beobachten, wie das Garagentor reagiert.

Es ist aber auch wichtig, zu beobachten, was die Steuerung


macht und wie das Automatisierungsprojekt aus der Sicht der
Steuerung reagiert.

Sie haben hierfür vor allem zwei wesentliche Möglichkeiten.


Erstens können Sie das Programm aktiv beobachten und
zweitens die Ein− und Ausgänge.

· Für die Programmbeobachtung öffnen Sie bitte das Fen


ster Ihres Programm 0 und klicken mit der rechten Mau
staste in dieses Fenster.

Sie erhalten ein Kontextmenü, unabhängig davon ob Sie


in Anweisungsliste oder Kontaktplan programmiert ha
ben, enthält das Menü den Eintrag ’Online’.

Bild3/53

Festo P.BE−FST4−LB−DE de 0403NH 3−37


3. Das erste FST Projekt: Ein Garagentor steuern

· Aktivieren Sie den Online−Mode, dann wird im Programm


fenster angezeigt, welchen Zustand die einzelnen Varia
blen haben (AWL) bzw. ob die Bedingung innerhalb eines
Strompfades erfüllt ist (KOP).

Bild3/54

Bild3/55

3−38 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Im Programmfenster erkennen Sie im Online−Mode Zusam


menhänge innerhalb des gerade sichtbaren Programmaus
schnittes. Oft ist es aber wichtig, Variablen auch unabhängig
vom gerade sichtbaren Programmfenster zu beobachten.
Daher können Sie die Online−Anzeige aufrufen.

Bild3/56

Hier können Sie beispielsweise die Eingänge beobachten.

Bild3/57

Im Display sehen Sie, dass die Eingänge E0.3, E0.4 und E0.7
aktiviert sind.

Mit Hilfe dieser Beobachtungsmöglichkeiten ist es sehr ein


fach, ein Projekt in Betrieb zu nehmen.

Festo P.BE−FST4−LB−DE de 0403NH 3−39


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.8 Dokumentation

Natürlich kann Ihnen niemand abnehmen, ein Handbuch für


Ihren Prozess oder Ihre Maschine zu schreiben. FST ermög
licht aber, wichtige Dokumentationsaufgaben bereits inner
halb des Projektes zu bearbeiten. Dazu gehören:

 Die Kommentare innerhalb des Programms und

 Die Projektdokumentation

Bild3/58

Die Projektdokumentation ist normalerweise eine reine Text


datei. Wenn Sie auf Projektdokumentation doppelt klicken,
wird eine Datei project.txt mit dem auf Ihrem Windows Sy
stem aktivierten Texteditor geöffnet. Die Datei wird im Pro
jektverzeichnis Ihres aktuellen Projektes abgelegt.

Bild3/59

3−40 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

Das ganze Projekt kann schließlich ausgedruckt werden.

Bild3/60

Wählen Sie diesen Eintrag, können Sie auswählen, welche


Komponenten der Projektdokumentation Sie wünschen.

Bild3/61

Festo P.BE−FST4−LB−DE de 0403NH 3−41


3. Das erste FST Projekt: Ein Garagentor steuern

3.1.9 Das Projekt Garage

Wenn Sie bei der Installation der FST auch Beispieldateien


installiert haben, befinden die Beispielprojekte bereits im
FST−Projektverzeichnis. Für das Projekt Garage sind das:

 GAR_AWL (programmiert in Anweisungsliste)

 GAR_KOP (programmiert in Kontaktplan).

Die Beispielprojekte aus diesem Buch sind auf der FST−CD


archiviert im Unterverzeichnis \Samples\Deutsch bzw. \Sam
ples\English. Bei Bedarf können Sie diese mit Hilfe der FST
einlesen (wiederherstellen). Wählen Sie hierzu im Menü Pro
jekt den Befehl Wiederherstellen.

Bild3/62

Im folgenden Dialog suchen Sie auf der CD im Unterverzeich


nis \Samples\Deutsch bzw. \Samples\English die gewünschte
Datei aus (z. B. GAR_AWL.ZIP oder GAR_KOP.ZIP).

3−42 Festo P.BE−FST4−LB−DE de 0403NH


3. Das erste FST Projekt: Ein Garagentor steuern

3.2 Zusammenfassung

Die wichtigsten Erkenntnisse dieses Kapitels nochmals ganz


kurz.

Hinweis
Programmieren Sie in FST, dann erstellen Sie zuerst ein
Projekt. Für jede einzelne Steuerung (jede CPU) wird ein
Projekt benötigt. Die Vorgehensweise entspricht der fol
genden Tabelle.

Nr. Was tun Kommentar

1 Neues Projekt Im Menü Projekt


aufrufen

2 Projektnamen In der Dialogbox


vergeben

3 Richtige Steue Mit der FST Software können Sie ganz


rung auswählen, unterschiedliche CPUs einer ganzen
Projektkommen Steuerungsfamilie programmieren.
tar eintragen

4 E/A−Konfiguration Es dürfte kaum ein Automatisierungspro


jekt ohne Ein− und Ausgänge geben.

5 Programmieren Mindestens ein Programm 0 ist zwingend


notwendig

6 Übersetzen Hierzu werden Sie automatisch aufgefor


dert

7 Projekt laden Dafür muss eine Verbindung zur Steue


rung bestehen

8 Prüfen Und evtl. korrigieren, verbessern, opti


mieren

9 Dokumentieren Beschreiben, kommentieren, drucken

Tab.3/1

Festo P.BE−FST4−LB−DE de 0403NH 3−43


3. Das erste FST Projekt: Ein Garagentor steuern

 Beim Programmieren wird in der Regel zuerst die Belegli


ste für die Ein− und Ausgänge erstellt.

 Ein FST Projekt benötigt immer ein Programm 0

 Anweisungsliste

 Innerhalb eines Programms wird mit WENN ... DANN


... SONST programmiert.

 WENN und DANN müssen in jedem booleschen Satz


genau ein Mal benutzt werden.

 SONST darf muss aber nicht notwendig benutzt wer


den.

 Kontaktplan

 Innerhalb eines Programms werden Netzwerke pro


grammiert.

 Ein Netzwerk besteht aus Kontakten und Spulen.

3−44 Festo P.BE−FST4−LB−DE de 0403NH


Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Kapitel 4

Festo P.BE−FST4−LB−DE de 0403NH 4−1


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Inhaltsverzeichnis

4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern . . . . . . . . 4−1

4.1 Die Bohrmaschine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−4


4.1.1 Die Bedienung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−4
4.1.2 Die Aktorik und Sensorik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−5
4.1.3 Das Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−6
4.1.4 Die Belegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−7
4.2 Programmorganisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−8
4.3 Die ersten Schritte des Projektes in Anweisungsliste . . . . . . . . . . . . . . . . . . 4−10
4.3.1 Programm starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−10
4.3.2 Sequentielles Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−11
4.3.3 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−12
4.4 Die ersten Schritte des Projektes in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . 4−13
4.4.1 Programm starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−13
4.4.2 Sequentielles Programm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−14
4.4.3 Die Schrittprogrammierung mit Zählern . . . . . . . . . . . . . . . . . . . . . 4−19
4.4.4 Projekt laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4−20

4−2 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Das Beispiel mit dem Garagentor war zum Anfang sehr schön,
aber es fehlten doch sehr viele Eigenschaften, die Automati
sierungstechnik erst interessant machen: Betriebsarten wie
Automatik, Hand oder Tippen beispielsweise oder die schritt
weise Bearbeitung eines Programms und vieles mehr.

Daher soll in diesem Kapitel ein etwas anspruchsvolleres Pro


jekt angegangen werden: Die Bohrmaschine

1 Spannzylinder 1
2 Bohrzylinder
3 Auswerfer B4

B3

2
B1
B2
B6
B5

Bild4/1

Lassen Sie uns einige Randbedingungen definieren, wie es


bei einem Automatisierungsprojekt immer der Fall ist.

Festo P.BE−FST4−LB−DE de 0403NH 4−3


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.1 Die Bohrmaschine

4.1.1 Die Bedienung

Die Bedienung der Bohrmaschine erfolgt über ein Bedienpult.


Dort sind folgende Taster angebracht:

Taster Funktion

Start Startet den automatischen Ablauf

Halt Stoppt den Ablauf bei Ende eines Zyklus (Öff


ner)

Dauerlauf/ Wahlschalter, der zwischen Automatik− und


Tippbetrieb Tippbetrieb umschaltet. Im Tippbetrieb wird
der Start−Taster benutzt, um schrittweise wei
ter zu schalten

Stop Stoppt den Ablauf sofort (Öffner)

Automatik/Hand Wahlschalter, der zwischen Automatik− und


Handbetrieb umschaltet. Der Handbetrieb
kann nur eingeschaltet werden, wenn der Auto
matikbetrieb nicht aktiv ist

Richten Fährt die Maschine in Grundstellung. Richten


kann nur gestartet werden, wenn der Handbe
trieb aktiv ist

Spannen Taster für den Spannzylinder im Handbetrieb

Bohren Taster für den Bohrzylinder im Handbetrieb

Ausstoßen Taster für den Ausstoßzylinder im Handbetrieb

Not Aus Not−Aus schaltet die Ausgänge der Steuerung


spannungsfrei. Außerdem liefert Not−Aus ein
Signal an einen Eingang, damit die Steuerung
von Not−Aus weiß.
Nach dem Lösen des Not−Aus muss die Anlage
mit Richten in Grundstellung gefahren werden,
um dann wieder gestartet werden zu können

Tab.4/1

4−4 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Folgende Leuchtmelder sind benutzbar:

Taster Funktion

Lampe Start Leuchtet, wenn die Anlage in Grundstel


lung steht und der Automatikbetrieb mit
Start gestartet werden kann

Lampe Richten Leuchtet, solange das Richtprogramm ak


tiv ist

Lampe Not Zeigt an, wenn Not−Aus betätigt ist oder


war, bis die Maschine nach Not−Aus wieder
in Grundstellung steht

Lampe Automatik Zeigt an, wenn die Maschine im Dauerlauf


arbeitet

Tab.4/2

4.1.2 Die Aktorik und Sensorik

Die Bohrmaschine hat drei Aktoren: Spannzylinder, Bohrzylin


der und Auswerfer. Werden die Zylinder nach traditioneller
Weise mit Buchstaben belegt, dann sind dies die Zylinder A, B
und C. Jeder Zylinder ist mit zwei Grenztastern ausgestattet,
je einem für ausgefahren und eingefahren.

Festo P.BE−FST4−LB−DE de 0403NH 4−5


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.1.3 Das Programm

Im Automatikbetrieb müssen die drei Zylinder den folgenden


Bewegungsablauf fahren:
A+ B+ B− A− C+ C−

Im Funktionsplan (wird nicht im FST generiert, hier nur grafi


sches Beispiel) ist der Bewegungsablauf wie folgt zu be
schreiben:

Bild4/2

4−6 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.1.4 Die Belegung

Die Belegungsliste benötigt 16 Eingänge und 8 Ausgänge. Als


Beispielsteuerung wird ein FEC Standard FC440 benutzt.
Dann kann die gesamte Belegungsliste wie folgt aussehen.10

Operand Symbol Kommentar


E0.0 Entspannt B1: Spannzylinder ist eingefahren
E0.1 Gespannt B2: Spannzylinder ist ausgefahren
E0.2 Gebohrt B3: Bohrzylinder ist unten
E0.3 Bohr_oben B4: Bohrzylinder ist oben
E0.4 Ausgeworf B5: Auswerfer ist vorne
E0.5 C_hinten B6: Auswerfer ist zurück
E0.6 Start S1: Taster Start
E0.7 Halt S2: Taster Halt (Öffner)
E0.8 Dauerlauf S3: Schalter Dauerlauf (0=Tippbetrieb)
E0.9 Stop S4: Taster Stop (Öffner)
E0.10 Automatik S5: Schalter Automatik (0=Hand)
E0.11 Richten S6: Taster Richten
E0.12 H_ZylA S7: Handtaster Spannzylinder
E0.13 H_ZylB S8: Handtaster Bohrzylinder
E0.14 H_ZylC S9: Handtaster Auswerfer
E0.15 Not_Aus S10: Not–Aus Schalter (Öffner)
A0.0 Aplus Y1: Spannzylinder ausfahren
A0.1 Aminus Y2: Spannzylinder zurückfahren
A0.2 Bohrer Y3: Bohrzylinder
A0.3 Auswerfer Y3: Auswerfer
A0.4 L_Start H1: Lampe Start
A0.5 L_Richten H2: Lampe Richten
A0.6 L_Not H3: Lampe Not Aus
A0.7 L_Auto H4: Lampe Automatik Dauerlauf

Bild4/3

10 Ein Hinweis zum Vorgehen: Die Belegungsliste habe ich in Excel in


einer Tabelle erstellt. Dies erlaubt das einfache Kopieren und Än
dern. Dann habe ich die Tabelle komplett markiert, kopiert und in
FST eingefügt. Dabei überwacht FST die korrekte Syntax, in diesem
Beispiel vor allem die unzulässigen Längen. Das Symbol darf max. 9
Zeichen haben, der Kommentar max. 36.

Festo P.BE−FST4−LB−DE de 0403NH 4−7


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.2 Programmorganisation

Um die Programmierung zu erleichtern, ist es heute allgemein


üblich, ein Projekt in ’Abschnitte’, ’Blöcke’, ’Bausteine’ oder 
bei FST  in Programme zu gliedern.

Bitte beachten Sie die folgenden Begriffe:


Alles, was bei FST mit einer einzelnen Zentraleinheit (oder
einer einzelnen Steuerung) zu tun hat, wird ’Projekt’ genannt.
Innerhalb des Projektes gibt es ’Programme’, exakt bis zu
maximal 64 Programme, die von 0 bis 63 nummeriert werden,
also P0 ... P63.
Das Programm P0 spielt eine Sonderrolle. Es ist das Pro
gramm, das beim Einschalten der Steuerung automatisch
gestartet wird. Ist es nicht vorhanden, gibt die Steuerung eine
Fehlermeldung aus und schaltet auf Stop.

Alle Programme können simultan arbeiten, man spricht von


’Multitasking’.

Um das Projekt ’Bohrmaschine’ zu organisieren, könnte man


die Programme wie folgt organisieren:
P0 Organisationsprogramm
P1 Automatikprogramm und Tippen
P2 Richten
P3 Erkennen und Behandeln von Fehlern in der Maschine
P4 Handprogramm

4−8 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Damit ergibt sich ein Projektfenster wie folgt:

Bild4/4

Und auch die Belegliste wird erweitert:

Operand Symbol Kommentar


P0 Organisationsprogramm
P1 Automatikprogramm
P2 Richten
P3 Maschinenfehler
P4 Handbetrieb

Bild4/5

Festo P.BE−FST4−LB−DE de 0403NH 4−9


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.3 Die ersten Schritte des Projektes in Anweisungsliste11/12

Um das Projekt ’Bohrmaschine’ nach und nach entstehen zu


lassen, sollen einzelne Aufgaben nacheinander erfüllt wer
den. Um überhaupt etwas ’zu sehen’, soll also erst einmal ein
einfacher automatischer Ablauf programmiert werden. Dafür
benötigen wir Programme P0 und P1.

4.3.1 Programm starten

In Programm P0 soll vorläufig ohne jede Bedingung das Auto


matik−Programm gestartet werden. Dazu bedarf es nur zweier
Zeilen13:

WENN NOP
DANN SETZE P1

Bild4/6

Es ist also möglich, ein Programm genauso wie einen Aus


gang einzuschalten (SETZE)14 und abzuschalten (RESET).

11 Dieses erste Bohrmaschinenprojekt finden Sie als BohrAWL1.zip


auf Ihrer CD.
12 Möchten Sie in Kontaktplan programmieren, dann wechseln Sie
zum Abschnitt 4.4.
13 Hinweis für Kenner der FST Software für FPC Steuerungen: Ein
WENN NOP DANN PW gibt es nicht mehr. Die Operation PW ist ent
fallen.
14 Hinweis für Kenner der FST Software für FPC Steuerungen: Eine
Abfrage ’WENN N PX DANN SETZE PX’ ist nicht mehr nötig. Der
Befehl SETZE PX bewirkt bei aktivem PX keinen Rücksprung.

4−10 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.3.2 Sequentielles Programm

Das Automatikprogramm ist ein Programm, in dem ein Schritt


nach dem anderen bearbeitet wird. Die FST Software bietet
für diese Art der Programme, die Ablaufprogramme, die Ope
ration SCHRITT. Also können wir den automatischen Ablauf
sehr einfach programmieren:

”” Automatikbetrieb der Bohrmaschine

SCHRITT Aplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
UND Not_Aus ’S10 an E0.15 Not Aus (Öffner)
UND Stop ’S4 an E0.9 Taster Stop (Öffner)
UND Start ’S1 an E0.6 Taster Start
DANN RESET Aminus ’Y2 an A0.1 Spannzylinder zurück
SETZE Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SCHRITT Bplus
WENN Gespannt ’B2 an E0.1 Spannzylinder ist vorn
DANN SETZE Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Bminus
WENN Gebohrt ’B3 an E0.2 Bohrzylinder ist unten
DANN RESET Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück
SCHRITT Cplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
DANN SETZE Auswerfer ’Y4 an A0.3 Auswerfer
SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus

Bild4/7

Festo P.BE−FST4−LB−DE de 0403NH 4−11


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.3.3 Projekt laden

Möchten Sie diese erste einfache Fassung testen, dann müs


sen Sie für die Übersetzung des Projektes die Programme P2,
P3 und P4 deaktiviert haben. Sie sind zwar angelegt, werden
aber noch nicht benutzt und sind auch noch leer.
Klicken Sie dafür lediglich mit der Maus in das entsprechende
Kästchen.

Bild4/8

4−12 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.4 Die ersten Schritte des Projektes in Kontaktplan15

Um das Projekt ’Bohrmaschine’ nach und nach entstehen zu


lassen, sollen einzelne Aufgaben nacheinander erfüllt wer
den. Um überhaupt etwas ’zu sehen’, soll also erst einmal ein
einfacher automatischer Ablauf programmiert werden. Dafür
benötigen wir Programme P0 und P1.

4.4.1 Programm starten

In Programm P0 soll vorläufig ohne jede Bedingung das Auto


matik−Programm gestartet werden. Dazu bedarf es nur eines
Netzwerkes:

Bild4/9

Es ist also möglich, ein Programm genauso wie einen Aus


gang einzuschalten (S)16 und abzuschalten (R).

Hinweis
Beachten Sie bitte, dass das Programm P1 hier mit dem
Attribut S gesetzt wird. Eine Zuweisung (Spule ohne Attri
but) ist für Programme (P...) unzulässig.

15 Dieses erste Bohrmaschinenprojekt finden Sie als BohrKOP1.zip


auf Ihrer CD.
16 Hinweis für Kenner der FST Software für FPC Steuerungen: Eine
Abfrage ’WENN N PX DANN SETZE PX’ ist nicht mehr nötig. Der
Befehl SETZE PX bewirkt bei aktivem PX keinen Rücksprung.

Festo P.BE−FST4−LB−DE de 0403NH 4−13


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.4.2 Sequentielles Programm

Das Automatikprogramm ist ein Programm, in dem ein Schritt


nach dem anderen bearbeitet wird. Im Kontaktplan kann eine
Schrittstruktur entweder mit einem Zähler oder mit Merkern
nachgebildet werden. Programmierung mit Merkern dürfte
die häufigere sein (wenn auch nicht die komfortablere).

Die Schrittprogrammierung mit Merkern


Jeder Schritt erhält eine einfache Selbsthaltung. Die Selbst
haltung wird gesetzt durch eine UND Verknüpfung aus der
Übergangsbedingung für diesen Schritt und der Abfrage, ob
der vorherige Schritt aktiv ist.

Bild4/10

4−14 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Eine Besonderheit stellen jeweils der erste und der letzte


Schritt dar.

 Im ersten Schritt gibt es keine Übergangsbedingung. Da


her muss die Startbedingung ausreichend genau formu
liert sein, damit die Steuerung nicht mitten im automati
schen Ablauf versehentlich ein zweites Mal gestartet
werden kann. Im Zweifelsfall müssen gegebenenfalls kriti
sche Schritte darauf abgefragt werden, ob sie nicht aktiv
sind.

 Im letzten Schritt gibt es keinen nachfolgenden Schritt.


Daher wird der letzte Schritt nicht als Selbsthaltung pro
grammiert. Er wird automatisch gelöscht, sobald der vor
herige gelöscht wurde. Hierbei muss aber beachtet wer
den, dass für Aktionen des letzten Schrittes nur ein
einziger CPU Zyklus zur Verfügung steht. Gegebenenfalls
muss also ein Schritt mehr programmiert werden, um
sicher zu stellen, dass der letzte Schritt aktiv etwas bewir
ken kann.

Schließlich werden die Ausgänge der Steuerung am Ende des


Programms geschaltet. Dabei wird jeweils für jeden Ausgang
untersucht, in welchen Schritten er aktiv sein muss.

Festo P.BE−FST4−LB−DE de 0403NH 4−15


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Das Programm könnte also so aussehen:

Schrittkette Schritte 1 bis 3

Bild4/11

4−16 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Schrittkette Schritte 4 bis 6

Bild4/12

Festo P.BE−FST4−LB−DE de 0403NH 4−17


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

Ausgänge schalten(Ausschnitt)

Bild4/13

Hinweis
 Sind die in einem solchen Programm benutzten Merker
remanent17, wird bei einem Stromausfall der zuletzt
aktive Schritt erhalten bleiben. Wird das gewünscht,
dann muss der Wiederanlauf nach Wiedereinschalten
der Spannungsversorgung genau geplant werden.
 Sind die benutzten Merker nicht remanent, verlieren also
ihren Inhalt bei Abschalten der Energieversorgung, dann
beginnt das Programm nach dem Einschalten immer mit
dem ersten Schritt. Im obigen Beispiel sind daher mit
Bedacht die Merker 300.0 und folgende gewählt, da
dieser Merkerbereich bei den FEC Steuerungen (FEC
Compact, FEC Standard) nicht remanent ist.

17 Remanenz bezeichnet das spannungsausfallsichere Verhalten eines SPS−Operanden. Bei Ausfall der
elektrischen Energie bleibt der letzte Zustand erhalten der Merker also 0 oder 1. Nicht−remanente
oder flüchtige Operanden werden ohne Energieversorgung zu 0.

4−18 Festo P.BE−FST4−LB−DE de 0403NH


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.4.3 Die Schrittprogrammierung mit Zählern

Wird ein Zähler18 als Schrittzähler anstelle von Merkerbits


benutzt, dann gehört in jeden Schritt zuerst die Abfrage des
Zählerstandes. Ein Schritt sieht dann so aus:

Bild4/14

Der Sprung zu einem bestimmten Schritt erfolgt dann durch


das Laden einer Zahl in den Schrittzähler, wie beim Rück
sprung zum Anfang.

Bild4/15

18 Dieses Programmbeispiel finden Sie als BohrKOP2.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 4−19


4. Ein etwas größeres Projekt mit FST: Die Bohrmaschine steuern

4.4.4 Projekt laden

· Möchten Sie diese erste einfache Fassung testen, dann


müssen Sie für die Übersetzung des Projektes die Pro
gramme P2, P3 und P4 deaktiviert haben. Sie sind zwar
angelegt, werden aber noch nicht benutzt und sind auch
noch leer.

· Klicken Sie dafür lediglich mit der Maus in das entspre


chende Kästchen.

Bild4/16

4−20 Festo P.BE−FST4−LB−DE de 0403NH


Die Operation SCHRITT in der Anweisungsliste

Kapitel 5

Festo P.BE−FST4−LB−DE de 0403NH 5−1


5. Die Operation SCHRITT in der Anweisungsliste

5. Die Operation SCHRITT in der Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . 5−1

5.1 Der SCHRITT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−4


5.2 Der Inhalt eines Schritts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−5
5.3 Die Weiterschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−5
5.4 Der Name des Schrittes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−7
5.5 Der Sprung von Schritt zu Schritt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−8
5.6 Der letzte Schritt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−11
5.7 Die alternative Schrittkette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−11
5.8 Die parallele Schrittkette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5−12

5−2 Festo P.BE−FST4−LB−DE de 0403NH


5. Die Operation SCHRITT in der Anweisungsliste

Im vorigen Kapitel haben wir die Operation SCHRITT bereits


benutzt, aber weitgehend intuitiv, also ohne exakt zu wissen,
warum welcher Schritt was bewirkt. In diesem Kapitel wollen
wir den Geheimnissen der Operation SCHRITT19 etwas näher
kommen.

Hier also einige Regeln.


Sobald in einem Programm die Operation SCHRITT verwendet
wird

 ist in diesem Programm immer nur genau ein einziger


Schritt aktiv

 wird von einem Schritt zum nächsten Schritt über gegan


gen, wenn im letzten booleschen Satz (WENN ... DANN ..
SONST) ’etwas getan’ werden kann. Das bedeutet, dass
weiter geschaltet wird, wenn

 bei einem booleschen Satz, der nur aus WENN ...


DANN besteht die Bedingung im WENN Teil erfüllt ist
oder

 bei einem booleschen Satz, der aus WENN ... DANN ...
SONST besteht, der DANN−Teil (erfüllte Bedingung)
oder der SONST Teil (nicht erfüllte Bedingung) bear
beitet wurden

 kann zwischen Schritten mit der Operation ’SP NACH’


gesprungen werden

 muss im letzten Schritt ein Sprung definiert sein oder das


Programm wird beendet.

19 Kontaktplanprogrammierer können dieses Kapitel ersatzlos über


springen.

Festo P.BE−FST4−LB−DE de 0403NH 5−3


5. Die Operation SCHRITT in der Anweisungsliste

5.1 Der SCHRITT

Die wesentliche Hilfestellung, die die Operation Schritt beim


Programmieren liefert, ist genau diese eine: Wenn es Schritte
in einem Programm gibt, dann kann immer nur genau ein
einziger Schritt aktiv sein, alle übrigen Schritte werden nicht
beachtet. Stellen Sie sich ein Schrittprogramm mit 170 Schrit
ten und 1800 Zeilen vor: Vorausgesetzt das Programm selbst
ist aktiv (siehe das Kapitel ’Multitasking’), dann wird von den
1800 Zeilen Programmcode immer nur genau der Abschnitt
bearbeitet, der zu dem gerade aktiven Schritt gehört.

Betrachten Sie den Schritt Aminus im Automatikprogramm. In


diesem Schritt wird gefragt:

SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück

Bild5/1

Die Bedingung Bohr_oben, also dass der Bohrer oben steht,


ist im Schritt Aplus ebenso erfüllt. Diese Bedingung allein
würde also nicht ausreichen, um den Zylinder A wieder zu
rückfahren zu lassen.

Zusätzlich muss sicher gestellt sein, dass das Teil

 gespannt und

 gebohrt wurde

Die vorhergehenden Schritte müssen also bereits fertig bear


beitet worden sein, bevor der Schritt Aminus überhaupt be
achtet wird.

Man kann sich vorstellen, dass das Schrittprogramm nicht


mehr 1800 Zeilen (um beim obigen Beispiel zu bleiben) lang
ist, sondern nur noch 10 oder 15 Zeilen, also genau so lang,
wie der aktuelle Schritt lang ist. Dies gilt so lange, bis zum
nächsten Schritt weiter geschaltet wird.

5−4 Festo P.BE−FST4−LB−DE de 0403NH


5. Die Operation SCHRITT in der Anweisungsliste

5.2 Der Inhalt eines Schritts

In einem Schritt können die üblichen booleschen Sätze ste


hen:
WENN ... DANN (... SONST)
Die Operation SONST sollte in einem Schrittprogramm nur
nach genauer Abwägung benutzt werden, weil er eine sofor
tige Weiterschaltung in den nächsten Schritt bewirkt.

In einem Schritt können viele solche boolesche Sätze stehen,


praktisch unbegrenzt viele.

5.3 Die Weiterschaltung

Natürlich ist es von wesentlicher Bedeutung, von einem


Schritt zum nächsten weiter zu kommen. Die Weiterschaltung
ist wie folgt definiert:

Es wird vom gerade aktiven Schritt in den nächsten Schritt


weiter geschaltet (d. h. der gerade aktive Schritt wird inaktiv
und der nächste Schritt wird aktiv), wenn im letzten boole
schen Satz (WENN ... DANN .. SONST) ’etwas getan’ werden
kann. Das bedeutet, dass weiter geschaltet wird, wenn

 bei einem booleschen Satz, der nur aus WENN ... DANN
besteht die Bedingung im WENN Teil erfüllt ist oder

 bei einem booleschen Satz, der aus WENN ... DANN ...
SONST besteht, der DANN−Teil (erfüllte Bedingung) oder
der SONST Teil (nicht erfüllte Bedingung) bearbeitet wur
den.

Bitte beachten Sie: Gemeint ist hier immer der letzte boole
sche Satz eines Schritts!

Festo P.BE−FST4−LB−DE de 0403NH 5−5


5. Die Operation SCHRITT in der Anweisungsliste

Beispiel:

SCHRITT Beispiel
WENN E0.0
DANN SETZE A0.0
WENN N E0.1
DANN SETZE M10.0
RESET M100.0
WENN M10.0
DANN RESET A10.5
SCHRITT Weiter

Bild5/2

In diesem Beispiel sind nur die beiden Zeilen


WENN M10.0
DANN RESET A10.5

für die Weiterschaltung vom Schritt Beispiel in den Schritt


Weiter zuständig. Alle übrigen Zeilen werden ausgeführt, so
lange der Schritt aktiv ist (also mindestens ein Mal).

Solange die Weiterschaltbedingung  in diesem Beispiel ist


das WENN M10.0  nicht erfüllt ist, wird dieser Schritt zy
klisch bearbeitet immer beginnend mit der ersten Zeile nach
der Zeile SCHRITT Beispiel.

5−6 Festo P.BE−FST4−LB−DE de 0403NH


5. Die Operation SCHRITT in der Anweisungsliste

5.4 Der Name des Schrittes

Von einem Schritt zu einem anderen kann gesprungen wer


den. Dafür (und nur dafür) wird ein Schrittname benötigt. Das
Beispiel der Bohrmaschine könnte also auf viele Schrittna
men verzichten. Das Beispiel dürfte so aussehen:

SCHRITT Aplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
UND Not_Aus ’S10 an E0.15 Not Aus (Öffner)
UND N Stop ’S4 an E0.9 Taster Stop (Öffner)
UND Start ’S1 an E0.6 Taster Start
DANN RESET Aminus ’Y2 an A0.1 Spannzylinder zurück
SETZE Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SCHRITT
WENN Gespannt ’B2 an E0.1 Spannzylinder ist vorn
DANN SETZE Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT
WENN Gebohrt ’B3 an E0.2 Bohrzylinder ist unten
DANN RESET Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück
SCHRITT
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
DANN SETZE Auswerfer ’Y4 an A0.3 Auswerfer
SCHRITT
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus

Bild5/3

Festo P.BE−FST4−LB−DE de 0403NH 5−7


5. Die Operation SCHRITT in der Anweisungsliste

Nur der Schritt Aplus wird ’angesprungen’, benötigt also ei


nen Schrittnamen. Schrittnamen dürfen

 höchstens 9 Zeichen benutzen

 keine Sonderzeichen und auch kein Leerzeichen haben


(’A+’ ist ebenso verboten wie ’A plus’)

 niemals doppelt vergeben werden (innerhalb eines Pro


gramms).

 dürfen auch Zahlen haben (’Schritt1’ ist ein gültiger


Name, ebenso wie ’1’).

5.5 Der Sprung von Schritt zu Schritt

Von einem Schritt zum nächsten wird durch die Weiterschalt


bedingung geschaltet. Im Grunde ist das ein impliziter
Sprung, also ein Sprung, der programmiert ist, ohne dass es
ausdrücklich geschrieben wird. Man könnte die Sprünge auch
schreiben, ohne dass das Programm dadurch schlechter oder
besser würde, es würde lediglich etwas mehr Schreibarbeit
bedeuten.

5−8 Festo P.BE−FST4−LB−DE de 0403NH


5. Die Operation SCHRITT in der Anweisungsliste

”” Automatikbetrieb der Bohrmaschine


SCHRITT Aplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
UND Not_Aus ’S10 an E0.15 Not Aus (Öffner)
UND N Stop ’S4 an E0.9 Taster Stop (Öffner)
UND Start ’S1 an E0.6 Taster Start
DANN RESET Aminus ’Y2 an A0.1 Spannzylinder zurück
SETZE Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SP NACH Bplus
SCHRITT Bplus
WENN Gespannt ’B2 an E0.1 Spannzylinder ist vorn
DANN SETZE Bohrer ’Y3 an A0.2 Bohrzylinder
SP NACH Bminus
SCHRITT Bminus
WENN Gebohrt ’B3 an E0.2 Bohrzylinder ist unten
DANN RESET Bohrer ’Y3 an A0.2 Bohrzylinder
SP NACH Aminus
SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück
SP NACH Cplus
SCHRITT Cplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
DANN SETZE Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Cminus
SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus

Bild5/4

Festo P.BE−FST4−LB−DE de 0403NH 5−9


5. Die Operation SCHRITT in der Anweisungsliste

Nun gibt es aber kaum noch Maschinen, die so einfach und


geradlinig arbeiten, wie es dieses aller erste Bohrmaschinen
programm noch versucht. In der Regel finden wir immer wie
der Verzweigungen vor (und werden auch das Bohrmaschi
nenprogramm noch erweitern).

Nehmen Sie das folgende Beispiel

SCHRITT Beispiel
WENN Gross
DANN SP NACH Grosspack

WENN Klein
DANN SP NACH Kleinpack

WENN N Gross
UND N Klein
DANN SP NACH Fehler

Bild5/5

In diesem Schritt wird beispielsweise entschieden, welche


Packungsgröße produziert werden soll  entweder große
oder kleine. Ist keine Packungsgröße definiert, dann ist etwas
falsch, folglich wird zum Schritt Fehler gesprungen.

Was geschieht nun, wenn auf Grund einer seltsamen Situa


tion große und kleine Packungen gleichzeitig produziert wer
den sollen, wenn also die Variablen Gross und Klein beide
wahr sind (’1’ oder ’High’ oder ’TRUE’ sind)?

Dann arbeitet FST das Programm streng der Reihenfolge der


Zeilen nach ab:
In der ersten Zeile wird nach Gross gefragt. Ist diese Bedin
gung erfüllt, wird in den Schritt Grosspack gesprungen. Dann
geht es in diesem Schritt weiter. Die Abfrage nach Klein wird
also überhaupt nicht mehr gelesen.

Allgemein:
Ist die Bedingung wahr, dann wird bei einem WENN ... DANN
SP NACH sofort gesprungen. Alle Programmzeilen nach dem
Sprung werden nicht mehr bearbeitet.

5−10 Festo P.BE−FST4−LB−DE de 0403NH


5. Die Operation SCHRITT in der Anweisungsliste

5.6 Der letzte Schritt

Im letzten Schritt eines Programms muss ein Sprung stehen.


Sonst wird das Programm abgeschaltet, sobald die letzte
Bedingung einmal wahr wurde.

Die meisten Programmierer fügen einen bedingungslosen


Sprung an. In unserem Beispiel würde das so aussehen:

SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus
WENN NOP
DANN SP NACH Cminus

Bild5/6

Das WENN NOP ist immer wahr, ist also eine bedingungslose
Bedingung. Folglich wird in diesem letzten Schritt immer dann
im gleichen Schritt weiter gearbeitet, bis die Bedingung
WENN Ausgeworf erfüllt ist.

5.7 Die alternative Schrittkette

In nahezu jedem Projekt ist es nötig, Entscheidungen zu tref


fen, die sich gegenseitig ausschließen:

 Ist Stop betätigt oder nicht?

 Wird Version 1 produziert oder Version 2?

 Liegt ein Fehler vor oder nicht?

Für die Programmierung wird in einen Schritt die Abfrage auf


die Alternative eingefügt.

Festo P.BE−FST4−LB−DE de 0403NH 5−11


5. Die Operation SCHRITT in der Anweisungsliste

In Abschnitt 5.5 finden Sie bereits ein Beispiel:

SCHRITT Beispiel
WENN Gross
DANN SP NACH Grosspack

WENN Klein
DANN SP NACH Kleinpack

WENN N Gross
UND N Klein
DANN SP NACH Fehler

Bild5/7

Hinweis
Der aktive Schritt (in diesem Fall der SCHRITT Beispiel)
wird inaktiv, sobald eine Bedingung erfüllt ist und ge−
sprungen ist. Es liegt also eine eindeutige Prioritätenregel
vor, sollten mehrere Bedingungen erfüllt sein.

Ist im obigen Beispiel sowohl die Bedingung ’Gross’ als auch


die Bedingung ’Klein’ erfüllt, dann wird zum SCHRITT Gross
pack gesprungen.

5.8 Die parallele Schrittkette

In ähnlich vielen Fällen müssen mehrere Abläufe parallel be


arbeitet werden. In der FST Anweisungsliste gibt es innerhalb
eines Programms keine parallele Schrittkette. Sollen zwei
Schrittketten parallel bearbeitet werden, dann wird einfach
ein zweites Programm aktiviert, in dem die parallele Schritt
kette enthalten ist.

Die Synchronisation zwischen den Schrittketten kann durch


Merker erfolgen.

5−12 Festo P.BE−FST4−LB−DE de 0403NH


Multitasking mit FST: Betriebsarten der Bohrmaschine

Kapitel 6

Festo P.BE−FST4−LB−DE de 0403NH 6−1


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

Inhaltsverzeichnis

6. Multitasking mit FST: Betriebsarten der Bohrmaschine . . . . . . . . . . . . . . . 6−1

6.1 Programme arbeiten simultan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−3


6.2 Programme beaufsichtigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−5
6.3 Programme zeitgesteuert starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6−7
6.4 Daten austauschen zwischen Programmen . . . . . . . . . . . . . . . . . . . . . . . . . . 6−8

6−2 Festo P.BE−FST4−LB−DE de 0403NH


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

Bisher haben wir für die Bohrmaschine nur zwei Programme


benutzt, genau genommen nur eines, denn im Programm P0
wird nur das Programm P1 gestartet. Die Nutzung von Pro
grammen kann uns aber viel weiter helfen. Daher erst einmal
einige Erläuterungen zum Konzept der Programme.

6.1 Programme arbeiten simultan

FST unterstützt bis zu 64 Programme, die alle simultan arbei


ten können. ’Simultan’ bedeutet, dass sie scheinbar gleichzei
tig arbeiten. Das ist aber natürlich nicht ganz wahr. Denn es
gibt in der Zentraleinheit keine 64 Mikroprozessoren, die die
64 Programme abarbeiten sondern nur genau einen. Folglich
schaltet dieser eine Prozessor sehr schnell von Programm zu
Programm. Ein ganzer Kreislauf des Prozessors, ein Prozes
sorzyklus, bearbeitet also alle 64 Programme nacheinander:

Bild6/1

Festo P.BE−FST4−LB−DE de 0403NH 6−3


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

Hinzu kommen am Anfang bzw. Ende das Bearbeiten der Ein−


und Ausgänge: Am Anfang werden die Signalzustände gele
sen, am Ende geschrieben.

Bild6/2

Der Prozessor wird also bei jedem Programm ganz kurz stop
pen, nachsehen, ob es mit diesem Programm etwas zu tun
gibt, wenn ja, dort erledigen, was zu erledigen ist, und weiter
geht’s zum nächsten Programm. Dies geschieht so schnell,
dass es nach außen hin wirkt, als ob alle Programme gleich
zeitig arbeiten würden  eben simultan, oder ’Multitasking’.

6−4 Festo P.BE−FST4−LB−DE de 0403NH


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

6.2 Programme beaufsichtigen

Es ist bereits darauf hingewiesen worden, dass nur das Pro


gramm P0 eine Sonderrolle spielt, es wird beim Einschalten
der Steuerung automatisch aktiviert. Alle übrigen Programme
werden von sich aus niemals aktiv, sondern müssen aus
drücklich im Projekt aktiviert werden. Folglich werden Opera
tionen benötigt, um Programme zu beaufsichtigen. Dafür gibt
es vor allem zwei Operanden:
P und PS.

P ist das Programm selbst. Ein Programm kann eingeschaltet


(SETZE) und ausgeschaltet (RESET) werden. Ein Programm
kann auch abgefragt werden, ob es aktiv ist mit WENN P5
oder WENN N P5 ebenso wie es im Kontaktplan als Operand
für einen Kontakt oder eine Spule benutzt werden kann.

PS ist der Programmstatus. Jedes Programm hat auch einen


Programmstatus. Zum P0 beispielsweise gehört also PS0. Der
Programmstatus kann ein Programm mitten in der
Programmausführung anhalten (RESET PS5) oder es kann die
Ausführung fortgesetzt werden (SETZE PS5). Ebenso kann
auch abgefragt werden, ob der Programmstatus aktiv ist
(WENN PS5) oder inaktiv (WENN N PS5).

Was ist der Unterschied zwischen Programm und Programm


status?

 Für den Kontaktplan ist der Programmstatus PS vollkom


men bedeutungslos. Er existiert, wird aber nicht benötigt.

 In Anweisungsliste ist der Programmstatus wichtig für die


Bearbeitung von Programmen mit der Operation SCHRITT.

Nehmen Sie das Automatikprogramm für die Bohrmaschine.


Befindet sich das Programm beispielsweise im Schritt Bplus,
dann soll der Bohrer nach unten gefahren werden.

Festo P.BE−FST4−LB−DE de 0403NH 6−5


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

Aus irgendeinem Grund (Not−Aus, Material klemmt oder sonst


etwas) wird die Maschine angehalten, der Bohrer gewechselt,
das Material herausgenommen, und dann soll wieder vorne
begonnen werden. Dafür wird das Programm P1 zuerst zu
rück gesetzt (RESET P1) und anschließend ganz neu am An
fang gestartet (SETZE P1).

Aus einem anderen Grund muss das Programm angehalten


werden (RESET PS1). Wird anschließend mit SETZE PS1 das
Programm fortgesetzt, dann wird es in diesem Schritt Bplus
weiter arbeiten und nicht wieder am Anfang beginnen.

Programm und Programmstatus kann wie folgt zusammen


gefasst werden:

Programm P Programmstatus PS Zustand

0 0 inaktiv

0 1 reserviert

1 0 aktiv aber angehalten

1 1 aktiv und bearbeitet

Tab.6/1

6−6 Festo P.BE−FST4−LB−DE de 0403NH


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

6.3 Programme zeitgesteuert starten

Wie dargestellt, werden die Programme simultan bearbeitet.


Eine Zykluszeit hängt von der Programmlänge ab. Je mehr
Programmzeilen Sie in die Programme packen, desto länger
wird eine Zykluszeit. Es gibt aber Anwendungen, die nicht
dauernd bearbeitet werden sollen, sondern beispielsweise
einmal pro Sekunde oder einmal pro Minute. Dies kann mit
dem Baustein F4 geschehen. Dort wird vereinbart, dass ein
Programm zeitgesteuert bearbeitet wird, wobei aber die Rei
henfolge der Bearbeitung  von P0 bis P63 und wieder zurück
zu P0  nicht geändert wird. Kommt also der Prozessor zu
einem Programm, das zeitgesteuert aufgerufen wird, dann
wird nachgesehen, ob die gewünschte Zeit abgelaufen ist,
wenn ja wird dieses Programm bearbeitet, wenn nein wird es
übergangen.

Festo P.BE−FST4−LB−DE de 0403NH 6−7


6. Multitasking mit FST: Betriebsarten der Bohrmaschine

6.4 Daten austauschen zwischen Programmen

In FST sind Eingänge, Ausgänge, Merker, Register, Zeiten und


Zähler global, d.h. sie gelten über alle Programme übergrei
fend. Kommunikation zwischen Programmen geschieht also
üblicherweise über Merker. Davon gibt es bis zu 160.000 ein
zelne, adressierbar in 10.000 Merkerworten, also von M0.0
bis M9999.15.

6−8 Festo P.BE−FST4−LB−DE de 0403NH


Die Bohrmaschine wächst in Anweisungsliste

Kapitel 7

Festo P.BE−FST4−LB−DE de 0403NH 7−1


7. Die Bohrmaschine wächst in Anweisungsliste

Inhaltsverzeichnis

7. Die Bohrmaschine wächst in Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . 7−1

7.1 Automatikprogramm starten und stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−3


7.2 Der Tippbetrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−7
7.3 Die Flankenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−10
7.3.1 Programmierung der Flankenerkennung . . . . . . . . . . . . . . . . . . . . . 7−11
7.4 Das Richtprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7−13

7−2 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

Die langen Vorreden dienten lediglich dazu, endlich das Pro


gramm der Bohrmaschine etwas näher an die Realität von
modernen Maschinensteuerungen zu bringen. Schließlich
muss die Organisation der Betriebsarten wie Automatik,
Hand usw. erst einmal programmiert sein.

7.1 Automatikprogramm starten und stoppen

Das Automatikprogramm wird mit ’Start’ gestartet und kann


dann zyklisch arbeiten (später kommt eine Abfrage hinzu, ob
noch Material im Fallmagazin bereit liegt).
Es darf aber nur gestartet werden, wenn die Maschine in
Grundstellung steht, kein Stop, Halt oder Not−Aus betätigt ist
und das Richt−Programm und das Hand−Programm nicht aktiv
sind.

Folglich können wir programmieren:

”” Automatik Betrieb einschalten


WENN Start ’S1: Taster Start
”” Grundstellung
UND Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
”” Anhalte–Tasten
UND Halt ’S2 an E0.7 Taster Halt (Öffner)
UND Stop ’S4 an E0.9 Taster Stop (Öffner)
UND Not_Aus ’S10 an E0.15 Not Aus (Öffner)
””Programme
UND N P2 ’Richten
UND N P4 ’Handbetrieb
DANN SETZE P1 ’Automatik und Tippen

Bild7/1

Festo P.BE−FST4−LB−DE de 0403NH 7−3


7. Die Bohrmaschine wächst in Anweisungsliste

Da der Automatik−Betrieb nun im Dauerlauf arbeiten soll,


muss das Automatik−Programm geändert werden:

”” Automatikbetrieb der Bohrmaschine


SCHRITT Aplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
DANN RESET Aminus ’Y2 an A0.1 Spannzylinder zurück
SETZE Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SCHRITT Bplus
WENN Gespannt ’B2 an E0.1 Spannzylinder ist vorn
DANN SETZE Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Bminus
WENN Gebohrt ’B3 an E0.2 Bohrzylinder ist unten
DANN RESET Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück
SCHRITT Cplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
DANN SETZE Auswerfer ’Y4 an A0.3 Auswerfer
SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus
WENN NOP
DANN SP NACH Cminus

Bild7/2

7−4 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

Jetzt arbeitet das Automatik−Programm zwar endlos, aber es


kann nicht mehr angehalten werden.
Dafür sind in der Bedienung zwei Tasten vorgesehen: STOP 
stoppt sofort, HALT  stoppt nach Zyklusende.

STOP ist sehr einfach zu programmieren, es setzt lediglich


das Automatikprogramm zurück.

HALT ist etwas aufwändiger, denn die HALT−Taste kann irgend


wann während des Programmzyklus betätigt werden, wird
aber erst am Zyklusende wirksam. Also benötigen wir einen
Merker, der sich merkt, dass HALT betätigt wurde. Dieser
Merker muss dann am Zyklusende eingreifen.

Dann könnte die Organisation so erweitert werden:

”” Automatik stoppen
WENN N Stop ’S4 an E0.9 Taster Stop (Öffner)
DANN RESET P1 ’Automatik und Tippen””
Halt nach Zyklusende
WENN N Halt ’S2 an E0.7 Taster Halt (Öffner)
DANN SETZE M_HALT ’Merker HALT betätigt

Bild7/3

Festo P.BE−FST4−LB−DE de 0403NH 7−5


7. Die Bohrmaschine wächst in Anweisungsliste

Im Automatikbetrieb können wir im letzten Schritt erweitern:

SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SCHRITT Halt
WENN C_hinten ’B6 an E0.5 Auswerfer ist zurück
UND N M_HALT ’Merker HALT betätigt
DANN SP NACH Aplus
WENN M_HALT ’Merker HALT betätigt
DANN RESET M_HALT ’Merker HALT betätigt
RESET P1 ’Automatik und Tippen
WENN NOP
DANN SP NACH Halt

Bild7/4

Wenn nun noch den jetzt benutzten Programmen P2 und P4


ein Minimalprogramm beigegeben wird, dann können wir das
so veränderte Projekt übersetzen und benutzen.

WENN NOP
DANN NOP

Bild7/5

7−6 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

7.2 Der Tippbetrieb

Der Tippbetrieb bedeutet, dass der automatische Ablauf


schrittweise bearbeitet wird, wobei die Weiterschaltung von
einem Schritt zum nächsten abhängig von einer zusätzlichen
Eingabe der Bedienungsperson ist. Es wird ein Tipp−Taster
benötigt, der in unserem Beispiel mit dem Start−Taster ver
wirklicht wird.

Allgemein könnte man formulieren:

Bild7/6

Nun könnte man diese Bedingung natürlich in jeden Schritt


einbinden. Nehmen wir als Beispiel den Schritt Aminus.

SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück

Bild7/7

Soll die Weiterschaltbedingung so eingebunden werden wie


vorher dargestellt, müssten wir programmieren:

Festo P.BE−FST4−LB−DE de 0403NH 7−7


7. Die Bohrmaschine wächst in Anweisungsliste

SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND ( Dauerlauf ’S3 an E0.8 Dauerlauf (0=Tippbetrieb)
ODER N Dauerlauf ’S3 an E0.8 Dauerlauf (0=Tippbetrieb)
UND Start ) ’S1 an E0.6 Taster Start
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus

Bild7/8

Dieses Vorgehen wäre möglich, bläht aber das Automatikpro


gramm unnötig auf. Die kombinierte UND/ODER Verknüp
fung, die unabhängig von der Prozessbedingung auf das Wei
terschalten Einfluss hat, kann im Organisationsprogramm
programmiert werden und als Merker im Automatikbetrieb
benutzt werden. Im Organisationsprogramm können wir ein
malig programmieren:

”” Weiterschaltmerker für den Tippbetrieb


WENN P1 ’Automatik und Tippen
UND ( Dauerlauf ’S3 an E0.8 Dauerlauf (0=Tippbetrieb)
ODER N Dauerlauf ’S3 an E0.8 Dauerlauf (0=Tippbetrieb)
UND Start ) ’S1 an E0.6 Taster Start
DANN SETZE M_Weiter ’Merker Weiterschaltbedingung Tippen
SONST RESET M_Weiter ’Merker Weiterschaltbedingung Tippen

Bild7/9

um dann im Automatikprogramm diesen Merker in jeden


Schritt einzufügen, der im Tippbetrieb zu warten hat:

SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück

Bild7/10

7−8 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

Damit könnte das Programm21 jetzt so aussehen:

”” Automatikbetrieb der Bohrmaschine


SCHRITT Aplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND C_hinten ’B6 an E0.5 Auswerfer ist zurück
DANN RESET Aminus ’Y2 an A0.1 Spannzylinder zurück
SETZE Aplus ’Y1 an A0.0 Spannzylinder ausfahr
SCHRITT Bplus
WENN Gespannt ’B2 an E0.1 Spannzylinder ist vorn
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN SETZE Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Bminus
WENN Gebohrt ’B3 an E0.2 Bohrzylinder ist unten
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN RESET Bohrer ’Y3 an A0.2 Bohrzylinder
SCHRITT Aminus
WENN Bohr_oben ’B4 an E0.3 Bohrzylinder ist oben
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN RESET Aplus ’Y1 an A0.0 Spannzylinder ausfahren
SETZE Aminus ’Y2 an A0.1 Spannzylinder zurück
SCHRITT Cplus
WENN Entspannt ’B1 an E0.0 Spannzylinder ist ein
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN SETZE Auswerfer ’Y4 an A0.3 Auswerfer
SCHRITT Cminus
WENN Ausgeworf ’B5 an E0.4 Auswerfer ist vorne
UND M_Weiter ’Merker Weiterschaltbedingung Tippen
DANN RESET Auswerfer ’Y4 an A0.3 Auswerfer
SP NACH Aplus
WENN NOP
DANN SP NACH Cminus

Bild7/11

21 Sie finden das Projekt als BohrAWL3.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 7−9


7. Die Bohrmaschine wächst in Anweisungsliste

7.3 Die Flankenerkennung

Nun hat der so programmierte Tippbetrieb eine Eigenschaft,


die je nach Anwendung mal als ’richtig’ mal als ’falsch’ erach
tet wird.

Wenn die Maschine auf Tippbetrieb umgeschaltet ist, dann


reicht es, sich auf dem Start−Taster auszuruhen (ihn ständig
betätigt zu halten), damit der Ablauf kontinuierlich durchge
arbeitet wird.
In manchen Anwendungen wird verlangt, dass die Maschine
mit einem Betätigen des Tasters auch genau einen Schritt
weiter arbeiten kann.

Was wir also  in diesem Fall  wirklich wünschen ist, dass die
Maschine um einen Schritt weiter schaltet, wenn der Finger
den Start−Taster beginnt zu betätigen. Man spricht in der Au
tomatisierungstechnik von der Flankenerkennung.

1−Signal
(negativeFanke)
SteigendeFlanke
(positiveFlanke)

FallendeFlanke

0−Signal 0−Signal

Bild7/12

Die Weiterschaltung von Schritt zu Schritt soll mit der Stei


genden Flanke, nicht aber mit dem 1−Signal erfolgen.

7−10 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

7.3.1 Programmierung der Flankenerkennung

Eine Flankenerkennung in FST wird ganz einfach mit einem


Merker programmiert.

”Flankenerkennung
WENN N Flankenm ’Merker Flankenerkennung Starttaste
UND Start ’S1 an E0.6 Taster Start
DANN SETZE Flankenm ’Merker Flankenerkennung Starttaste
WENN N Start ’S1 an E0.6 Taster Start
DANN RESET Flankenm ’Merker Flankenerkennung Starttaste

Bild7/13

Die Bedingung ’WENN N Flankenm UND Start’ ist für genau


einen Zyklus der Steuerung erfüllt, wenn der Taster Start be
tätigt wird.

Mit einer Umkehrung der Logik erhält man die negative


Flanke.

”” Negative Flanke
WENN N Flanke_n ’Merker für negative Flankenerkennung
UND N Start ’S1 an E0.6 Taster Start
DANN SETZE Flanke_n ’Merker für negative Flankenerkennung
WENN Start ’S1 an E0.6 Taster Start
DANN RESET Flanke_n ’Merker für negative Flankenerkennung

Bild7/14

Festo P.BE−FST4−LB−DE de 0403NH 7−11


7. Die Bohrmaschine wächst in Anweisungsliste

Wollen wir bei der Bohrmaschine den Tippbetrieb so pro


grammiert haben, dass für jeden Schritt die Taste Start er
neut betätigt werden muss, dann können wir unser Organisa
tionsprogramm also erweitern:

””Organisationsprogramm für die Bohrmaschine


”” Automatik Betrieb einschalten
WENN Start ’S1: Taster Start
”” Grundstellung
UND Entspannt ’B1: Spannzylinder ist eingefahren
UND Bohr_oben ’B4: Bohrzylinder ist oben
UND C_hinten ’B6: Auswerfer ist zurück
”” Anhalte–Tasten
UND Halt ’S2: Taster Halt (Öffner)
UND Stop ’S4: Taster Stop (Öffner)
UND Not_Aus ’S10: Not Aus Schalter (Öffner)
””Programme
UND N P2 ’Richten
UND N P4 ’Handbetrieb
DANN SETZE P1 ’Automatikprogramm

”” Automatik stoppen
WENN N Stop ’S4: Taster Stop (Öffner)
DANN RESET P1 ’Automatikprogramm

”” Halt nach Zyklusende


WENN N Halt ’S2: Taster Halt (Öffner)
DANN SETZE M_HALT ’Merker HALT betätigt

”” Rücksetzen Merker für den Tippbetrieb


WENN NOP
DANN RESET M_Weiter ’Merker Weiterschaltbedingung Tippen

””Flankenerkennung und setzen Merker für den Tippbetrieb


WENN N Flankenm ’Merker Flankenerkennung Starttaste
UND Start ’S1: Taster Start
UND P1 ’Automatikprogramm
UND ( Dauerlauf ’S3: Schalter Dauerl (0=Tippbetrieb)
ODER N Dauerlauf ) ’S3: Schalter Dauerl (0=Tippbetrieb)
DANN SETZE Flankenm ’Merker Flankenerkennung Starttaste
SETZE M_Weiter ’Merker Weiterschaltbedingung Tippen
WENN N Start ’S1: Taster Start
DANN RESET Flankenm ’Merker Flankenerkennung Starttaste

Bild7/15

7−12 Festo P.BE−FST4−LB−DE de 0403NH


7. Die Bohrmaschine wächst in Anweisungsliste

7.4 Das Richtprogramm

Das Richtprogramm22 für eine so kleine und einfache Anlage


ist schnell programmiert. Bei größeren Systemen kann das
Richtprogramm sehr komplex sein, denn es soll die Maschine
aus jeder beliebigen Position heraus in Grundstellung fahren.

In unserem Fall kann man einfach programmieren:


C− B− A−

Folglich wird P2 etwa so aussehen:

”” Auswerfer in Grundstellung fahren


SCHRITT
WENN NOP
DANN RESET Auswerfer ’A0.3: Y3: Auswerfer
”” Bohrer in Grundstellung fahren
SCHRITT
WENN C_hinten ’E0.5: B6: Auswerfer ist zurück
DANN RESET Bohrer ’A0.2: Y3: Bohrzylinder
”” Spannzylinder in Grundstellung fahren
SCHRITT
WENN Bohr_oben ’E0.3: B4: Bohrzylinder ist oben
DANN RESET Aplus ’A0.0: Y1: Spannzylinder ausfahren
SETZE Aminus ’A0.1: Y2: Spannzylinder zurückfahren
”” Richtprogramm beenden
SCHRITT
WENN Entspannt ’E0.0: B1: Spannzylinder ist eingefahren
DANN RESET P2 ’Richten

Bild7/16

Beachten Sie bitte, dass in diesem Beispiel sich das Richtpro


gramm selbst abschaltet. Wenn also die Grundstellung er
reicht ist, dann ist das Programm P2 abgeschaltet.

22 Sie finden das Projekt einschließlich Richtprogramm unter


BOHRAWL5.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 7−13


7. Die Bohrmaschine wächst in Anweisungsliste

Je nach Bedienungsphilosophie muss aber geklärt werden,


unter welchen Bedingungen das Richtprogramm überhaupt
aufgerufen wird. Sicherlich wird man es nicht zulassen, mit
ten im automatischen Ablauf auf den Richt−Taster zu reagie
ren. Für die Zwecke dieses Beispiels mag es ausreichen, ab
zufragen, ob das Automatikprogramm gestoppt wurde (nicht
angehalten). Dafür wird das Organisationsprogramm erwei
tert:

”” Richten
WENN N P1 ’Automatikprogramm
UND Not_Aus ’E0.15: S10: Not Aus Schalter (Öffner)
UND Richten ’E0.11: S6: Taster Richten
DANN SETZE P2 ’Richten

Bild7/17

Schließlich haben wir noch eine Lampe eingebaut, die anzei


gen soll, wenn das Richtprogramm aktiv ist. Im Organisation
sprogramm ist das einfach programmierbar.

WENN P2 ’Richten
DANN SETZE L_Richten ’A0.5: H2: Lampe Richten
SONST RESET L_Richten ’A0.5: H2: Lampe Richten
WENN P1 ’Automatikprogramm
DANN SETZE L_Auto ’A0.7: H4: Lampe Automatik Dauerlauf
SONST RESET L_Auto ’A0.7: H4: Lampe Automatik Dauerlauf

Bild7/18

7−14 Festo P.BE−FST4−LB−DE de 0403NH


Die Bohrmaschine wächst in Kontaktplan

Kapitel 8

Festo P.BE−FST4−LB−DE de 0403NH 8−1


8. Die Bohrmaschine wächst in Kontaktplan

Inhaltsverzeichnis

8. Die Bohrmaschine wächst in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . . . . . 8−1

8.1 Automatikprogramm starten und stoppen . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−3


8.2 Der Tippbetrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−6
8.3 Die Flankenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−8
8.3.1 Programmierung der Flankenerkennung . . . . . . . . . . . . . . . . . . . . . 8−9
8.4 Das Richtprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8−11

8−2 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

Die langen Vorreden dienten lediglich dazu, endlich das Pro


gramm der Bohrmaschine etwas näher an die Realität von
modernen Maschinensteuerungen zu bringen. Schließlich
muss die Organisation der Betriebsarten wie Automatik,
Hand usw. erst einmal programmiert sein.

8.1 Automatikprogramm starten und stoppen

Das Automatikprogramm wird mit ’Start’ gestartet und kann


dann zyklisch arbeiten (später kommt eine Abfrage hinzu, ob
noch Material im Fallmagazin bereit liegt).
Es darf aber nur gestartet werden, wenn die Maschine in
Grundstellung steht, kein Stop, Halt oder Not−Aus betätigt ist
und das Richt−Programm und das Hand−Programm nicht aktiv
sind.

Folglich können wir programmieren:

Bild8/1

Da der Automatik−Betrieb nun im Dauerlauf arbeiten soll,


muss im Automatik−Programm der Start−Taster im dem ersten
Schritt gelöscht werden.

Jetzt arbeitet das Automatik−Programm zwar endlos, aber es


kann nicht mehr angehalten werden. Dafür sind in der Bedie
nung zwei Tasten vorgesehen:

 STOP stoppt sofort,

 HALT stoppt nach Zyklusende.

Festo P.BE−FST4−LB−DE de 0403NH 8−3


8. Die Bohrmaschine wächst in Kontaktplan

STOP ist sehr einfach zu programmieren, es setzt lediglich


das Automatikprogramm zurück.

HALT ist etwas aufwändiger, denn die HALT−Taste kann irgend


wann während des Programmzyklus betätigt werden, wird
aber erst am Zyklusende wirksam. Also benötigen wir einen
Merker, der sich merkt, dass HALT betätigt wurde. Dieser
Merker muss dann am Zyklusende eingreifen.

Dann könnte die Organisation so erweitert werden:

Bild8/2

8−4 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

Im Automatikbetrieb können wir im letzten Schritt erweitern:

Bild8/3

Wenn nun noch den jetzt benutzten Programmen P2 und P4


ein Minimalprogramm beigegeben wird, dann können wir das
so veränderte Projekt23 übersetzen und benutzen.

23 Sie finden diesen Status als BohrKOP3.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 8−5


8. Die Bohrmaschine wächst in Kontaktplan

8.2 Der Tippbetrieb

Der Tipp−Betrieb bedeutet, dass der automatische Ablauf


schrittweise bearbeitet wird, wobei die Weiterschaltung von
einem Schritt zum nächsten abhängig von einer zusätzlichen
Eingabe der Bedienungsperson ist. Es wird ein Tipp−Taster
benötigt, der in unserem Beispiel mit dem Start−Taster ver
wirklicht wird.

Allgemein könnte man formulieren:

Bild8/4

Nun könnte man diese Bedingung natürlich in jeden Schritt


einbinden. Das wäre allerdings recht aufwändig und würde
die Übersichtlichkeit stark vermindern. Die kombinierte UND/
ODER Verknüpfung, die unabhängig von der Prozessbedin
gung auf das Weiterschalten Einfluss hat, kann im Organisa
tionsprogramm programmiert werden und als Merker im
Automatikbetrieb benutzt werden.

8−6 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

Im Organisationsprogramm können wir einmalig programmie


ren:

Bild8/5

um dann im Automatikprogramm diesen Merker in jeden


Schritt einzufügen, der im Tippbetrieb zu warten hat:
Beispielhaft24 sieht dann ein Schritt so aus:

Bild8/6

24 Das ganze Projekt mit dieser Ergänzung finden Sie als


BOHRKOP4.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 8−7


8. Die Bohrmaschine wächst in Kontaktplan

8.3 Die Flankenerkennung

Nun hat der so programmierte Tippbetrieb eine Eigenschaft,


die je nach Anwendung mal als ’richtig’ mal als ’falsch’ erach
tet wird.

Wenn die Maschine auf Tippbetrieb umgeschaltet ist, dann


reicht es, sich auf dem Start−Taster auszuruhen (ihn ständig
betätigt zu halten), damit der Ablauf kontinuierlich durchge
arbeitet wird. In manchen Anwendungen wird verlangt, dass
die Maschine mit einem Betätigen des Tasters auch genau
einen Schritt weiter arbeiten kann nicht mehr!

Was wir also  in diesem Fall  wirklich wünschen ist, dass die
Maschine um einen Schritt weiter schaltet, wenn der Finger
den Start−Taster beginnt zu betätigen. Man spricht in der Au
tomatisierungstechnik von der Flankenerkennung.

1−Signal
(negativeFanke)
SteigendeFlanke
(positiveFlanke)

FallendeFlanke

0−Signal 0−Signal

Bild8/7

Die Weiterschaltung von Schritt zu Schritt soll mit der Stei


genden Flanke, nicht aber mit dem 1−Signal erfolgen.

8−8 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

8.3.1 Programmierung der Flankenerkennung

Eine Flankenerkennung wird ganz einfach mit einem Merker


programmiert.

Bild8/8

In diesem Programm wird die positive Flanke erkannt und


schaltet für genau einen Zyklus den Ausgang A0.0 auf 1. Mit
einer Umkehrung der Logik erhält man die negative Flanke.

Festo P.BE−FST4−LB−DE de 0403NH 8−9


8. Die Bohrmaschine wächst in Kontaktplan

Wollen wir bei der Bohrmaschine den Tippbetrieb so pro


grammiert25 haben, dass für jeden Schritt die Taste Start
erneut betätigt werden muss, dann können wir unser Organi
sationsprogramm also erweitern:

Bild8/9

25 Sie finden das Projekt als BohrKOP5.ZIP auf Ihrer CD.

8−10 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

8.4 Das Richtprogramm

Das Richtprogramm26 für eine so kleine und einfache Anlage


ist schnell programmiert. Bei größeren Systemen kann das
Richtprogramm sehr komplex sein, denn es soll die Maschine
aus jeder beliebigen Position heraus in Grundstellung fahren.

In unserem Fall kann man einfach programmieren:


C− B− A−

Folglich wird P2 etwa so aussehen:

Bild8/10

26 Sie finden das Projekt einschließlich Richtprogramm unter


BOHRKOP6.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 8−11


8. Die Bohrmaschine wächst in Kontaktplan

Bild8/11

Beachten Sie bitte, dass sich in diesem Beispiel das Richtpro


gramm selbst abschaltet. Wenn also die Grundstellung er
reicht ist, dann ist das Programm P2 abgeschaltet.

8−12 Festo P.BE−FST4−LB−DE de 0403NH


8. Die Bohrmaschine wächst in Kontaktplan

Je nach Bedienungsphilosophie muss aber geklärt werden,


unter welchen Bedingungen das Richtprogramm überhaupt
aufgerufen wird. Sicherlich wird man es nicht zulassen, mit
ten im automatischen Ablauf auf den Richt−Taster zu reagie
ren. Für die Zwecke dieses Beispiels mag es ausreichen, ab
zufragen, ob das Automatikprogramm gestoppt wurde (nicht
angehalten). Dafür wird das Organisationsprogramm erwei
tert:

Bild8/12

Schließlich haben wir noch eine Lampe eingebaut, die anzei


gen soll, wenn das Richtprogramm aktiv ist. Im Organisa−
tionsprogramm ist das beispielsweise so programmierbar.

Bild8/13

Festo P.BE−FST4−LB−DE de 0403NH 8−13


8. Die Bohrmaschine wächst in Kontaktplan

8−14 Festo P.BE−FST4−LB−DE de 0403NH


Zeiten und Zähler mit FST in Anweisungsliste

Kapitel 9

Festo P.BE−FST4−LB−DE de 0403NH 9−1


9. Zeiten und Zähler mit FST in Anweisungsliste

Inhaltsverzeichnis

9. Zeiten und Zähler mit FST in Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . 9−1

9.1 Der Zeitbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−3


9.1.1 Beginnen wir mit einem einfachen Beispiel: . . . . . . . . . . . . . . . . . . 9−4
9.1.2 Der Timer ohne Schritte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−7
9.1.3 Die Anzugsverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−8
9.1.4 Die Abfallverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−10
9.1.5 Der Blinker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−12
9.2 Der Zählerbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−13
9.2.1 Der Vorwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−13
9.2.2 Der Rückwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−15
9.2.3 Der Zähler ohne den Zähler(baustein) . . . . . . . . . . . . . . . . . . . . . . . 9−18
9.2.4 Zeiten und Zähler kombinieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9−20
9.3 Grenzen des Einsatzes von Zeiten und Zählern . . . . . . . . . . . . . . . . . . . . . . . 9−23
9.4 Praktische Anwendung von Zeiten und Zähler . . . . . . . . . . . . . . . . . . . . . . . . 9−24
9.4.1 Das Garagentor mit Zeiten/Zählern . . . . . . . . . . . . . . . . . . . . . . . . . 9−24

9−2 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Es dürfte kein Automatisierungsprojekt geben, in dem nicht


Zeiten und nur wenige, in dem nicht Zähler verwendet wer
den. Also sollten wir uns mit Zeiten und Zählern genau be
schäftigten.

Zeiten und Zähler gehören zusammen. Denn ein Zeitbaustein


ist ein Zähler, der Zeittakte zählt. Der Zeitbaustein ist aber
etwas einfacher zu handhaben als ein Zähler, da einige Zäh
lerfunktionen versteckt sind. Beginnen wir also mit den Zei
ten.

9.1 Der Zeitbaustein27

Ein Zeitbaustein lässt sich grafisch wie folgt darstellen:

Bild9/1

Ein Zeitbaustein benötigt mindestens drei Anschlüsse:

 einen Eingang zum Start

 einen Eingang, um die Zeit einzustellen

 einen Ausgang, der mitteilt, ob der Baustein noch aktiv ist


oder nicht.

Zusätzlich kann evtl. die bereits abgelaufene Zeit angezeigt


werden.

27 Alle diese Zeitbeispiele finden Sie auf der CD unter dem Namen
ZEIT_DE.ZIP

Festo P.BE−FST4−LB−DE de 0403NH 9−3


9. Zeiten und Zähler mit FST in Anweisungsliste

In FST bekommen diese Ein− und Ausgänge einen Namen:

 Der Zeitbaustein (Timer) selbst wird T genannt. Da es 256


Timer gibt, gibt es also die Timer T0 ... T255

 Gestartet wird die Zeit, indem dieser Baustein gesetzt


wird: SETZE T0

 Die eingestellte Zeit, der Sollwert, steht in der Timer−Vor


wahl, TV0 ... TV255

 Der Zeitbaustein selbst wird nach dem SETZE zu ’1’ und


nach Ablauf der Zeit zu ’0’

 Der aktuelle Zeitwert, der Istwert, steht im Timer−Wort,


TW0 ... TW255

9.1.1 Beginnen wir mit einem einfachen Beispiel:

Wenn der Eingang E0.6 an unserer Steuerung betätigt wird,


soll während einer Zeit von 5 Sekunden der Ausgang A0.6
aktiv sein:

Bild9/2

9−4 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Das Programm könnte wie folgt lauten:

SCHRITT Anfang
WENN E0.6 ’Eingang zum Starten des Timers
DANN SETZE T0 ’Impulstimer
MIT 5s
SCHRITT Zeit_ausw
WENN T0 ’Impulstimer
DANN SETZE A0.6 ’Ausgang, der den Puls zeigt
SONST RESET A0.6 ’Ausgang, der den Puls zeigt
WENN N T0 ’Impulstimer
UND N E0.6 ’Eingang zum Starten des Timers
DANN SP NACH Anfang
WENN NOP
DANN SP NACH Zeit_ausw

Bild9/3

Betrachten wir das Programm etwas näher:

DANN SETZE T0

Bild9/4

schaltet den Zeitbaustein ein. Die Zeit arbeitet, der Timersta


tus T0 ist aktiv (’1’).

MIT 5s

Bild9/5

wird die Zeit definiert. Zulässige Werte hier sind 0.01 s ...
655.35 s. Bitte beachten Sie den Dezimalpunkt (kein Dezimal
komma).

Festo P.BE−FST4−LB−DE de 0403NH 9−5


9. Zeiten und Zähler mit FST in Anweisungsliste

In der Online Anzeige sehen wir den Status, den aktuellen


Wert (Istwert) und den Vorwahlwert (Sollwert).

Bild9/6

Die Abfrage

WENN T0 ’Impulstimer

Bild9/7

erfragt den booleschen Zustand des Timerbausteins, den


Status des Timers. Ist der Timer ’1’, dann ist der Timer noch
aktiv, die Zeit ist noch nicht abgelaufen. Ist der Zustand ’0’,
dann ist die Zeit abgelaufen, der Timer hat seine Arbeit erle
digt und ist beendet (inaktiv).

9−6 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

9.1.2 Der Timer ohne Schritte

Der Timer wird mit jedem SETZE T0 neu gestartet. In der


Schrittkette, die oben als Beispiel benutzt wird, sorgt der
schrittweise Ablauf dafür, dass der Timer erst dann neu ge
startet wird, wenn die Zeit beendet ist oder der Eingang E0.6
nach Ablauf der Zeit zu ’0’ geworden ist.

Wenn keine Schrittkette benutzt wird, dann wird der Timer


verriegelt:

WENN E0.6 ’Eingang zum Starten des Timers


UND N T1 ’Pulstimer
DANN SETZE T1 ’Pulstimer
MIT 5s
WENN T1 ’Pulstimer
DANN SETZE A0.7 ’Anzeige Pulstimer ohne Schritte
SONST RESET A0.7 ’Anzeige Pulstimer ohne Schritte

Bild9/8

Im folgenden sollen die üblichen Zeitbausteine programmiert


werden.

Festo P.BE−FST4−LB−DE de 0403NH 9−7


9. Zeiten und Zähler mit FST in Anweisungsliste

9.1.3 Die Anzugsverzögerung

Die Anzugsverzögerung hat die Eigenschaft, dass der Aus


gang zu 1 wird, wenn die Zeit beendet ist UND der Eingang
noch 1 ist. Grafisch wird das wie folgt dargestellt:

Bild9/9
Die Anzugs− oder Einschaltverzögerung kann mit Schritten
und ohne Schritte programmiert werden.

Zuerst das Beispiel mit Schritten:

9−8 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

SCHRITT Anfang
”” Die Zeit startet mit dem Eingang E0.5
WENN E0.5 ’Eingang für Anzugsverzögerung
DANN SETZE T2 ’Anzugsverzögerung mit Schritten
MIT 5s
SCHRITT warten
”” Wenn der Eingang zu 0 wird, wird die Zeit abgebrochen
WENN N E0.5 ’Eingang für Anzugsverzögerung
DANN RESET T2 ’Anzugsverzögerung mit Schritten
SP NACH Anfang
”” Wenn die Zeit abgelaufen ist und der Eingang noch aktiv, wird der
”” Ausgang eingeschaltet
WENN N T2 ’Anzugsverzögerung mit Schritten
UND E0.5 ’Eingang für Anzugsverzögerung
DANN SETZE A0.5 ’Ausgang Anzugsverzögerung Schritte
SCHRITT Ende
”” Wenn der Eingang zu 0 wird, wird auch der Ausgang abgeschaltet
WENN N E0.5 ’Eingang für Anzugsverzögerung
DANN RESET A0.5 ’Ausgang Anzugsverzögerung Schritte
SP NACH Anfang

Bild9/10: Beispiel mit Schritten

”” Starten der Zeit, wenn sie nicht bereits gestartet ist oder war
WENN N T3 ’Anzugsverzögerung ohne Schritte
UND E0.5 ’Eingang für Anzugsverzögerung
UND N M0.0 ’Flankenmerker für Anzugsverzögerung
DANN SETZE T3 ’Anzugsverzögerung ohne Schritte
MIT 5s
SETZE M0.0 ’Flankenmerker für Anzugsverzögerung
”” Zeitbaustein und Ausgang und Flankenmerker werden abgeschaltet,
”” sobald der Eingang zu 0 wird
WENN N E0.5 ’Eingang für Anzugsverzögerung
DANN RESET T3 ’Anzugsverzögerung ohne Schritte
RESET A0.4 ’Anzeige Anzugsverzögerung ohne Schr
RESET M0.0 ’Flankenmerker für Anzugsverzögerung
”” Der Ausgang wird eingeschaltet, sobald der Zeitbaustein beendet
”” ist und der Eingang noch aktiv ist
WENN N T3 ’Anzugsverzögerung ohne Schritte
UND M0.0 ’Flankenmerker für Anzugsverzögerung
UND E0.5 ’Eingang für Anzugsverzögerung
DANN SETZE A0.4 ’Anzeige Anzugsverzögerung ohne Schr

Bild9/11: Beispiel ohne Schritte

Festo P.BE−FST4−LB−DE de 0403NH 9−9


9. Zeiten und Zähler mit FST in Anweisungsliste

9.1.4 Die Abfallverzögerung

Die Abfallverzögerung oder Ausschaltverzögerung schaltet


einen Ausgang mit dem Eingang sofort ein und lässt ihn für
die vorgewählte Zeit weiter eingeschaltet, nachdem der Ein
gang zu ’0’ geworden ist.

Bild9/12

9−10 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Die Abfallverzögerung mit Schritten kann wie folgt program


miert werden:

SCHRITT Anfang
WENN E0.4 ’Abschaltverzögerung starten
DANN SETZE A0.3 ’Abschaltverz. mit Schritten
WENN N E0.4 ’Abschaltverzögerung starten
UND A0.3 ’Abschaltverz. mit Schritten
DANN SETZE T4 ’Abschaltverzögerung mit Schritten
MIT 5s
SCHRITT Warten
WENN N T4 ’Abschaltverzögerung mit Schritten
DANN RESET A0.3 ’Abschaltverz. mit Schritten
SP NACH Anfang

Bild9/13

Wenn keine Schritte benutzt werden, dann kann so vorgegan


gen werden:

”” Ausgang einschalten, Flankenmerker zurücksetzen


WENN E0.4 ’Abschaltverzögerung starten
DANN SETZE A0.2 ’Abschaltverz. ohne Schritte
RESET M0.1 ’Flankenmerker Abschaltverzögerung
”” Zeit starten, Flankenmerker setzen
WENN N E0.4 ’Abschaltverzögerung starten
UND A0.2 ’Abschaltverz. ohne Schritte
UND N M0.1 ’Flankenmerker Abschaltverzögerung
DANN SETZE T5 ’Abschaltverz. ohne Schritte
MIT 5s
SETZE M0.1 ’Flankenmerker Abschaltverzögerung
”” Zeit ist beendet
WENN N T5 ’Abschaltverz. ohne Schritte
UND M0.1 ’Flankenmerker Abschaltverzögerung
DANN RESET A0.2 ’Abschaltverz. ohne Schritte

Bild9/14

Festo P.BE−FST4−LB−DE de 0403NH 9−11


9. Zeiten und Zähler mit FST in Anweisungsliste

9.1.5 Der Blinker

Nehmen wir an, wir möchten einen Ausgang mit einer Fre
quenz von 2 Sekunden (0,5 Hz) blinken lassen. Dann soll die
ser Ausgang jeweils 1 Sekunde 1" und 1 Sekunde 0" sein.
Auch diese Aufgabe lässt sich natürlich mit und ohne Schritte
programmieren. Zuerst wieder die Version mit Schritten.

SCHRITT Anfang
”” Zeit von 1 sek. starten und Ausgang einschalten
WENN NOP
DANN SETZE T6 ’Blinkzeit mit Schritten
MIT 1s
SETZE A0.1 ’Blinker mit Schritten
SCHRITT warten
”” Wenn 1 sek. beendet ist, Ausgang abschalten und Aus–Zeit starten
WENN N T6 ’Blinkzeit mit Schritten
DANN RESET A0.1 ’Blinker mit Schritten
SETZE T6 ’Blinkzeit mit Schritten
SCHRITT Ende
”” Nach Ablauf der Aus–Zeit zurück springen
WENN N T6 ’Blinkzeit mit Schritten
DANN SP NACH Anfang

Bild9/15

Die Version ohne Schritte kann kurz und knapp lauten:

”” Der Timer startet sich jede Sekunde selbst


”” Der Ausgang wechselt jede Sekunde seinen Zustand
WENN N T7 ’Blinkzeit ohne Schritte
DANN SETZE T7 ’Blinkzeit ohne Schritte
MIT 1s
LADE N A0.0 ’Ausgang blinkt ohne Schritte
NACH A0.0 ’Ausgang blinkt ohne Schritte

Bild9/16

9−12 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

9.2 Der Zählerbaustein28

Genauso wie man den Zeitbaustein grafisch darstellen kann,


kann man auch den Zähler betrachten.
Im Vergleich zum Zeitbaustein benötigen wir aber zusätzliche
Anschlüsse.

Bild9/17

Einige praktische Beispiele sollen Möglichkeiten des Um


gangs mit Zählers zeigen.

9.2.1 Der Vorwärtszähler

Nehmen wir folgende Aufgabe an: Das Signal an einem Ein


gang soll gezählt werden. Nach 5 Signalen soll ein Ausgang
eingeschaltet werden. Mit einem Reset−Eingang wird zu jeder
Zeit der Zähler zurückgesetzt und der Ausgang abgeschaltet.

28 Alle Beispiele zum Zählerbaustein finden Sie auf der CD unter dem
Namen Zaehler.ZIP

Festo P.BE−FST4−LB−DE de 0403NH 9−13


9. Zeiten und Zähler mit FST in Anweisungsliste

In einem Schrittprogramm könnte so programmiert werden:

”” Laden des Sollwertes


SCHRITT Anfang
WENN NOP
DANN LADE K5
NACH ZV0 ’Sollwert Zähler 0
SETZE Z0 ’Vorwärtszähler
”” Zählen und Überwachen des Reset–Eingangs
SCHRITT Zählen
WENN E0.1 ’Zähler rücksetzen
DANN SP NACH Anfang
WENN E0.0 ’Eingangssignal, das gezählt wird
DANN ZV Z0 ’Vorwärtszähler
”” Zähler auswerten
SCHRITT Weiter
WENN E0.1 ’Zähler rücksetzen
DANN RESET Z0 ’Vorwärtszähler
SP NACH Anfang
WENN N E0.0 ’Eingangssignal, das gezählt wird
UND Z0 ’Vorwärtszähler
DANN SP NACH Zählen
WENN N E0.0 ’Eingangssignal, das gezählt wird
UND N Z0 ’Vorwärtszähler
DANN SETZE A0.0 ’Zeigt Ende Zählvorgang
”” Zurücksetzen
SCHRITT Reset
WENN E0.1 ’Zähler rücksetzen
DANN RESET A0.0 ’Zeigt Ende Zählvorgang
SP NACH Anfang
WENN NOP
DANN SP NACH Reset

Bild9/18

9−14 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Ein reines Verknüpfungsprogramm ohne Schritte benötigt


einen Flankenmerker für den Zähleingang selbst und ebenso
einen Anfang. Hier wird der Merker MI benutzt, der in jedem
Programm zur Verfügung steht. Der Initialisierungsmerker ist
für genau einen Zyklus nach dem Einschalten des Programms
aktiv.

”” Mit dem Einschalten des Programms


”” oder durch den Eingang E0.1 wird der Sollwert auf 5 gesetzt
WENN MI ’Initialisierungsmerker
ODER E0.1 ’Zähler rücksetzen
DANN LADE K5
NACH ZV1 ’Sollwert Zähler 1
SETZE Z1 ’Zähler 1
RESET A0.1 ’Zählergebnis
”” Zählen
WENN E0.0 ’Eingangssignal, das gezählt wird
UND N M0.0 ’Flankenerkennung Zähler
DANN SETZE M0.0 ’Flankenerkennung Zähler
ZV Z1 ’Zähler 1
”” Flankenmerker zurücksetzen
WENN N E0.0 ’Eingangssignal, das gezählt wird
DANN RESET M0.0 ’Flankenerkennung Zähler
”” Zähler auswerten
WENN N Z1 ’Zähler 1
DANN SETZE A0.1 ’Zählergebnis

Bild9/19

9.2.2 Der Rückwärtszähler

Der Rückwärtszähler unterscheidet sich vom Vorwärtszähler


nur unwesentlich. Der Rückwärtszähler zeigt an, wie viele
Teile noch ’fehlen’, der Vorwärtszähler zeigt an, wie viele Teile
bereits gezählt wurden.

Festo P.BE−FST4−LB−DE de 0403NH 9−15


9. Zeiten und Zähler mit FST in Anweisungsliste

Nach dem Befehl ’SETZE ZX’ wird der Istwert des Zählers auf
den Anfangswert geladen. Der Sollwert wird nicht näher be
trachtet, da das Ziel jetzt die 0 ist. Der Zählvorgang selbst
benutzt den Befehl für das Rückwärtszählen, ZR.

Dies ist dann das Ergebnis mit Schritten.

”” Laden des Sollwertes


SCHRITT Anfang
WENN NOP
DANN SETZE Z2 ’Rückwärtszähler mit Schritten
LADE K5
NACH ZW2 ’Istwert des Zählers2
”” Zählen und Überwachen des Reset–Eingangs
SCHRITT Zählen
WENN E0.3 ’Rückwärtszähler rücksetzen
DANN SP NACH Anfang
WENN E0.2 ’Zähleingang Rückwärtszähler
DANN ZR Z2 ’Rückwärtszähler mit Schritten
”” Zähler auswerten
SCHRITT Weiter
WENN E0.3 ’Rückwärtszähler rücksetzen
DANN RESET Z2 ’Rückwärtszähler mit Schritten
SP NACH Anfang
WENN N E0.2 ’Zähleingang Rückwärtszähler
UND Z2 ’Rückwärtszähler mit Schritten
DANN SP NACH Zählen
WENN N E0.2 ’Zähleingang Rückwärtszähler
UND N Z2 ’Rückwärtszähler mit Schritten
DANN SETZE A0.2 ’Zählergebnis Rückw. Schritte
”” Zurücksetzen
SCHRITT Reset
WENN E0.3 ’Rückwärtszähler rücksetzen
DANN RESET A0.2 ’Zählergebnis Rückw. Schritte
SP NACH Anfang

Bild9/20

9−16 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Und so könnte ohne Schritte programmiert werden:

”” Mit dem Einschalten des Programms


”” oder durch den Eingang E0.1 wird der Sollwert auf 5 gesetzt
WENN MI ’Initialisierungsmerker
ODER E0.3 ’Rückwärtszähler rücksetzen
DANN SETZE Z2 ’Rückwärtszähler ohne Schritte
LADE K5
NACH ZW3 ’Istwert Zähler 3
RESET A0.3 ’Zählergebnis Rückwärtszähler
”” Zählen
WENN E0.2 ’Zähleingang Rückwärtszähler
UND N M0.1 ’Flankenerkennung Rückwärtszähler
DANN SETZE M0.1 ’Flankenerkennung Rückwärtszähler
ZR Z3 ’Rückwärtszähler ohne Schritte
”” Flankenmerker zurücksetzen
WENN N E0.2 ’Zähleingang Rückwärtszähler
DANN RESET M0.1 ’Flankenerkennung Rückwärtszähler
”” Zähler auswerten
WENN N Z3 ’Rückwärtszähler ohne Schritte
DANN SETZE A0.3 ’Zählergebnis Rückwärtszähler

Bild9/21

Festo P.BE−FST4−LB−DE de 0403NH 9−17


9. Zeiten und Zähler mit FST in Anweisungsliste

9.2.3 Der Zähler ohne den Zähler(baustein)29

Zugegeben, das klingt seltsam. Ist aber recht einfach.


Die Zählbefehle ZR  Zähle Rückwärts und ZV  Zähle Vor
wärts können grundsätzlich auf fast jedes beliebige Wort
angewandt werden. Man kann also ein Ausgangswort ebenso
wählen wie ein Merkerwort.
Nur steht dann der Komfort des Zählerstatus nicht mehr zur
Verfügung.

Manchmal ist der Zählerstatus aber eher hinderlich, wenn


beispielsweise mehrere Zählerwerte ausgewertet werden
sollen oder wenn es schlicht um einen addierenden Stückzäh
ler geht, der stets Auskunft geben soll, über die bisher produ
zierten Teile.

Nehmen wir folgende Aufgabe an:


Ein Stückzähler soll auf einer Ampel anzeigen, wie weit die
Produktion gekommen ist.
Am Eingang Signal kommt das Signal zum Zählen.
Der Eingang Ruecks setzt den Zähler auf 0 zurück.
Am Ausgang ROT wird angezeigt, wenn die Stückzahl unter 10
ist.
Am Ausgang Gelb wird angezeigt, dass die Stückzahl zwi
schen 10 und 20 ist.
Am Ausgang Grün wird angezeigt, dass bereits mehr als 20
Stück produziert sind.

Noch eine Anmerkung:


Ein Stückzähler soll üblicherweise seinen Wert auch bei Span
nungsausfall behalten. Folglich benutzen wir eine Variable,
die remanent ist. Beim im Beispiel eingesetzten FEC also ein
Merkerwort aus dem Bereich der Worte MW0 bis MW255.

29 Das hier beschriebene Projekt finden Sie auf der CD unter dem
Namen STUECKZ.ZIP

9−18 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

So könnte das Programm aussehen:

”” Rücksetzen des Stückzählers


WENN E0.1 ’Eingang Rücksetzen Stückzähler
DANN LADE K0
NACH MW0 ’Stückzähler
”” Zählen
WENN E0.0 ’Signal Stückzähler
UND N M1.0 ’Flankenerkennung Eingangssignal
DANN ZV MW0 Stückzähler
SETZE M1.0 ’Flankenerkennung Eingangssignal
WENN N E0.0 ’Signal Stückzähler
DANN RESET M1.0 ’Flankenerkennung Eingangssignal
”” Auswertung Stückzahl im roten Bereich
WENN MW0 ’Stückzähler
< K10
DANN SETZE A0.0 ’ROT
RESET A0.1 ’GELB
RESET A0.2 ’GRÜN
”” Auswertung Stückzahl im gelben Bereich
WENN ( MW0 ’Stückzähler
< K20 )
UND ( MW0 ’Stückzähler
>= K10 )
DANN RESET A0.0 ’ROT
SETZE A0.1 ’GELB
RESET A0.2 ’GRÜN
”” Auswertung Stückzahl im roten Bereich
WENN MW0 ’Stückzähler
>= K20
DANN RESET A0.0 ’ROT
RESET A0.1 ’GELB
SETZE A0.2 ’GRÜN

Bild9/22

Festo P.BE−FST4−LB−DE de 0403NH 9−19


9. Zeiten und Zähler mit FST in Anweisungsliste

9.2.4 Zeiten und Zähler kombinieren30

Interessant sind auch Beispiele, bei denen Zeiten und Zähler


kombiniert werden. Ein Beispiel für eine solche Kombination
ist die Anforderung, die Geschwindigkeit einer eingesetzten
Steuerung zu messen, also eine Performancemessung.

Für eine Performance−Messung wollen wir prüfen, wie lange


ein einzelner Zyklus dauert. In der Automatisierungstechnik
sind hier drei Werte von besonderem Interesse:

 die Zykluszeit der Zentraleinheit der Steuerung, die völlig


unabhängig von irgendwelchen Sensoren oder Aktoren ist
und lediglich den Durchlauf durch die Programme und
Bausteine misst,

 die Zykluszeit mit angeschlossenen Ein−/Ausgängen, also


die Reaktionszeit des Systems, die vergeht, bis auf ein
Eingangssignal ein Ausgangssignal geschaltet wird, und
schließlich

 die Zykluszeit der Maschine.

Prinzipiell können alle drei Messungen mit nahezu identi


schen Programmen durchgeführt werden: Ein pro Zyklus ein
mal wechselndes Signal zählt einen Zähler jeweils um 1 nach
oben.
Alle Sekunde (oder Minute oder Stunde ...) wird der Zähler
stand abgefragt, gespeichert und der Zähler beginnt wieder
von vorne. Nun können wir aus Zählerstand und Zeit die Zy
kluszeit für einen einzelnen Zyklus berechnen.

30 Das Programmbeispiel Sie unter Zyklus.ZIP auf der CD.

9−20 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Zykluszeitmessung
Zum Einstieg soll die interne Zykluszeit der CPU gemessen
werden. Hierfür wird ein Merkerwort benutzt, das in jedem
CPU Zyklus einmal hoch gezählt wird. Jede Sekunde wird der
Endstand erfasst, gespeichert und umgerechnet31 .

”” Das Merkerwort 0 wird in jedem CPU Zyklus um 1 erhöht


WENN NOP
DANN ZV MW0 ’Wird in jedem CPU Zyklus um 1 erhöht
”” Ein Timer wird jede Sekunde einmal gestartet
WENN N T0 ’Jede Sekunde messen
DANN SETZE T0 ’Jede Sekunde messen
MIT 1s
””Zugleich wird jede Sekunde der Zählerwert gespeichert
LADE MW0 ’Wird in jedem CPU Zyklus um 1 erhöht
NACH R0 ’Zwischenspeicher Zyklenzähler
””Und der Zyklenzähler neu gestartet
LADE K0
NACH MW0 ’Wird in jedem CPU Zyklus um 1 erhöht
””Auswertung der Zählerstandes
WENN R0 ’Zwischenspeicher Zyklenzähler
<> K0
DANN LADE K1000
/ R0 ’Zwischenspeicher Zyklenzähler
NACH R1 ’Dauer eines Zyklus in ms

Bild9/23

31 Beachten Sie bitte bei Ihren Tests: Die meisten Steuerungen haben
eine Mindest−Zykluszeit. Diese wird nicht kürzer, gleichgültig wie
klein Ihr Projekt ist. Um zu berechnen, wie viel Zeit die Steuerung
pro Anweisung benötigt, müssen zwei Messungen erfolgen. Eine
mit X Zeilen Anweisung und weitere mit X+Y Zeilen Anweisung. Aus
den unterschiedlichen Zeiten kann man die Zeit pro Anweisung
berechnen.

Festo P.BE−FST4−LB−DE de 0403NH 9−21


9. Zeiten und Zähler mit FST in Anweisungsliste

Reaktionszeitmessung
Für die Reaktionszeitmessung, also die Messung der Zeit, die
vom Anlegen eines Signals an einer Eingangsklemme bis zum
Umschalten eines Ausgangs vergeht, benötigen wir ein wenig
Hardware: Ein Eingang und ein Ausgang werden an der Steu−
erung miteinander verdrahtet. Im Programm führt jedes Um
schalten des Eingangs zu einem veränderten Ausgangssignal.

”” Schalten des Ausgangs


WENN N E1.0 ’Eingang für Reaktionszeitmessung
DANN SETZE A0.7 ’Ausgang für Reaktionszeitmessung
SONST RESET A0.7 ’Ausgang für Reaktionszeitmessung
”” Zählen
WENN E1.0 ’Eingang für Reaktionszeitmessung
UND N M2.0 ’Flankenmerker für Reaktionszeitmessu
DANN ZV MW3 ’Reaktionszeitzähler
SETZE M2.0 ’Flankenmerker für Reaktionszeitmessu
WENN N E1.0 ’Eingang für Reaktionszeitmessung
DANN RESET M2.0 ’Flankenmerker für Reaktionszeitmessu
””Auswerten
WENN N T1 ’Zeit für Reaktionszeitmessung
DANN SETZE T1 ’Zeit für Reaktionszeitmessung
MIT 1s
LADE MW3 ’Reaktionszeitzähler
NACH R2 ’Zwischenspeicher für Reaktionszeit
LADE K0
NACH MW3 ’Reaktionszeitzähler
”” Umrechnen
WENN R2 ’Zwischenspeicher für Reaktionszeit
<> K1000
/ R2 ’Zwischenspeicher für Reaktionszeit
NACH R3 ’Reaktionszeit in ms

Bild9/24

9−22 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

9.3 Grenzen des Einsatzes von Zeiten und Zählern

Zeiten und Zähler sind digitale Elemente, sie benutzen Wör


ter, die verändert werden. Die FST Software benutzt hier auch
Wörter im SPS−Sinn, also 16 Bit breite Einheiten. Ein 16 Bit
Wert kann  dezimal ausgedrückt  Werte zwischen 0 und
216  1 = 65535 annehmen.

 Ein Zähler kann also grundsätzlich nur bis zu diesem Wert


zählen, anschließend beginnt er wieder bei 0. Ein Überlauf
muss im Programm selbst erkannt werden, da kein Über
laufbit vorhanden ist.

 Eine Zeit kann damit bis zu 65 535 Zeittakte zählen. Da


jeder FST Timer mit dem Zeittakt von 10 ms = 0,01 s ar
beitet, kann die längste Zeit mit einem Zeitbaustein folg
lich 65535 x 0,01s = 655,35 s = 10min 55,35 s sein.

 Ein Zeitbaustein zählt den internen Zeitzähler alle 10 ms


um 1 nach unten. Dieser Zeittakt arbeitet völlig unabhän
gig von jeder Anwendung und jedem Prozess. Tritt nun in
der Anwendung ein Ereignis auf, das verzögert werden
soll, dann vergeht von diesem Ereignis bis zum ersten
Zähltakt eine unbestimmte Zeit zwischen 10 und 0 ms.
Daraus ergibt sich, dass jede FST Zeit einen Fehler von bis
zu 10 ms hat. Daher sollte im Programm niemals eine
Zeit programmiert werden, die kleiner als 2 x 10 ms ist
(und diese Zeit hat dann einen Fehler von maximal 10ms,
das heißt maximal 50%).

Festo P.BE−FST4−LB−DE de 0403NH 9−23


9. Zeiten und Zähler mit FST in Anweisungsliste

9.4 Praktische Anwendung von Zeiten und Zähler

9.4.1 Das Garagentor mit Zeiten/Zählern 32

In Kapitel 3 wurde das Garagentor programmiert. Das dort


benutzte Projekt Garage soll jetzt erweitert werden um zwei
Funktionen:
 Die Bewegungen des Garagentors werden gezählt. Nach
2000 Zyklen soll mit Hilfe eines Ausgangs angezeigt wer
den, dass die Mechanik gewartet werden muss. Ein zu
sätzlicher Quittiereingang setzt den Zähler zurück.
 Das Endschaltersignal ’Tor ist geschlossen’ soll um 1 Se
kunde verzögert werden, um Ungenauigkeiten beim Ein
bau des Endschalters auszugleichen.
Das Programm zur Zählung der Betriebszyklen wird am Bes−
ten in einem eigenständigen Programm abgelegt. Dort kann
es heißen:

”” Der Zyklenzähler wird mit dem Quittiereingang zurück gesetzt


WENN E0.7 ’Zyklenzähler quittieren
DANN LADE K2000
NACH ZV0 ’Sollwert Zyklenzähler
SETZE Z0 ’Zyklenzähler
”” Das Grenztastersignal >Tor ist offen<
”” liefert das Signal zum Zählen der Torzyklen
WENN E0.0 ’Grenztaster Garagentor ist offen
UND N M0.0 ’Flankenmerker Zyklenzähler
DANN ZV Z0 ’Zyklenzähler
SETZE M0.0 ’Flankenmerker Zyklenzähler
WENN N E0.0 ’Grenztaster Garagentor ist offen
DANN RESET M0.0 ’Flankenmerker Zyklenzähler
”” Nach 2000 Zyklen wird auf die Wartung hingewiesen
WENN N Z0 ’Zyklenzähler
DANN SETZE A0.7 ’Wartung ist nötig
SONST RESET A0.7 ’Wartung ist nötig

Bild9/25

32 Dieses Beispiel finden Sie als Gar_Zt.Zip auf Ihrer CD.

9−24 Festo P.BE−FST4−LB−DE de 0403NH


9. Zeiten und Zähler mit FST in Anweisungsliste

Die Verzögerung des Grenztasters gehört direkt in das Pro


gramm der Torsteuerung. Hier wird also ergänzt:

””Projekt: Garage
”” Garagentor öffnen
WENN Auf_In ’Taster innen AUF
ODER ( Auf_auss ’Taster außen AUF
UND Schluess )’Schlüsselschalter außen
UND N Motor_Zu ’Garagentor schließen
UND N Zu_In ’Taster Innen ZU
UND N Zu_Auss ’Taster außen ZU
DANN SETZE Motor_Auf ’Garagentor öffnen
””Garagentor stoppen
WENN offen ’Grenztaster Garagentor ist offen
ODER Zu_In ’Taster Innen ZU
ODER Zu_Auss ’Taster außen ZU
DANN RESET Motor_Auf ’Garagentor öffnen
””Garagentor schließen
WENN ( Zu_In ’Taster Innen ZU
ODER Zu_Auss ) ’Taster außen ZU
UND N M0.2 ’Tor ist geschlossen
UND N Motor_Auf ’Garagentor öffnen
UND N Auf_In ’Taster innen AUF
UND N Auf_auss ’Taster außen AUF
DANN SETZE Motor_Zu ’Garagentor schließen
SONST RESET Motor_Zu ’Garagentor schließen
”” Signal >Tor geschlossen< verzögern
WENN geschloss ’Grenztaster Garage ist geschlossen
UND N M0.1 ’Flankenerkennung Anzugsverzögerung
UND N T0 ’Verzögerung Tor geschlossen
DANN SETZE T0 ’Verzögerung Tor geschlossen
MIT 1s
SETZE M0.1 ’Flankenerkennung Anzugsverzögerung
WENN N geschloss ’Grenztaster Garage ist geschlossen
DANN RESET M0.1 ’Flankenerkennung Anzugsverzögerung
RESET T0 ’Verzögerung Tor geschlossen
WENN N T0 ’Verzögerung Tor geschlossen
UND geschloss ’Grenztaster Garage ist geschlossen
DANN SETZE M0.2 ’Tor ist geschlossen
SONST RESET M0.2 ’Tor ist geschlossen

Bild9/26

Festo P.BE−FST4−LB−DE de 0403NH 9−25


9. Zeiten und Zähler mit FST in Anweisungsliste

9−26 Festo P.BE−FST4−LB−DE de 0403NH


Zeiten und Zähler mit FST in Kontaktplan

Kapitel 10

Festo P.BE−FST4−LB−DE de 0403NH 10−1


10. Zeiten und Zähler mit FST in Kontaktplan

Inhaltsverzeichnis

10. Zeiten und Zähler mit FST in Kontaktplan . . . . . . . . . . . . . . . . . . . . . . . . . . 10−1

10.1 Der Zeitbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−3


10.1.1 Beginnen wir mit einem einfachen Beispiel: . . . . . . . . . . . . . . . . . . 10−4
10.1.2 Die Einschaltverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−6
10.1.3 Die Abfallverzögerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−7
10.1.4 Der Zeitbaustein im Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−9
10.2 Der Zählerbaustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−11
10.2.1 Der Vorwärtszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−11
10.2.2 Der Universalzähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−13
10.2.3 Zeiten und Zähler kombinieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10−14
10.3 Grenzen des Einsatzes von Zeiten und Zählern . . . . . . . . . . . . . . . . . . . . . . . 10−16

10−2 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

Es dürfte kein Automatisierungsprojekt geben, in dem nicht


Zeiten und nur wenige, in dem nicht Zähler verwendet wer
den. Also sollten wir uns mit Zeiten und Zählern genau be
schäftigten.

Zeiten und Zähler gehören zusammen. Denn ein Zeitbaustein


ist ein Zähler, der Zeittakte zählt. Der Zeitbaustein ist aber
etwas einfacher zu handhaben als ein Zähler, da einige Zäh
lerfunktionen versteckt sind. Beginnen wir also mit den Zei
ten.

10.1 Der Zeitbaustein33

Ein Zeitbaustein lässt sich grafisch wie folgt darstellen:

Bild10/1: Grafische Darstellung eines Zeitbausteins

Ein Zeitbaustein benötigt mindestens drei Anschlüsse:

 einen Eingang zum Start

 einen Eingang, um die Zeit einzustellen

 einen Ausgang, der mitteilt, ob der Baustein noch aktiv ist


oder nicht.

Zusätzlich kann evtl. die bereits abgelaufene Zeit angezeigt


werden.

33 Alle Zeitbeispiele finden Sie auf der CD unter dem Namen


ZEITKOP.ZIP

Festo P.BE−FST4−LB−DE de 0403NH 10−3


10. Zeiten und Zähler mit FST in Kontaktplan

In FST bekommen diese Ein− und Ausgänge einen Namen:

 Der Zeitbaustein (Timer) selbst wird T genannt. Da es 256


Timer gibt, gibt es also die Timer T0 ... T255

 Gestartet wird die Zeit, indem dieser Baustein in einer


Spule aufgerufen wird

 Die eingestellte Zeit, der Sollwert, steht in der Timer−Vor


wahl, TV0 ... TV255

 Der Zeitbaustein selbst wird nach dem Aufruf zu ’1’ und


nach Ablauf der Zeit zu ’0’

 Der aktuelle Zeitwert, der Istwert, steht im Timer−Wort,


TW0 ... TW255

10.1.1 Beginnen wir mit einem einfachen Beispiel:

Wenn der Eingang E0.6 an unserer Steuerung betätigt wird,


soll während einer Zeit von 5 Sekunden der Ausgang A0.6
aktiv sein:

Bild10/2

10−4 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

Das Programm könnte wie folgt lauten:

Bild10/3

Betrachten wir das Programm etwas näher:

 im ersten Netzwerk wird die Zeit gestartet. Durch die Na


mensgebung ’T0’ wird der Timer in Kontaktplan als
Impulstimer genutzt.

 Am Zeiteingang wird die Zeit in Sekunden angegeben.


Zulässige Werte hier sind 0.01 s ... 655.35 s.

Im Online Display sehen wir den Status, den aktuellen Wert


(Istwert) und den Vorwahlwert (Sollwert):

Bild10/4

Festo P.BE−FST4−LB−DE de 0403NH 10−5


10. Zeiten und Zähler mit FST in Kontaktplan

10.1.2 Die Einschaltverzögerung

Die Einschalt− oder Anzugsverzögerung hat die Eigenschaft,


dass der Ausgang zu 1 wird, wenn die Zeit beendet ist UND
der Eingang noch 1 ist.
Grafisch wird das wie folgt dargestellt:

Bild10/5

10−6 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

In Kontaktplan wird der Timer ’TE’ genannt.

Bild10/6

10.1.3 Die Abfallverzögerung

Die Abfallverzögerung oder Ausschaltverzögerung schaltet


einen Ausgang mit dem Eingang sofort ein und lässt ihn für
die vorgewählte Zeit weiter eingeschaltet, nachdem der Ein
gang zu ’0’ geworden ist.

Festo P.BE−FST4−LB−DE de 0403NH 10−7


10. Zeiten und Zähler mit FST in Kontaktplan

Bild10/7

Im Kontaktplan wird der Timer TA genannt  und erhält damit


die Eigenschaften der Abschaltverzögerung.

Bild10/8

10−8 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

10.1.4 Der Zeitbaustein im Detail

Nicht immer reichen die vorgefertigten Zeitbausteine aus.


Daher lässt auch der Kontaktplan die Möglichkeit zu, jede
einzelne Komponente eines Zeitbausteins einzeln anzuspre
chen.
So können Werte in die Timervorwahl ebenso geladen werden
wie in das Timerwort. Damit könnte beispielsweise im Laufe
eines Prozesses eine bestimmte Zeit verändert werden o.ä.
Die drei Komponenten des Zeitbausteins sind:

 Timerstatus T

 Timervorwahl TV

 Timerwort TW.

Der Timerstatus ist ein Bit−Operand, er kann also in einer


Spule genutzt werden. Timervorwahl und Timerwort sind 16
Bit Operanden, Werte können also geladen (’nach’), ausgele
sen, verglichen, hochgezählt (Increment) oder herunterge
zählt (Decrement) werden.

Die Timer arbeiten immer mit einer Zeitkonstante von 10 ms


(0,01 s). Schreiben wir also in eine Timervorwahl den Wert 50,
dann ergibt sich eine Zeit von 50 x 10 ms = 500 ms = 0,5 s.
Das folgende Beispiel zeigt den direkten Zugriff auf Timer
komponenten.

Festo P.BE−FST4−LB−DE de 0403NH 10−9


10. Zeiten und Zähler mit FST in Kontaktplan

Bild10/9

10−10 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

10.2 Der Zählerbaustein34

Genauso wie man den Zeitbaustein grafisch darstellen kann,


kann man auch den Zähler betrachten. Im Vergleich zum Zeit
baustein benötigen wir aber zusätzliche Anschlüsse.

Bild10/10

Einige praktische Beispiele sollen Möglichkeiten des Um


gangs mit Zählern zeigen.

10.2.1 Der Vorwärtszähler

Nehmen wir folgende Aufgabe an: Das Signal an einem Ein


gang soll gezählt werden. Nach 5 Signalen soll ein Ausgang
eingeschaltet werden. Mit einem Reset−Eingang wird zu jeder
Zeit der Zähler zurückgesetzt und der Ausgang abgeschaltet.

34 Die Beispiele zum Zählerbaustein in Kontaktplan finden Sie auf der


CD unter ZAEHLKOP.ZIP

Festo P.BE−FST4−LB−DE de 0403NH 10−11


10. Zeiten und Zähler mit FST in Kontaktplan

Das Programm könnte so aussehen:

Bild10/11

Hinweis
Der Zustand des Zählers (hier Z1) ist bei einer neuen ’lee
ren’ Steuerung ’0’, d.h. der Zähler ist inaktiv.
Im obigen Programmbeispiel würde dies dazu führen, dass
der Ausgang A0.0 eingeschaltet wird. Es wird nämlich in
diesem Beispiel nicht unterschieden, ob der Zähler zu ’0’
geworden ist, weil bis zur Zählervorwahl hochgezählt
wurde, oder weil der Zähler noch nie aktiviert wurde.

10−12 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

10.2.2 Der Universalzähler

Viele Programmierer nutzen die Zählerbausteine universeller.


Mit der FST Software kann grundsätzlich jeder Mehrbitope
rand mit den Befehlen I  Incrementieren, vorwärtszählen 
oder D  decrementieren, rückwärtszählen  gezählt werden.
Ebenso kann mit jedem Mehrbitoperand gerechnet (z.B. Ad
diere +1) und verglichen werden (wenn der Wert = 25 ist ...).

Mit dieser Voraussetzung könnte man das obige Beispiel um


schreiben:

Bild10/12

Festo P.BE−FST4−LB−DE de 0403NH 10−13


10. Zeiten und Zähler mit FST in Kontaktplan

10.2.3 Zeiten und Zähler kombinieren

Interessant sind auch Beispiele, bei denen Zeiten und Zähler


kombiniert werden. Ein berühmtes Beispiel für eine solche
Kombination ist die Anforderung, die Geschwindigkeit einer
eingesetzten Steuerung zu messen, also eine Performance
messung.35

Für eine Performance−Messung wollen wir prüfen, wie lange


ein einzelner Zyklus dauert. In der Automatisierungstechnik
sind hier drei Werte von besonderem Interesse:

 die Zykluszeit der Zentraleinheit der Steuerung, die völlig


unabhängig von irgendwelchen Sensoren oder Aktoren ist
und lediglich den Durchlauf durch die Programme und
Bausteine misst,

 die Zykluszeit mit angeschlossenen Ein−/Ausgängen, also


die Reaktionszeit des Systems, die vergeht, bis auf ein
Eingangssignal ein Ausgangssignal geschaltet wird, und
schließlich

 die Zykluszeit der Maschine.

Prinzipiell können alle drei Messungen mit nahezu identi


schen Programmen durchgeführt werden: Ein pro Zyklus ein
mal wechselndes Signal zählt einen Zähler jeweils um 1 nach
oben.
Alle Sekunde (oder Minute oder Stunde ...) wird der Zähler
stand abgefragt, gespeichert und der Zähler beginnt wieder
von vorne. Nun können wir aus Zählerstand und Zeit die Zy
kluszeit für einen einzelnen Zyklus berechnen.

Zykluszeitmessung
Zum Einstieg soll die interne Zykluszeit der CPU gemessen
werden. Hierfür wird ein Merkerwort benutzt, das in jedem
CPU Zyklus einmal hoch gezählt wird.

35 Sie finden das Beispiel als ZYKL_KOP.ZIP auf Ihrer CD.

10−14 Festo P.BE−FST4−LB−DE de 0403NH


10. Zeiten und Zähler mit FST in Kontaktplan

Jede Sekunde wird der Endstand erfasst, gespeichert und


umgerechnet36.

Bild10/13

36 Beachten Sie bitte bei Ihren Tests: Die meisten Steuerungen haben
eine Mindest−Zykluszeit. Diese wird nicht kürzer, gleichgültig wie
klein Ihr Projekt ist. Um zu berechnen, wie viel Zeit die Steuerung
pro Anweisung benötigt, müssen zwei Messungen erfolgen. Eine
mit X Zeilen Anweisung und weitere mit X+Y Zeilen Anweisung. Aus
den unterschiedlichen Zeiten kann man die Zeit pro Anweisung
berechnen.

Festo P.BE−FST4−LB−DE de 0403NH 10−15


10. Zeiten und Zähler mit FST in Kontaktplan

10.3 Grenzen des Einsatzes von Zeiten und Zählern

Zeiten und Zähler sind digitale Elemente, sie benutzen Wör


ter, die verändert werden. Die FST Software benutzt hier auch
Wörter im SPS−Sinn, also 16 Bit breite Einheiten. Ein 16 Bit
Wert kann  dezimal ausgedrückt  Werte zwischen 0 und
216  1 = 65535 annehmen.

 Ein Zähler kann also grundsätzlich nur bis zu diesem Wert


zählen, anschließend beginnt er wieder bei 0. Ein Überlauf
muss im Programm selbst erkannt werden, da kein Über
laufbit vorhanden ist.

 Eine Zeit kann damit bis zu 65 535 Zeittakte zählen. Da


jeder FST Timer mit dem Zeittakt von 10 ms = 0,01 s ar
beitet, kann die längste Zeit mit einem Zeitbaustein folg
lich 65535 * 0,01 s = 655,35 s = 10min 55,35 s sein.

 Ein Zeitbaustein zählt den internen Zeitzähler alle 10 ms


um 1 nach unten. Dieser Zeittakt arbeitet völlig unabhän
gig von jeder Anwendung und jedem Prozess. Tritt nun in
der Anwendung ein Ereignis auf, das verzögert werden
soll, dann vergeht von diesem Ereignis bis zum ersten
Zähltakt eine unbestimmte Zeit zwischen 10 und 0 ms.
Daraus ergibt sich, dass jede FST Zeit einen Fehler von bis
zu 10 ms hat. Daher sollte im Programm niemals eine
Zeit programmiert werden, die kleiner als 2 x 10 ms ist
(und diese Zeit hat dann einen Fehler von maximal
10ms, das heißt maximal 50%).

10−16 Festo P.BE−FST4−LB−DE de 0403NH


Unterprogramme mit FST

Kapitel 11

Festo P.BE−FST4−LB−DE de 0403NH 11−1


11. Unterprogramme mit FST

Inhaltsverzeichnis

11. Unterprogramme mit FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−1

11.1 Bausteine importieren, benennen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−4


11.2 Übergabe− und Rückgabeparameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−7
11.2.1 Beispiel Rückgabeparameter in Anweisungsliste . . . . . . . . . . . . . . 11−7
11.2.2 Beispiel Übergabeparameter in Anweisungsliste . . . . . . . . . . . . . . 11−9
11.2.3 Beispiel Übergabe− und Rückgabeparameter in Anweisungsliste . 11−11
11.2.4 Beispiel Rückgabeparameter in Kontaktplan . . . . . . . . . . . . . . . . . 11−14
11.2.5 Beispiel Übergabeparameter in Kontaktplan . . . . . . . . . . . . . . . . . . 11−15
11.3 Unterprogramme mit FST: Eigene Bausteine erstellen . . . . . . . . . . . . . . . . . 11−17
11.3.1 Mein eigener Schiebe−Baustein . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−17
11.4 Unterschied BAF/BAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11−19

11−2 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

Bisher haben Sie Parallelprogramme kennen gelernt, keine


Unterprogramme. Parallelprogramme und Unterprogramme
unterscheiden sich dadurch, dass

 Parallelprogramme, die einmal gestartet wurden,


selbständig bearbeitet werden, unabhängig davon, ob
das Programm, das dieses Parallelprogramm gestartet
hat, weiter aktiv ist oder nicht.

 Unterprogramme genau einmal bearbeitet werden und


dann zurück ins aufrufende Hauptprogramm gesprungen
wird. Soll ein Unterprogramm mehrfach bearbeitet wer
den, dann muss es jedes mal ausdrücklich aktiviert wer
den. Ein Unterprogramm wird ebenso gelöscht wie das
aufrufende Hauptprogramm, wenn dieses aufrufende
Hauptprogramm gelöscht wird.

FST erlaubt die Nutzung von 200 Unterprogrammen, aufge


teilt in jeweils 100 Programmbausteine (BAP−BAusteinPro
gramm) und 100 Funktionsbausteine (BAF−BAusteinFunk
tion).

Programmbausteine und Funktionsbausteine unterscheiden


sich dadurch, dass

 Programmbausteine bei ihrem Aufruf zuerst einen Task


wechsel erzeugen, bevor sie ausgeführt werden. Dies
bedeutet, dass Programmbausteine auch Schritte (in An
weisungsliste) enthalten können.

 Funktionsbausteine bei ihrem Aufruf keinen Taskwechsel


erzeugen. Funktionsbausteine dürfen keine Schritte ent
halten.

Festo P.BE−FST4−LB−DE de 0403NH 11−3


11. Unterprogramme mit FST

Jedes Unterprogramm kann Eingangs− und Ausgangsparame


ter benutzen. Es stehen grundsätzlich bis zu 7 Übergabepara
meter (an den Baustein) und 7 Rückgabeparameter (vom
Baustein zum aufrufenden Programm) zur Verfügung.

Innerhalb des Bausteins gibt es keine lokalen Merker. Auch


Unterprogramme benutzen in FST die globalen Merker.

FST bietet eine Vielzahl von teilweise prozessorspezifischen


und treiberspezifischen Bausteinen an.
Zusätzlich können eigene Bausteine erstellt werden. In die
sem Kapitel wird gezeigt, wie vorhandene Bausteine benutzt
werden können.

11.1 Bausteine importieren, benennen

Nicht jedes Projekt benutzt jeden möglichen Baustein. In der


Dokumentation und der Hilfe zu FST finden Sie eine Übersicht
der verfügbaren Bausteine. Wären alle diese Bausteine in
jedem Projekt vorhanden, würde die Übersicht recht schnell
verloren gehen. Daher werden Bausteine vor ihrer Benutzung
in das Projekt importiert.

Hinweis
Wird in einem vorhandenen Projekt die CPU gewechselt,
müssen alle Bausteine neu importiert werden!

Beim Import erhält jeder Baustein eine eigene Bausteinnum


mer. Diese Nummer kann frei zwischen 0 und 99 gewählt wer
den. Es empfiehlt sich, in eigenen Projekten immer wieder
gleiche Nummern zu verwenden.

11−4 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

Sie können Bausteine importieren

 aus dem Menü Programm, Eintrag Import

 durch rechten Mausklick auf das Unterverzeichnis BAPs


oder BAFs, dann Aufruf Import

Bild11/1

Anschließend werden Ihnen alle Bausteine angezeigt, die für


die eingestellte CPU verfügbar sind:

Bild11/2

Festo P.BE−FST4−LB−DE de 0403NH 11−5


11. Unterprogramme mit FST

Wählen Sie jetzt einen Baustein aus, dann können Sie ihm
einen Typ und eine Nummer geben:

Bild11/3

In diesem Beispiel wird der Blink−Baustein als BAP0 impor


tiert. Er steht dann im Unterverzeichnis BAPs zur Verfügung.

Bild11/4

11−6 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

11.2 Übergabe− und Rückgabeparameter

Sicher mag es Bausteine geben, die einfach etwas zu erledi


gen haben  und fertig. In der Regel muss einem Baustein
aber ein konkreter Auftrag übergeben werden und es wird ein
Ergebnis verlangt.
Dafür stehen Übergabe− und Rückgabeparameter zur Verfü
gung und zwar bis zu 7 Parameter in jede Richtung. Diese
Parameter haben immer die Namen FE32 ... FE38.

Vorsicht
Übergabe− und Rückgabeparameter müssen immer unmit
telbar im Zusammenhang mit dem jeweiligen Baustein
übergeben und aufgerufen werden. Andere Bausteine dür
fen nicht aufgerufen werden, solange nicht die Parameter
übergeben oder abgeholt sind.

11.2.1 Beispiel Rückgabeparameter in Anweisungsliste

Der Blink−Baustein ist ein Baustein, dem keine Parameter


übergeben werden, der aber Parameter zurück gibt. Der
Blink−Baustein liefert in dem Rückgabeparameter vier blin
kende Bits ab.
Im folgenden Beispiel37 wurde der Blink−Baustein zuerst als
BAF0 importiert.

WENN NOP
DANN BAF 0 ’BLINK
LADE FE32 ’Erster Bausteinparameter
NACH MW0 ’Blink–Bits aus Blink–Baustein

Bild11/5

37 Dieses Beispiel finden Sie als Blink.ZIP auf Ihrer CD. Es enthält ein
Programm in Anweisungsliste und eines in Kontaktplan.

Festo P.BE−FST4−LB−DE de 0403NH 11−7


11. Unterprogramme mit FST

Im Merkerwort 0 blinken jetzt die 4 niederwertigsten Bits in


den Frequenzen 2, 1, 0,5 und 0,25 Hz.

Bild11/6

Die Abholung der Rückgabeparameter, im obigen Beispiel


also

LADE FE32 ’Erster Bausteinparameter


NACH MW0 ’Blink–Bits aus Blink–Baustein

Bild11/7

muss immer unmittelbar nach Aufruf des Unterprogramms


erfolgen. Es darf zwischendurch kein anderer Baustein aufge
rufen werden. Der Rückgabewert muss direkt in einer ande
ren Variablen gespeichert werden.

11−8 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

11.2.2 Beispiel Übergabeparameter in Anweisungsliste

Mit dem Funktionsbaustein F4 kann ein Programm zyklisch


gestartet werden, also beispielsweise alle 3 Sekunden. Dem
Baustein muss lediglich die Programmnummer übergeben
werden und die Zeit. Einen Rückgabeparameter gibt es nicht.

Im folgenden Beispiel38 wurde der Baustein F4 als BAF1 im


portiert.

WENN NOP
DANN BAF 1 ” Zyklische Bearbeitung eines Progr.starten
MIT K1 ” Programmnummer, 0 bis 63
MIT K3000 ” Zeit in ms; 0:deaktivieren

Bild11/8

Sie sehen, dass die Übergabeparameter mit Hilfe des Schlüs


selworts MIT an den Bausteinaufruf angehängt werden. In
diesem Beispiel sind feste Zahlen, Konstanten, benutzt wor
den, um die Übergabeparameter zu übergeben.
Es können aber auch Variablen benutzt werden. Zum Beispiel
so:

WENN NOP
DANN BAF 1 ” Zyklische Bearbeitung eines Progr. starten
MIT R1 ” Programmnummer, 0 bis 63
MIT R2 ” Zeit in ms; 0:deaktivieren

Bild11/9

In diesem Beispiel stehen die zu übergebenden Übergabe


werte in den beiden Registern R1 und R2.
In welcher Reihenfolge und welche Parameter zu übergeben
sind, ist in der Online−Hilfe der FST Software aufgeführt. Bei
der Eingabe der Parameter können Sie sich helfen lassen.
Dafür fügen Sie den Baustein ein, indem Sie im Menü Einfü
gen den Eintrag Bausteinaufruf wählen.

38 Dieses Beispiel finden Sie als P_Zyk.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 11−9


11. Unterprogramme mit FST

Bild11/10

Dann wird nach dem Baustein gefragt:

Bild11/11

11−10 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

und anschließend werden die Parameter abgefragt:

Bild11/12

Hinweis
Als Parameter können Konstanten (Kxxx) oder Mehrbitope
randen genutzt werden. Bei Konstanten muss die Kennung
K vorangestellt werden. Im obigen Beispiel wird also die
Konstante 2 für Programmnummer 2 und die Konstante
3000 für 3000 ms übergeben.

11.2.3 Beispiel Übergabe− und Rückgabeparameter in Anweisungsliste

Der Baustein LADD addiert zwei 32 Bit Werte. Jeder 32−Bit−


Wert steht in zwei Merkerworten, da die FST Merkerworte
immer 16 Bit breit sind. Folglich werden 4 Parameter überge
ben (die beiden zu addierenden Werte) und zwei Parameter
zurückgegeben (das Ergebnis).

Nehmen wir an, es sollen die Zahlen 100 423 und 77 000 ad
diert werden. Das Ergebnis müsste 177 423 sein.

100 423 LADD


177 423
77 000

Bild11/13

Festo P.BE−FST4−LB−DE de 0403NH 11−11


11. Unterprogramme mit FST

Da wir 16 Bit Worte übergeben müssen, müssen wir die Zah


len umrechnen.

Höherwertiges Wort

100 423 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
77 000

= 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
177 423
Niederwertiges Wort

100 423 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1

+ 0 0 1 0 1 1 0 0 1 1 0 0 1 0 0 0
77 000

= 1 0 1 1 0 1 0 1 0 0 0 0 1 1 1 1
177 423

Tab.11/1

Die 4 einzelnen Werte − je 16 Bit breit  sind:

Niederwerti 34.887 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1
ges Wort aus
100 423

Höherwerti 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
ges Wort aus
100 423

Tab.11/2

11−12 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

Addiere

Niederwerti 11.464 0 0 1 0 1 1 0 0 1 1 0 0 1 0 0 0
ges Wort aus
77 000

Höherwerti 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
ges Wort aus
77 000

Tab.11/3

Ergebnis

Niederwerti 46.351 1 0 1 1 0 1 0 1 0 0 0 0 1 1 1 1
ges Wort aus
177 423

Höherwerti 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
ges Wort aus
177 423

Tab.11/4

Im folgenden Beispiel39 ist der Baustein LADD als BAF 0 im


portiert worden.

WENN NOP
DANN BAF 0 ” Addition von 32–Bit Werten
MIT MW0 ” 1. Operand, niederwertiges Wort
MIT MW1 ” 1. Operand, höherwertiges Wort
MIT MW2 ” 2. Operand, niederwertiges Wort
MIT MW3 ” 2. Operand, höherwertiges Wort
LADE FE32 ” Niederwertiges Wort des Ergebnisses
NACH MW4 ’ Niederwertiges Wort Ergebnis
LADE FE33 ” Höherwertiges Wort des Ergebnisses
NACH MW5 ’ Höherwertiges Wort Ergebnis

Bild11/14

39 Dieses Beispiel finden Sie als LADD.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 11−13


11. Unterprogramme mit FST

Das Ergebnis der Addition steht nun in den Merkerworten


MW4 und MW5, siehe Bildschirmfoto.

Bild11/15
11.2.4 Beispiel Rückgabeparameter in Kontaktplan

Der Blink−Baustein ist ein Baustein, dem keine Parameter


übergeben werden, der aber Parameter zurück gibt. Der
Blink−Baustein liefert in dem Rückgabeparameter vier blin
kende Bits ab. Im folgenden Beispiel40 wurde der Blink−Bau
stein zuerst als BAF0 importiert.

Bild11/16

40 Dieses Beispiel finden Sie als Blink.ZIP auf Ihrer CD. Es enthält ein
Programm in Anweisungsliste und eines in Kontaktplan.

11−14 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

Im Ausgangswort 0 blinken jetzt die 4 niederwertigsten Bits


in den Frequenzen 2, 1, 0,5 und 0,25 Hz.

Bild11/17

11.2.5 Beispiel Übergabeparameter in Kontaktplan

Mit dem Funktionsbaustein F4 kann ein Programm zyklisch


gestartet werden, also beispielsweise alle 3 Sekunden. Dem
Baustein muss lediglich die Programmnummer übergeben
werden und die Zeit. Einen Rückgabeparameter gibt es nicht.
Im folgenden Beispiel wurde der Baustein F4 als BAF1 impor
tiert.

Bild11/18

Festo P.BE−FST4−LB−DE de 0403NH 11−15


11. Unterprogramme mit FST

In diesem Beispiel sind feste Zahlen, Konstanten, benutzt


worden, um die Übergabeparameter zu übergeben.
Es können aber auch Variablen benutzt werden. Zum Beispiel
so:

Bild11/19

In diesem Beispiel stehen die zu übergebenden Übergabe


werte im Register R1 und im Merkerwort 5000. In welcher
Reihenfolge und welche Parameter zu übergeben sind, ist in
der Online−Hilfe der FST Software aufgeführt.

Hinweis
Als Parameter können Konstanten (Kxxx) oder Mehrbitope
randen genutzt werden. Bei Konstanten muss die Kennung
K vorangestellt werden. Im obigen Beispiel wird also die
Konstante 4 für Programmnummer 4 und die Konstante
1000 für 1000 ms übergeben.

11−16 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

11.3 Unterprogramme mit FST: Eigene Bausteine erstellen

Eigene Unterprogramme können wie normale Programme


erstellt werden. Sie können aber auch Übergabe− und Rück
gabeparameter verwenden.

11.3.1 Mein eigener Schiebe−Baustein

Ein Baustein41 soll die Bits in einem Wort um eine vorgege


bene Zahl von Stellen verschieben. Der Baustein benötigt drei
Übergabeparameter und einen Rückgabeparameter. Die
Übergabeparameter sind:

 Das Wort, das geschoben wird

 Die Anzahl der Stellen, um die verschoben werden soll

 Die Schieberichtung (1=rechts, 0=links)

Der Rückgabeparameter ist das fertige Wort

Der Aufruf des Bausteins im aufrufenden Programm ist recht


einfach:

”” Dieses Programm ruft einen Baustein auf, der ein Schieberegister


darstellt
WENN E0.0 ’Eingang 0.0
UND N M0.0 ’Flankenerkennung
DANN SETZE M0.0 ’Flankenerkennung
BAP 0 ’Mein Schieberegister
MIT MW1 ’Das zu schiebende Merkerwort
MIT K3 ”Drei mal schieben
MIT K0 ”Rechts=1, Links =0
LADE FE32 ’Erster Bausteinparameter
NACH MW2 ’Das Ergebnis der Schieberei
WENN N E0.0 ’Eingang 0.0
DANN RESET M0.0 ’Flankenerkennung

Bild11/20

41 Dieses Beispiel finden Sie unter MEIN_BAP.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 11−17


11. Unterprogramme mit FST

Das Schieberegister selbst ist nun im BAP0 geschrieben wie


folgt:

””Dies ist ein selbst geschriebener Programmbaustein


SCHRITT Anfang
”” Zuerst werden die Übergabeparameter in Merkerworte geschrieben
WENN NOP
DANN LADE FE32 ’Erster Bausteinparameter
NACH MW10 ’Der zu schiebende Wert
LADE FE33 ’Zweiter Parameter
NACH MW11 ’Wie oft schieben?
LADE FE34 ’Dritter Parameter
NACH MW12 ’Rechts = 1, Links = 0
SCHRITT Schieben
”” Dann wird solange geschoben wie verlangt
WENN ( MW11 ’Wie oft schieben?
> K0 )
UND ( MW12 ’Rechts = 1, Links = 0
= K1 )
DANN LADE MW10 ’Der zu schiebende Wert
SHR
NACH MW10 ’Der zu schiebende Wert
ZR MW11 ’Wie oft schieben?
WENN ( MW11 ’Wie oft schieben?
> K0 )
UND ( MW12 ’Rechts = 1, Links = 0
= K0 )
DANN LADE MW10 ’Der zu schiebende Wert
SHL
NACH MW10 ’Der zu schiebende Wert
ZR MW11 ’Wie oft schieben?
WENN MW11 ’Wie oft schieben?
= K0
DANN NOP
SCHRITT Weiter
””Schließlich wird der neu Wert in den Rückgabeparameter geschrieben
WENN NOP
DANN LADE MW10 ’Der zu schiebende Wert
NACH FE32 ’Erster Bausteinparameter

Bild11/21

11−18 Festo P.BE−FST4−LB−DE de 0403NH


11. Unterprogramme mit FST

11.4 Unterschied BAF/BAP

Wie oben dargestellt, unterscheiden sich BAF und BAP nur


dadurch, dass ein BAP beim Aufruf einen Taskwechsel er
zeugt, ein BAF aber nicht. Zur Erinnerung sei das Prinzip des
Taskwechsels noch mal dargestellt:

 Mit FST können bis zu 64 Programme erstellt werden.


Jedes kann aktiviert und damit zum Task werden.

 Der Prozessor schaltet zwischen diesen Tasks um

 in aufsteigender Reihenfolge der Programmnummern


 also von P0 bis P63

 immer genau dann, wenn ein vollständiger Schritt zu


Ende bearbeitet wurde oder immer genau dann, wenn
im Kontaktplan ein Rücksprung erfolgt

 immer genau dann, wenn ein BAP aufgerufen wird.

Der Aufruf eines Programmbausteins (BAP) erzeugt einen


Taskwechsel. Innerhalb eines Programmbausteins können
auch Schritte verwendet werden. Diese erzeugen auch jeweils
einen Taskwechsel.

Der Aufruf eines Funktionsbausteins (BAF) erzeugt keinen


Taskwechsel. Innerhalb eines Funktionsbausteins dürfen
keine Schritte verwendet werden, weil der Funktionsbaustein
nie über den ersten Schritt innerhalb des Bausteins hinaus
kommen würde.

Festo P.BE−FST4−LB−DE de 0403NH 11−19


11. Unterprogramme mit FST

11−20 Festo P.BE−FST4−LB−DE de 0403NH


Fehler erkennen mit FST: Das FST Fehlerprogramm

Kapitel 12

Festo P.BE−FST4−LB−DE de 0403NH 12−1


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

Inhaltsverzeichnis

12. Fehler erkennen mit FST: Das FST Fehlerprogramm . . . . . . . . . . . . . . . . . . 12−1

12.1 Allgemeines zu Fehlern in einem FST System . . . . . . . . . . . . . . . . . . . . . . . . . 12−3


12.2 Das Verhalten bei einem Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−6
12.3 Das Fehlerprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−8
12.3.1 Das Fehlerverhalten mit Fehlerprogramm: . . . . . . . . . . . . . . . . . . . . 12−9
12.3.2 Das Garagentor mit Fehlerprogramm . . . . . . . . . . . . . . . . . . . . . . . . 12−10
12.3.3 Die Beschreibung eines Fehlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12−12

12−2 Festo P.BE−FST4−LB−DE de 0403NH


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.1 Allgemeines zu Fehlern in einem FST System

Jede Steuerung kennt interne Fehlermeldungen. Im Anhang


finden Sie eine Liste der Fehlernummern der FST. Ein solcher
Fehler wird im ’Fehlerwort’ gemeldet und in der Online Schalt
tafel angezeigt. Dabei wird angezeigt:

Fehlertyp Aufbau der CI−Antwort

Allgemeine Fehler =<Fehlernummer>,<Programmnummer>,<Schrittnummer>1)

CPX−Fehler (42) =<42>,<CPX−Fehlernummer>,<CPX−Modulnummer>

E/A−Fehler (11, 12) =<Fehlernummer>,<255>,<Nummer des Ein− oder Ausgangswortes>

1) Die Fehlernummer entspricht dem Wert des Fehlerwortes; Programmnummer in dem der Fehler
aufgetreten ist; besitzt das Programm keine Schritte (z. B. bei KOP−Programmen) wird Schritt 0
angezeigt.

Tab.12/1

Ist der Fehler nicht bei einer Programmbearbeitung aufgetre


ten, dann wird Programm Nr. 255 angezeigt. Hat das Pro
gramm keine Schritte  wie z. B. jedes Kontaktplanprogramm
− wird Schritt Nr. 0 angezeigt.

Bild12/1

Auch im Online Display kann das Fehlerwort (FW) angezeigt


werden, ebenso das Statusbit F.

Festo P.BE−FST4−LB−DE de 0403NH 12−3


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

Bitte beachten Sie: Die Anzeige des Fehlerwortes erhalten Sie


im Bereich ’Anwenderdefiniert’ des Online Displays. Tragen
Sie dort als Operanden FW bzw. F ein.

Bild12/2

Die Steuerung verändert das Fehlerwort automatisch, sobald


ein Fehler registriert wird. Im folgenden Bild sehen Sie die
Fehlermeldung 6 sowohl in der Schalttafel als auch im Online
Display:

Bild12/3

Das Fehlerwort steht auch dem Anwenderprogramm zur Ver


fügung. Mit

12−4 Festo P.BE−FST4−LB−DE de 0403NH


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

DANN LADE K133


NACH FW

oder

Bild12/4

wird der Fehler Nr. 133 erzeugt.

Bild12/5

Festo P.BE−FST4−LB−DE de 0403NH 12−5


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.2 Das Verhalten bei einem Fehler

Das normale Verhalten ohne jegliche Veränderung der


Grundeinstellung ist wie folgt:

Sobald das Fehlerwort einen anderen Inhalt als 0 hat, sobald


also der Fehlerstatus auf Ein geschaltet ist,

 wird die Steuerung auf Stop geschaltet,

 die RUN Leuchtdiode wird rot und

 die Ausgänge werden abgeschaltet.

Dieses Verhalten wird ’harte Fehlerreaktion’ genannt.

Unter SPS−Einstellungen, Laufzeitverhalten, kann unabhängig


voneinander eingestellt werden:

 Ein Fehlerausgang wird bei Auftreten eines Fehlers einge


schaltet. Welcher Ausgang ist frei einstellbar und/oder

 die Ausgänge bleiben eingeschaltet.

12−6 Festo P.BE−FST4−LB−DE de 0403NH


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

Bild12/6

Dabei ist die Steuerung weiterhin von außen erreichbar. In


einem Bedienterminal beispielsweise kann das Fehlerwort
also ausgelesen und für die Fehlersuche interpretiert werden.

Es wird immer nur genau der zuerst aufgetretene Fehler ge


speichert. Folgefehler werden ignoriert.

Beim Laden eines Projektes wird das Fehlerwort immer auto


matisch gelöscht.

Soll die Steuerung nun bei einem Fehler in irgendeiner Form


selbst reagieren, muss sie ein Programm bearbeiten können.
Dafür gibt es das Fehlerprogramm.

Festo P.BE−FST4−LB−DE de 0403NH 12−7


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.3 Das Fehlerprogramm

Unter ’SPS−Einstellungen’ in der Rubrik Laufzeitverhalten


kann das Fehlerprogramm eingetragen werden.

Die Eintragung im Fehlerprogramm bedeutet:

 Fehlerprogramm 0 bedeutet, dass es kein Fehlerpro


gramm gibt.

 Jede Programmnummer von 1 ... 63 bedeutet, dass das


eingetragene Programm im Fehlerfall gestartet wird.

Bild12/7

12−8 Festo P.BE−FST4−LB−DE de 0403NH


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.3.1 Das Fehlerverhalten mit Fehlerprogramm:

Existiert ein Fehlerprogramm, dann werden im Fehlerfall

 das Programm, in dem der Fehler aufgetreten ist, ge


stoppt,

 alle übrigen Programme angehalten (nicht gestoppt, son


dern an der augenblicklichen Position ’eingeschläfert’)
und

 das Fehlerprogramm wird aktiviert.

Im Fehlerprogramm wird das Fehlerwort ausgewertet. An


schließend können:

 der Fehler gelöscht und die übrigen Programme wieder


aktiviert werden oder

 alle Ausgänge und Programme zurück gesetzt werden


(schwerer Fehler).

Das Werkzeug, um auf den Fehler zu reagieren, ist der Bau


stein F22.

Den Baustein F22 können Sie aus der FST−Baustein−Bibliothek


ins aktuelle Projekt importieren (siehe auch Abschnitt 11.1).

F22: Fehlerbehandlung einstellen


Eingangsparameter
FE32 = 0 Fehlerdaten abfragen
= 1 Fehlerdaten abfragen und Fehler löschen
= 2 Programme weiterbearbeiten,
Fehlerdaten abfragen und Fehler löschen
= 3 Nicht behebbarer Fehler,
Programme stoppen
Rückgabeparameter
FE32 Fehlernummer
FE33 Programmnummer
FE34 Schrittnummer
FE35 Immer 0 (Fehleradresse)

Festo P.BE−FST4−LB−DE de 0403NH 12−9


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.3.2 Das Garagentor mit Fehlerprogramm 42

Nehmen wir an, dass beim Garagentorprogramm die End


schalter überwacht werden sollen. Geben beide Endschalter
gleichzeitig ein 1−Signal, dann muss ein Fehler vorliegen. Die
ser Fehler soll mit dem Ausgang A0.5 signalisiert werden so
lange, bis der Fehler nicht mehr vorhanden ist. Dann sollen
die Programme wieder ’aufgeweckt’ werden, die Steuerung
also weiter arbeiten.

Dafür wird das Überwachungsprogramm P2 ergänzt:

”” Endschalter überwachen
WENN offen ’Grenztaster Garagentor ist offen
UND geschloss ’Grenztaster Garage ist geschlossen
DANN LADE K100
NACH FW

Bild12/8

Der Fehler 100 ist also die neue Fehlernummer für einen de
fekten Grenztaster des Garagentorantriebs.

Sobald der Fehler auftritt, wird das Fehlerprogramm aktiviert,


die übrigen Programme ’schlafen’. Im Online Mode wird der
Fehler oben rechts im Online Fenster angezeigt:

Bild12/9

42 Dieses Programmbeispiel finden Sie als Gar_Fehl.ZIP auf Ihrer CD.

12−10 Festo P.BE−FST4−LB−DE de 0403NH


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

Das Fehlerprogramm unterscheidet zwischen Systemfehler


und Grenztasterfehler:

”” Systemfehler, der nicht programmiert ist


”” Harte Reaktion
WENN N ( FW
= K100 )
DANN BAF 22 ” Fehlerbehandlung einstellen
MIT K3 ” 0:abfr; 1:abfr+lösch;
” 2:abfr+lösch+weiter; 3:stop
RESET P12
”” Endschalterfehler
”” Warten auf Reparatur der Endschalter
WENN ( FW
= K100 )
UND ( offen ’Grenztaster Garagentor ist offen
EXOR geschloss ) ’Grenztaster Garage ist geschlossen
DANN BAF 22 ” Fehlerbehandlung einstellen
MIT K2 ” 0:abfr; 1:abfr+lösch;
” 2:abfr+lösch+weiter; 3:stop
RESET P12

Bild12/10

Festo P.BE−FST4−LB−DE de 0403NH 12−11


12. Fehler erkennen mit FST: Das FST Fehlerprogramm

12.3.3 Die Beschreibung eines Fehlers

Im Online Mode werden bekannte Fehler mit einem Text ange


zeigt. Dieser Text wird der Datei erroripc.txt entnommen.
Diese Datei bedindet sich in folgendem Verzeichnis:

 englische Version: \FST4

 deutsche Version: \FST4\DEU

Dort könnte beispielsweise ergänzt werden:

Bild12/11

12−12 Festo P.BE−FST4−LB−DE de 0403NH


Bedienen mit FST: Bedienterminals anschließen und programmieren

Kapitel 13

Festo P.BE−FST4−LB−DE de 0403NH 13−1


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Inhaltsverzeichnis

13. Bedienen mit FST: Bedienterminals anschließen und programmieren . . . 13−1

13.1 Der Anschluss der Bedienterminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−4


13.1.1 Die EXT Schnittstelle in den FECs (Front End Controller) . . . . . . . . . 13−5
13.1.2 Kommunikation zwischen FED und Programmier−PC . . . . . . . . . . . 13−6
13.2 FED Designer und FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−8
13.2.1 Eine Variable auf dem Display anzeigen . . . . . . . . . . . . . . . . . . . . . 13−10
13.2.2 Eine Variable vom Display aus verändern . . . . . . . . . . . . . . . . . . . . 13−12
13.3 Das FED im Ethernet Netzwerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13−14
13.3.1 Das FED Designer Projekt für die Ethernet Kommunikation . . . . . . 13−14
13.3.2 Mehrere Steuerungen im Netzwerk an einem FED . . . . . . . . . . . . . 13−17

13−2 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Kaum eine Maschine kommt heute noch ohne Bedientermi


nals aus. Je ausgeklügelter die Bedienerführung konzipiert
ist, desto einfacher ist die Einarbeitung des Bedienpersonals.
Je mehr Kreativität und Zeit in die Konzipierung von Fehler
suchhilfen investiert wurde, desto schneller kann im Ernstfall
zum Beispiel ein defekter Näherungsschalter gefunden und
getauscht werden  jede Minute weniger Stillstand ist bares
Geld wert.

Bild13/1: FED Bedienterminal von Festo (hier Typ FED 50)

In diesem Kapitel sollen die Grundlagen gelegt werden, für


den Anschluss der FED Bedienterminals von Festo.

Festo P.BE−FST4−LB−DE de 0403NH 13−3


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

13.1 Der Anschluss der Bedienterminals

In der Regel werden die Bedienterminals über eine serielle


Schnittstelle angeschlossen.

Beim CPX−FEC schließen Sie das FED mit dem Verbindungska


bel Typ FEC−KBG7 oder FEC−KBG8 (TN 539 642 bzw. 539 643)
an. Die FEDs haben eine 15−polige SUB−D Schnittstelle für
den Anschluss der Steuerung (PLC−Schnittstelle). Je nach CPU
wird dann ein Kabel zur Verbindung zur Steuerung benötigt.
Für die COM Schnittstelle der IPC FEC FC20, FC21, FC22, FC23
wird das Kabel KBG3, TN 189 429 benötigt.
Für die COM Schnittstelle der HC16 CPU oder der CP3X Mo
dule wird ein KBG6, TN 189 432 benutzt, wobei aber der zum
Kabel gehörende Adapter überflüssig ist und entsorgt werden
kann.

Für alle übrigen Schnittstellen wird das KBG6, TN 189 432


benötigt, also für FC2X CPUs (EXT Schnittstelle) FC3X CPUs,
alle IPC FEC Standard Schnittstellen, HC0X CPUs und HC20
CPUs.

1 2 3 4 5

1 PC mit FED Designer 4 Serielle Verbindung/Ethernet


2 Serielle Verbindung 5 Steuerung
3 Front End Display (FED)
Bild13/2

13−4 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

13.1.1 Die EXT Schnittstelle in den FECs (Front End Controller)

Wird ein Display an die EXT Schnittstelle eines FECs ange


schlossen, muss diese zuerst aktiviert werden. Dazu muss

· In der Treiberkonfiguration der COMEXT Treiber eingebun


den werden.

Bild13/3

· Im Programm die EXT Schnittstelle geöffnet und der CI


Zugriff aktiviert werden. Dafür werden die Bausteine
OpenCOM und F31 (CI aktivieren) benötigt.

Bild13/4

In einem Initialisierungsschritt43 wird nun die EXT Schnitt


stelle geöffnet und der CI auf dieser Schnittstelle aktiviert.

43 Dieses Programm in Anweisungsliste finden Sie als FED_EXT.ZIP, in


Kontaktplan als FED_EKOP.ZIP auf Ihrer CD.

Festo P.BE−FST4−LB−DE de 0403NH 13−5


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

SCHRITT Init
”” Öffnen der seriellen Schnittstelle EXT
”” ACHTUNG: In der Treiberkonfiguration muss der COMEXT Treiber
”” eingetragen sein!
WENN NOP
DANN BAF 0 ” Serielle Schn. öffnen mit 9600, 8, N
MIT K0 ” serielle Schnittstelle
WENN FE32 ’Erster Parameter für Bausteine
= K0
DANN NOP
SCHRITT
”” Aktivieren des CI auf diese Schnittstelle
WENN NOP
DANN BAF 1 ” CI aktivieren
MIT K0 ” serielle Schnittstelle
MIT K2 ” 0=disable CI (Default); 1=enable CI

Bild13/5

Das Display kann sich jetzt die benötigten Daten über die EXT
Schnittstelle abholen.

Bitte beachten Sie:


Der Baustein F31 zum Aktivieren des Kommandointerpreters
CI bekommt zwei Übergabeparameter.

 Mit dem ersten wird die verwendete Schnittstelle einge


stellt. Bei den FECs ist die EXT Schnittstelle mit der Nr. 0
auszuwählen

 Mit dem zweiten wird das Verhalten des Kommandointer


preters definiert. Für die Kommunikation mit den FECs
sollte hier K2 eingetragen werden, damit die Schnittstelle
vom FED nicht versehentlich abgeschaltet werden kann.

13.1.2 Kommunikation zwischen FED und Programmier−PC

In das FED muss natürlich ein Projekt geladen werden, wel


ches mit dem später beschriebenen FED Designer erstellt
wird. Für die Kommunikation zwischen dem PC und dem Dis
play wird das Kabel FEDZ−PC (533 534) benötigt.

13−6 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Wenn Sie von Ihrem Programmier−PC aus gleichzeitig auf die


Steuerung und das FED Zugriff haben wollen und für die
Steuerung auch eine COM Schnittstelle nutzen möchten, dann
stellen Sie die Software FED Designer auf COM2, die FST auf
COM1 oder umgekehrt. Im FED Designer finden Sie die Ein
stellung im Menü Transfer, Optionen:

Bild13/6

Um mit dem Display vom PC aus kommunizieren zu können,


muss dieses in den Konfigurations−Modus geschaltet sein.
Dafür betätigen Sie die Enter Taste des Displays solange, bis
auf dem Display ein systemeigenes Menü erscheint. Mit den
Cursortasten des Displays wählen Sie den Eintrag CFG an und
bestätigen mit Enter. Jetzt, im "Configuration Mode" kann das
Display mit dem PC kommunizieren aber nicht mehr mit der
Steuerung.

Festo P.BE−FST4−LB−DE de 0403NH 13−7


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

13.2 FED Designer und FST

Der FED Designer wird benutzt, um die FEDs44 zu program


mieren. Die Software ist eine eigenständige Windows Anwen
dung. Die Benutzung des FED Designers folgt einfachen Re
geln:

FED Designer starten45:

Bild13/7

Neues Projekt starten mit dem Menü Datei, Neu oder durch
Klick auf das Neu−Icon:

Bild13/8

44 FED  Front End Display


45 Das FED Designer Projekt finden Sie auf Ihrer CD unter dem Namen
FED_neu.dpr

13−8 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Projektname eingeben.

Bild13/9

Display Typ einstellen oder aus dem benutzten Display ausle


sen über das Menü Projekt, Panel Einstellung

Bild13/10

Festo P.BE−FST4−LB−DE de 0403NH 13−9


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Display auswählen

Bild13/11

13.2.1 Eine Variable auf dem Display anzeigen

Nehmen wir an, im Merkerwort 10 der Steuerung sei gespei


chert, wie viele Teile bereits produziert wurden. Auf dem Dis
play soll dieser Wert angezeigt werden. Ein erklärender Text
wird vorgeschaltet:

Bild13/12

Nun wählen Sie einen SPS−Wert Wert in numerischer Darstel


lung aus

13−10 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Bild13/13

Der Cursor wird zum Fadenkreuz, mit dem Sie einen Bereich
für die Anzeige des Wertes von der Steuerung aufziehen.

Bild13/14

Sobald Sie die Maustaste loslassen, öffnet sich das Eingabe


fenster für den zu übertragenden Wert:

Bild13/15

Festo P.BE−FST4−LB−DE de 0403NH 13−11


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Sie können hier eintragen, welche Daten anzuzeigen sind. Für


unser Beispiel soll es ein Merkerwort sein (im FED Designer
wird statt Merkerwort MW der englische Begriff FlagWord FW
benutzt).
Außerdem können Sie die Feldbreite verändern. Ein 16 Bit
Wert ohne Vorzeichen benötigt mindestens 5 Stellen (z.B.
65000) für den vollen Zahlenumfang.

Auf dem FED Designer Display sehen Sie nun einen Platzhal
ter für den später aus der SPS geholten Wert:

Bild13/16

13.2.2 Eine Variable vom Display aus verändern

Nehmen wir an, im Merkerwort 11 wird der Zeit−Sollwert für


eine Zeit gespeichert. Diese Zeit soll vom Display aus verän
derbar sein. Hierfür rufen Sie im bereits oben benutzten Fen
ster die Seite ’Bereich’ auf und tragen dort ein, dass Lesen
und Schreiben zugelassen sind sowie  wenn sinnvoll  der
Bereich, innerhalb dessen ein Wert zulässig ist.

13−12 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Bild13/17

Auf dem Display könnte dann stehen:

Bild13/18

Ist das Projekt zum FED geladen und das FED gestartet, kann
der Sollwert verändert werden, indem die Taste betätigt
wird. Das FED schaltet in den Dateneingabemodus um, der
Wert kann innerhalb der vorgegeben Grenzen verändert wer
den. Dazu geben Sie mit den Zifferntasten den gewünschten
Wert ein und betätigen die Enter−Taste.

Bei manchen FED steht diese Taste eventuell nicht zur Verfü
gung. Dann muss eine Funktionstaste oder eine Touch−Zelle
mit Hilfe des Tastatur−Makro−Editors mit dieser Funktion be
legt werden.

Festo P.BE−FST4−LB−DE de 0403NH 13−13


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

13.3 Das FED im Ethernet Netzwerk

Im folgenden Kapitel 14 ist beschrieben, wie die FST program


mierbaren Steuerungen in ein Netzwerk integriert werden.
Auch die FEDs gehören selbstverständlich mit in dieses Netz
werk.

Voraussetzung dafür ist der Erwerb der Ethernet−Schnittstelle


für das FED einschließlich des Adaptersteckers, Bezeichnung
FEDZ−IET, Best.−Nr. 533 533. Befestigen Sie das Ethernet Mo
dul entsprechend der Montageanleitung.

13.3.1 Das FED Designer Projekt für die Ethernet Kommunikation

Für die Kommunikation über das Netzwerk muss dem FED


Designer Projekt mitgeteilt werden, dass nicht die übliche
SPS−Schnittstelle sondern Ethernet zu nutzen ist. Dafür rufen
Sie im Menü Projekt den Eintrag "Controller Konfiguration"
auf.

Bild13/19

Öffnen Sie den Controller durch Klick auf den Menübutton:

Bild13/20

13−14 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Wählen Sie Festo Easy IP aus und öffnen Sie die Controller
Einstellung.

Bild13/21

Hinweis
Hier tragen Sie die IP Adresse der Steuerung (nicht des
FED) ein, mit der das FED kommunizieren soll. Die Steue
rung muss diese IP Adresse mittels des FST Projektes er
halten.

Bild13/22

Festo P.BE−FST4−LB−DE de 0403NH 13−15


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Zusätzlich muss das FED selbst eine IP Adresse bekommen.


Dafür öffnen Sie im Menü Projekt den Eintrag "Panel Einstel
lungen". Wählen Sie dort den Reiter "Externe Geräte" an und
tragen die IP Adresse des Panels ein.

Bild13/23

Hinweis
Hier tragen Sie die IP Adresse des FED ein (nicht der
Steuerung).

Sobald

 das Projekt zum FED geladen ist,

 die Ethernet Verbindungen hergestellt sind,

 die Steuerung ein Projekt mit dem TCPIP Treiber und der
entsprechenden IP Adresse bekommen hat,

findet die Kommunikation zwischen FED und Steuerung nun


über das Netzwerk statt.

13−16 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

13.3.2 Mehrere Steuerungen im Netzwerk an einem FED

Mit Hilfe des Ethernet Netzwerkes können mehrere Steuerun


gen mit einem FED kommunizieren. Dafür muss im FED Desi
gner Projekt bei der "Controller Konfiguration" der Zugriff auf
mehrere Steuerungen "Access Multiple Controllers" eingetra
gen werden.

Bild13/24

Durch einen Click auf "Add" können nun nacheinander alle im


Netz vorhandenen Steuerungen eingetragen werden.

Festo P.BE−FST4−LB−DE de 0403NH 13−17


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Bild13/25

13−18 Festo P.BE−FST4−LB−DE de 0403NH


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Soll nun vom FED auf eine Variable einer Steuerung zugegrif
fen werden, dann muss diese Steuerung benannt werden. Mit
Einfügen, Datenfeld, Numerisch wird beispielsweise das be
reits oben benutzte Fenster geöffnet.

Bild13/26

Festo P.BE−FST4−LB−DE de 0403NH 13−19


13. Bedienen mit FST: Bedienterminals anschließen und programmieren

Der Button direkt neben der Variablenadresse öffnet jetzt


nicht mehr nur die Auswahl der Variablenadresse sondern
auch die Auswahl der Steuerung.

Bild13/27

13−20 Festo P.BE−FST4−LB−DE de 0403NH


Vernetzen mit FST

Kapitel 14

Festo P.BE−FST4−LB−DE de 0403NH 14−1


14. Vernetzen mit FST

Inhaltsverzeichnis

14. Vernetzen mit FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−1

14.1 Voraussetzung für die Nutzung von Ethernet  der TCP/IP Treiber . . . . . . . 14−3
14.1.1 Exkurs IP Adresse und Netzmaske . . . . . . . . . . . . . . . . . . . . . . . . . . 14−6
14.1.2 Ist die Steuerung im Netz zu finden? . . . . . . . . . . . . . . . . . . . . . . . . 14−7
14.1.3 DHCP Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−11
14.1.4 Programmabhängige IP Adressen . . . . . . . . . . . . . . . . . . . . . . . . . . 14−12
14.2 Programmieren und Fehlersuche im Netz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−13
14.3 Kommunizieren zwischen den Steuerungen im Netz . . . . . . . . . . . . . . . . . . . 14−16
14.3.1 IP_Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−17
14.3.2 Easy_S und Easy_R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−18
14.3.3 Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−18
14.3.4 Überwachung der Datenkommunikation . . . . . . . . . . . . . . . . . . . . . 14−21
14.4 Kommunizieren zu Windows Anwendungen mit DDE . . . . . . . . . . . . . . . . . . 14−22
14.4.1 Mit DDE zu Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−22
14.5 Einige Regeln für die Nutzung von Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . 14−30
14.5.1 Ethernet ist genormt: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−30
14.5.2 Ethernet hat genormte Kabel und Stecker . . . . . . . . . . . . . . . . . . . . 14−31
14.5.3 HUBs und Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−33
14.5.4 Mit Ethernet von der Fertigung ins Büro . . . . . . . . . . . . . . . . . . . . . 14−34
14.5.5 EasyIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14−36
14.5.6 Die Regeln für die Nutzung von Ethernet (10 MBit/s) . . . . . . . . . . . 14−36

14−2 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Nie war Kommunikation für die Automatisierungstechnik so


wichtig wie heute. Dabei ist nicht das Einsammeln und Vertei
len von Ein−/Ausgangsdaten gemeint. Das erledigen die Feld
busse schnell, sicher und seit langem. Gemeint ist die Kom
munikation zwischen den Steuerungen sowie zwischen der
Windows Welt des Büros und den Steuerungen in der Ferti
gung. Ethernet, der Netzwerk−Standard im Büro, hat sich als
ideales Medium erwiesen, auch in der Fertigung zu kommuni
zieren. Mit FST ist die Nutzung von Ethernet einfach und si
cher.

14.1 Voraussetzung für die Nutzung von Ethernet  der TCP/IP Treiber

Jede FST CPU kann mit Ethernet Schnittstelle geliefert wer


den. Ist also die Hardwarevoraussetzung  Ethernet Schnitt
stelle  gegeben, muss auch die Software−Voraussetzung
geschaffen werden. Das ist der TCP/IP Treiber.

Der TCP/IP Treiber wird in FST wie alle Treiber in der Treiber
konfiguration eingetragen. Dafür öffnen Sie mit einem Dop
pelklick die Treiberkonfiguration.

Bild14/1

Festo P.BE−FST4−LB−DE de 0403NH 14−3


14. Vernetzen mit FST

Beim CPX−FEC ist der TCP/IP−Treiber bereits ab Werk vorin


stalliert.

Im Fenster für die Treiberkonfiguration können Sie wieder mit


einem Doppelklick auf eine leere Stelle die für diese CPU ver
fügbaren Treiber aufrufen:

Bild14/2

Beachten Sie bitte  wie bei allen Treibern  dass die Treiber
CPU−spezifisch46 sind. Wechseln Sie die CPU in einem Projekt,
müssen alle Treiber neu in das Projekt eingefügt werden.

46 Der TCP/IP Treiber für den FEC Compact ist TCPIPFEC, der für den
FEC Standard ist TCPIPFC2.

14−4 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Im folgenden Dialog sind vor allem die Adressen wichtig:

Bild14/3

IP Adresse Eine IP Adresse setzt sich aus 4 Bytes, also 4 Zahlen zwi
schen 0 und 255 zusammen.
Die Adressen 0.0.0.0 und 255.255.255.255 sind nicht zuläs
sig. In einem abgeschlossenen lokalen Netz, das aus
schließlich aus Ihren Steuerungen und Ihrem Programmier−
PC besteht, können Sie die Adresse frei wählen. Ist Ihr Netz
mit Ihrem Firmen−Netz verbunden, muss die Adressierung
mit der EDV Abteilung abgesprochen sein.

IP Netzmaske Die Maske schränkt die beliebige Nutzung der Adressen ein.
Jedem einzelnen Bit einer IP Adresse entspricht ein Bit der
Netzmaske. Ist das Bit der Netzmaske ’1’, dann muss das Bit
der IP Adressen zwischen zwei kommunizierenden Partnern
identisch sein.

IP Adresse des Gateways Soll Ihr Steuerungsnetzwerk mit Hilfe eines Gateways mit
einem anderen Netzwerk verbunden werden, dann muss die
Adresse dieses Gateways hier eingetragen werden. Benut
zen Sie kein Gateway, kann die Gateway Adresse auf 0.0.0.0
bleiben.

Festo P.BE−FST4−LB−DE de 0403NH 14−5


14. Vernetzen mit FST

14.1.1 Exkurs IP Adresse und Netzmaske

Im obigen Beispiel ist die IP Adresse der Steuerung angege


ben mit: 168.192.0.3

Binär geschrieben ist das:


10101000.11000000.00000000.00000011

Die übliche Netzmaske für Subnetze in der Automatisierung


ist: 255.255.255.0

Binär geschrieben ist das:


11111111.11111111.11111111.00000000

Die Adresse eines beliebigen Kommunikationspartners ohne


Nutzung des Gateways muss demzufolge sein:
10101000.11000000.00000000.XXXXXXXX

Das bedeutet in Zahlen: 168.192.0.X


Das letzte Byte, hier als X bezeichnet, darf die Werte 1 ... 254
haben (0 muss frei bleiben für Ethernet Service Werkzeuge,
255 muss frei bleiben für Broadcast Nachrichten).

Eine Netzmaske 0.0.0.0 ist nicht zulässig.

Mit der Zufügung des TCP/IP Treibers in das FST Projekt, be
kommt die Steuerung die Fähigkeit verliehen, über Ethernet
zu kommunizieren. Im Sinne der Informationstechnik können
wir sagen, der TCP/IP Treiber macht die Steuerung zu einem
’Server’, also einem Gerät, das Anfragen anderer beantwor
ten kann. Die Feldbustechnik nennt ein solches Gerät einen
’Slave’.

14−6 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Dies gilt  das ist sehr wichtig  erst, nachdem das Projekt mit
dem TCP/IP Treiber in die Steuerung geladen ist. Dieses Pro
jekt Laden  einschließlich TCP/IP Treiber  kann nur über die
RS232 Schnittstelle geschehen, da die Steuerung ohne TCP/
IP Treiber nicht über Ethernet kommunizieren kann.

Zur Wiederholung:
Um eine FST Steuerung zur Kommunikation über Ethernet zu
befähigen, muss ein Projekt mit TCP/IP Treiber und IP
Adresse mit Hilfe der seriellen Schnittstelle zur Steuerung
geladen worden sein.

Beim CPX−FEC ist der TCP/IP−Treiber bereits ab Werk vorin


stalliert.

14.1.2 Ist die Steuerung im Netz zu finden?

Sobald sich der TCP/IP−Treiber in die Steuerung befindet,


kann die Steuerung im Netzwerk erkannt werden.

Zur FST Software gehört ein Diagnosewerkzeug für das Netz


werk, die TCP/IP Application.
Sie finden dieses Programm auf Ihrer FST CD im Unterver
zeichnis Tools, TCPIPApplication. Installieren Sie dieses Pro
gramm auf Ihrem Rechner und starten Sie es.

Aufgabe der TCP/IP Application ist es, alle im Netz verfügba


ren Steuerungen anzuzeigen. Sie können jede Steuerung mit
ihrer IP Adresse, der Hardwareadresse und dem Projektna
men erkennen. Bei allen aktuellen CPUs wird auch der CPU
Typ und der Versionsstand des TCP/IP Treibers angezeigt.

Die TCP/IP Application hilft sehr schnell bei den beiden häu
figsten Fehlern:

 Adressen passen nicht zueinander

 Doppeladressierung.

Festo P.BE−FST4−LB−DE de 0403NH 14−7


14. Vernetzen mit FST

Aktivieren Sie ’Check Alive’ wird Ihnen die TCP/IP Application


mit einem grünen Häkchen zeigen, dass die Kommunikation
zu einer Steuerung möglich ist  oder mit dem Gesperrt−
Schild, dass keine Kommunikation möglich ist.

Die TCP/IP Application sucht nun zyklisch nach angeschlosse


nen Geräten und zeigt direkt an, ob eine Kommunikation
möglich ist.

Bild14/4

Im obigen Fenster sehen Sie, dass der Programmier−PC, auf


dem die TCPIPApplication gestartet ist, die IP Adresse
10.10.24.162 hat, die angeschlossenen Steuerungen aber
Adressen aus dem Nummernkreis 192.168.0.XXX. Eine Kom
munikation zwischen diesen Geräten ist nicht möglich, weil
die Netzmaske 255.255.255.0 dies verbietet.

14−8 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Nachdem der Programmier−PC eine andere IP Adresse be


kommen hat, ist die Kommunikation möglich.

Bild14/5

Im folgenden Beispiel gibt es eine IP Adresse doppelt  was


eine Kommunikation zu diesen Geräten unmöglich macht:

Bild14/6

Festo P.BE−FST4−LB−DE de 0403NH 14−9


14. Vernetzen mit FST

Wenn alle Adressen richtig eingestellt sind, kann kommuni


ziert werden. Zu jeder IP Adresse sehen Sie die Ethernet
Adresse (auch MAC− oder Hardware−Adresse genannt), den
Projektnamen, die Kernel Version, die TCP/IP Treiber Version
und den CPU Typ47.

Bild14/7

Wenn neben den Steuerungen auch mehrere PCs im Netzwerk


vorhanden sind, wird die TCP/IP Application diese anderen
PCs nur dann anzeigen, wenn dort ebenfalls die TCP/IP Appli
cation gestartet ist.

47 Bei älteren CPUs kann es sein, dass nicht alle Informationen


angezeigt werden können.

14−10 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

14.1.3 DHCP Server

In vielen lokalen Netzen werden DHCP Server eingesetzt, die


neu hinzu kommenden Geräten automatisch eine Adresse
zuweisen. Der FST TCP/IP Treiber unterstützt solche DHCP
Server. Dafür muss lediglich in der Treiberkonfiguration die IP
Adresse 0.0.0.0 bleiben.

Bild14/8

Ist  wie im obigen Beispiel  die IP Adresse 0.0.0.0 und be


findet sich ein DHCP Server im Netz, dann wird der Steuerung
automatisch eine Adresse zugewiesen.

Bild14/9

Festo P.BE−FST4−LB−DE de 0403NH 14−11


14. Vernetzen mit FST

In diesem Beispiel sind die Adressen 10.10.24.XXX von einem


DHCP Server zugewiesen.

Bei Nutzung des DHCP Servers ist der Programmieraufwand


für die Kommunikation zwischen den Steuerungen etwas grö
ßer. Denn jedes Senden/Empfangen bedarf ja einer spezifi
schen Ziel−IP Adresse. Diese IP Adressen müssen die Steue
rungen zuerst untereinander austauschen. Wurde die IP
Adresse der Steuerung per DHCP Server zugewiesen, dann
muss im Programm die Adresse ausgelesen und anschlie
ßend per Broadcast an alle angeschlossenen Steuerungen in
ein vorher vereinbartes Merkerwort geschrieben werden. Für
die Kommunikation kann die Zieladresse dann aus diesem
Merkerwort ausgelesen werden.

14.1.4 Programmabhängige IP Adressen

In manchen Projekten soll evtl. eine IP Adresse von außen


eingestellt werden. Es ist z.B. denkbar, dass die IP Adresse an
einer Maschine mittels eines oder mehrerer Drehschalter ein
gestellt werden soll. Für diesen Zweck steht ein Baustein zum
Einstellen (und Abfragen) der IP Adresse zur Verfügung:
IP_IP.

14−12 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

14.2 Programmieren und Fehlersuche im Netz

Nehmen wir an, Sie haben eine Fertigungsanlage mit 10


Steuerungen: Bandsteuerung, Teilezuführung, Teilelager,
Bohrmaschine, Prüfstation, Verpackungsstation. Die Steue
rungen können alle wunderbar vor sich hin arbeiten. Wollen
Sie in diesem System eine Änderung vornehmen oder einen
Fehler suchen, dann nehmen Sie Ihren Programmier−PC und
gehen von Steuerung zu Steuerung: Stecken  ändern  te
sten  abkoppeln  nächste Steuerung  stecken  ändern 
testen  abkoppeln  nächste Steuerung ...

Viel einfacher geht es, wenn die Steuerungen mit Ethernet


vernetzt sind. Jede FST CPU gibt es in einer Version mit Ether
net Anschluss. Jede Steuerung bekommt eine Adresse. Und
schon kann Ihr Programmier−PC bequem an einer beliebigen
Stelle mit dem Netz verbunden werden, um auf alle Stationen
zugreifen zu können. Was dafür nötig ist, ist lediglich die Ver
kabelung einerseits und die Installation des TCP/IP Treibers
in der Steuerung andererseits.

Nachdem der TCP/IP Treiber in die Steuerung mit der traditio


nellen RS232 Schnittstelle geladen ist, die Steuerung an
schließend automatisch neu gebootet hat, die TCP/IP Appli
cation mit dem grünen Häkchen die Kommunikationsbereit−
schaft signalisiert hat, dann kann diese Steuerung mit Hilfe
der IP Adresse im Netz angesprochen werden.

Es muss nun lediglich in der FST Software die Verbindung


umkonfiguriert werden. Dafür öffnen Sie das Menü Extras
und wählen die FST Einstellungen.

Festo P.BE−FST4−LB−DE de 0403NH 14−13


14. Vernetzen mit FST

Bild14/10

Unter dem Reiter Kommunikation finden Sie die Möglichkeit,


statt der RS232 Schnittstelle die Ethernet Karte und dort eine
bestimmte IP Adresse einzustellen.

14−14 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Hinweis
Bitte beachten Sie:
· TCP/IP benutzen muss angewählt sein
· Die IP−Adresse muss die Adresse der Steuerung sein,
mit der kommuniziert werden soll
· Die Markierung ’Im Projekt speichern’ bedeutet, dass
die hier vorgenommene Einstellung projektabhängig ist.
Beim Neustart eines Projektes werden zuerst wieder die
üblichen Werte (meist RS232 Kommunikation) benutzt.
Wird ’Im Projekt speichern’ nicht angewählt, dann gilt
diese Einstellung auch für jedes weitere neue Projekt

Mit dem Klick auf OK kommunizieren Sie mit der Steuerung


über Ethernet.

Ethernet bietet im Gegensatz zur RS232 auch die Möglichkeit,


gleichzeitig mit mehreren Steuerungen zu kommunizieren.
Öffnen Sie einfach FST mehrfach, wählen unterschiedliche
Projekte aus mit jeweils unterschiedlichen IP Adressen und
Sie können in den verschiedenen Fenstern gleichzeitig meh
rere Steuerungen beobachten.

Festo P.BE−FST4−LB−DE de 0403NH 14−15


14. Vernetzen mit FST

14.3 Kommunizieren zwischen den Steuerungen im Netz

Für die Kommunikation zwischen Steuerungen werden im


Wesentlichen 2 Bausteine benutzt: Easy_R für das Abholen
von Daten (Receive  Empfangen) und Easy_S für das Senden
von Daten. Bevor diese Bausteine benutzt werden, muss aber
mit IP_TABLE eine Tabelle oder eine Indexliste aller Steuerun
gen erstellt werden, mit denen kommuniziert werden soll.
Grundsätzlich erfolgt daher die Kommunikation in 3 Schritten:

Bild14/11

14−16 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

14.3.1 IP_Table

Mit IP_Table wird eine Tabelle aller Steuerungen erstellt, mit


denen kommuniziert werden soll (es können wesentlich mehr
Steuerungen im Netzwerk vorhanden sein, hier geht es nur
um genau die Steuerungen, von denen Daten geholt oder an
die Daten gesendet werden sollen).

Index IP Adresse

1 192.168.0.54

2 192.168.0.55

3 192.168.0.56

usw.

Tab.14/1: IP_Table Tabelle

Wie oben beim DHCP Server bereits erwähnt, muss die Festle
gung der IP Adresse an dieser Stelle dynamisch erfolgen,
wenn die Steuerungen ihre IP Adresse nach jedem Einschal
ten neu vom DHCP Server zugewiesen bekommen. Das Vor
gehen ist dann wie folgt:

Vorgehen

1. Steuerung wird eingeschaltet.


2. Steuerung erhält eine IP Adresse vom DHCP Server.
3. Steuerung ermittelt die eigene IP Adresse. *)
4. Steuerung sendet diese eigene IP Adresse per Broadcast an alle
übrigen Steuerungen im Netz in ein für diese Steuerung reservier
tes Merkerfeld. *)
5. Die anderen Steuerungen benutzen die IP Adresse aus diesem
Merkerfeld. *)

*) Ist vom Anwender zu programmieren

Tab.14/2

Festo P.BE−FST4−LB−DE de 0403NH 14−17


14. Vernetzen mit FST

14.3.2 Easy_S und Easy_R

Die Benutzung von Easy_S und Easy_R benötigt vor allem das
Verständnis von Kommunikation.

Bild14/12

14.3.3 Beispiel

Das folgende Beispiel48 sendet das Merkerwort 5 des Client


ins Merkerwort 10 des Servers. Im Merkerwort 1 des Client ist
der Status der Datenübertragung eingetragen.

48 Dieses Beispiel finden Sie als EASY_S.ZIP auf Ihrer CD.

14−18 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

SCHRITT
”” Mit IP_Table wird eine Tabelle aller Steuerungen erstellt,
”” mit denen Kommuniziert werden soll.
”” IP_Table muss für jede Steuerung einmal aufgerufen werden.
WENN NOP
DANN LADE K0
NACH MW2 ’Zähler für TimeOut
BAF 0 ” IP Adresse in Tabelle eintragen/abfragen
MIT K1 ” 1:eintragen; 2:abfragen
MIT K1 ” Index Nummer in IP–Tabelle
MIT K192 ” IP Adresse
MIT K168 ” IP Adresse
MIT K0 ” IP Adresse
MIT K55 ” IP Adresse
WENN FE32 ’Bausteinparameter
= K0
DANN NOP
SCHRITT Senden
”” Jetzt werden Daten zur Steuerung mit Index 1 gesendet
WENN NOP
DANN BAF 2 ” Operandenbereich an eine Steuerung senden
MIT K1 ” Index Nummer in der IP–Tabelle
MIT K1 ” Operand, 1:M; 2:E; 3:A; 4:R; 11:Strings
MIT K1 ” Anz. der zu sendenden Operanden (max 256)
MIT K5 ” Nr. des ersten zu sendenden Operanden
MIT K10 ” Nummer des 1. Operanden in der Ziel–CPU
MIT K1 ” Adresse des Merkerwortes für den Status
SCHRITT Pruefen
”” Jetzt wird überprüft, ob die Datenübertragung erfolgreich war
”” Datenkommunikation war erfolgreich
WENN MW1 ’Status von Easy_S
= K0
DANN LADE K0
NACH MW2 ’Zähler für TimeOut
SP NACH Senden
”” Datenkommunikation hat innerhalb der vorgegebenen Zeit (ca. 50 ms)
”” keine Antwort ergeben
WENN MW1 ’Status von Easy_S
= K128
DANN ZV MW2 ’Zähler für TimeOut
SP NACH Senden

Bild14/13

Festo P.BE−FST4−LB−DE de 0403NH 14−19


14. Vernetzen mit FST

Das folgende Bild zeigt die Merker der beiden beteiligten


Stationen: Oben der Client, der sein Merkerwort 5 versendet,
unten der Server, der die Daten im Merkerwort 10 erhält.

Bild14/14

14−20 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

14.3.4 Überwachung der Datenkommunikation

Nahezu jede Kommunikation in der Automatisierungstechnik


muss überwacht werden. Im obigen Beispiel werden die
Timeouts einfach gezählt. In einem entsprechend großen
Netzwerk mit viel Kommunikation sind Timeouts völlig nor
mal. Also wird ein einzelner Timeout in der Regel keine Be
deutung haben. Treten aber zu viele Timeouts auf, dann ist
die Verbindung evtl. vollkommen unterbrochen. Der Zähler
stand sollte also ausgewertet werden und entsprechend eine
Fehlermeldung nach außen gegeben werden.

Zusätzlich besteht die Möglichkeit, die prinzipielle Kommu


nikationsfähigkeit zu prüfen. Dafür steht z.B. ein Baustein zur
Verfügung, der den Ethernet Ping auslöst.

Festo P.BE−FST4−LB−DE de 0403NH 14−21


14. Vernetzen mit FST

14.4 Kommunizieren zu Windows Anwendungen mit DDE

Die Kommunikation zwischen der Automatisierung und der


Büro−Welt hat heute eine enorme Bedeutung. Natürlich kann
diese Kommunikation anwendungsindividuell programmiert
werden. Das EasyIP Protokoll für die Kommunikation mit ei
ner FST Steuerung über Ethernet ist ebenso veröffentlicht
wie die CI Kommandos, mit denen über die RS232 kommuni
ziert werden kann.
Einfacher sind natürlich vorgefertigte Werkzeuge. Zu diesen
gehören der DDE Server und der OPC Server.

14.4.1 Mit DDE zu Windows

DDE ist ein Datenaustausch Verfahren, das Microsoft bereits


mit Windows 3.1 eingeführt hat und bis zu den neuesten Win
dows Versionen unterstützt und nutzt. Es stellt eine Methode
dar, mit der unterschiedlichste Windows Programme unter
einander Daten austauschen können. Der ’IPC Data Server’
ist also ein Windows Programm, das Daten in dem von DDE
definierten Format bereit stellt.
Jede Windows Anwendung, die dieses Format versteht, kann
nun mit dem IPC Data Server Daten austauschen. Der IPC
Data Server holt/sendet diese Daten über Ethernet von/an
angeschlossenen FST Steuerungen.

Der ’IPC Data Server’ muss getrennt installiert werden. Sie


finden ihn auf Ihrer FST CD im Unterverzeichnis Tools. Nach
dem Sie den DDE Server installiert haben, finden Sie in Ihrem
Programmmenü einen Eintrag IPC Data Server. Bitte starten
Sie den IPC Data Server.

14−22 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Bild14/15

Öffnen Sie das Menü Config.

Bild14/16

Festo P.BE−FST4−LB−DE de 0403NH 14−23


14. Vernetzen mit FST

Der IPC Data Server kann sowohl über Ethernet als auch über
RS232 mit angeschlossenen Steuerungen kommunizieren.
Dies gilt für alle FST Steuerungen, auch ältere FPC Systeme
(dort nur über RS232). Soll die RS232 Schnittstelle benutzt
werden, kann pro Schnittstelle nur mit einer Steuerung kom
muniziert werden. Sofern Ihr Rechner mit 4 seriellen Schnitt
stellen ausgestattet ist, kann der IPC Data Server mit bis zu 4
über RS232 angeschlossenen Steuerungen kommunizieren.

Umfangreicher sind die Möglichkeiten über Ethernet: Mit bis


zu 48 Steuerungen kann kommuniziert werden. Öffnen Sie
also die Konfiguration für ’IPCs (TCP/IP)’.

Bild14/17

14−24 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Im ersten Fenster sehen Sie den Zugriff auf die ersten 16 an
geschlossenen Systeme. Beginnen Sie mit dem ersten  er
wird später IPC_1 genannt werden:

Bild14/18

Zuerst wird die Kommunikation zu diesem IPC_1 ’enabled’.


Anschließend wählen Sie, welche Daten zugänglich sein kön
nen. Jedes Telegramm überträgt immer 256 Worte. Klicken
Sie also beispielsweise auf ’Get Input Words’, dann sind alle
256 Eingangswort zugänglich. Klicken Sie auf ’Get Flag Words
from 0’ (wie im obigen Beispiel), dann sind die Merkerworte
0 ... 255 zugänglich. Insgesamt können also die Ein− und Aus
gangsworte, die Register, die Timer−Vorwahlen und höchstens
4 x 256 = 1024 Merkerworte von einer Steuerung einem Win
dows Rechner zur Verfügung gestellt werden.

Festo P.BE−FST4−LB−DE de 0403NH 14−25


14. Vernetzen mit FST

Hinweis
Benutzen Sie den IPC Data Server über die serielle Schnitt
stelle, dann ist es nicht nötig, einen bestimmten Variablen
bereich auszuwählen. Sie können über den DDE Server
dann auf jeden beliebigen Operanden direkt zugreifen.

Ist die Kommunikation zu der angegebenen IP Adresse be


reits möglich, wird dies sofort im DDE Server mitgeteilt.

Bild14/19

Ab sofort stehen die in der Konfiguration festgelegten Daten


nun allen DDE fähigen Windows Anwendungen zur Verfü
gung. Dabei gilt folgende Sprachregelung:

DDE  Programmname für die Ethernet Kommunikation:


IPC_DATA
DDE  Programmname für die RS232 Kommunikation:
FPC_DATA

Steuerungs−Name für die Ethernet Kommunikation:


IPC_1 ... IPC_48
Steuerungs−Name für die RS232 Kommunikation:
FPC_1 ... FPC_4

Variablenname: Operandenbezeichnungen gemäß FST CI


Kommandos, also EW  Eingangswort,
AW  Ausgangswort, MW  Merkerwort,
TV  Timervorwahl etc.

14−26 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Praktisch:
Sollen Daten von der Steuerung nach Excel geholt werden,
dann wird wie folgt verfahren:
In die Zelle, in der die Daten zu sehen sein sollen, wird als
Formel eingetragen:

=IPC_DATA|IPC_1!MW5

Beachten Sie bitte die Trennung zwischen Anwendung, Steue


rungsnummer und Operandenbezeichnung:

=Anwendung|Steuerungsnummer!Operandenbezeich
nung

Praktisch sieht das so aus:

Bild14/20

Festo P.BE−FST4−LB−DE de 0403NH 14−27


14. Vernetzen mit FST

Mit diesem Verfahren werden Daten von der Steuerung zu


einer Windows Anwendung geholt. Um Daten von einer Win
dows Anwendung zur Steuerung zu senden, muss der Zugriff
von Windows auf die DDE Daten programmiert werden. Excel
verlangt hierfür ein kleines Makro mit der folgenden Syntax:

Sub SendValue()
Channel = Application.DDEInitiate("ipc_data", "ipc_1")
Application.DDEPoke Channel, "MW0", Sheets("DDESam
ple").Range("E5")
Application.DDETerminate Channel
End Sub

Umgesetzt auf die Kommunikation mit der Steuerung mit der


IP Adresse 192.168.0.55, als IPC_1 im DDE Server konfigu
riert:

Sub SendValue()
Channel = Application.DDEInitiate("ipc_data", "ipc_1")
Application.DDEPoke Channel, "MW5", Sheets("Ta
belle1").Range("B2")
Application.DDETerminate Channel
End Sub

Oder allgemein formuliert:

Sub SendValue()
Channel = Application.DDEInitiate("DDE Programm
name", "Nummer der Steuerung")
Application.DDEPoke Channel, "Operand",
Sheets("Name des Tabellenblattes>").Range("Zelle, aus
der die Daten geholt werden")
Application.DDETerminate Channel
End Sub

14−28 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Dabei wird das Makro ’SendValue’ einen Schaltelement zuge


ordnet, um den Wert aufgrund einer Anforderung zu senden.
Das Ergebnis49 sieht so aus:

Bild14/21

Das Makro selbst sieht im Makro Editor aus:

Bild14/22

Im Handbuch zum DDE Server finden Sie weitere Beispiele


vor allem für die üblichen Prozessvisualisierungen wie Fix,
Intouch, Simplicity etc. Für VIP ist die Kommunikation über
DDE nicht notwendig aber möglich, weil VIP einen eigenen
Treiber für die FST Kommunikation beinhaltet.

49 Diese Excel Datei finden Sie auf Ihrer CD als DDE−Excel_Beispiel.xls.

Festo P.BE−FST4−LB−DE de 0403NH 14−29


14. Vernetzen mit FST

14.5 Einige Regeln für die Nutzung von Ethernet

Ethernet ist das weltweit am häufigsten eingesetzte Netz


werk. Ethernet ist das Netzwerk mit der größten Hardware−
und Software Unterstützung. Ethernet ist die Netzwerktechnik
mit den meisten Experten und dem größten Know How welt
weit.
In der Automatisierungstechnik ist Ethernet allerdings noch
nicht sehr weit verbreitet. Daher lohnt es sich, ein wenig ins
andere Lager zu schauen, den Ethernet Experten zuzusehen.

14.5.1 Ethernet ist genormt:

In IEE802.3 ist der Buszugriff von Ethernet genormt, also die


Methode, wie Ethernet Daten auf ein Kabel auflegt. Ethernet
ist ein Multi Master System, d.h. dass jeder Teilnehmer in der
Lage ist, von sich aus auf das Netz zuzugreifen und Daten
loszuschicken. Ein Multi Master System muss den Buszu
griffskonflikt lösen, also klären, was geschehen soll, wenn
zwei oder mehr Stationen gleichzeitig Daten absenden wol
len. Ethernet löst diesen Konflikt, indem jede Station immer,
wenn sie Daten sendet, zugleich auch abhört, welche Daten
gerade über das Netz ankommen. Wenn nun mehrere Statio
nen gleichzeitig senden, dann wird das Signal auf dem Bus
verfälscht. Also unterscheiden sich die Daten, die zu hören
sind, von denen, die gesendet wurden. Diese Situation wird
erkannt, alle Stationen brechen den Sendevorgang ab und
warten eine zufällig definierte Zeit ab, bevor erneut versucht
wird, die Daten zu senden. Dieses Verfahren wird CSMA/CD
genannt: Carrier Sense Multiple Access/Collision Detection.

14−30 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Dieses Verfahren führt dazu, dass Daten sehr schnell abge


schickt werden können, weil eine Station, die Daten senden
will, nur warten muss, bis das Kabel ’frei’ ist, schon geht es
ab. Dieses Verfahren führt aber auch dazu, dass Ethernet
kollabieren kann. Wenn zu viele Stationen gleichzeitig Daten
senden wollen, dann kommt es nach dem ersten Versuch
auch beim nächsten und übernächsten Versuch zur Kollision.
Gleichzeitig kommen weitere Stationen hinzu, die ebenfalls
Daten senden wollen und schließlich steigen die Antwortzei
ten von Ethernet steil an. Bis zu einer Buslast von 60% steigt
die Antwortzeit eines Ethernet Systems linear an, darüber
kommt es mehr oder weniger schnell zum Stillstand.

14.5.2 Ethernet hat genormte Kabel und Stecker

Bereits 1980 wurde das erste Ethernet Kabel normiert. 1985


wurde 10Base 2, das ’dünne’ Koax Kabel normiert und seit
1990 gibt es 10Base T, das Twisted Pair Kabel, das auch
heute noch die häufigste Verkabelungsmethode von Ethernet
darstellt.
10Base T basiert auf dem Stern und einer Datenübertra
gungsgeschwindigkeit von 10 MBit/s. Das bedeutet, dass
jede Station sternförmig an einen Sternverteiler, den HUB
angeschlossen ist. Der entscheidende Vorteil dieser Stern−To
pologie ist, dass Fehler innerhalb des Netzes sehr einfach zu
finden sind: Jedes Kabel kann einzeln geprüft, gesteckt, ent
fernt werden, ohne dass andere Stationen beteiligt sind.

Bereits seit mehreren Jahren sind Lichtwellenleiter Verbindun


gen ebenfalls genormt, genauso wie höhere Datenübertra
gungsgeschwindigkeiten. Im Bereich der Steuerungs− und
Automatisierungstechnik sind 10 MBit/s aber vollkommen
ausreichend und bieten eine größere Flexibilität in Kabellän
gen und Verdrahtung. Soll ein solches 10 MBit/s Netz mit 100
MBit/s Stationen verbunden werden, dann werden Dual−
Speed HUBs benutzt, die beide Übertragungsgeschwindig
keiten beliebig mischen können.

Festo P.BE−FST4−LB−DE de 0403NH 14−31


14. Vernetzen mit FST

Bild14/23

Hubs stehen heute in Ausführungen mit bis zu 128 Anschlüs


sen zur Verfügung ebenso in 110 ... 230 V AC und in 24 V DC
Ausführungen.
Hubs können kaskadiert werden, so dass Systeme mit mehre
ren hundert Stationen möglich sind.

14−32 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

14.5.3 HUBs und Switches

Ein HUB ist lediglich eine Hilfe für die Verdrahtung und Feh
lersuche. Im Übrigen werden alle Daten immer auf allen Lei
tungen transportiert. Vor allem in größeren Netzen gilt aber
die Erfahrung (die natürlich nicht immer zutrifft), dass die
Kommunikation zwischen nah beieinander liegenden Statio
nen umfangreicher ist wie zwischen weit entfernten Statio
nen.

Ein Switch ist nun ein HUB mit der zusätzlichen Eigenschaft,
dass Daten, die an einem Anschluss ankommen, nur genau
an den Anschluss weiter geleitet werden, der zur Zieladresse
des Telegramms gehört. Switche können die richtigen Verbin
dungen ’lernen’. Beim ersten Datentelegramm wird erst mal
an alle Anschlüsse geschickt. Aus der Bestätigung wird er
kannt, welcher Anschluss der richtige ist. Ab dann wird nur
noch dieser eine bedient. Mit Switches werden Untergruppen
gebildet. Dadurch wird das Gesamtdatenaufkommen in der
Regel drastisch reduziert.

Bild14/24

Festo P.BE−FST4−LB−DE de 0403NH 14−33


14. Vernetzen mit FST

14.5.4 Mit Ethernet von der Fertigung ins Büro

Die Verbindung von der Fertigung ins Büro ist mit Ethernet
besonders einfach. Dabei treffen das vollkommen unkalku
lierbare Datenaufkommen im Büro mit dem programmierten
und vorhersagbaren Datenaufkommen in der Fertigung zu
sammen. Wenn die Buslast wegen des Datenaufkommens im
Büro hoch wird (wesentlich über 30%), dann werden die in
der Fertigung eingesetzten CPUs ständig mit der Aufgabe
konfrontiert, den Datenverkehr im Ethernet Netz zu beachten.
Dadurch steigt die Zykluszeit der Programmbearbeitung.
Sofern eindeutig adressierte Telegramme das Datenaufkom
men verursachen, reichen gewöhnliche Switches, um Büro
und Fertigung wirksam gegeneinander zu schützen. Bewirken
aber Broadcast Nachrichten (Nachrichten ’an alle’), die von
Windows oder Novell Teilnehmern zyklisch gesendet werden,
den Datenverkehr, dann muss Büro und Fertigung mit Rou
tern oder speziellen Switches getrennt werden. Der Router ist
so zu konfigurieren, dass gezielte Telegramme, die Daten
zwischen Fertigung und Büro transportieren, passieren dür
fen, Broadcast Nachrichten aber nicht. Damit wird ein wirksa
mer Schutz zwischen Büro und Fertigung erreicht.

14−34 Festo P.BE−FST4−LB−DE de 0403NH


14. Vernetzen mit FST

Switch Switch

Router
trennt Büro und Ferti
gung

Switch Switch

Bild14/25

Festo P.BE−FST4−LB−DE de 0403NH 14−35


14. Vernetzen mit FST

14.5.5 EasyIP

EasyIP wird das Protokoll genannt, mit dem die Steuerungen


kommunizieren. EasyIP ist ideal geeignet für die Kommunika
tion in der Automatisierungstechnik, weil es

 vollkommen transparent innerhalb Lokaler Netze arbeitet,


also auf dem gleichen Kabel arbeiten kann wie ein Win
dows oder Novell Netz o.ä.

 TCP/IP als Transportmedium benutzt

 auf einfachste Art konfiguriert wird

 bei Bedarf als Master Slave System genutzt werden kann

 mittels DDE oder OPC mit beliebigen Windows Anwendun


gen kommunizieren kann.

14.5.6 Die Regeln für die Nutzung von Ethernet (10 MBit/s)

 Für industrielle Anwendungen, die unter Echtzeitbedin


gungen Daten austauschen sollen, wird eine Buslast von
nicht mehr als 30% empfohlen (einschließlich Broadcast
Telegrammen).

 Jedes einzelne Kabel zwischen HUB und Station − soge


nannte Patchkabel − darf maximal 100 m lang sein.

 Zwischen zwei Stationen dürfen nie mehr als 3 HUBs lie


gen.

 Kabel müssen mindestens der Kategorie 5 entsprechen


und doppelt geschirmt sein (paarweise und gesamthaft).

 Der Schirm muss beidseitig großflächig an Masse gelegt


werden (z.B. mit Hilfe von PS1 ZE30).

14−36 Festo P.BE−FST4−LB−DE de 0403NH


Der WEB Server in der Steuerung

Kapitel 15

Festo P.BE−FST4−LB−DE de 0403NH 15−1


15. Der WEB Server in der Steuerung

Inhaltsverzeichnis

15. Der WEB Server in der Steuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−1

15.1 Was ist ein WEB Server? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−3


15.2 WEB Server und FST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−4
15.2.1 Notwendige Browser Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . 15−5
15.2.2 Einige Regeln des FST WEB Server . . . . . . . . . . . . . . . . . . . . . . . . . . 15−6
15.2.3 Wo sind die HTML−Seiten? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−6
15.3 HTML Seiten für den WEB Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−11
15.3.1 Die erste HTML Seite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−11
15.3.2 Ein wenig mehr Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−13
15.3.3 Zugriff auf den Prozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15−14

15−2 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

15.1 Was ist ein WEB Server?

Ein WEB Server ist ein Computer, der Daten so zur Verfügung
stellt, dass auf sie mit Hilfe von einem Browser zugegriffen
werden kann. Im Internet stehen mittlerweile Millionen von
Servern zur Verfügung. Unter http://www.festo.com kann
beispielsweise auf den Festo Server zugegriffen werden. Kon
taktiert ein Browser (MS Internet Explorer oder Netscape oder
Opera oder ...) diese Adresse, dann werden Daten übertra
gen, die einer genau definierten Syntax entsprechen. Der
Browser interpretiert diese Syntax und zeigt die Daten wie
vorgeschrieben an. Der PC, der mit Hilfe des Browsers die
Daten anzeigt, ist der Client, der vom Server etwas wissen will
oder dem Server etwas mitteilen will.

Welche Daten der Server bereit stellt, unterscheidet sich sehr.


Je nach Herkunft kann es um Pneumatikzylinder und Ventilin
seln (www.festo.com), um Ethernet fähige Steuerungen, um
regierungsamtliche Veröffentlichungen (www.whitehou
se.gov), um politische Propaganda, um Erotik ... oder um
Produktionsdaten gehen. Sind Produktionsdaten gemeint,
dann dürfte es sich um den WEB Server in einer Steuerung
handeln.

Festo P.BE−FST4−LB−DE de 0403NH 15−3


15. Der WEB Server in der Steuerung

15.2 WEB Server und FST

Ebenso wie beim TCP/IP Treiber wird für die Nutzung des
WEB Servers in der Steuerung auch ein Treiber benötigt. Der
WEB Server Treiber benötigt außerdem unbedingt den TCP/
IP Treiber. Für dieses Beispiel werden also zwei Treiber im
Projekt benötigt.

Bild15/1

Sobald ein Projekt mit diesen beiden Treibern zur Steuerung


geladen wurde, kann die Steuerung im Netz angesprochen
werden (TCP/IP Treiber) und mit einem Browser beobachtet
werden (WEB Server). Verbinden Sie also die Steuerung und
einen PC per Ethernet, starten Sie im PC den Browser und
geben Sie die IP Adresse der Steuerung ein:

Bild15/2

15−4 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

15.2.1 Notwendige Browser Einstellungen

Drei wesentliche Einstellungen sind an Ihrem Browser nötig,


damit die Verbindung zur Steuerung wirklich funktioniert:

 Erstens muss der Browser über das Netzwerk suchen und


nicht allein über ein angeschlossenes Modem.

Sie finden diese Einstellung z.B. beim MS Internet Explo


rer 5 unter Extras, Internetoptionen, Verbindungen.

 Zweitens darf der Browser nicht über einen Proxy zugrei


fen, wenn Sie eine direkte Verbindung ohne Hausnetz
nutzen.

Sie finden diese Einstellung z.B. beim MS Internet Explo


rer 5 unter Extras, Internetoptionen, Verbindungen, Ein
stellungen.

 Drittens kann es notwendig sein, den lokalen Zwischen


speicher des Browsers aus zu schalten, wenn die Daten
der Steuerung sonst nicht aktualisiert werden.

Sie finden diese Einstellung z.B. beim MS Internet Explo


rer 5 unter Extras, Internetoptionen, Allgemein, Tempo
räre Internet Dateien, Einstellungen.

Festo P.BE−FST4−LB−DE de 0403NH 15−5


15. Der WEB Server in der Steuerung

15.2.2 Einige Regeln des FST WEB Server

Für die Nutzung des FST WEB Server sollte man einige Regeln
kennen:

 Es sind grundsätzlich 8+3−Zeichen Namen notwendig also


z.B. index.htm (nicht: index.html)

 Die Seite index.htm kann Bestandteil des FST WEB Ser


vers sein, wenn in der Treiberkonfiguration die ’Internen
Seiten’ aktiviert sind (Default−Einstellung).

 Der FST WEB Server prüft bei jedem Aufruf, ob eine Seite
main.htm existiert. Ist diese Seite vorhanden (und wird
nicht ausdrücklich eine bestimmte Seite aufgerufen),
dann wird main.htm angezeigt. Ist main.htm nicht vorhan
den, dann wird die immer vorhandene index.htm ange
zeigt.

15.2.3 Wo sind die HTML−Seiten?

Jede FST Steuerung kennt Laufwerke  ebenso wie Ihr PC. Die
FEC basierenden Steuerungen haben die Laufwerke A: und
B:, wobei das Laufwerk A: vom Anwender nicht veränderbar
ist, das Laufwerk B: ist für das Projekt und die Anwendungs
dateien zugänglich. Alle PS1 basierenden CPUs (nicht die
HC0X CPUs, da diese technisch dem FEC entsprechen) ken
nen auch das Laufwerk C:, das meist für die Anwendungsda
ten benutzt wird.

Um Dateien zur Steuerung zu übertragen, gibt es zwei Wege.


Einmal kann aus der FST Software heraus der Dateitransfer
aufgerufen werden, zweitens können mit der TCP/IP Applica
tion Dateien transferiert werden.

15−6 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

Dateien übertragen mit der FST Software


In FST benutzen Sie im Online Menü den Eintrag Dateitransfer
oder das Icon für den Dateitransfer:

Bild15/3

Dann sehen Sie die Dateien in der Steuerung.

Bild15/4

Festo P.BE−FST4−LB−DE de 0403NH 15−7


15. Der WEB Server in der Steuerung

In diesem Beispiel ist das Laufwerk A: zu sehen. Dieses Lauf


werk kann nicht verändert werden. Nach dem Wechsel zum
Laufwerk B: sind die Projektdateien und Treiber zu erkennen.

Bild15/5

15−8 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

In das Unterverzeichnis WEB dieses Laufwerks gehören nun


auch die WEB Seiten, die mit Hilfe des Browsers angezeigt
werden können. Um Dateien zu übertragen, wird auf den
Download−Pfeil geklickt.

Dateien übertragen mit der TCP/IP Application


In der TCP/IP Application gibt es den Eintrag ’FST File Trans
fer’.

Bild15/6

Wird dieser aufgerufen, dann muss nur die richtige IP


Adresse der Steuerung eingetragen werden, um die Verbin
dung herzustellen.

Hinweis
Die IP Adresse kann auch aus dem Search−Fenster der
TCP/IP Application kopiert werden.
Mit einem rechten Mausklick auf die IP−Adresse steht ein
kleines Menü zur Verfügung, das den Eintrag ’Copy IP ad
dress’ enthält.

Festo P.BE−FST4−LB−DE de 0403NH 15−9


15. Der WEB Server in der Steuerung

Nach dem Connect sind nun Steuerung und PC neben einan


der zu sehen.

Bild15/7

15−10 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

15.3 HTML Seiten für den WEB Server

Sie haben oben bereits gesehen, dass der WEB Server der
FST Steuerung selbst bereits Daten enthält, die der Browser
anzeigen kann. Diese Startseite des WEB Servers wird übli
cherweise INDEX.HTM genannt und kann beim FST WEB Ser
ver tatsächlich auch unter diesem Namen aufgerufen werden.

Von dieser Seite aus kann auf alle Operanden der Steuerung
zu gegriffen werden. Die im WEB Server integrierten Seiten
sind zudem so programmiert, dass sie zyklisch, etwa alle 5
Sekunden aktualisiert werden.

Wenn sich Variablen also ändern, wird sich auch die Anzeige
ändern.

Auch wenn es anfangs ganz spannend sein mag, dass der


WEB Server fertige WEB Seiten mitbringt, ist der WEB Server
meist erst dann wirklich sinnvoll, wenn eigene Seiten gestal
tet werden, die auf die eigene Anwendung bezogen sind.

Um den Einstieg zu erleichtern sind einige grundlegende


Techniken beschrieben. Bauanleitungen für HTML−Seiten fin
den Sie am einfachsten im Internet. HTML und die FST Steue
rungen sind beispielsweise beschrieben unter
http://fstdemo.beck−ipc.com.

15.3.1 Die erste HTML Seite

Eine HTML Seite ist schlichter Text. Jeder Texteditor genügt,


um eine erste Seite zu schreiben. (Word kann nur benutzt
werden, wenn der Text als Textdatei gespeichert wird, oder
wenn Word veranlasst wird, eine HTML Seite zu erzeugen.)

Festo P.BE−FST4−LB−DE de 0403NH 15−11


15. Der WEB Server in der Steuerung

Eine einfache HTML Seite kann so geschrieben sein:

HTML
HEAD
TITLEMeine erste HTML Seite/TITLE
/HEAD
BODY
Hallo Welt
/BODY
/HTML

Bild15/8

Beachten Sie, dass ’HTML Tags’ immer in den Größer/Kleiner


Zeichen stehen und immer mit einem vorangestellten / been
det werden:

HTML
/HTML

Bild15/9

sind also Anfang und Ende einer HTML Seite.

Wenn also der obige HTML Text in der Datei main.htm gespei
chert wird, diese Datei in das Laufwerk B: (oder bei PS1 CPUs
in das Laufwerk C: ) übertragen wird, dann wird beim Aufruf
der Steuerung mit dem Browser diese Seite angezeigt.

Bild15/10

15−12 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

15.3.2 Ein wenig mehr Text

Mit ein wenig mehr Gestaltung sieht die Seite etwas interes
santer aus:

HTML
HEAD
TITLEMeine erste HTML Seite/TITLE
/HEAD
BODY
H1 Dies ist ein Beispieltext für das FST Buch /H1 BR
H2 Dies ersetzt keinen HTML Lehrgang, BR
sondern soll nur eine kleine Einführung sein. /H2 BR

/BODY
/HTML

Bild15/11

Bild15/12

Festo P.BE−FST4−LB−DE de 0403NH 15−13


15. Der WEB Server in der Steuerung

15.3.3 Zugriff auf den Prozess

Die Veränderung von Schriftgrößen, die Nutzung von Grafiken


oder der Link zu einer anderen Internet Seite sind sämtlich
Techniken, die zu jeder Internet Seite gehören und keinerlei
Besonderheiten der Automatisierungstechnik berücksichti
gen. Entscheidend für eine Bedienkonsole für eine Produkti
onsanlage aber ist der Zugriff auf die Variablen des Prozes
ses. Der FST WEB Server stellt dafür einen speziellen HTML
Tag zur Verfügung, der die ’Sprache der Steuerung’ spricht.

Um einen Operanden zu lesen, wird benutzt:

FSTCI DEW0

Mit FSTCI wird der Kommandointerpreter50 der FST Steue


rung angesprochen. DEW0 benutzt das Display Kommando
für das Eingangswort 0 (EW0).

Um einen Operanden zu ändern wird der Modify Befehl be


nutzt. Da die Änderung eines Operanden nicht statisch erfol
gen wird (dann könnte man den geänderten Wert ja fest ein
programmieren), wird ein link tag benutzt:

A href="main.htm?ci:maw0=255"Schalte die Ausgänge 0 ... 7 auf 1/A

50 In Kapitel 18 wird ein stark gekürzter Überblick über die CI Befehle


gegeben. Ausführlich ist der CI im FST Handbuch beschrieben.

15−14 Festo P.BE−FST4−LB−DE de 0403NH


15. Der WEB Server in der Steuerung

Das Beispiel von oben kann also erweitert werden:

HTML
HEAD
TITLEMeine erste HTML Seite/TITLE
/HEAD
BODY
H1 Dies ist ein Beispieltext f. das FST Buch /H1 BR
H2 Dies ersetzt keinen HTML Lehrgang, BR
sondern soll nur eine kleine Einführung sein. /H2 BR
Das Eingangswort 0 hat den Wert : FSTCI DEW0 BR
A href="main.htm?ci:maw0=255"Schalte die Ausgänge 0 ... 7 auf 1/A
A href="main.htm?ci:maw0=0"Schalte die Ausgänge 0 ... 7 auf 0/A
/BODY
/HTML

Festo P.BE−FST4−LB−DE de 0403NH 15−15


15. Der WEB Server in der Steuerung

Bild15/13

Durch den Zugriff auf die Variablen des Prozesses ist die Ba
sis gegeben für die Visualisierung und Bedienung eines Pro
zesses mit Hilfe des WEB Browsers.

15−16 Festo P.BE−FST4−LB−DE de 0403NH


Tipps und Tricks  mal hilfreich mal lustig

Kapitel 16

Festo P.BE−FST4−LB−DE de 0403NH 16−1


16. Tipps und Tricks  mal hilfreich mal lustig

Inhaltsverzeichnis

16. Tipps und Tricks  mal hilfreich mal lustig . . . . . . . . . . . . . . . . . . . . . . . . . . 16−1

16.1 Belegliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−3


16.2 Anweisungsliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−6
16.3 Projekt aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−7
16.4 Syntaxfehler finden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16−8

16−2 Festo P.BE−FST4−LB−DE de 0403NH


16. Tipps und Tricks  mal hilfreich mal lustig

16.1 Belegliste

· Sie können die Belegliste über die Windows Zwischenab


lage sowohl nach als auch von Excel kopieren. Wenn Sie
die Belegliste lieber in Excel editieren wollen, dann begin
nen Sie am besten mit einem Eintrag in der Belegliste und
kopieren diesen nach Excel. Dort editieren Sie dann wie
gewünscht, markieren die ganze Liste und kopieren Sie
zurück in den Beleglisteneditor.

Bild16/1

Festo P.BE−FST4−LB−DE de 0403NH 16−3


16. Tipps und Tricks  mal hilfreich mal lustig

· Wenn Sie möchten, dann können Sie die Belegliste auch


in Word erstellen. Schreiben Sie dafür eine Tabelle in
Word. Markieren Sie die ganze Tabelle und kopieren Sie
sie in FST.

Bild16/2

16−4 Festo P.BE−FST4−LB−DE de 0403NH


16. Tipps und Tricks  mal hilfreich mal lustig

· Sie können die Belegliste ganz nach Wunsch sortieren.


Standardmäßig ist sie alphabetisch und numerisch nach
der Operandenadresse sortiert. Deshalb ist A0.0 der erste
Eintrag. Klicken Sie  wie in Windows gewohnt  auf die
Spaltenbezeichnung, z.B. auf Symbol, und die Belegliste
wird nach den Symbolnamen sortiert.

Bild16/3

Festo P.BE−FST4−LB−DE de 0403NH 16−5


16. Tipps und Tricks  mal hilfreich mal lustig

16.2 Anweisungsliste

· Die FST Anweisungsliste kennt eine klare Priorität: UND


geht vor ODER. In einer gemischten Logik wird also immer
zuerst UND verknüpft, dann ODER. Das Garagentorbei
spiel könnte also auch ohne Klammern programmiert
werden.

””Garagentore öffnen
WENN Auf_in ’E0.2: Taster AUF innen
ODER Auf_aus ’E0.4: Taster AUF außen
UND Schluess ’E0.6: Schlüsselschalter außen
UND N Motor_zu ’A0.1: K2: Garagentor schließen
UND N Zu_in ’E0.3: Taster ZU innen
UND N Zu_auss ’E0.5: Taster ZU außen
UND N offen ’E0.0: Grenztaster Garagentor ist offen
DANN Setze Motor_auf ’A0.0: K1: Garagentor öffnen

Bild16/4

16−6 Festo P.BE−FST4−LB−DE de 0403NH


16. Tipps und Tricks  mal hilfreich mal lustig

16.3 Projekt aktualisieren

Mit FST werden immer ganze Projekte geladen51. Solange die


Projektänderungen aber keine neuen Bausteine u.ä. beinhal
ten ist ein ’Projekt Aktualisieren’ möglich. Sie finden diesen
Eintrag im Menü Online. Bei Projekt aktualisieren werden die
Projektänderungen analysiert und eine vergleichsweise
kleine Datei übertragen, die genau diese Änderungen enthält.
Die Änderungen werden dann im laufenden CPU−Betrieb in
das Projekt integriert.

Bild16/5

51 Alte ’FST−Hasen’ erinnern sich, dass man bei FST auch einzelne
Programme laden konnte. Dies ist nicht mehr möglich.

Festo P.BE−FST4−LB−DE de 0403NH 16−7


16. Tipps und Tricks  mal hilfreich mal lustig

16.4 Syntaxfehler finden

Wenn in Ihrem Projekt ein Fehler ist, wird FST das Projekt
nicht fertig übersetzen und auch nicht zur Steuerung übertra
gen. Im Meldungsfenster wird angezeigt, welcher Fehler ge
funden wurde und wo er vermutet wird. Das folgende Bei
spiel zeigt einen solchen Fehler

Bild16/6

Die Zeile

CZ0P00V1.AWL(5) Falsche Satzteilfolge

gibt den Hinweis, wo der Fehler zu finden ist:

CZ0POOV1.AWL(5) Falsche Satzteilfolge


| | | +–– Fehlererklärung
| | +––––– Programmzeile, in der der Fehler vermutet wird
| +––––––––––– Version 1
+–––––––––––––– Programm 0

Ein Doppelklick auf den Fehlerort (hier auf


CZ0P00V1.AWL(5)) führt direkt ins Programm.

16−8 Festo P.BE−FST4−LB−DE de 0403NH


Fehlermeldungen

Kapitel 17

Festo P.BE−FST4−LB−DE de 0403NH 17−1


17. Fehlermeldungen

Inhaltsverzeichnis

17. Fehlermeldungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−1

17.1 Allgemeine FST Fehlernummern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−3


17.2 Festo Feldbus Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−4
17.3 AS−Interface Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−5
17.4 PROFIBUS−DP (CP62) Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17−6

17−2 Festo P.BE−FST4−LB−DE de 0403NH


17. Fehlermeldungen

17.1 Allgemeine FST Fehlernummern

Fehlernummer Bedeutung

0 Kein Fehler

2 Prüfsummenfehler in Projektdatei PROJECT.RUN.


· Komplettes Projekt neu laden

6 Programm 0 müsste gestartet werden, ist aber nicht vorhanden.


· Programm 0 erstellen und laden.

7 Versuch, ein nicht existentes Programm oder dessen Status zu setzen oder
rücksetzen.
· Programm ändern oder fehlendes Programm laden.

9 Programm kann wegen Fehler in der Projektdatei PROJECT.RUN nicht gestartet


werden.
· Projekt prüfen und neu laden. Eventuell wird ein Treiber verwendet, ist aber
nicht geladen oder ein Treiber ist geladen, kann aber nicht benutzt werden,
weil die Bedingungen dazu nicht gegeben sind. Möglicherweise ist die nötige
Hardware für den Treiber nicht vorhanden oder ist falsch konfiguriert. Even
tuell nicht genug Arbeitsspeicher in der Steuerung.

11 E/A−Karte defekt, Kurzschluss am Ausgang oder keine Spannungsversorgung.


· E/A−Karte austauschen, Kurzschluss beheben oder Versorgungsspannung
anschließen.

12 E/A−Karte nicht gefunden.


· E/A−Karte prüfen.
· Schalterstellung an der Karte und in der E/A−Konfiguration prüfen.

13 Watchdog abgelaufen
Ein Treiber, Baustein oder EA Skript hat das Laufzeitsystem länger als 1
Sekunde blockiert und einen Neustart ausgelöst.

14 Zu startender Treiber nicht gefunden. Ein benötigter Treiber kann nicht


gefunden werden oder ist wegen Initialisierungsfehler nicht lauffähig.
Möglicherweise ist die Umgebung (Hardware, Parameter) für den Treiber nicht
korrekt vorhanden.
· Treiber einbinden, in Treiberkonfiguration Parameter korrekt einstellen und
Hardware prüfen.

36 Verschachtelter BAP/BAF oder BAP/BAF bei Aufruf nicht gefunden.


Programmstruktur ändern

Festo P.BE−FST4−LB−DE de 0403NH 17−3


17. Fehlermeldungen

Fehlernummer Bedeutung
39 Doppelfehler, Fehler in Programm.
· Fehlerquelle beseitigen.

42 CPX−Diagnose
· CPX−Fehler beseitigen

57 Projektdatei (PROJECT.RUN) kann nicht gelesen werden.


· Projekt neu laden.

59 Arithmetikfehler.
· Programm ändern.

Tab.17/1

17.2 Festo Feldbus Fehler

Fehlernummer Bedeutung

14 Kritischer Treiberfehler
Projekt kann auch bei "weichem" Fehlerverhalten nicht gestartet werden.
Dieser Fehler tritt auf, wenn der Feldbustreiber nicht gefunden wurde oder
Probleme beim starten der Firmware des CP61 aufgetreten sind.

60 Ist−Konfiguration ist keine Obermenge der Soll−Konfiguration.


· Feldbus−Konfiguration korrigieren oder fehlende Teilnehmer anschließen

Tab.17/2

17−4 Festo P.BE−FST4−LB−DE de 0403NH


17. Fehlermeldungen

17.3 AS−Interface Fehler

Fehlernummer Bedeutung

700 Keine Konfigurationsdaten für den ASi Treiber vorhanden


· Konfigurationsdatei erstellen

701 Master nicht vorhanden


· Drehschalterstellung des Masters prüfen. Konfiguration prüfen: Bei der HC20
können nur Master mit Schalterstellung 1 oder 4 eingesetzt werden, bei
HC16 Stellung 1

702 Master nicht vorhanden


· Drehschalterstellung des Masters prüfen. Konfiguration prüfen: Bei der HC20
können nur Master mit Schalterstellung 1 oder 4 eingesetzt werden, bei
HC16 Stellung 2

703 Master nicht vorhanden


· Drehschalterstellung des Masters prüfen. Konfiguration prüfen: Bei der HC20
können nur Master mit Schalterstellung 1 oder 4 eingesetzt werden, bei
HC16 Stellung 3

704 Master nicht vorhanden


· Drehschalterstellung des Masters prüfen. Konfiguration prüfen: Bei der HC20
können nur Master mit Schalterstellung 1 oder 4 eingesetzt werden, bei
HC16 Stellung 4

711 Ausfall eines Slaves


· Slave prüfen, ersetzen, Konfiguration prüfen, Adresse 1

712 Ausfall eines Slaves


· Slave prüfen, ersetzen, Konfiguration prüfen, Adresse 2

713 Ausfall eines Slaves


· Slave prüfen, ersetzen, Konfiguration prüfen, Adresse 3

714 Ausfall eines Slaves


· Slave prüfen, ersetzen, Konfiguration prüfen, Adresse 4

Tab.17/3

Festo P.BE−FST4−LB−DE de 0403NH 17−5


17. Fehlermeldungen

17.4 PROFIBUS−DP (CP62) Fehler

Fehlernummer Bedeutung

1001 Der Treiber kann keine Verbindung zur Karte aufnehmen.


Wahrscheinliche Ursachen:
 Kartenadresse nicht mit Wert bei der Treiberkonfiguration übereinstimmend.
 Keine gültigen Konfigurationsdaten der Karte (SyCon)

1004 Konfigurierter Slave nicht auf dem Bus (nur bei "harter Reaktion")

1005 Eingangsadressbereich überschritten (Offset)

1006 Ausgangsadressbereich überschritten (Offset)

Tab.17/4

17−6 Festo P.BE−FST4−LB−DE de 0403NH


Der FST CI−Kommandointerpreter

Kapitel 18

Festo P.BE−FST4−LB−DE de 0403NH 18−1


18. Der FST CI−Kommandointerpreter

Inhaltsverzeichnis

18. Der FST CI−Kommandointerpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−1

18.1 Die FST Operanden / Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−3


18.1.1 Operanden anzeigen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4
18.1.2 Operanden ändern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4
18.2 Einige sonstige Befehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18−4

18−2 Festo P.BE−FST4−LB−DE de 0403NH


18. Der FST CI−Kommandointerpreter

Eine FST Steuerung kommuniziert mit dem Programmier−PC


oder mit einem beliebigen anderen an die Programmier
schnittstelle angeschlossenen Gerät mit Hilfe eines eindeutig
definierten sehr einfachen Befehlscode, der mit dem Namen
FST CI (Command Interpreter  Kommandointerpreter) be
zeichnet wird. Die Details des FST CI finden Sie im FST Hand
buch. Hier soll eine Übersicht über die wichtigsten CI Befehle
ausreichen.

18.1 Die FST Operanden / Variablen

Die wichtigsten Operanden sind:

Operanden− Adressbereich Beispiel Bit− Beispiel Wort−


bezeichnung Adressierung Adressierung

Eingänge E0.0 ... E255.15 E0.12 EW147

Ausgänge A0.0 ... A255.15 A47.3 AW0

Merker M0.0 ... M9999.15 M4312.14 MW9999

Register R0 ... R255  R36

Programme P0 ... P63 P14 

Programmstatus PS0 ... PS63 PS14 

Programmbausteine BAP0 ... BAP99 BAP12 

Funktionsbausteine BAF0 ... BAF99 BAF99 

Timer Status T0 ... T255 T14

Timervorwahl (Sollwert) TV0 ... TV255  TV14

Timerwort (Istwert) TW0 ... TW255 TW14

Zähler Status Z0 ... Z255 Z33 

Zählervorwahl (Sollwort) ZV0 ... ZV255  ZV33

Zählerwort (Istwert) ZW0 ... ZW255  ZW33

Festo P.BE−FST4−LB−DE de 0403NH 18−3


18. Der FST CI−Kommandointerpreter

Operanden− Adressbereich Beispiel Bit− Beispiel Wort−


bezeichnung Adressierung Adressierung
Fehlerwort F  F

Konstante K0 ... K65535  K10


K$0 ... K$FFFF
K−32767 ... +32767

Tab.18/1

18.1.1 Operanden anzeigen

Für die Anzeige von Operanden gibt es den Display Befehl.


Beispiel:
DEW0 Display Eingangswort 0
DR5 Display Register 5

18.1.2 Operanden ändern

Für die Änderung von Operanden gibt es den Modify Befehl.


Beispiel:
MAW4=33 Modifiziere Ausgangswort4 zum Wert 33
MM300.14=1 Modifiziere Merker 300.14 zum Wert 1

18.2 Einige sonstige Befehle

Bedeutung Beispiel

FST CI aufrufen STRGT

Projekt starten  RUN R

Projekt stoppen  Stopp S

Ein bestimmtes Programm starten RP1

Tab.18/2

18−4 Festo P.BE−FST4−LB−DE de 0403NH


Nutzungsvereinbarungen für Elektronische Dokumentation"
I. Schutzrechte und Nutzungsum 2. Copyright Vermerk telbar einem Produkt beiliegen, d.h.
fang Jedes "Elektronische Dokument" ent nicht mit einem Produkt als Lieferein
Die Datei Ihrer Wahl unterliegt Schutz hält einen Copyright Vermerk. In jede heit ausgeliefert wurden, gewährlei
bestimmungen. Festo oder Dritte ha Kopie und jeden Ausdruck muss die stet Festo jedoch nicht, dass die sepa
ben Schutzrechte an dieser Elektroni ser Vermerk übernommen werden. rat vorgehaltene/gelieferte Elektroni
schen Dokumentation, welche Festo Bsp.: E 2003, Festo AG & Co. KG, sche Dokumentation mit dem vom
sowohl auf portablen Datenträgern D−73726 Esslingen Verwender tatsächlich genutzten Pro
(Disketten, CD−Rom, Wechselplatten), dukt übereinstimmt.
als auch im Internet und/oder Intranet 3. Übertragung der Nutzungsbefu Letzteres gilt insbesondere bei aus
zur Verfügung stellt, im Folgenden gnis zugsweisem Gebrauch für eigene Do
stets Elektronische Dokumentation Der Verwender kann seine Nutzungs kumentationen des Verwenders. Die
genannt. Soweit Dritten ganz oder teil befugnis in dem Umfang und mit den Gewährleistung und Haftung für sepa
weise Rechte an dieser Elektronischen Beschränkungen der Bedingungen ge rat vorgehaltene / gelieferte portable
Dokumentation zustehen, hat Festo mäß Ziffer 1 und 2 insgesamt auf ei Datenträger, d.h. mit Ausnahme der
entsprechende Nutzungsrechte. Festo nen Dritten übertragen. Auf diese Nut im Internet/Intranet vorgehaltenen
gestattet dem Verwender die Nutzung zungsvereinbarungen ist der Dritte elektronischen Dokumentation, be
unter den folgenden Voraussetzun ausdrücklich hinzuweisen. schränkt sich ausschließlich auf eine
gen: ordnungsgemäße Duplikation der
Software, wobei Festo gewährleistet,
1. Nutzungsumfang II. Export der Elektronischen Doku dass jeweils der neueste Stand der
a) Der Verwender der Elektronischen mentation Dokumentation Inhalt des betreffen
Dokumentation ist berechtigt, diese Der Lizenz−Nehmer muss beim Export den, portablen Datenträgers ist. In Be
für eigene, ausschließlich betriebsin der Elektronischen Dokumentation die zug auf die im Internet/Intranet vorge
terne Zwecke auf beliebig vielen Ma Ausfuhrbestimmungen des ausführen haltene Elektronische Dokumentation
schinen innerhalb seines Betriebsge den Landes und des Landes des Er wird nicht gewährleistet, dass diese
ländes (Einsatzort) zu nutzen. Dieses werbs beachten. denselben Versions−Stand aufweist
Nutzungsrecht umfasst ausschließlich wie die zuletzt drucktechnisch veröf
das Recht, die Elektronische Doku fentlichte Ausgabe.
mentation auf den am Einsatzort ein III. Gewährleistung 2. Festo haftet ferner nicht für man
gesetzten Zentraleinheiten (Maschi 1. Festo Produkte werden hard− und gelnden wirtschaftlichen
nen) zu speichern. softwaretechnisch weiterentwickelt. Erfolg oder für Schäden oder Ansprü
b) Die Elektronische Dokumentation Der Hard− und ggf. der Software−Stand che Dritter wegen der Nutzung/Ver
darf am Einsatzort des Verwenders in des Produkts ist dem Typenschild des wendung der vom Verwender einge
beliebiger Zahl über einen Drucker Produkts zu entnehmen. Liegt die setzten Dokumentation, mit Aus
ausgedruckt werden, sofern dieser elektronische Dokumentation, gleich nahme von Ansprüchen aus der Ver
Ausdruck vollständig mit diesen Nut in welcher Form, einem Produkt nicht letzung von Schutzrechten Dritter, wel
zungsvereinbarungen und sonstigen unmittelbar bei, d.h. wird nicht auf ei che die Nutzung der Elektronischen
Benutzerhinweisen ausgedruckt bzw. nem, dem Produkt beiliegenden por Dokumentation betreffen.
verwahrt wird. tablen Datenträger (Disketten, CD− 3. Die Haftungsbeschränkungen nach
c) Mit Ausnahme des Festo Logos ist Rom, Wechselplatte) mit dem betref Absatz 1. und 2. gelten nicht, soweit in
der Verwender berechtigt, Bilder und fenden Produkt als Liefereinheit aus Fällen von Vorsatz oder grober Fahr
Texte der Elektronischen Dokumenta geliefert, gewährleistet Festo nicht, lässigkeit oder Fehlen zugesicherter
tion zur Erstellung eigener Maschinen− dass die Elektronische Dokumentation Eigenschaften eine zwingende Haftung
und Anlagendokumentation zu ver mit jedem Hard− und Software−Stand besteht. In einem solchen Fall ist die
wenden. Die Verwendung des Festo des Produkts übereinstimmt. Allein Haftung von Festo auf denjenigen
Logos bedarf der schriftlichen Geneh maßgeblich für den übereinstimmen Schaden begrenzt, der für Festo nach
migung von Festo. Für die Überein den Hard− und Software−Stand von der Kenntnis der konkreten Umstände
stimmung genutzter Bilder und Texte Produkt und Elektronischer Dokumen erkennbar war.
mit der Maschine/Anlage bzw. dem tation ist in diesem Fall die dem Pro
Produkt ist der Verwender selbst ver dukt beiliegende gedruckte Dokumen
antwortlich. tation von Festo. VI. Sicherheitsrichtlinien/Dokumen
d) Weitergehende Nutzungen sind in 2. Die in dieser Elektronischen tation
folgendem Rahmen zulässig: Dokumentation enthaltenen Informa Gewährleistungs− und Haftungsan
Das Vervielfältigen ausschließlich zur tionen können von Festo ohne Voran spruch nach Maßgabe der vorstehen
Verwendung im Rahmen einer Maschi kündigungen geändert werden, und den Regelungen (Ziff. III. u. IV) sind
nen− und Anlagendokumentation aus stellen keine Verpflichtung seitens nur gegeben, wenn der Anwender die
elektronischen Dokumenten sämtli Festo dar. Sicherheitsrichtlinien der Dokumenta
cher dokumentierter Zulieferbestand tion im Zusammenhang mit der Nut
teile. Die Demonstration gegenüber zung der Maschine und deren Sicher
Dritten ausschließlich unter Sicher IV. Haftung−/Haftungsbeschränkun heitsrichtlinien beachtet hat. Für die
stellung, dass kein Datenmaterial ganz gen Kompatibilität nicht mit einem Produkt
oder teilweise in anderen Netzwerken 1. Festo stellt diese Elektronische Do als Liefereinheit ausgelieferter Elek
oder anderen Datenträgern verbleibt kumentation zur Verfügung, um den tronischer Dokumentation mit dem
oder dort reproduziert werden kann. Verwender bei der Erstellung seiner vom Anwender tatsächlich genutzten
Die Weitergabe von Ausdrucken an Maschinen− und Anlagendokumenta Produkt ist der Anwender selbst ver
Dritte außerhalb der Regelung in Ziffer tion zu unterstützen. Für die Elektroni antwortlich.
3 sowie jede Bearbeitung oder an sche Dokumentation, die in Form von
dersartige Verwendung, ist nicht zu portablen Datenträgern (Disketten,
lässig. CD−Rom, Wechselplatte) nicht unmit−

0310d