SPS - ias.uni-stuttgart.de

Transcription

SPS - ias.uni-stuttgart.de
Universität Stuttgart
Institut für Automatisierungstechnik und Softwaresysteme
Prof. Dr.-Ing. M. Weyrich
Praktische Übungen im Labor
„Automatisierungstechnik“
Versuch Nr. 4
Speicherprogrammierbare Steuerungen
Versuchsanleitung
Raum 2.146
Dokument Versionsverwaltung
2
PÜL Automatisierungstechnik - SPS
Inhaltsverzeichnis
1
EINFÜHRUNG................................................................................................................. 3
1.1
1.2
2
„Eine starre Welt wird flexibel – die Geburt der SPS“ ............................................... 3
Inhalt und Zielsetzung des Versuchs ........................................................................... 3
SPEICHERPROGRAMMIERBARE STEUERUNGEN ............................................. 4
2.1 Einführung in die Steuerungstechnik .......................................................................... 4
2.2 Aufbau und Arbeitsweise einer SPS ............................................................................ 5
2.2.1 Aufbau einer SPS ................................................................................................. 5
2.2.2 Arbeitsweise einer SPS ........................................................................................ 6
2.2.3 Bauformen von SPS ............................................................................................. 6
2.3 TIA-Portal .................................................................................................................... 8
2.4 Programmierung einer SPS ......................................................................................... 9
2.4.1 Programmiersprachen........................................................................................... 9
2.4.2 Bitverknüpfungsoperationen .............................................................................. 11
2.4.3 Zeitoperationen................................................................................................... 12
2.4.4 Zähloperationen .................................................................................................. 15
2.4.5 Rechenoperationen mit ganzen Zahlen .............................................................. 16
2.4.6 Vergleichsoperationen ........................................................................................ 16
2.4.7 Umwandlungsoperationen .................................................................................. 17
2.4.8 Wert übertragen .................................................................................................. 17
2.4.9 Sprungoperationen ............................................................................................. 17
2.5 Anwendungsbeispiel Fußgängerampel ...................................................................... 18
3
AUFBAU DES DEMONSTRATORS........................................................................... 20
3.1 Der Demonstrator „Hochregallager“ ......................................................................... 20
3.1.1 Die Eingabestation ............................................................................................. 21
3.1.2 Das Regalbediengerät ......................................................................................... 21
3.1.3 Inbetriebnahme des Hochregallagers ................................................................. 23
3.2 Software-Komponenten ............................................................................................. 23
3.2.1 Entwicklungsumgebung SIMATIC STEP 7 ...................................................... 23
4
VERSUCHSDURCHFÜHRUNG ................................................................................. 29
4.1 Erster Versuchstermin ............................................................................................... 29
4.1.1 Vorbereitungsaufgaben ...................................................................................... 29
4.1.2 Aufgaben zur Durchführung .............................................................................. 31
4.2 Zweiter Versuchstermin ............................................................................................ 32
4.2.1 Vorbereitungsaufgaben ...................................................................................... 33
4.2.2 Aufgaben zur Durchführung .............................................................................. 34
5
ANHANG ........................................................................................................................ 35
5.1
Symbolliste ..........................................................Fehler! Textmarke nicht definiert.
PÜL Automatisierungstechnik - SPS
3
1 Einführung
1.1 „Eine starre Welt wird flexibel – die Geburt der SPS“
Bis Anfang der siebziger Jahre wurden Steuerungsaufgaben durch verbindungsprogrammierte
Schütz- oder Relaissteuerungen gelöst. Die Nachteile lagen dabei im großen Platzbedarf für
die Hardware und vor allem in der mangelnden Flexibilität. Jede Änderung erforderte in der
Regel mühsame Umbauarbeiten. Die Entwicklung der Speicherprogrammierbaren Steuerung
(SPS) führte zu einem radikalen Wandel in der Steuerungstechnik. SPS zeichnen sich durch
ihre Hardware-unabhängige Ausführung von Steuerungsaufgaben aus – realisiert werden die
Abläufe nun in Software.
Im Unterhalt sind SPS aufgrund einer Reihe von Vorteilen interessant:




Niedrige Kosten pro Steuerfunktion
Hohe Zuverlässigkeit
Einfache Instandhaltung und Fehlerortung
Hoher Grad der Standardisierung von Hard- und Software
Die Anwendungen reichen daher von der Produktautomatisierung bis hin zur Anlagenautomatisierung.
1.2 Inhalt und Zielsetzung des Versuchs
Im Rahmen dieses 2-tägigen Versuches soll in die Erstellung von Steuerungsprogrammen für
SPS unter Verwendung unterschiedlicher SPS-Programmiersprachen eingeführt werden. Als
Aufgabe dient die Programmierung einer Hochregallager-Steuerung mit Hilfe einer Siemens
Soft-SPS.
Im Sinne einer erfolgreichen und zügigen Versuchsdurchführung ist der Versuch gut vorzubereiten. Hierzu sind sämtliche Vorbereitungsaufgaben vor Versuchsbeginn schriftlich zu bearbeiten und jeweils einmal pro Gruppe dem Tutor nach dem Versuch abzugeben.
4
PÜL Automatisierungstechnik - SPS
2 Speicherprogrammierbare Steuerungen
2.1 Einführung in die Steuerungstechnik
Eine Steuerung dient zum Steuern einer Maschine oder allgemein eines technischen Prozesses
abhängig von Prozesssignalen und externen Steuersignalen (vgl. Abbildung 1). Die Steuerung
erhält als Eingangssignale von außen kommende Bediensignale und von Sensoren (z.B.
Grenztaster, Lichtschranken etc.) gebildete Prozesssignale. Abhängig von diesen Eingangssignalen erzeugt die Steuerung entsprechend ihres Automatisierungsprogramms die Ausgangssignale, die zur Steuerung des Prozesses mittels Aktoren dienen. In DIN 19226 ist eine
Steuerung durch einen offenen Wirkungsweg definiert. D.h. sie kann nur Störgrößen entgegenwirken, für die sie ausgelegt ist. Dabei besteht der Wirkungsweg aus der Steuereinrichtung
(Automatisierungsgerät) und der Steuerstrecke (technischer Prozess).
Eingangssignale
Bedienpult
Sensoren
Ausgangssignale
Steuerung
Prozeß/
Maschine
Aktoren
Abbildung 1: Struktur eines Steuerungssystems
Bzgl. der Funktionsweise unterscheidet man zwei Arten von Steuerungen:


Verknüpfungssteuerungen (Freifolgesteuerungen): Der Steuerungsablauf hängt ausschließlich von den Prozesssignalen (dem Prozesszustand) der gesteuerten Anlage ab.
Ablaufsteuerungen (Zwangsfolgesteuerungen): Der Steuerungsablauf hängt vom Prozesszustand und vom Zustand der Steuerung ab.
In der Praxis liegen in der Regel Mischformen von Verknüpfungssteuerungen und Ablaufssteuerungen vor.
PÜL Automatisierungstechnik - SPS
5
2.2 Aufbau und Arbeitsweise einer SPS
2.2.1 Aufbau einer SPS
Wie in Abbildung 2 dargestellt, enthält eine SPS, wie jeder Rechner, ein Steuer- und Rechenwerk sowie einen Programm- und Datenspeicher (Merker). Darüber hinaus verfügt eine SPS
über einen Zeitgeber, eine Schnittstelle zu einem sog. Programmiergerät und Ein/Ausgabeeinheiten, die abhängig vom Umfang und Ausbaugrad der Steuerung jeweils eine
oder mehrere Ein- und Ausgabegruppen umfassen.
Programmspeicher
Steuerwerk
Eingabeeinheit
Ausgabeeinheit
E 0.0
E 0.1
.
.
.
.
A 0.0
A 0.1
.
.
.
.
interner Bus
Merker
Zeitgeber
Schnittstelle
Programmiergerät
Abbildung 2: Aufbau einer SPS

Eingabeeinheit: Die Eingabeeinheit dient zur Erfassung von analogen oder digitalen Eingangssignalen. Üblicherweise enthält jeder Eingabekanal eine Eingangsschaltung zur Anpassung des Signalpegels, eine LED zur Anzeige des anliegenden Eingangwertes, ein Entstörfilter, einen Optokoppler zur galvanischen Trennung der Eingangssignalkreise von der
Steuerung und eine Dekodierschaltung, um der Steuerung den gezielten Zugriff zur betreffenden Baugruppe über eine Eingangstorschaltung zu ermöglichen.

Ausgabeeinheit: Auch bei der Ausgabeeinheit kann zwischen analogen und digitalen
Baugruppen unterschieden werden. Durch Ausgabe der jeweiligen Baugruppenadresse
kann das Steuerwerk gezielt an eine Ausgabebaugruppe Ausgangswerte ausgeben. Jeder
einzelne binäre Ausgangskanal enthält einen 1-Bit-Speicher zur Speicherung des jeweiligen Ausgabewertes, eine Anzeige für den Ausgabewert, eventuell eine galvanische Trennung des Ausgangssignalkreises vom Steuerungsstromkreis und ein Verstärkerglied zur
direkten Ansteuerung von Stellgliedern. Die Speicherung der binären Ausgabewerte auf
der jeweiligen Ausgabekarte ist notwendig, um aus den von der Steuerung impulsförmig
ausgegebenen Werten Dauersignale zu erzeugen. Die Ausgangsbaugruppen können eventuell noch Einrichtungen zur Überwachung der Ausgänge auf Kurzschluss und zum Abschalten der Ausgänge im Störungsfall enthalten.
6
PÜL Automatisierungstechnik - SPS

Zeitgeber: Die Zeitgeber ermöglichen die Bildung der für steuerungstechnische Aufgaben
erforderlichen Zeiten im Bereich von etwa 0,01 s bis 1000 min. Sie sind entweder durch
eigene Baugruppen mit entsprechenden Zeitgliedern oder durch Speicherbereiche realisiert, in denen die Zeitzählerstände der einzelnen Zeitgeber abgelegt sind und immer nach
Ablauf der jeweiligen, mit einer Echtzeituhr gebildeten, Zeiteinheit erniedrigt werden.

Merker: Merker sind Speicherelemente, in denen sich das Steuerwerk Signalzustände
„merkt” (speichert).

Programmspeicher: Der Programmspeicher enthält die Anweisungen des Anwenderprogramms im Maschinencode (z.B. 16-Bit-Worte unter fortlaufender Adresse). Normalerweise werden hierzu gepufferte Schreib-Lese-Speicher verwendet.

Steuerwerk: Das Steuerwerk liest die Anweisungen des Automatisierungsprogramms in
der Reihenfolge der Adressen aus dem Programmspeicher und führt die zugehörigen Operationen aus

Bussystem: Programmspeicher, Steuerwerk, und Peripheriebaugruppen (Ein- und Ausgänge) sind in der SPS durch einen Bus, dem sog. Rückwandbus, miteinander verbunden.
2.2.2 Arbeitsweise einer SPS
Prozessabbild im
Ausgangsspeicher
Ausgangssignale
Automatisierungsprogramm
(Signalverarbeitung)
Prozessabbild im
Eingangsspeicher
technischer
Prozess
Eingangssignale
Sensoren
SPS
Aktoren
Eine SPS arbeitet in einem zyklischen Betrieb (vgl.
Abbildung 3). Dabei werden zu
Beginn jedes Zyklus die aktuellen Eingangssignale eingelesen und im Speicher abgelegt. Man
bezeichnet diesen Vorgang als Erstellung eines Prozessabbilds. Im Anschluss erfolgt die eigentliche Programmbearbeitung, d.h. die Berechnung neuer Ausgangswerte auf Basis des
abgespeicherten Prozessabbilds. Änderungen im technischen Prozess während dieser Phase
werden von der Steuerung (noch) nicht erkannt und auch in der Berechnung nicht berücksichtigt. Nach Beendigung der Berechnungen werden die sich im Ausgangsspeicher befindlichen
Ausgangswerte an den technischen Prozess ausgegeben und der Zyklus beginnt von neuem.
Die Zykluszeit ist dabei nicht konstant sondern hängt von Programm und Ausführungspfad
ab.
Abbildung 3: Arbeitsweise einer SPS
2.2.3 Bauformen von SPS
Je nach Einsatzgebiet gibt es heutzutage eine breit gefächerte Produktpalette von SPS. Dabei
entscheiden das Einsatzgebiet und der benötigte Leistungsumfang über die zu wählende Steuerung.
PÜL Automatisierungstechnik - SPS
7
Im Folgenden werden anhand von Siemens Produkten die einzelnen Steuerungen vorgestellt.
Natürlich bieten auch andere Hersteller Steuerungen an.
2.2.3.1 Stand-Alone-Systeme
Abbildung 4: Siemens SIMATIC S7 SPS-Programm
Die bei Siemens unter der Kategorie „Modular Controller“ angebotenen SPS „SIMATIC S7“
sind durch ihre kompakte und modulare Bauform für den Einsatz in der Anlagensteuerung
gedacht. Die Programmierung erfolgt durch ein externes Programmiergerät (PG), das in den
meisten Fällen ein PC ist, z.B. über Profibus. Auf der Steuerung läuft dann das aufgespielte
Programm wie im vorhergehenden Kapitel beschrieben ab. Diese Bauform ist die „klassische“
Variante der SPS und wird auch heute noch gewählt, da sie als fehlersicher eingestuft wird.
2.2.3.2 IPC und Soft-SPS
8
PÜL Automatisierungstechnik - SPS
Mit dem Einsatz von sog. „Industrial-PC“ (IPC) verschmelzen die Grenzen zwischen einer
SPS und einer PC-Steuerung auch Prozessleitsystem bezeichnet.
Als IPC werden PC bezeichnet, die die von der Industrie geforderten Normen in Bezug auf
Verfügbarkeit und Ausfallsicherheit aufweisen. Hierbei werden auch unterschiedliche Bauformen angeboten, die sich für den Einbau in Schaltschränke eignen oder 19“-Rackkompatible Gehäuse aufweisen. Siehe Abbildung 5.
Abbildung 5: Bauformen von IPC, links: Micro-IPC, rechts: Rack-IPC
Auf einem IPC laufen unter einem Windows-Betriebssystem sog. Software-basierte SPS
(Soft-SPS) ab. Über Steckkarten, den sog. Kommunikationsprozessoren (CP), können diese
z.B. per Profibus mit der Peripherie kommunizieren. Die Programmierung kann entweder
durch ein externes PG erfolgen – der IPC agiert dann wie ein gut ausgestattetes Stand-AloneSystem – oder die Entwicklungsumgebung zur Programmierung läuft wie beim Demonstrator
am IAS ebenfalls direkt auf dem IPC.
Die Vorteile einer so aufgebauten SPS liegen im Funktionsumfang, der von den IPC angeboten wird und damit selbst große Prozessleitsysteme und komplexe Steuerungen ermöglicht
und dies mit der von PC bekannten Flexibilität.
Die Nachteile eines solchen Aufbaus liegen in der nur schwer realisierbaren Echtzeitverarbeitung und der Gefahr von Software-Fehlern während der Verarbeitung. Seit 2010 stellen auch
Computer-Viren eine ernst zu nehmende Gefahr für solche Systeme dar.
2.3 TIA-Portal
Das Totally Integrated Automation Portal (TIA-Portal) integriert verschiedene SIMATIC
Produkte in eine Software-Anwendung, mit der Sie Ihre Produktivität und Effizienz erhöhen
können.
Eine typische Automatisierungslösung umfasst:
 Eine Steuerung, die den Prozess mit Hilfe des Programms steuert.
 Ein Bediengerät, mit dem Sie den Prozess bedienen und visualisieren.
PÜL Automatisierungstechnik - SPS
9
2.4 Programmierung einer SPS
Steuerungsaufgaben werden vom Anwender in einem Programm festgehalten. Mit Hilfe einer
Menge von Sprachelementen wird das Programm für konkrete Aufgaben erstellt. Da es sich
bei den Aufgaben um die Verarbeitung von binären Signalen handelt, sind die Sprachelemente für diese Funktionen ausgelegt. Aus den so beschränkten Anforderungen haben sich für die
Praxis fünf Programmiersprachen entwickelt:





Kontaktplan (KOP)
Funktionsplan (FUP)
Anweisungsliste (AWL)
Ablaufsprache (AS)
Strukturierter Text (ST)
2.4.1 Programmiersprachen
2.4.1.1 Kontaktplan (KOP)
Bei KOP hat man die Erfahrungen aus der Zeit des Aufbaus von Steuerungen mit Relais
übernommen. Dabei werden UND-Verknüpfungen als Reihenschaltung und ODERVerknüpfungen als Parallelschaltung realisiert. Es werden drei Arten von Elementen unterschieden: Öffner, Schließer und Verknüpfungsergebnis (vgl. Abbildung 6).
Schließer
Öffner
Verknüpfungsergebnis
Abbildung 6: Kontaktplan Elemente
10
PÜL Automatisierungstechnik - SPS
2.4.1.2 Funktionsplan (FUP)
FUP ersetzt oder ergänzt die Textbeschreibung einer Steuerungsaufgabe, kann aber auch als
graphische Darstellung der Schaltalgebra verstanden werden. In graphischer Form werden die
funktionellen Zusammenhänge aller Signale, unabhängig von der Realisierung dargestellt.
2.4.1.3 Anweisungsliste (AWL)
KOP- und FUP-Darstellungen von Steuerungen müssen in eine dem Mikroprozessor nahe
liegende Form umgewandelt werden, in die Anweisungsliste (AWL). Man kann eine Anweisungsliste als die Assemblersprache der SPS verstehen. Zweiteilig aufgebaute Anweisungen
bestehen aus der Operations- und Operanden-Bezeichnung. Im Operandenteil wird die Quelle
bzw. das Ziel der zu verarbeitenden Signalzustände angegeben. Dagegen wird im Operationsteil die Operation selbst angegeben. Die folgende Tabelle zeigt eine Übersicht der AWLOperanden und Operationen.
Operand
Eingang
Ausgang
Merker
Konstante
Zeitglied
Zähler
Bezeichnung
E
A
M
K
T
Z
Operationen
Konjunktion UND
Disjunktion ODER
Negation NICHT
Zuweisung
Laden
Klammer AUF
Klammer ZU
Nulloperation
Negation der Konjunktion
Negation der Disjunktion
Negation eines Ausdrucks
Bezeichnung
U
O
N
=
L
(
)
NOP
UN
ON
N(
Tabelle 1: AWL-Operanden und Operationen
2.4.1.4 Ablaufsprachen (AS)
Ablaufsprachen bestehen aus einzelnen Prozessesschritten und den Weiterschaltbedingungen
(Transitionen) (vgl. Abbildung 7). Die Schritte können Aktionen enthalten, die Transitionen
beschreiben, unter welchen Bedingungen ein Übergang zum nächsten Schritt erfolgen soll.
Darüber hinaus können für jeden Schritt Verriegelungsbedingungen (C) und Überwachungsbedingungen (V) festgelegt werden. Mit einer Verriegelungsbedingung kann die Ausführung
von Aktionen von Bedingungen abhängig gemacht werden. Überwachungsbedingungen dienen zum Erkennen von Ablauffehlern. Die Weiterschalt-, Verriegelungs- und Überwachungsbedingungen werden in der Programmiersprache Kontaktplan (KOP) programmiert. Ablaufsprachen eignen sich besonders zur Programmierung von Ablaufsteuerungen.
PÜL Automatisierungstechnik - SPS
11
T1
S2
Schritt 2
T2
-
S3
Schritt 3
T3
S4
Schritt 4
Abbildung 7: Lineare Ablaufkette in der Ablaufsprache S7-Graph
2.4.2 Bitverknüpfungsoperationen
Die Bitverknüpfungsoperationen interpretieren die Signalzustände 0 und 1 und verknüpfen sie
entsprechend der Booleschen Logik. Die Verknüpfungen liefern das Ergebnis von 0 oder 1.
2.4.2.1 UND-Verknüpfung
FUP
E0.0
&
A4.0
=
KOP
E0.0
E0.1
E0.1
AWL
A4.0
( )
U
U
=
E
E
A
0.0
0.1
4.0
Beschreibung: Der Ausgang A4.0 führt ein 1-Signal, wenn die Eingänge E0.0 UND E0.1 ein
1-Signal haben.
2.4.2.2 ODER-Verknüpfung
FUP
KOP
E0.0
E0.0
>=1
AWL
A4.0
( )
A4.1
=
E0.1
E0.1
O
O
=
E
E
A
0.0
0.1
4.0
Beschreibung: Der Ausgang A4.0 führt ein 1-Signal, wenn die Eingänge E0.0 ODER E0.1
ein 1-Signal hat.
2.4.2.3 XOR-Verknüpfung
FUP
E0.0
XOR
E0.0
E0.1
E0.0
E0.1
A4.0
=
E0.1
KOP
AWL
A4.0
( )
X
X
=
E
E
A
0.0
0.1
4.0
Beschreibung: Der Ausgang A4.0 führt ein 1-Signal, wenn entweder exklusiv der Eingang
E0.0 oder exklusiv der Eingang E0.1 ein 1-Signal hat.
12
PÜL Automatisierungstechnik - SPS
2.4.2.4 Negation
FUP
E0.1
&
E0.0
KOP
>=1
A4.3
=
E0.2
AWL
E0.0
A4.3
( )
NOT
E0.1
E0.2
U(
O
O
UN
U
)
NOT
=
E
0.0
E
E
0.1
0.2
A
4.3
Beschreibung: Der Ausgang A4.3 führt ein 1-Signal, wenn weder die UND-Abfrage (NICHT
E0.1 UND E0.2) erfüllt ist noch der Eingang E0.0 ein 1-Signal hat.
2.4.2.5 Ausgang setzen
FUP
KOP
E0.5
E0.5
>=1
A4.7
S
AWL
A4.7
(S)
E0.6
E0.6
O
O
S
E
E
A
0.5
0.6
4.7
Beschreibung: Der Ausgang A4.7 wird auf den Signalwert 1 gesetzt (gespeichert eingeschaltet), wenn der Eingang E0.5 ODER E0.6 ein 1-Signal haben.
2.4.2.6 Ausgang rücksetzen
FUP
E0.3
&
A4.7
R
KOP
E0.3
E1.6
E1.6
AWL
A4.7
(R)
U
U
R
E
E
A
0.3
1.6
4.7
Beschreibung: Der Ausgang A4.7 wird auf den Signalwert 0 zurückgesetzt (ausgeschaltet),
wenn die Eingänge E0.3 UND E1.6 ein 1-Signal haben.
2.4.3 Zeitoperationen
Zeitoperationen dienen dem Programmierer zur Realisierung verschiedener Steuerungsaufgaben. Der Aufruf der verschiedenen Zeitfunktionen sowie die Zeitvorgabe müssen im Anwenderprogramm erfolgen. Speicherprogrammierbare Steuerungen bieten fünf Arten von Zeitoperationen. Diese sind in Tabelle 2 aufgeführt.
S_IMPULS
S_VIMP
S_EVERZ
S_SEVERZ
S_AVERZ
Impuls
Verlängerter Impuls
Einschaltverzögerung
Speichernde Einschaltverzögerung
Ausschaltverzögerung
Tabelle 2: Zeitarten
PÜL Automatisierungstechnik - SPS
13
2.4.3.1 Zeit als Impuls starten (S_IMPULS)
FUP
AWL
T1
E1.0
S5T#3S
E1.1
S_IMPULS
S
TW
DUAL
DEZ
R
Q
A4.0
U
L
SI
U
R
L
NOP
U
=
E
1.0
S5T#3S
T
1
E
1.1
T
1
T
1
0
T
1
A
4.0
Parameter
T1
Timer-Nr.
S
Starteingang
TW Zeitwert
R
Rücksetzeingang
DUAL Rest-Zeitwert
DEZ Rest-Zeitwert
Q
Status des Timers
Beschreibung: Wechselt der Schaltzustand am Eingang E1.0 von 0 auf 1, wird der Timer T1
gestartet. Er läuft mit dem angegebenen Wert von 3 s ab, solange E1.0 = 1 ist. Wechselt der
Signalzustand bei E1.0 von 1 auf 0, wird die Zeit angehalten. Wenn der Signalzustand bei
E1.1 von 0 auf 1 geht, während die Zeit läuft, wird sie zurückgesetzt. Der Ausgang 4.0 führt
ein 1-Signal, solange die Zeit läuft. In Abbildung 8 ist der zeitliche Verlauf dargestellt.
Starteingang
1
0
t
Rücksetzeingang
1
0
t
Status der Zeit
1
3s
0
t
Abbildung 8: Zeitlicher Verlauf „Impuls“
14
PÜL Automatisierungstechnik - SPS
2.4.3.2 Zeit als Einschaltverzögerung starten (S_EVERZ)
FUP
AWL
T1
E1.0
S5T#3S
E1.1
S_EVERZ
S
TW
DUAL
DEZ
R
Q
A4.0
U
L
SE
U
R
L
NOP
U
=
E
1.0
S5T#3S
T
1
E
1.1
T
1
T
1
0
T
1
A
4.0
Parameter
T1
Timer-Nr.
S
Starteingang
TW Zeitwert
R
Rücksetzeingang
DUAL Rest-Zeitwert
DEZ Rest-Zeitwert
Q
Status des Timers
Beschreibung: Wechselt der Signalzustand am Eingang E1.0 von 0 auf 1, wird die Zeit gestartet. Ist die angegebene Zeit von 3 s abgelaufen und beträgt der Signalzustand am Eingang
E1.0 noch immer 1, dann erhält der Ausgang A4.0 ein 1-Signal. In Abbildung 9 ist der zeitliche Verlauf dargestellt.
Starteingang
1
0
t
Rücksetzeingang
1
0
t
Status der Zeit
1
3s
3s
0
t
Abbildung 9: Zeitlicher Verlauf „Einschaltverzögerung“
2.4.3.3 Zeit als speichernde Einschaltverzögerung starten (S_SEVERZ)
Wechselt der Signalzustand am Eingang von 0 auf 1, wird die Zeit gestartet. Die Zeit läuft
unabhängig davon ab, ob das Signal am Eingang von 1 auf 0 wechselt. Wenn die Zeit abgelaufen ist, führt der Ausgang solange ein 1-Signal, bis der Signalzustand bei R von 0 auf 1
geht.
PÜL Automatisierungstechnik - SPS
15
2.4.3.4 Zeit als Ausschaltverzögerung starten (S_AVERZ)
Wechselt der Signalzustand am Eingang S von 0 auf 1, wird der Ausgang eingeschaltet.
Wechselt der Signalzustand am Eingang S von 1 auf 0, wird die Zeit gestartet. Der Ausgang
Q führt ein 1-Signal wenn am Eingang 1 ist oder solange die Zeit läuft. In Abbildung 10 ist
der zeitliche Verlauf dargestellt.
Starteingang
1
0
t
Rücksetzeingang
1
0
t
Status der Zeit
1
verz.
verz.
0
t
Abbildung 10: Zeitlicher Verlauf „Ausschaltverzögerung“
2.4.4 Zähloperationen
Zähloperationen werden für das Erfassen von Stückzahlen oder Impulsen, sowie zur Auswertung von Zeiten und Entfernungen eingesetzt. Sie sind, wie die Zeitfunktionen flankengetriggert. Die Inhalte der Zähler sind binär codiert. Die SPS bietet drei Zählerarten: Vorwärtszähler, Rückwärtszähler und Vorwärts-/Rückwärtszähler.

Zähleranfangswert setzen
FUP
KOP
&
E1.0
SZ
C#75
ZW
E1.0
Z1
(SZ)
C#75
AWL
U
E
Z
C#75
1.0
S
Z
1
Beschreibung: Der Zähler Z1 wird mit dem Anfangswert 75 gesetzt, wenn der Eingang
E1.0 eine positive Flanke erfährt. Bei Eingabe als Konstante muss bei AWL, KOP und FUP
vor dem Wert das Zeichen C# stehen.
16

PÜL Automatisierungstechnik - SPS
Vorwärtszähler
FUP
&
KOP
Z1
ZV
E1.1
E1.1
Z1
(ZV)
AWL
U
ZV
E
Z
1.1
1
Beschreibung: Der Zähler Z1 wird mit jeder positiven Flanke am Eingang E1.1 um 1 erhöht.

Rückwärtszähler (ZR) funktioniert analog zum Vorwärtszähler
2.4.5 Rechenoperationen mit ganzen Zahlen

16 Bit-Ganzzahlen addieren
FUP-/KOP-Box
ADD_I
EN
IN1 OUT
IN2 ENO

AWL Beispiel
EN
Freigabeeingang (optional)
IN1
Erster Summand
IN2
Zweiter Summand
OUT Ergebnis der Addition
ENO Freigabeausgang (optional)
L
L
+I
T
NOP
Wert1
Wert2
Ergebnis
0
16 Bit-Ganzzahlen subtrahieren
FUP-/KOP-Box
SUB_I
EN
IN1 OUT
IN2 ENO
AWL Beispiel
EN
Freigabeeingang (optional)
IN1
Minuend
IN2
Subtrahend
OUT Ergebnis der Subtraktion
ENO Freigabeausgang (optional)
L
L
-I
T
NOP
Wert1
Wert2
Ergebnis
0
2.4.6 Vergleichsoperationen
In der folgenden Tabelle ist eine Übersicht der Vergleichsmöglichkeiten dargestellt.
Vergleichsart
IN1 ist gleich IN2
IN1 ist ungleich IN2
IN1 ist größer als IN2
IN1 ist kleiner als IN2
IN1 ist größer gleich IN2
IN1 ist kleiner gleich IN2
Vergleichszeihen bei AWL, FUP und KOP
Integerzahlen Double Integer Gleitpunktzahlen
(16 Bit)
(32 Bit)
(32 Bit)
==I
==D
==R
<>I
<>D
<>R
>I
>D
>R
<I
<D
<R
>=I
>=D
>=R
<=I
<=D
<=R
Tabelle 3: Vergleichsmöglichkeiten
PÜL Automatisierungstechnik - SPS
17
Beispiel: Vergleich von zwei Integerzahlen
L
Zahl1
L
Zahl2
==I
=
A
4.0
Diese Operation vergleicht den Wert des Eingangsparameters „Zahl1“ mit dem Wert der
Zahl2. Sind die Werte identisch, dann führt der Ausgang A4.0 ein 1-Signal, andernfalls ein 0Signal.
2.4.7 Umwandlungsoperationen
Die zwei wichtigsten Umwandlungsoperationen sind die Umwandlung von BCD-Zahlen in
Integerzahlen und umgekehrt. Die Operation „BTI“ wandelt die BCD-Zahl im Eingangswort
in eine Integerzahl und „IBT“ wandelt eine Integerzahl in eine BCD-Zahl.
Beispiel: (AWL)
L
Wert-Ein
BTI
T
Wert-OUT
2.4.8 Wert übertragen
Die Operation „MOVE“ (FUP/KOP) überträgt den Wert des Eingangswort in das Ausgangswort. Diese Funktion ist sehr hilfreich bei der Aktualisierung der Datenbausteine.
Beispiel: (AWL)
L
MW
T
AW
20
22
2.4.9 Sprungoperationen
Die SPS bietet auch Sprungfunktionen wie man sie auch in anderen Programmiersprachen
findet. In der Tabelle 3 ist eine Übersicht der wichtigsten Sprungfunktionen dargestellt.
Operation
Springe absolut
Sprungleiste
Springe bedingt bei 1
Springe bedingt bei 0
FUP, KOP
JMP-Box
Entfällt
JMP-Box
JMPN-Box
AWL
SPA
SPL
SPB
SPBN
Vergleichbar mit
GOTO-Anweisung
CASE-Anweisung
IF-Anweisung
IF-Anweisung
Tabelle 4: Übersicht der Sprungoperationen
18
PÜL Automatisierungstechnik - SPS
Beispiel: (AWL)
Netzwerk 1:
U
E
SPB M1
Netzwerk 2:
O
E
O
E
=
A
0.0
0.1
0.2
4.0
Netzwerk 3:
SPA M2
Netzwerk 4:
M1: U
E
=
A
Netzwerk 5:
M2: U
E
=
A
4.2
0.3
4.1
Beschreibung:
Das Programm verzweigt vom Netzwerk 1 zur Sprungmarke M1 im Netzwerk 4, wenn der Eingang E0.0 ein 1Signal führt und damit die Sprungbedingung im Netzwerk 1 erfüllt ist. In
diesem Fall werden die Netzwerke 2
und 3 übersprungen, d.h. nicht bearbeitet. Führt E0.0 ein 0-Signal, ist die
Sprungbedingung im Netzwerk 1 nicht
mehr erfüllt, das Programm setzt im
Netzwerk 2 fort. Anschließend sorgt die
absolute Sprunganweisung im Netzwerk
3 für die Verzweigung zur Sprungmarke
M2 im Netzwerk 5.
0.4
2.5 Anwendungsbeispiel Fußgängerampel
Was soll gesteuert werden? Mit dem zu erstellenden Beispielprogramm AMPEL soll der
Straßen- und Fußgängerverkehr an einem Fußgängerüberweg gesteuert werden.
Welche Teilaufgaben sind zu erfüllen? Das Programm AMPEL soll sowohl die Ampeln für
den Straßenverkehr (Verkehrsampeln) als auch die Ampeln für den Fußgängerverkehr (Fußgängerampeln) steuern. Die Fußgängerampeln haben jeweils eine grüne und eine rote Signalleuchte, sowie einen Schalter, um Grün für Fußgänger anzufordern.
Welche Anforderungen gibt es?
 Voreinstellung soll sein: Grün für die Verkehrsampel und Rot für die Fußgängerampel,
damit ein sicherer Ausgangszustand definiert ist.
 Erhält das Programm durch das Drücken des Schalters die Aufforderung, die Fußgängerampel auf Grün zu schalten, so schaltet die Verkehrsampel von Grün über Gelb auf Rot.
 Die Gelbphase für den Autoverkehr dauert 3 sec.
 Die Rotphase für den Autoverkehr soll 16 sec. dauern und gleichzeitig mit der Grünphase
für den Fußgängerverkehr starten.
 Die Grünphase für den Fußgängerverkehr soll 10 sec. dauern.
 Sobald die Grünphase für den Fußgängerverkehr beendet ist, soll die Fußgängerampel auf
Rot umschalten.
 Die Rot-/Gelbphase für den Autoverkehr soll 3 sec. dauern.
 Die Verzögerung für die nächste Grünanforderung für Fußgänger soll 1 sec. dauern.
Welche Operanden werden benötigt?
 2 Eingänge (E), zur Anforderung von Grün für die Fußgänger auf beiden Straßenseiten
 5 Ausgänge (A) zur Steuerung der Signalanzeigen beider Ampeln
 1 Merker (M), zur Durchführung der Ampelschaltung nach einer Grünanforderung durch
einen Fußgänger
 5 Zeiten (T), um die Dauer der jeweiligen Ampelphasen zu bestimmen. Die Zeiten haben
jeweils das Format <S5Time>.
PÜL Automatisierungstechnik - SPS
19
AWL-Programm:
Netzwerk 1: Ermittlung der Grünanforderung für Fußgänger
U(
U(
O
O
)
U
O
)
UN
=
A 4.5
S5T#10S
T3
Netzwerk 7: Grünphase für Fußgänger
E 0.0
E 0.1
T6
M 0.0
T5
M 0.0
Netzwerk 2: Grünphase für Autos
UN
=
U
L
SE
M 0.0
A 4.7
U
UN
=
A 4.5
T3
A 4.1
Netzwerk 8: Timerstart für Verzögerung
der Gelbphase für Autos
U
U
L
SE
M 0.0
T3
S5T#6S
T4
Netzwerk 9: Rotphase für Fußgänger
Netzwerk 3: Timerstart für Gelbphase für
Autos
U
L
SE
M 0.0
S5T#3S
T2
Netzwerk 4: Gelbphase für Autos
U
U(
ON
O
)
=
M 0.0
T2
T4
A 4.6
U
U(
ON
O
)
ON
=
M 0.0
T2
T3
M 0.0
A 4.0
Netzwerk 10: Timerstart für
Rot-/Gelbphase für Autos
U
U
L
SE
M 0.0
T4
S5T#3S
T5
Netzwerk 5: Rotphase für Autos
U
U
=
M 0.0
T2
A 4.5
Netzwerk 6: Timerstart für Grünphase für
Fußgänger
Netzwerk 11: Timerstart für Verzögerung
der Grünanforderung
U
A 4.7
L
S5T#1S
SET 6
20
PÜL Automatisierungstechnik - SPS
3 Aufbau des Demonstrators
Im Rahmen dieses Versuches ist die Steuerung für den Demonstrator Hochregallager zu entwerfen. In diesem Kapitel wird der Aufbau des Demonstrators beschrieben und die für Projektierung, Programmierung und Bedienung notwendigen Software-Komponenten vorgestellt.
3.1 Der Demonstrator „Hochregallager“
2
1
3
6
4
7
5
Abbildung 11: Das Hochregallager 1 Hochregal, 2 Regalbediengerät, 3 Förderkorb,
4 Eingabestation, 5 Vereinzelungseinheit, 6 Ausgabestation, 7 periphere Steuerung
Mit Hilfe des Demonstrators Hochregallager (Abbildung 11) können Werkstücke auf 50 Lagerplätze (1) eingelagert und wieder ausgelagert werden. Die Werkstücke werden aus der
Eingabestation (4 & 5) durch das Regalbediengerät (2) aufgenommen und mithilfe des Förderkorbes (3) zu den Lagerplätzen gebracht.
Die Orientierung im Hochregallager ist so angelegt, dass das obere linke Fach auf einer Matrix das Element [1,1] belegt und das rechte untere Fach [10,5] ist. Damit ist das Regalbediengerät für die Abdeckung in X-Richtung zuständig, der Förderkorb für die Z-Richtung. Durch
den Teleskoptisch des Förderkorbes wird die Y-Richtung abgedeckt.
Ausgelagerte Werkstücke werden in der Ausgabestation (6) abgelegt.
Die Einlagerung von Werkstücken kann sequentiell erfolgen. Alternativ dazu ist es möglich,
das Sortierziel anhand der Codierung der einzelnen Werkstücke zu ermitteln. Die Codierung
wird durch Analyse-Sensoren in der Eingabestation erkannt.
Die Anbindung des Demonstrators erfolgt über D/A-Wandler der Firma Schleicher (7). Diese
sind über Profibus mit dem Kommunikationsprozessor des IPC verbunden.
PÜL Automatisierungstechnik - SPS
21
3.1.1 Die Eingabestation
Die Komponenten der Eingabestation sind in der Abbildung 12 dargestellt. Die Vereinzelungseinheit zieht mit Hilfe einer Kette, an der zwei Mitnehmer befestigt sind, die Werkstücke
aus dem Speicher. Das Vorhandensein eines Werkstücks wird durch den Speichersensor (2)
erkannt. Während des Transports wird der Werkstücktyp mittels zwei Analysesensoren (4)
ermittelt. Die Analysesensoren befinden sich unter dem Boden der Vereinzelungseinheit.
Das Förderband transportiert die vereinzelten Werkstücke zur Abholposition. Dort werden sie
von einer Lichtschranke erkannt (6)
6
4
3
5
2
1
Abbildung 12: Die Vereinzelungseinheit 1 Motor Vereinzelungseinheit,
2 Sensor Vereinzelungseinheit, 3 Sensor des Mitnehmers, 4 Analysesensoren (nicht sichtbar),
5 Motor Förderband, 6 Sensoren Abholposition
3.1.2 Das Regalbediengerät
Am Regalbediengerät (Abbildung 13) befestigt ist der Förderkorb, der durch den Motor (1)
nach oben und unten bewegt wird. Die Position des Förderkorbs soll mit Hilfe der Positionssensoren (2) erfasst werden, von denen es jeweils 2 Stück für jede Höhe gibt. Im Förderkorb
ist ein Teleskoptisch (3) eingebaut, dessen Position über drei Sensoren unter dem Förderkorb
(4) bestimmt wird. Die Anwesenheit eines Werkstückes wird über den Sensor seitlich am
Förderkorb festgestellt (5). Das Regalbediengerät wird mit dem Antriebsriemen (6) nach links
und nach rechts bewegt wobei seine Position ebenfalls durch Sensoren bestimmt werden
kann.
22
PÜL Automatisierungstechnik - SPS
1
2
2
5
6
4
3
Abbildung 13: Das Regalbediengerät 1 Antrieb Förderkorb (Z-Richtung),
2 Positionssensoren oben/unten, 3 Teleskoptisch (Y-Richtung), 4 Positionssensor „Vorne“, 5
Werkstückerkennung, 6 Antrieb Regalbediengerät (X-Richtung)
PÜL Automatisierungstechnik - SPS
23
3.1.3 Inbetriebnahme des Hochregallagers
Zu Beginn der Arbeit muss das Hochregallager mit Spannung versorgt werden. Die Werkstücke oder andere Gegenstände, die auf dem Weg des Regalbediengeräts liegen, müssen vor
dem Start der SPS entfernt werden.
Um die Anlage zu starten, muss sichergestellt werden, dass alle Module der Steuerungseinheit
mit Strom versorgt werden (an jedem Bauteil leuchten die Power-LEDs).
ACHTUNG! Das Regalbediengerät darf nie bis zu den Endschaltern an der X-Achse des
Hochregals gefahren werden. Wenn diese Endschalter betätigt werden, wird der Motorstrom
unterbrochen.
ACHTUNG! Der Teleskoptisch darf ebenfalls nicht außerhalb seiner Endsensoren gefahren
werden. Es besteht die Gefahr, dass die Kette abspringt.
3.2 Software-Komponenten
Das PC-System zur Steuerung besteht aus einem wie in Kapitel 2.2.3.2 beschriebenen IPC mit
den in Abbildung 14 dargestellten installierten Software-Komponenten.
WinAC RTX F
WinCC
WinLC RTX F
Soft-SPS-Controller
SIMATIC Step 7
Symboleditor
graphische Benutzeroberfläche
Entwicklungsumgebung
IPC
Abbildung 14: Übersicht über die installierten Software-Komponenten
 Für die Realisierung einer Soft-SPS auf einem PC-System ist „WinAC“ zuständig.
Dieser Programmteil enthält echtzeitfähige (RTX) Treiber für den installierten CP und
mit „WinLC“ den Controller für die SPS-Bedienung.
 Mit „WinCC“ wird die graphische Benutzeroberfläche zur Bedienung des Demonstrators realisiert.
 Zur Programmierung und Projektierung wird die Entwicklungsumgebung „SIMATIC
Step 7“ verwendet.
Im Folgenden werden die einzelnen Komponenten genauer beschrieben und ihre Anwendung
erklärt.
3.2.1 Entwicklungsumgebung SIMATIC STEP 7
STEP 7 ist das Standardpaket zur Konfigurierung und Programmierung von SPS der Siemens
S7 Baureihe, unter die auch die hier verwendete Soft-SPS fällt. Es enthält umfangreiche
Werkzeuge und Funktionen für die unterschiedlichen Aufgaben eines Automatisierungsprojektes. Wesentliche Bestandteile sind
24






PÜL Automatisierungstechnik - SPS
SIMATIC-Manager für die Verwaltung aller Werkzeuge und Daten eines Automatisierungsprojektes (vgl. Abbildung 15).
Programmeditor zur Erstellung des Anwenderprogramms in den Programmiersprachen
KOP, FUP oder AWL
S7-Graph zur graphischen Schrittkettenprogrammierung
Symbol-Editor zur Verwaltung globaler Variablen
Hardware-Konfiguration zur Konfiguration und Parametrierung der Hardware
Hardware-Diagnose zur Übersicht über den Zustand des Automatisierungssystems
Wegen der Mächtigkeit dieser Software lässt sich mit dieser Einführung allerdings nur ein
begrenzter Einblick in die Möglichkeiten von STEP 7 gewinnen.
Abbildung 15: SIMATIC Manager
3.2.1.1 Einführung in das Arbeiten mit STEP 7
3.2.1.1.1 Erstellen eines neuen Projektes und hochladen auf die SPS
Das Anlegen eines neuen Projektes in SIMATIC STEP 7 erfordert die Konfiguration der
Hardware, was ein länglicher Prozess sein kann. Daher wurde dies bereits für das Praktikum
erledigt. Der Name des Projekts ist der Name Ihrer Gruppe, z. B. Gruppe4.
Ein Anwenderprogramm kann aus einem oder mehreren Blöcken bestehen. Sie müssen mindestens einen Organisationsblock (OB#) benutzen. Diese Blöcke beinhalten alle Funktionen,
die notwendig sind, um Ihre spezifische Automationsaufgabe durchzuführen. Folgende Schritte sind notwendig, um den Organisationsblock „Main [OB1]” zu öffnen:
1. Öffnen Sie den Ordner "Program blocks" im Projektbaum.
PÜL Automatisierungstechnik - SPS
25
2. Öffnen Sie den Organisationsblock "Main [OB1]".
Nun können Sie mit dem Programmieren in der von Ihnen bevorzugten Sprache beginnen.
Um Ihr Programm auf die SPS zu übertragen drücken Sie einfach den „Download“ Knopf in
der Symbolleiste.
3.2.1.2 Projektierung der Anlage
Vor der ersten Programmierung der SPS muss die Projektierung der Anlage in Step 7 vorgenommen werden. Dabei wird der Aufbau der externen Peripherie am Profibus inkl. des Kommunikationsprozessors nachgebildet. Diese Arbeit wurde vor Beginn des Versuchstermins
bereits vom Tutor durchgeführt.
Damit werden die Ein- und Ausgänge der externen Peripherie für die Verwendung zur Verfügung gestellt. Eine Übersicht über die Ein- und Ausgänge finden Sie in Kapitel 5.
3.2.1.3 Die bausteinorientierte Programmstruktur
SPS-Programme werden in sog. Bausteinen organisiert (vgl. Abbildung 16). Der Organisationsbaustein OB1 entspricht der Main-Funktion eines C-Programms und wird vom Betriebssystem zyklisch abgearbeitet. Er kann sog. Funktionsbausteine (FB) und Funktionen (FC)
aufrufen.
DB
FB
DB
FB
FC
OB1
DB
FB
FC
Abbildung 16: Programmstruktur
FC (Funktion): FC ist ein Baustein ohne Gedächtnis. Eine Funktion besitzt ein oder mehrere
Eingangsparameter und immer einen Funktionswert (Rückgabewert).
FB (Funktionsbaustein): Besonderheit dieses Bausteins ist, dass beim Aufruf ein Datenbaustein angegeben werden muss, der der aufgerufenen Instanz des FB als Speicher zur Verfügung steht. Daher können in einem FB statische Variablen deklariert werden d.h. Variablen,
deren Daten am Ende des FB erhalten bleiben. Ansonsten bestehen dieselben Möglichkeiten
wie bei einem FC.
DB (Datenbaustein): DB dient zur Speicherung von Daten die zur Bearbeitung des Steuerungsprogramms benötigt werden. Die können z.B. Istwerte, Grenzwerte oder Texte sein.
3.2.1.3.1 Bausteinaufrufoperationen
Bausteinaufrufoperation
Unbedingter Aufruf einer Funktion ohne Parameterübergabe
Bedingter Aufruf einer Funktion ohne Parameterübergabe
UC
AWL Beispiel
FC
20
U
CC
E
FC
0.5
20
26
PÜL Automatisierungstechnik - SPS
Unbedingter Aufruf eines Funktionsbausteins mit Instanzdatenbaustein ohne Parameterübergabe
CALL FB15, DB9
NOP 0
Unbedingter Aufruf eines Funktionsbausteins mit Instanzdatenbaustein und Parameterübergabe
CALL FB10, DB12
EPar1:=“Wert1“
EPar2:=“Wert2“
NOP 0
3.2.1.4 KOP/AWL/FUP Editor
Die Programmerstellung in den Programmiersprachen KOP und FUP geschieht schrittweise:
Während der Programmeingabe erfolgt bereits eine Syntaxprüfung, sodass bestimmte Fehler
sofort kenntlich gemacht werden. Die Programmiersprache AWL gestattet sowohl die quellenorientierte als auch die inkrementelle Programmeingabe. Bei der inkrementellen Eingabe
können Programme mit fehlerhafter Syntax nicht abgespeichert werden.
Abbildung 17: Programmiereditor
PÜL Automatisierungstechnik - SPS
27
Funktion des Programmiereditors
1.





Funktionsleiste: Über die Funktionsleiste haben Sie Zugriff auf die wichtigsten
Funktionen des Programmiereditors, z. B.:
Netzwerke einfügen, löschen, auf- und zuklappen
Absolute Operanden ein- und ausblenden
Netzwerkkommentare ein- und ausblenden
Favoriten ein- und ausblenden
Programmstatus ein- und ausblenden
2.
Bausteinschnittstelle: Die Bausteinschnittstelle dient dem Anlegen und Verwalten
von lokalen Variablen
3.
Palette "Favoriten" in der Task Card "Anweisungen" und Favoriten im Programmiereditor: Die Favoriten ermöglichen einen schnellen Zugriff auf die Anweisungen, die oft verwendet werden. Die Palette "Favoriten" kann individuell durch weitere Anweisungen erweitert werden
4.
Anweisungsfenster: Das Anweisungsfenster ist der Arbeitsbereich des Programmiereditors. Hier können Sie folgende Aufgaben durchführen:
 Netzwerke anlegen und verwalten
 Titel und Kommentare zu Baustein und Netzwerken eingeben
 Anweisungen einfügen und mit Variablen versorgen.
5.
6.
7.
Palette "Anweisungen" in der Task Card "Anweisungen"
Palette "Erweiterte Anweisungen" in der Task Card "Anweisungen"
Task Card "Anweisungen":
Die Task Card "Anweisungen" enthält die Anweisungen, mit denen Sie die Inhalte
des Programms erstellen.
8.
Task Card "Testen"
3.2.1.5 S7-Graph
Für die Arbeitsweise der Schrittkette gelten folgende generellen Aussagen:
 Die einzelnen Schritte der Ablaufkette werden nacheinander durchlaufen.
 In einer linearen Schrittkette darf immer nur ein Schritt aktiv (eingeschaltet) sein. In
einer Ablaufkette mit Simultanverzweigung kann pro Kettenzweig jeweils ein Schritt
aktiv sein.
 Ein bestimmter Schritt wird eingeschaltet, wenn der vorausgehende Schritt aktiv ist
und die vorausgehende Transition erfüllt ist.
 Ein bestimmter Schritt wird ausgeschaltet, wenn der nachfolgende Schritt aktiv wird.
28
PÜL Automatisierungstechnik - SPS
E0.3
T1
Schritt2
N
A4.1
R
A4.5
S2
Schritt 2
E0.1
T2
Schritt3
N C A4.3
N
A4.2
-
S3
Schritt 3
E0.0
T3
S4
Schritt4
S
A4.5
Schritt 4
E0.4
Verriegelung
(C)
Abbildung 18: Ausschnitt eines S7-Graph
Bei dem in Abbildung 18 zugrunde liegenden Beispiel wird der Schritt S2 eingeschaltet, wenn
der vorausgehende Schritt eingeschaltet und die Transition T1 erfüllt sind, d.h. E=0.3 ein 1Signal erhält. Der Ausgang A4.1 führt ein wegen dem nicht speichernden Einschalten (N)
jetzt solange ein 1-Signal, wie der Schritt S2 aktiv ist, und der Ausgang A4.5 wird rückgesetzt
(R). Der Schritt S2 schaltet den vorausgehenden Schritt aus.
Der Schritt S3 wird eingeschaltet, wenn der Schritt S2 aktiv und die Transition T2 erfüllt sind,
also E0.1 ein 1-Signal erhält. Die Ausgänge A4.2 und A4.3 führen wegen dem nicht speichernden Einschalten (N) nur solange ein 1-Signal, wie der Schritt S3 aktiv ist. Beim Ausgang A4.3 muss zusätzlich die Verriegelungsbedingung (C) erfüllt sein, d.h. der Eingang E0.4
muss ein 1-Signal führen. Der Schritt S3 schaltet S2 aus.
Der Schritt S4 wird eingeschaltet, wenn der Schritt S3 aktiv und die Transition T3 erfüllt sind,
also E0.0 ein 0-Signal erhält. Der Ausgang A4.5 wird dann speichernd (S) eingeschaltet und
bleibt auch dann eingeschaltet, wenn der Schritt S4 wieder deaktiviert ist. Erst der Rücksetzbefehl (R) im Schritt S2 schaltet den Ausgang A4.5 beim nächsten Programmdurchlauf wieder aus.
PÜL Automatisierungstechnik - SPS
29
4 Versuchsdurchführung
4.1 Erster Versuchstermin
4.1.1 Vorbereitungsaufgaben
Vor dem Versuchstermin zu bearbeiten und nach dem Versuchstermin dem Tutor einmal pro
Person schriftlich abzugeben.
Vorbereitungsaufgabe 1: Einführende Aufgaben
a) Machen Sie sich näher mit dem Aufbau des Demonstrators vertraut:
 Überlegen Sie sich, warum es in Z-Richtung jeweils zwei Sensoren zur Bestimmung der Höhe gibt.
 Was für ein Wirkungsprinzip wird beim Sensor des Mitnehmers der Vereinzelungseinheit verwendet? Wie heißen diese Sensoren?
 Vergleichen Sie Standard-SPS-Bauformen mit Soft-SPS. Nennen Sie einige Vorund Nachteile. Warum werden immer noch beide Bauformen angeboten?
 Zeichnen Sie in einer groben Skizze die Projektierung auf, die in STEP 7 vorgenommen werden muss. Zeichnen Sie die Bauteile IPC, CP, Profibus und externer
Peripherie ein.
b) Zeichnen Sie den zeitlichen Verlauf für die im Kapitel 2.4.3.3beschriebene speichernde
Einschaltverzögerung analog zu Abbildung 9.
c) Gegeben sei der Funktionsplan:
E0.0
&
>=1
E0.1
E0.0
&
&
E0.1
Z5
ZR
E0.2
Erstellen Sie entsprechende Programme in AWL und KOP, welche die gleiche Funktionalität liefern.
Vorbereitungsaufgabe 2: Förderbandsteuerung
a) Die Abbildung 19 zeigt ein Industrieförderband. Das Förderband soll mit Hilfe von zwei
Tastern (START/STOP) ein- bzw. ausgeschaltet werden können. Entwerfen Sie ein kleines Programm in AWL welches dies ermöglicht. Benutzen Sie für Start/Stop-Buttons die
Eingänge 5.0 und 5.1 (siehe Anhang).
30
PÜL Automatisierungstechnik - SPS
Abbildung 19: Förderband
b) Das Förderband aus Abbildung 19 wird mit einer Lichtschranke erweitert, welche das
Vorhandensein eines Werkstücks erkennt. Nach dem Erkennen des Werkstücks soll sich
das Förderband nach 3 Sekunden automatisch einschalten und wieder nach 3 Sekunden
ausschalten. Entwerfen Sie die Steuerung für das Förderband in FUP und KOP. Erstellen
Sie eine Symboltabelle für diese Aufgabe auf Grundlage des Anhangs mit der Ausgabestation als Aktor.
Vorbereitungsaufgabe 3: Regalbediengerät
In dieser Aufgabe sollen Sie sich Gedanken für eine manuelle Steuerung machen, bei der grobe Bedienfehler ausgeschlossen werden sollen.
 Das Regalbediengerät soll nur bewegt werden können, wenn sich der Teleskoptisch in
der Mittelstellung befindet und der Förderkorb ganz unten ist. Das Regalbediengerät
ist zu stoppen bevor es die Endschalter erreicht. Auch Förderkorb sollte langsam ausgeführt.
 Der Förderkorb muss gestoppt werden bevor Schäden an der Anlage entstehen können.
 Der Teleskoptisch darf nur ein- und ausgefahren werden, wenn sich das Regalbediengerät in einer eindeutigen Position befindet, d.h. einer der X-Positions-Sensoren muss
betätigt sein.
Entwerfen Sie die Steuerung für alle Bauteile des Kranes in KOP.
Vorbereitungsaufgabe 4: Werkstück vereinzeln
In dieser Aufgabe sollen Sie einen Funktionsblock mit dem Namen FB2 erstellen, der folgende Funktionen erfüllen muss:

Zuerst soll überprüft werden, ob ein Werkstück sich auf der Abholposition oder im Förderkorb des Regalbediengerätes befindet. Falls dies der Fall ist soll das Programm sich sofort beenden.

Wenn ein Werkstück sich in der Vereinzelungsstation befindet, soll der Antrieb dieser
gestartet werden bei klick auf F2, um das Werkstück auf die Abholposition zu transportieren. Der Antrieb der Vereinzelungsstation bleibt so lange aktiv wie der Sensor des Mitnehmers ein High-Signal erzeugt.

Der Antrieb des Förderbandes 1 soll zur gleichen Zeit eingeschaltet werden wie der Antrieb der Vereinzelungsstation.

Der Antrieb des Förderbandes 1 soll abgeschaltet werden, wenn die Lichtschranke der
Abholposition eine fallende Flanke erzeugt.
Schreiben Sie den Funktionsblock “Vereinzelung” (FB2) in der Ablaufsprache S7-Graph.
PÜL Automatisierungstechnik - SPS
31
Vorbereitungsaufgabe 5: Werkstück vereinzeln und Abholen
Diese Aufgabe ist eine Erweiterung der vorherigen Aufgabe. Nach dem das Werkstück zur
Abholposition transportiert wurde, soll Förderkorb des Regalbediengerätes zu dieser Position
fahren und mit dem Teleskoptisch das Werkstück aufnehmen.
 Der Förderkorb muss sich langsam bewegen, damit er nicht über die erste X-Position
hinaus fährt.
 Der Teleskoptisch muss in der mittleren Position stehen und der Förderkorb muss in
der untersten Position stehen, bevor sich der Förderkorb bewegen darf.
 An der Abholposition soll der Teleskoptisch bis zur maximalen Y-Position ausgefahren werden. Anschließend nach oben bis zum höheren Schalter der ersten ZPosition(Z-über5) und abschließend zurück in die Mittelposition.
Erweitern Sie das Programm von Vorbereitungsaufgabe 4 um die Fähigkeit Werkstücke
abzuholen.
4.1.2 Aufgaben zur Durchführung
Versuch 1:
Implementieren Sie die entworfene Förderbandsteuerung für die Ausgabestation direkt in den Organisationsbaustein OB1. Testen Sie Ihr Programm.
Versuch 2:
Implementieren Sie Vorbereitungsaufgabe 3 und testen diese.
Versuch 3:
Implementieren Sie die Funktion „Vereinzeln“ aus Vorbereitungsaufgabe 4 in
den Funktionsbaustein FB2. Testen Sie die Funktion.
Versuch 4:
Erweitern Sie den Funktionsbaustein FB2 um die Funktionalitäten aus der
Vorbereitungsaufgabe 5. Testen Sie die Steuerung.
32
PÜL Automatisierungstechnik - SPS
4.2 Zweiter Versuchstermin
Im zweiten Teil des Versuchs soll die vollständige Funktion des Hochregallagers realisiert
werden. Die Abbildung 20 zeigt die Programmstruktur.
FB1
Initialisierung
FB2
Vereinzeln
FC30
Werkstücktyp
ermitteln
FB3
manuell
Einlagern
DB7
Werkstücktypen
FB4
automatisch
Einlagern
DB6
Einlagerpositionen
OB1
FB5
Auslagern
Abbildung 20: Programmstruktur
Bausteine die programmiert werden müssen sind:
 OB1
 FB1
Initialisieren
 FB4
Automatisch Einlagern
 FB10
Werkstück ablegen
 DB7
Speichert die Einlagerposition
PÜL Automatisierungstechnik - SPS
33
4.2.1 Vorbereitungsaufgaben
Vorbereitungsaufgabe 1: Initialisieren mit FB1
Die Initialisierung soll gestartet werden, indem der Benutzer auf der Benutzeroberfläche die
Tasten „Hoch“ und „Runter“ zur selben Zeit betätigt.

Die Initialisierung startet mit der Prüfung der Position des Teleskoptisches. Die Position
des Tisches kann mit drei Sensoren (Y-Hinten, Y-Mitte, Y-Vorne) erfasst werden. Von
dort fahren zu "Sicheren Position"(Y-Mitte).
o Wenn keiner der Sensoren des Teleskoptisches aktiviert ist, kann das Programm
ohne die Hilfe des Benutzers nicht erkennen, ob der Teleskoptisch sich in der „sicheren Position“ (Y-Mitte) befindet. In diesem Fall soll das Programm abbrechen
und der Benutzer muss den Teleskoptisch manuell auf eine bekannte Position fahren und die Initialisierung erneut starten.

Befindet sich der Teleskoptisch in der sicheren Position soll die Prüfung der Position des
Regalbediengeräts mittels der X-Positions-Sensoren gestartet werden.
o Wenn keiner der X-Positions-Sensoren aktiviert ist soll das Regalbediengerät solange nach rechts fahren bis einer der X-Positions-Sensoren betätigt wird. Sobald
ein Sensor aktiviert wurde soll das Programm prüfen ob es sich um den X-Pos5
Sensor handelt. Wenn nicht dann soll das Regalbediengerät ist zu fahren langsam
in die entsprechende Richtung bis zum „X-Pos5“-Sensor.

Bei der Betätigung des Sensors „X-Pos5“ soll die Position des Förderkorbs überprüft werden. Die Position des Förderkorbs wird über die Positionssensoren ermittelt. Ist der unterste Sensor nicht aktiviert, dann soll der Förderkorb solange nach unten fahren bis dieser
betätigt wurde.
Nach diesen Schritten befindet sich das Regalbediengerät in der Startposition. Am Ende des
Funktionsbausteins FB1 sollen der Datenbaustein DB7 initialisiert werden. Erstellen Sie dazu
entweder eine Funktion die Sie aufrufen oder setzen Sie alle fünf enthaltenen Positionen direkt in der Schrittkette zu „False“.
Erstellen Sei den zugehörigen S7-Graph.
Der Zugriff auf Elemente eines Datenbausteins geschieht über z.B. „DB7.Platz1“. Wenn der
Symbolname „Platz1“ im Datenbaustein gesetzt wurde.
34
PÜL Automatisierungstechnik - SPS
Vorbereitungsaufgabe 2: Automatisch Einlagern
Nach dem Vereinzeln mit „F2“ kann der Benutzer auf der Benutzeroberfläche mit der Taste
„F3“ den Einlagerungsvorgang starten.
Um die Aufgabe zu vereinfachen sollen nur die ersten fünf Spalten in der untersten Reihe bei
der automatischen Einlagerung berücksichtigt werden.




Das Programm prüft, ob ein Werkstück im Förderkorb vorhanden ist. Wenn der Förderkorb leer ist soll das Programm abbrechen.
Das Regalbediengerät fährt nun bis zu der ersten freien automatisch gewählten Einlagerposition.
Wenn das Regalbediengerät diese Einlagerposition erreicht hat, soll durch einen Aufruf
eines FB10 der Teleskoptisch in das Fach gefahren werden, bis der Sensor „Y-Hinten“ betätigt wird. Danach fährt der Förderkorb eine halbe Ebene nach unten. D.h. der Förderkorb
fährt von der Ebene „Z-Über“ zur Ebene „Z-Unter“ Wird der Sensor „Z-Unter“ betätigt,
fährt der Teleskoptisch zurück, bis der Sensor „Y-Mitte“ betätigt wird.
Nach erfolgreichem Ablegen des Werkstücks wird die Belegung der Einlagerposition in
Datenbaustein DB7 geschrieben.
Erstellen sich nach der Beschreibung einen S7-Graphen für das automatische Einlagern. Berücksichtigen Sie, dass zum mehrfachen Aufruf des FB10 zum Ablegen des Werkstückes im
HRL dieser während jedes Aufrufs mit "INIT_SQ" zurückgesetzt werden muss.
4.2.2 Aufgaben zur Durchführung
Versuch 1:
Erstellen Sie den Datenbaustein DB7 mit 5 Elementen und geben Sie den einzelnen Zeilen Symbolnamen. Implementieren Sie die Funktion „Initialisieren“
und erweitern Sie OB1. Testen Sie die Steuerung.
Versuch 2:
Implementieren Sie die in Vorbereitungsaufgabe 2 entwickelte Steuerung für
das automatische Einlagern in den Funktionsbaustein FB4 und erweitern Sie
den Organisationsbaustein OB1. Testen Sie die Steuerung.
PÜL Automatisierungstechnik - SPS
35
5 Anhang
Die Anlage wird angesteuert und überwacht durch 12 digitale Ansteuersignale und 31 digitale
Sensorsignale. Es gilt die folgende Symbolliste:
Symbolischer
Name
Funktion
SPS
Anschluss
Sensoren
X-Pos1
X-Achse Pos.1 (Hochregal) (Eingabestation)
E 1.0
Taster (Öffner)
X-Pos2
X-Achse Pos.2 (Hochregal)
E 1.1
Taster (Öffner)
X-Pos3
X-Achse Pos.3 (Hochregal)
E 1.2
Taster (Öffner)
X-Pos4
X-Achse Pos.4 (Hochregal)
E 1.3
Taster (Öffner)
X-Pos5
X-Achse Pos.5 (Hochregal)
E 1.4
Taster (Öffner)
X-Pos6
X-Achse Pos.6 (Hochregal)
E 1.5
Taster (Öffner)
X-Pos7
X-Achse Pos.7 (Hochregal)
E 1.6
Taster (Öffner)
X-Pos8
X-Achse Pos.8 (Hochregal)
E 1.7
Taster (Öffner)
X-Pos9
X-Achse Pos.9 (Hochregal)
E 0.0
Taster (Öffner)
X-Pos10
X-Achse Pos.10 (Hochregal) (Ausgabestation)
E 0.1
Taster (Öffner)
Y-Vorne
Y-Achse Vorne (Teleskoptisch)
E 0.2
Taster (Öffner)
Y-Mitte
Y-Achse Mitte (Teleskoptisch)
E 0.3
Taster (Öffner)
Y-Hinten
Y-Achse Hinten (Teleskoptisch)
E 0.4
Taster (Öffner)
Z-Ueber1
Z-Achse oberer Kontakt Pos.1
E 0.5
Taster (Öffner)
Z-Unter1
Z-Achse unterer Kontakt Pos.1
E 0.6
Taster (Öffner)
Z-Ueber2
Z-Achse oberer Kontakt Pos.2
E 0.7
Taster (Öffner)
Z-Unter2
Z-Achse unterer Kontakt Pos.2
E 3.0
Taster (Öffner)
Z-Ueber3
Z-Achse oberer Kontakt Pos.3
E 3.1
Taster (Öffner)
Z-Unter3
Z-Achse unterer Kontakt Pos.3
E 3.2
Taster (Öffner)
Z-Ueber4
Z-Achse oberer Kontakt Pos.4
E 3.3
Taster (Öffner)
Z-Unter4
Z-Achse unterer Kontakt Pos.4
E 3.4
Taster (Öffner)
Z-Ueber5
Z-Achse oberer Kontakt Pos.5
E 3.5
Taster (Öffner)
36
PÜL Automatisierungstechnik - SPS
Z-Unter5
Z-Achse unterer Kontakt Pos.5
E 3.6
WS-Anw
Werkstück befindet sich im Förderkorb
E 3.7
WS-AnwSt1
Lichtschranke Eingabestation
E 2.0
WS-AnwSt2
Lichtschranke Ausgabestation
E 2.1
Mitnehmer
Position
Reedkontakt Mitnehmer Vereinzelungseinheit
E 2.2
Speicherleer
Lichtschranke Vereinzelungseinheit
E 2.3
Reedkontakt WS-Unterscheidungs-Sensor
E 2.4
Reedkontakt WS-Unterscheidungs-Sensor
E 2.5
F1
Benutzereingabe
E 5.0
Taster (Schließer)
F2
Benutzereingabe
E 5.1
Taster (Schließer)
F3
Benutzereingabe
E 5.2
Taster (Schließer)
Schalter_oben
Förderkorb nach oben fahren
E5.3
Taster (Schließer)
Schalter _unten
Förderkorb nach unten fahren
E5.6
Taster (Schließer)
Schalter _links
Förderkorb nach links fahren
E5.4
Taster (Schließer)
Schalter _rechts
Förderkorb nach rechts fahren
E5.5
Taster (Schließer)
Schalter _vor
Teleskoptisch nach vorne fahren
E5.7
Taster (Schließer)
Schalter _zurück
Teleskoptisch nach hinten fahren
E4.0
Taster (Schließer)
Förderband 1 fahren (bei Eingabestation)
A 0.0
Motor
Förderband 2 fahren (bei Ausgabestation)
A 0.1
Motor
Werkstücke vereinzeln
A 0.3
Motor
Richtung +X fahren
A 1.0
Motor
Richtung –X fahren
A 1.1
Motor
Aktuell angesteuerter Motor langsam fahren
A 1.2
Motor
Fkausfahren
Teleskoptisch herausfahren (+Y-Achse)
A 1.3
Motor
Fkeinfahren
Teleskoptisch hineinfahren (-Y-Achse)
A 1.4
Motor
Fkhochfahren
Förderkorb hoch fahren (+Z-Achse)
A 1.5
Motor
Fkrunterfahren
Förderkorb nach unten fahren (-Z-Achse)
A 1.6
Motor
WSUnterscheidung1
WSUnterscheidung2
Foerderband1
fahren
Foerderband2
fahren
Speicherfahren
RBGnachrechts
fahren
RBGnachlinks
fahren
RBGlangsam
fahren
Taster (Öffner)
Optischer Sensor
(Schließer)
Optischer Sensor
(Öffner)
Optischer Sensor
(Öffner)
Reedkontakt
(Schließer)
Optischer Sensor
(Öffner)
Reedkontakt
(Schließer)
Reedkontakt
(Schließer)