Seite 1 SPS-Programmierung Stand: 26.10.2012 Inhaltsverzeichnis: 1. Einführung in die SPS .......................................................................................................................4 1.1 Prinzipieller Ablauf .....................................................................................................................4 1.2 Programmierungsarten ..............................................................................................................6 1.3 Anschlussplan der SPS ..............................................................................................................6 1.4 Kochrezept für Mini-SPS-Beispiel (Programmierung im OB1):............................................9 1.5 Aufgaben mit Stromlaufplan ..................................................................................................10 1.6 Problem der Negation ..............................................................................................................11 1.7 Aufgaben mit Negationen ........................................................................................................12 1.7.1 Aufgabe mit 4 Schaltern und 1 LED .............................................................................12 1.7.2 Füllstandsanzeige einfach .............................................................................................12 1.7.3 Füllstandsanzeige im Thermometer-Modus ..................................................................12 1.8 Problem Mehrfachansteuerung ...............................................................................................13 1.9 Selbsthaltung aus VPS übernehmen .......................................................................................14 1.9.1 Förderband mit Selbsthaltung ......................................................................................14 1.9.2 Förderband 1 mit Folgeschaltung..................................................................................14 1.9.3 Förderband 2 .................................................................................................................14 2. SR-FF + Strukturierte Programmierung ........................................................................................15 2.1 Strukturierte Programmierung der SPS mit trysim: ............................................................15 2.1.1. Förderband (=LED) mit neuem System OB1-FC1 programmieren .............................16 2.2 Speichernde Funktionen: Setzen und Rücksetzen mit RS-Flipflop .....................................17 2.2.1 Licht mit Tastern ...........................................................................................................18 2.2.2. Taster programmieren ...................................................................................................18 2.2.3 Förderband 2 mit RS-Flipflop .......................................................................................18 2.3 Bewegungen mit RS-Technik .................................................................................................19 2.3.1. Schlitten Tippbetrieb .....................................................................................................19 2.3.2 Schlitten Automatik .....................................................................................................19 2.4 Merker......................................................................................................................................20 2.4.1 VPS umwandeln ............................................................................................................20 2.4.2. Tipp- und Automatikbetrieb gleichzeitig ......................................................................21 2.4.3 Rolltor ...........................................................................................................................21 2.4.4 Aufzug ...........................................................................................................................22 2.5 Analyse, Fehlersuche ..........................................................................................................23 3. Zeiten und Zähler .............................................................................................................................24 3.1 Einführung Zeiten .....................................................................................................................24 3.2 Aufgaben zu Zeiten .............................................................................................................26 3.2.1 Demo Zeiten ..................................................................................................................26 3.2.2 Werkzeugschlitten mit Zeitverzögerung .......................................................................27 3.2.3 Stern-Dreieck-Schaltung: ..............................................................................................27 3.2.4 Schotterwerk .................................................................................................................28 3.2.5 Lauflicht ........................................................................................................................28 3.2.6 3.3. Seite 2 Zweihandbedienung ......................................................................................................29 Einführung Zähler .............................................................................................................30 3.4 Aufgaben zu Zähler ............................................................................................................32 3.4.1 Demo Zähler..................................................................................................................32 3.4.2 Schlitten mit Zähler .......................................................................................................32 4. Ablaufsteuerung- Schrittketten ..................................................................................................33 4.1 Einführung Schrittkette......................................................................................................33 4.2 Realisierung der Schrittkette mit bibliotheksfähigen Bausteinen: .................................37 4.3 Vorgehen mit trysim: ..........................................................................................................38 4.4 Besonderheiten für die Schrittketten ................................................................................39 4.4.1. Zyklischer Ablauf: .............................................................................................................39 4.4.2. Mehrfachansteuerung eines Ausgangs: ..............................................................................39 4.4.3. Innenleben des Standard-Schrittkettenbausteins FB 15 .....................................................40 4.5 Aufgaben zu Schrittketten ..................................................................................................42 4.5.1 Aufgabe mit Hilfestellung: Dualzähler .........................................................................42 4.5.2 Schlitten mit Schrittkette ...............................................................................................47 4.5.3 Schlitten mit mehrfacher Ansteuerung des gleichen Ausgangs ....................................47 4.5.4 Schrittkette mit Schlitten und Zeiten.............................................................................47 4.5.5 Ampelsteuerung ............................................................................................................47 4.5.6 Waschanlage .................................................................................................................48 4.5.7 Prägeanlage (Stempel) ..................................................................................................49 4.5.8 Stempel doppelt.............................................................................................................50 4.5.9 Hebeanlage ....................................................................................................................51 4.5.10 Multifunktions-Anlage ..................................................................................................52 4.6 Verzweigte Schrittketten ....................................................................................................53 4.6.1 Variante 1 ......................................................................................................................53 4.6.2 Variante 2 ......................................................................................................................54 5. Analogwertverarbeitung ..............................................................................................................56 5.1 Datentypen ...........................................................................................................................56 5.2 Rechen- und Vergleichsfunktionen ...................................................................................56 5.3 Zweipunktregler ..................................................................................................................57 5.3.1 Regler ohne Hysterese...................................................................................................57 5.3.2 Regler mit Hysterese .....................................................................................................57 6. 5.4 Normierung ..........................................................................................................................58 5.5 Füllstands-Regelung............................................................................................................60 Lösungen der Aufgaben: .............................................................................................................62 2.2.3 Förderband 2 mit RS-Flipflop .......................................................................................62 2.3.2 Lösung Taster programmieren ......................................................................................63 2.3.3. Lösung Schlitten Tippbetrieb ........................................................................................64 2.3.4 Lösung Schlitten Automatik .........................................................................................65 2.5.2. Lösung Tipp- und Automatikbetrieb gleichzeitig .........................................................67 2.5.3 Lösung Rolltor ..............................................................................................................69 2.5.4 Lösung Aufzug ..............................................................................................................71 3.2.3 Stern-Dreieck-Hochlauf Lösung ..........................................................................................73 3.2.4 SchotterwerkLösung: ..........................................................................................................75 3.2.5 Lauflicht Lösung: .................................................................................................................76 3.4.1 Demo Zähler Lösung: ..........................................................................................................78 Seite 3 3.4.2 A Schlitten mit Zähler Lösung 1: ........................................................................................80 3.4.2 B Schlitten mit Zähler Lösung 2: ........................................................................................82 4.1 Einführung Schrittkette .....................................................................................................83 4.5.1 Schlitten mit Schrittkette ...............................................................................................84 4.5.3 Schrittkette mit Schlitten und Zeiten.............................................................................86 4.5.5 Ampelsteuerung ............................................................................................................88 4.5.6 Lösung Waschanlage ....................................................................................................91 4.5.7 Lösung Prägeanlage (Stempel) .....................................................................................94 4.5.9 Lösung Hebeanlage .......................................................................................................97 4.6.1 Lösung zu Variante 1 ..................................................................................................102 4.6.2 Lösung zu Variante 2 ..................................................................................................104 5.3.1 Zweipunktregler ohne Hysterese.................................................................................107 5.3.2 Zweipunktregler mit Hysterese ...................................................................................108 5.5 Füllstandsregelung ..........................................................................................................109 7. Anhang ...........................................................................................................................................111 7.1 Variablentypen ........................................................................................................................111 7.2 Siemens Hardware Kurzanleitung ........................................................................................111 Seite 4 1. Einführung in die SPS 1.1 Prinzipieller Ablauf Seite 5 Seite 6 1.2 Programmierungsarten 1.3 Anschlussplan der SPS Aufgabe: Ergänze den Theorie-Anschlussplan der SPS, wenn ein Motor angesteuert werden soll über ein AUS (Öffner) an E0.0 und 2 Schließer an E0.1 und E0.2, sowie 2 Schütze K1 und K2 an den Ausgängen A0.0 und A0.1. 24 V E0.0 E0.1 E0.2 SPS A0.0 A0.1 A0.2 0V Seite 7 Lösung dazu: S3 S1 S2 E0.0 E0.1 E0.2 SPS A0.0 A0.1 A0.2 K1 K2 0V Seite 8 Aufgabe: Ergänze den folgenden realen Anschlussplan Zuordnungsliste: S1 links S2 rechts S3 AUS M rechts M links E0.1 E0.2 E0.0 A0.0 A0.1 Seite 9 1.4 Kochrezept für Mini-SPS-Beispiel (Programmierung im OB1): 1. 2. 3. 4. 5. 6. trysim starten Gehe auf linkes Fenster = SPS-Anlage Hole aus dem Fenster „Elemente“ eine LED rein und 2 Schalter Öffne SPS-Programm mit Menü SPS-öffnen Öffne den Organisationsbaustein OB1 Ordne die Fenster so an, dass links die Anlage und rechts das Programm (also der OB1) dargestellt wird. 7. Gehe auf Darstellungsart FUP 8. Klicke auf UND-Symbol 9. Trage die Bezeichnung der Eingänge ein (z.B. E0.0) und des Ausgangs (A0.0) 10. Klicke „Baustein übertragen“ (Schmetterling-Symbol) 11. Startsymbol anklicken (Dreieck) 12. Test der Funktion Seite 10 1.5 Aufgaben mit Stromlaufplan Seite 11 1.6 Problem der Negation Seite 12 1.7 Aufgaben mit Negationen 1.7.1 Aufgabe mit 4 Schaltern und 1 LED Erstelle mit 4 Schaltern und 1 LED ein SPS-Programm, das folgende Funktion erfüllt: S1, S2 und S3 müssen betätigt sein, S4 muss unbetätigt sein, dann soll die LED leuchten. 1.7.2 Füllstandsanzeige einfach Beachte: In der Darstellungsart „FUP“ verwendet man für jeden Ausgang (3 LEDs = 3 Ausgänge) ein separates Netzwerk (neues Netzwerk: Bild-ab-Taste). 1.7.3 Füllstandsanzeige im Thermometer-Modus a) Ändere das Programm so ab, dass die 3 LEDs eine „Thermometer-Funktion“ darstellen, bei leerem Behälter nur die unterste LED („leer“) leuchtet, bei mittlerem Füllstand leuchten die unteren beiden und bei Überlauf alle 3 LEDs. Ergänze hierzu die Anlage um eine 4. LED „Fehler“, falls nur der obere Sensor anspricht ohne den unteren (was physikalisch nicht sein kann) und um einen Schalter „Anlage Gesamt Ein“, ohne den gar nichts gehen soll. b) Ergänze das Programm um einen weiteren Sensor, so dass mit 3 Sensoren (= 3 Schalter) nun über 4 LEDs der Flüssigkeitspegel genauer definiert werden kann. Seite 13 1.8 Problem Mehrfachansteuerung Bei der Füllstandsanzeige wurde folgendermaßen programmiert: a) Gebe das Programm in trysim ein, teste es und erkläre, warum diese Art der Programmierung falsch ist. ……………..……………..……………..……………..……………..……………..…………….. b) Wie arbeitet das Programm jetzt? ……………..……………..……………..……………..……………..……………..…………….. Lösung des Problems der Mehrfachansteuerung (z.B. Thermometeranzeige Füllstand): Fasse alle Bedingungen für einen Ausgang in einem Netzwerk zusammen, so dass keiner der Ausgänge in ……………….. Netzwerken auftritt ! oder : Jeder Ausgang taucht nur einmal auf ! c) Ergänze im Projekt „Behälter“ die Ansteuerung der 3 LEDs in Thermometerfunktion. Seite 14 1.9 Selbsthaltung aus VPS übernehmen 1.9.1 Förderband mit Selbsthaltung Ein Förderband soll über einen Ein-Taster S1 gesteuert werden, d.h. ein kurzer Druck auf den Taster genügt, um das Förderband dauerhaft einzuschalten. Über einen AUS-Taster S0 soll das Förderband gestoppt werden können. a) Zeichne den Stromlaufplan (VPS) b) Realisiere das Programm mit trysim, indem Du den Stromlaufplan umwandelst. Verwende statt dem Förderband einfach eine Leuchtdiode. Hinweis: Man kann auch Ausgänge abfragen, verwende also kein RS-Flipflop. 1.9.2 Förderband 1 mit Folgeschaltung Eine Förderanlage kann über ein Silo Schüttgut auf ein Förderband bringen. Ein Taster startet nun erst das Förderband (dauerhaft), ein weiterer Taster (Tippbetrieb) öffnet den Schieber des Silos, aber nur, wenn das Förderband gestartet ist. a) Zeichne den Stromlaufplan (VPS) b) Realisiere das Programm mit trysim, es soll nun eine Anlage von trysim („Förderband 1“) verwendet werden. 1.9.3 Förderband 2 Ergänze die Anlage („Förderband 2“) um die zugehörige Steuerung. Die Reihenfolge ist hier: Erst muss das hinterste Förderband anlaufen, um evtl. Reste wegzubefördern, dann das dem Silo nähere Förderband. Wenn beide Förderbänder laufen, darf erst der Schieber aufgemacht werden. Seite 15 2. SR-FF + Strukturierte Programmierung 2.1 Strukturierte Programmierung der SPS mit trysim: Grundidee: OB1 FC1 FC2 FC3 FB1 FB2 + DB1 + DB2 Ein „Hauptprogramm“ = Organisationsbaustein OB1 ruft nacheinander die vorhandenen Unterprogramme FC1, FC2, FB1, usw. auf. Verwende FC bei einfachen logischen Zusammenhängen. Verwende FB, wenn Speicher (SR) erforderlich sind. Ein zugehöriger Datenbaustein DB wird automatisch erzeugt. Vorgehen : - Überlege, ob ein FB (Speicher erforderlich?) benötigt wird oder ein FC genügt. - Öffne z.B. neuen FB1 über Menü SPS – neu - Im FB: Nun müssen die Variablen deklariert, d.h. erfunden werden: - In-Variablen: Eingänge, z.B. Start, Endschalteroben, usw. meist vom Typ bool - Out-Variablen: Ausgänge, z.B. LED, Motorhoch, usw. meist vom Typ bool - Hinweis: Typ bool ist “Boolsche Variable”, kann nur die Werte 0 oder 1 enthalten (später brauchen wir auch Typ int = Integer = Ganzzahl) - Nun muss der FB mit der Logik gefüllt werden (SR, UND, ODER, usw.) in AWL oder FUP. - FB-Fenster schließen, dies löst den Speichervorgang aus - OB1 öffnen, auf FUP umschalten, über Listenelemente den FB1 reinladen - Oberhalb des FB1 wird ein Bezeichner erwartet, also z.B. „DB1“ drüberschreiben, dann die Einund Ausgänge benennen (E0.0, E0.1, A0.0, usw.) - Baustein übertragen, Starten - Testen mit „Beobachten“ (Auge-Symbol) Häufige Probleme bei der Inbetriebnahme: - AUS-Taster und Endschalter sollten Öffner sein -> meist Negation erforderlich - Auf- Abwärtsbewegung oder Links/Rechts verwechselt Seite 16 Kochrezept für komplettes Mini-SPS-Beispiel in trysim: Anlage basteln: --------------------------------------------------------- trysim starten - Gehe auf linkes Fenster = SPS-Anlage - Hole LED rein und 2 Schalter SPS-Programm erstellen, zuerst ein FC: --------------------------------------------------------- Öffne SPS-Programm mit Menü SPS-neu - Öffne einen Funktionsbaustein FC - Erfinde Variablennamen, z.B. S1 und S2 für die Schalter (IN-Variable), Typ ist Bool - Ausgangsvariable deklarieren, z.B. Lampe (OUT-Variable), Typ ist Bool - Gehe auf Darstellungsart FUP - Klicke auf UND-Symbol - Trage an den Ein- und Ausgängen die Symbolnamen ein (S1,S2, Lampe) - Schließe das FC1-Fenster (dadurch wird es gespeichert) diesen FC im OB1 aufrufen: --------------------------------------------------------Öffne das SPS-Programm über das bunte Symbol „SPS-Programm bearbeiten“ (rechts vom Zahnrad) Öffne OB1 Gehe auf Darstellungsart FUP Klicke auf Listensymbol „FUP-Elemente“ Wähle FC1 aus Benenne die Ein- und Ausgänge mit den Bezeichnungen aus der Anlage (E0.0, E0.1, A0.0) Programm mit Anlage testen: --------------------------------------------------------Baustein übertragen (Schmetterling-Symbol) bei geöffnetem OB1 Startsymbol anklicken (Dreieck) Test der Funktion 2.1.1. Förderband (=LED) mit neuem System OB1-FC1 programmieren Programmiere die Aufgabe 1.9.1 mit dem neuen System: Die Logik (UND, ODER, usw.) kommt also in einen FC. Dort werden nun an die FUP-Elemente keine Ein- und Ausgänge angeschlossen, sondern nur Variablen. Öffne dann den OB1 und rufe dort den FC auf .Beschalte dabei den FC mit den wirklichen Ein- und Ausgängen (E0.0, A0.0 usw.). Seite 17 2.2 Speichernde Funktionen: Setzen und Rücksetzen mit RS-Flipflop Soll ein kurzer Tastendruck, d.h. ein kurzes Signal, ein dauerhaftes Signal zur Folge haben (z.B. Licht einschalten über kurzen Tastendruck), so muss ein RS-Speicher verwendet werden. Das Signal S = Setzen sorgt dafür, dass der Ausgang des RS-Speichers auf logisch „1“ geht. Gibt man auf R = Rücksetzen ein Signal, so geht der Ausgang wieder zurück auf logisch „0“. Das Speichern entspricht der Selbsthaltung bei der Schütztechnik. Hinweis zur Handhabung von SR-Speichern bei trysim: Das Programm trysim verlangt einen Eintrag oberhalb des SR-FF (hier kann eine statische Variable oder ein Ausgang verwendet werden) und setzt standardmäßig hinter das SR-FF eine Zuweisung. Hinter die Zuweisung kann ebenfalls eine statische Variable oder ein Ausgang gesetzt werden. Da beides vom SR-FF den gleichen Wert zugewiesen bekommt, ist es zur Vereinfachung auch möglich, zweimal die gleiche Variable oder den gleichen Ausgang zu benutzen. Beispiel: Seite 18 2.2.1 Licht mit Tastern Erstelle eine Anlage in trysim mit 3 Schließern und 1 LED. Verwende nun einen FB und die Variablen „Licht_an“, „Licht_aus_1“ und „Licht_aus_2“. Der erste Schließer (=Taster) schaltet nun das Licht ein, ein kurzer Druck auf einen der 2 anderen soll es wieder ausschalten. 2.2.2. Taster programmieren Erstelle eine Anlage in trysim mit 2 Tastern, 2 Schaltern und 3 LEDs. Verwende nun einen FB und realisiere die folgende Funktion: Die 2 Taster links sollen die 2 großen Schalter S1 und S2 „programmieren“, d.h. die verfügbare Logik von S1 und S2 auf UND oder auf ODER stellen, und die zugehörige LED zum Leuchten bringen. Hinweis: Verwende ein RS-FF für die Funktion (UND/ODER) 2.2.3 Förderband 2 mit RS-Flipflop Lade die Anlage Förderband 2 und erstelle die Steuerung so, dass für jedes Förderband ein RS-Flipflop verwendet wird. Die Aufgabe lautete: Erst muss das hinterste Förderband anlaufen, um evtl. Reste wegzubefördern, dann das dem Silo nähere Förderband. Wenn beide Förderbänder laufen, darf erst der Schieber aufgemacht werden. Seite 19 2.3 Bewegungen mit RS-Technik 2.3.1. Schlitten Tippbetrieb Lade das Projekt „Schlitten Tippbetrieb“ und speichere es auf deine lokale Festplatte. Es soll nun ein einfacher Tippbetrieb realisiert werden. Mit Taste „Links“ soll der Schlitten nach links fahren, entsprechend mit der anderen Taste nach rechts. An den Endtastern soll die Bewegung stoppen. Verwende nur UND-Glieder, kein RS-FF. 2.3.2 Schlitten Automatik Arbeite nun im folgenden so, dass jeder Ausgang (z.B. Motor_Rechts) ein RS-Flipflop erhält. Nun prüft man die Bedingungen, wann diese Bewegung aktiviert (gesetzt) und gestoppt (rückgesetzt) wird. Beispiel: Rechtsbewegung wird gesetzt, wenn Start gedrückt wird oder E-links aktiv ist. usw. Beachte auch, ob die Taster, Endschalter usw. als Schließer oder Öffner realisiert sind. Je nachdem braucht man evtl. eine Negation. Lade das Projekt „Schlitten Automatik“ und speichere es auf deine lokale Festplatte. Es soll nun ein Automatikbetrieb realisiert werden, wie z.B. bei einer Schleifmaschine. Mit der Taste „Start“ soll der Schlitten nach rechts anfahren, am rechten Endschalter umkehren bis zum linken Endschalter, dort wieder umkehren usw. Seite 20 2.4 Merker In Steuerungsabläufen müssen oft verschiedene Betriebszustände unterschieden werden, z.B. bei einem Aufzug muss dieser sich „merken“, bis zu welchem Stockwerk er fahren soll. Die SPS-Sofware besitzt vorbelegt boolsche „Merkervariablen“ mit den Bezeichnungen M0.0, M0.1 oder M1.0, M2.0 usw. Diese sind global, d.h. im OB1 sowie in jedem FC und FB bekannt und somit ungeeignet in größeren Projekten, da die Verwendung z.B. von M1.0 in mehreren FC-Bausteinen eine Datenkollision (und damit auch evtl. eine reale Kollision) erzeugen könnte. Aus Gründen der Datensicherheit verwendet man daher nur lokale Variablen als Merker. Diese werden im FB als statische Variablen deklariert (Variablenart stat und Typ meist bool). 2.4.1 VPS umwandeln Wandle die folgende Schützschaltung (VPS) um in ein SPS-Programm. Verwende dabei 2 Merker für den oberen und unteren Teil der Schaltung, so dass die Merker am Schluß mit UND verknüpft werden. S1 S2 S3 S4 K1 S5 S6 S7 S8 Seite 21 2.4.2. Tipp- und Automatikbetrieb gleichzeitig Lade das Projekt „Schlitten Tipp und Automatik“ und speichere es auf deine lokale Festplatte. Beim Automatik-Betrieb soll der Schlitten nach rechts anfahren, und dann immer hin- und herfahren, jeweils bis zu den Endschaltern. Zusätzlich soll ein Tippbetrieb realisiert werden. Durch „Stop“ oder durch Betätigung eines der Tipp-Taster soll der Automatik-Betrieb aufhören. 2.4.3 Rolltor Ein Rolltor soll über 3 Taster gesteuert werden: Über einen kurzen Tastendruck auf den Taster „Mitte“ soll das Rolltor halb geöffnet werden für die Einfahrt eines PKW, bei Taster „Oben“ soll das Rolltor ganz nach oben fahren. Zur Sicherheit ist für die Abwärtsbewegung nur Tippbetrieb vorgesehen. Lade das trysim-Projekt „Rolltor“ und speichere es auf der lokalen Festplatte ab. Erstelle AWL oder FUP für diese Steuerung. Über eine Merker-Variable (statische Variable) im FB kann gespeichert werden, ob das Rolltor in der Mitte halten soll oder bis oben fahren. Seite 22 2.4.4 Aufzug Ein Aufzug mit 2 Stockwerken soll angesteuert werden: Verwende wieder für jede Bewegungsrichtung (runter, hoch) ein SR-Flipflop. Verwende für jede Anforderung (Taster Oben und Unten) ein SR-Flipflop, d.h. einen Merker. Insgesamt braucht man also 4 SR-FF. Die Logik soll sein: Wird der äussere Taster „Oben“ gedrückt, so leuchtet die LED dazu und der Aufzug soll hochfahren, sobald der untere Endschalter aktiviert ist. Entsprechend geht es mit dem äusseren Taster „Unten“. Die Taster in der Kabine sollen direkt (unabhängig von den Endschaltern) eine Bewegung auslösen, ebenso soll der NOT-AUS immer die Bewegung stoppen. Seite 23 2.5 Analyse, Fehlersuche Was ist zu tun, wenn eine Anlage bzw. Steuerung nicht funktioniert? 1. .Programm überprüfen: Fehlt eine Negation ? (Problem Schließer – Öffner) Sind in den FC / FB die Variablen richtig deklariert ? Stimmt die Logik ? (z.B. Fahrt nach rechts muss stoppen beim Endschalter rechts) Stimmen die Zuordnungen der Ein – und Ausgänge im OB1 ? (E0.0, A0.0 usw.) -> Hierbei kann man z.B. beim Linearbeweger über die rechte Maustaste die Eigenschaften einsehen. Ist der FB/FC gespeichert ? Beim Schließen wird er automatisch gespeichert, wenn dies vergessen wurde, wird er im OB nicht erkannt. 2. Stimmt der Ablauf ? -> Gehe in das SPS-Programm (OB1 oder FC/FB) und aktiviere dort den Beobachtungsmodus (Auge-Symbol) Nun werden alle Elemente mit logischer „1“ mit roter Farbe dargestellt. -> evtl. sollte man mit dem Symbol Schildkröte den Ablauf verlangsamen, damit man die Vorgänge verfolgen kann Seite 24 3. Zeiten und Zähler 3.1 Einführung Zeiten Es gibt folgende Zeitfunktionen bei der SPS: SE: SA: SV: SI: Einschaltverzögerung Ausschaltverzögerung Verlängerter Impuls Impuls Ergänze die folgenden Diagramme: Eingang SE SA SV SI Seite 25 Realisierung der Zeiten : Die Zeitfunktionen werden in der SPS über sog. „Timer“ realisiert. Die 4 möglichen Typen (Ein-, Ausschaltverzögerung und die 2 Impulstypen) sind bei FUPProgrammierung bequem über das Listensymbol erreichbar. Dort lädt man also z.B. die Einschaltverzögerung (bezeichnet mit EIN_VERZ) und beschaltet sie über einen Taster und einer Zeit: Ein FC –Netzwerk könnte also z.B. so aussehen: Dabei sind die benötigten Variablen: Der Timer ist also eine „in“-Variable und vom Typ „TIMER“, er entspricht einem einschaltverzögerten Schütz bei der Schütztechnik. Die Zeitdauer ist im Format „S5T#1S“ einzugeben , dabei ist die Zeit die Angabe, die hinter dem „#“Zeichen steht. Eine Zeit von 5 Sekunden wäre also S5T#5S und 500 Millisekunden wären dann S5T#500MS. Ruft man den so gebastelten FC vom OB1 auf, so müssen dort die Eingänge verdrahtet werden wie üblich mit E0.0, E0.1 usw. , die Ausgänge mit A0.0, A0.1 u.ä. Die Timer müssen dabei an die globalen System-Timer mit den festen Bezeichnungen T1, T2 usw. angeschlossen werden: OB1: Möchte man die Dauer (also z.B. S5T#3S) vom OB1 aus angeben, so muss im FC eine Variable deklariert werden mit dem Typ „S5TIME“ (vgl. Beispiel „Demo Zeiten“). Seite 26 3.2 Aufgaben zu Zeiten 3.2.1 Demo Zeiten Die folgende Anlage in trysim soll ergänzt werden, so das mit den 4 Schaltern die entsprechenden 4 Zeitfunktionen SE, SA, SV und SI gezeigt werden können. Ergänze hierzu den FC 1 entsprechend (Netzwerke 3 bis 8) und teste die Funktionen. Dabei soll die obere LED jeweils direkt mit dem Taster reagieren, und die untere LED soll die jeweilige Zeitfunktion zeigen. FC 1 mit allen benötigten Variablen: Anlage: Zugehöriger OB1: Netzwerk 2: Seite 27 3.2.2 Werkzeugschlitten mit Zeitverzögerung a) Der Werkzeugschlitten soll nach rechts anfahren, am Endschalter umdrehen und am linken Ende anhalten. b) Ergänze die Steuerung so, dass der Schlitten am rechten Endschalter für 2 sec stoppt, bevor er nach links weiterfährt. 3.2.3 Stern-Dreieck-Schaltung: Die Stern-Dreieck-Schaltung (Anfahren eines Drehstrom-Motors) kann simuliert werden über einen Start –Taster und 3 LEDs, die für die 3 Schütze stehen: Netzschütz, Sternschütz, Dreieckschütz Erst soll der Sternschütz anziehen, dann sofort danach der Netzschütz. Nun soll der Motor hochlaufen, die Steuerung soll nun nach einer bestimmten Zeit (hier: 2 Sekunden) das Sternschütz abschalten. Eine kurze Zeit später (z.B. 1 Sekunde) soll dann das Dreieckschütz anziehen. Dies ist dann der Endzustand des Hochlaufs. Seite 28 3.2.4 Schotterwerk Bei Start der Anlage (Taster EIN) soll zuerst das Band 2 anlaufen für 2 Sekunden, dann weitere 2 Sekunden später das Band 1 um evtl. vorhandene Schotterreste zu entsorgen. Dann erst soll der Schieber des Silo1 öffnen, d.h. aktiviert werden. Das Ausschalten soll in umgekehrter Reihenfolge geschehen: Zuerst soll der Schieber schließen, dann 6 Sekunden später beide Bänder stoppen, damit diese leer laufen können. Der NOT-AUS soll natürlich sofort Schieber und beide Bänder stoppen. 3.2.5 Lauflicht Programmiere ein Lauflicht mit 3 LEDs. Verwende dazu Einschaltverzögerungen, am einfachsten geht es mit 3 verschiedenen Timern: Hilfe: Der erste Timer (dessen Ausgang die erste Lampe setzt) startet, wenn der „Start“-Taster gedrückt wird oder wenn die letzte Lampe angeht. Rückgesetzt wird natürlich mit AUS oder der nächsten Lampe. Alle weiteren Lampen werden über einen separaten Timer gesetzt, der von der jeweils vorigen Lampe aktiviert wird. Seite 29 3.2.6 Zweihandbedienung Eine gefährliche Presse soll aus Sicherheitsgründen über 2 Taster bedient werden. Damit sich der Bediener das Leben nicht einfach macht (und damit sehr gefährlich...), sollen die 2 Taster innerhalb 0,5 sec gedrückt werden, also nahezu gleichzeitig. Seite 30 3.3. Einführung Zähler Mit Zählern sind viele Anwendungen denkbar und die Programmierung ist relativ einfach. Man unterscheidet Vorwärts- und Rückwärtszähler oder auch kombinierte Zähler wie dieser hier: ZV ist der boolsche Eingang für das Vorwärtszählen (zählt bei Erscheinen der Flanke), entsprechend ist ZR der Eingang für das Rückwärtszählen. Es gibt in der SPS 512 „Zähler“, die zum zählen von Ereignissen verwendet werden können. Die Zähler sind nummeriert von Z0 bis Z511 und sind (da global bekannt) nur im OB1 einzutragen. Der Zählbereich geht von 0 bis 999. Wenn am Eingang ZV eine steigende Flanke auftritt, wird der Zähl-Wert um 1 erhöht. Wenn am Eingang ZR eine steigende Flanke auftritt, wird der Zähl-Wert um 1 erniedrigt. Wenn am Eingang S eine steigende Flanke auftritt, wird der Zähl-Wert auf den am Eingang ZW anliegenden Wert gesetzt. Wenn am Eingang R eine „1“ anliegt, wird der Zähler statisch auf 0 gesetzt, d.h. nicht nur bei einer Flanke. Am Ausgang DU wird der aktuelle Zähl-Wert dualcodiert in eine beliebige Word-Variable geschrieben. (siehe auch Kapitel „Variablentypen“) Am Ausgang DE wird der Zählwert BCD-codiert in eine beliebige Word-Variable geschrieben. Der Ausgang Q führt eine „1“, wenn der Zählwert > 0 ist. Negative Zählwerte oder Werte > 999 gibt es nicht. Falls beim Zählwert 0 eine Flanke am ZREingang auftritt, geschieht nichts, genauso wenn bei Stand von 999 eine Flanke am ZV-Eingang auftritt. ZV ZR Zähle vorwärts Zähle rückwärts S ZW R Setze den Zähler auf den an ZW angegebenen Wert Auf diesen Wert wird der Zähler bei einer steigenden Flanke an S gesetzt Setze den Zähler auf 0 Praxis mit strukturierter Programmierung: Man legt im FB ausser den üblichen Variablen den Zähler an (z.B. „Zaehler1“) mit dem Typ „Counter“ (dies ist eine „in“-Variable analog zum Zeitglied mit dem Typ TIMER) und benötigt dann noch eine Ausgangsvariable für den Stand des Zählers vom Typ WORD. Diesen kann man in trysim auch mit einer entsprechenden Anzeige sichtbar machen (Element „Digitalanzeige“). Im OB wird dann der Eingang „Zaehler1“ mit einem globalen System-Zähler beschaltet, also z.B. „Z1“. Seite 31 Möchte man ab einem bestimmten Zählerstand ein Ereignis auslösen, so gibt es 2 Strategien: 1. Vorwärtszählen und Zählerstand vergleichen mit einem bestimmten Wert: Netzwerk 1: Netzwerk 2: Hinweis: Bei Siemens S7 ist der Ausgang des Zählers DE vom Typ WORD, wobei der Vergleicher einen Integer-Wert braucht. Man benötigt daher eine Typumwandlung WORD-Integer. 2. Zählerstand auf einen bestimmten Wert setzen und rückwärts zählen. Der Ausgang ist 0, wenn der Zählerstand 0 ist, er ist 1, wenn der Zählerstand > 0 ist. Beim Zählerstand 0 wird also das Ereignis ausgelöst: Seite 32 3.4 Aufgaben zu Zähler 3.4.1 Demo Zähler Es soll die folgende Anlage zur Demonstration der Grundfunktion der Zähler in einer SPS mit einer Steuerung versehen werden. Bei Betätigung der Schließer „Zähler+“ oder „Zähler-„ soll ein Zähler verändert werden können und über die Digitalanzeige soll der Zählerstand sichtbar gemacht werden. Steigt der Stand des Zählers über 4 an, so soll die rechte LED leuchten, ansonsten die linke. Die „Digitalanzeige“ wird anlagenintern angeschlossen an eine WORD-Adresse, z.B. AW 512. Der Zählerstand, ebenfalls vom Typ „WORD“, wird als out-Variable ausgegeben und dann im OB1 angeschlossen an diese Adresse AW512. 3.4.2 Schlitten mit Zähler Nach Betätigung des Tasters „Start“ soll der Schlitten nach rechts fahren und solange zwischen den Endschaltern hin- und herfahren, bis er zum 3.Mal den linken Endschalter berührt, d.h. 3 Mal fährt er nach rechts und wieder nach links. Seite 33 4. Ablaufsteuerung- Schrittketten 4.1 Einführung Schrittkette Bei den meisten größeren Steuerungsaufgaben reicht eine Verknüpfungssteuerung nicht aus, d.h. die „sofort reagierende“ Logik mit UND, ODER, NICHT-Bausteinen kommt an die Grenzen. Eine solche Logik braucht ja eine genaue Zuordnung, dass bei Zustand X eine Reaktion Y erfolgt. Eine Wahrheitstabelle listet alle möglichen Zustände auf und gibt an, was jeweils zu tun ist. Hat man nun aber eine Maschine, die beim gleichen Zustand je nachdem zu welchem Zeitpunkt dieser eintritt, unterschiedliche Reaktionen ausgeben soll, braucht man eine Unterscheidung der Logik in Abhängigkeit der Zeitpunkte. Beispiel: Bei einer Spülmaschine wird mehrmals das Wasser abgepumpt. Das Frischwasser, was danach eingelassen wird, muss je nach Waschgang auf unterschiedliche Temperaturen erwärmt werden. Man muss also wissen, in welchem Zustand (Vorspülen, Hauptspülen, etc.) man sich befindet. Daher definiert man eine neue Art der Steuerung, die sog. „Ablaufsteuerung“. Hier werden mehrere Zustände definiert, die zeitlich nacheinander durchlaufen werden. Beispiel: Bei einer Waschmaschine beginnt der Prozess mit Abpumpen, dann erfolgt der Wasserzulauf, Erwärmung, Motor an, usw. Hier ist eine Schrittkette dargestellt, die im Schritt 2 eine Rechtsfahrt auslöst und eine LED ansteuert. Bei Erreichen des rechten Endschalters erfolgt der Übergang nach Schritt 3, in welchem eine Linksfahrt erfolgt. Schritt 1 Grundstellung T1_2 Schritt 2 Erechts N Rechtsfahrt N LED rechts N Linksfahrt T2_3 Schritt 3 Seite 34 Eine Ablaufsteuerung (Schrittkette) hat folgende Eigenschaften: Man beginnt mit einem Grundzustand (Schritt 1), meist „Anlage bereit“. Jeder Zustand kann normalerweise nur vom vorhergehenden erreicht werden, d.h. Zustand 3 wird nur erreicht nach Zustand 2. Jeder Übergang von einem Zustand zum nächsten erfordert eine Bedingung, die sog. „Transitionsbedingung“. T1-2 ist z.B. die Bedingung, dass die Anlage vom Zustand 1 in den Zustand 2 wechselt (d.h. von Schritt 1 nach Schritt 2). Die Aktionsarten („Bestimmungszeichen für die Aktionsart“) bei einem Schritt, d.h. bei einem Zustand können sein: N = nicht speichernd (diese Aktion wird nur solange ausgeführt, wie der Schritt aktiv ist) S = speichernd (diese Aktion startet bei diesem Schritt, geht aber über mehrere Schritte lang) R = rücksetzend, d.h. die vorher gesetzte Aktion wird beendet D = verzögert, z.B. Einschaltverzögerung L = Lade Wert Realisierung der Schrittkette: Jeder Zustand (=Schritt) wird über ein Speicherelement (SR-Flipflop) realisiert. Es wird gesetzt, wenn der vorige Schritt aktiv ist (damit die Reihenfolge stimmt) und die passende Übergangsbedingung gesetzt wird. Beispiel: Schritt 3 wird gesetzt, wenn Schritt 2 aktiv ist und die Übergangsbedingung T2-3 erfüllt ist. Schritt 3 wird rückgesetzt, wenn Schritt 4 aktiv ist oder wenn RESET aktiviert wird. Schritt 3: Für jeden Schritt wird also ein eigenes Netzwerk benötigt. Zusätzlich werden noch Netzwerke benötigt, in denen die Ausgänge in Abhängigkeit der Schritte angesteuert werden. Seite 35 Beispiel: Funktionsplandarstellung einer linearen Ablaufsteuerung: Transistionsbedingungen S1 S4 S5 1 & Grundstellung der Ablaufkette T1_2 2 S2 T4_5 & 5 S5 Aktion_1 A1 N Aktion_1 A1 S Aktion_2 A2 T3_4 & 4 Zeitgl N T2_3 & 3 S3 S4 Bestimmungszeichen Aktionsname Aktionsvariable & T5_1 N Aktion_3 A3 D t#10 Warten_1 Zeitgl R s Aktion_2 A2 N Aktion_4 A4 Aufgabe Einführung Schrittkette: Ergänze die fehlenden Anschlussbezeichnungen in den Netzwerken auf der nächsten Seite entsprechend oben stehendem Plan. Seite 36 Schritt 1: Schritt 2: Schritt 3: Schritt 4: Schritt 5: Zeiten: Aktionen: Seite 37 4.2 Realisierung der Schrittkette mit bibliotheksfähigen Bausteinen: Man trennt nun die 2 Arbeitsbereiche einer Schrittkette auf in 1. Kontrolle der Übergangsbedingungen und Erzeugen einer Schrittnummer 2. Ansteuerung der Ausgabebefehle in Abhängigkeit der Schrittnummer Auf diese Weise kann man das Umsetzen der Übergangsbedingungen in eine Schritt-Nummer mittels eines vorgefertigten Bausteins („FB15“) erledigen lassen. Dieser ist immer wieder einsetzbar, muss also nicht jedes Mal neu programmiert werden, das nennt man bibliotheksfähig. Dieser vorgefertigte Baustein („FB15“), der eine Schrittkette mit z.B. 10 Schritten enthält, wird in seinem Innenleben nicht verändert. Er wird im OB1 aufgerufen und dort mit den Transitionsbedingungen beschaltet. Er hat die Aufgabe, die Transitionsbedingungen zu verarbeiten, d.h. die aktuelle Schrittnummer auszugeben. Die zugehörige Variable muss im OB1 deklariert werden (z.B. OB_SRNR). Eine Schrittkette besteht also nun aus zwei Bausteinen, die im OB1 aufgerufen werden: 1. FB 15: Hier wird der Schrittkettenablauf realisiert, d.h. immer wenn eine Transitionsbedingung erfüllt ist, wird die Variable Schrittnummer erhöht. 2. FC1: Hier werden die Aktionen festgelegt über Vergleicher, d.h. z.B. wenn die Schrittnummer 3 ist, dann wird Lampe aktiviert , bei Schrittnummer 4 wird der Motor links aktiviert, bei Schrittnummer 5 wird der Motor rechts aktiviert, usw. Seite 38 4.3 Vorgehen mit trysim: Um eine Schrittkette zu realisieren, gehe wie folgt vor: 1. 2. 3. Öffne eine fertige Steuerung mit einer Schrittkette, d.h. mit einem FB15. z.B. Projekt „Schrittkette“ Lokal abspeichern „Speichern unter“ auf Festplatte (lokal) Dann holt man sich (oder erstellt neu) die gewünschte Anlage, z.B. einen Werkzeugschlitten über Projekt – Importieren- Anlage 4. 5. 6. Klicke auf „SPS-Programm bearbeiten“ (Bild neben Zahnrad) Öffne OB1, lösche im OB1 alles ausser FB 15 und DB 15 Erstelle neuen Baustein, z.B. FC1 über SPS – neu – FC1 7. Fülle die Variablen aus: in-Variablen = Eingänge, hier nur die Schrittnummerr (Typ: Integer) out-Variablen = Ausgänge Schrittnummer: Variable Schritt als Integer (INT) ergänzen 8. Ergänze die Logik: Jedes Netzwerk hat z.B. einen Vergleicher (= =I), mit diesem wird die Schrittnummer verglichen und die Aktion gemacht, z.B. eine LED oder ein Motor angesteuert. 9. 10. 11. 12. 13. Öffne OB1 und trage die Übergangsbedingungen (T1_2, T2_3 usw.) in den FB15 ein ein. Gehe im OB1 auf eine neues Netzwerk und hole den neu erstellten FC1 rein. Belege die Ein- und Ausgänge des FC1. Übertragen, Starten, Freuen dass alles funktioniert ! Inbetriebnahme, Fehlersuche: Untersuche die Funktionen schrittweise im Beobachtungsmodus (Auge-Symbol) und beseitige so evtl. vorhandene Fehler. Typische Fehler: - Negation fehlt, da Schließer und Öffner vertauscht, - Mehrfachansteuerung eines Ausgangs, dann wird nur die spätere Aktion an die Ausgänge gegeben (Lösung: z.B. verODERn der Ausgänge) Seite 39 4.4 Besonderheiten für die Schrittketten 4.4.1. Zyklischer Ablauf: Wenn ein zyklischer Ablauf gewünscht wird, d.h. dass nach dem letzten Schritt die Grundstellung aufgerufen wird, dann aber ohne Handbetätigung eines Start-Tasters o.ä. mit dem Schritt 2 weitergearbeitet werden soll, ist folgendes zu tun: Die Transitionsbedingung 1-2 wird ergänzt um ein ODER im OB1 bei der Beschaltung von FB15. Der erste Eingang dieses ODER ist z.B. ein START-Taster, der zweite Eingang ist ein Startmerker, so dass beim nächsten Durchlauf wegen des gesetzten Startmerkers gleich in Schritt 2 übergeleitet wird. Der Startmerker wird im OB1 über ein SR-FF gesetzt als zusätzliches Netzwerk im OB1. 4.4.2. Mehrfachansteuerung eines Ausgangs: Wird ein Ausgang mehrfach, d.h. bei mehreren Schritten angesteuert, so müssen die Schritte verODERt werden. D.h. man arbeitet wie üblich einen Ausgang nach dem anderen ab,z.B.: Schritt ==I 1 Schritt 3 ==I 1 Rechtslauf Seite 40 4.4.3. Innenleben des Standard-Schrittkettenbausteins FB 15 Variablen für 10 Schritte: Netzwerk 1 für den 1. Schritt: Seite 41 Netzwerk 2 für den 2. Schritt: Netzwerk 3 für den 3. Schritt: usw. , d.h. die Schritte 4-9 sehen alle praktisch gleich aus, bis auf die Erhöhung der Zahlen. Nur das letzte Netzwerk ist anders, da es vom 1. Schritt zurückgesetzt wird: letztes Netzwerk für den letzten Schritt: Seite 42 4.5 Aufgaben zu Schrittketten 4.5.1 Aufgabe mit Hilfestellung: Dualzähler D8 D4 D2 D1 Ein Dualzähler soll mittels einer Schrittkette realisiert werden. Dazu sollen die Schließer die Übergangsbedingungen darstellen. Schließer_1 lässt also die Schrittkette von Schritt 1 (= Grundzustand, keine LED leuchtet) in den Schritt 2 übergehen. Im Schritt 2 soll die Dualzahl „1“ dargestellt werden, d.h. die LED 1 leuchtet. Wird nun Schließer_2 betätigt, so soll die Steuerung in Schritt 3 übergehen, d.h. die Zahl 2 soll dargestellt werden, dazu leuchtet LED 2 und LED 1 leuchtet nicht mehr usw. a) Ergänze die folgende Tabelle : Zahl 1 2 3 4 5 6 7 8 Schritt 2 3 D8 0 0 D4 0 0 D2 0 1 D1 1 0 Seite 43 b) Ergänze nun die Übergangsbedingungen und die Ausgabebefehle in der Schrittkette: 1 Grundstellung S1 2 N Lampe D1 3 N Lampe D2 S2 S3 4 S4 5 S5 6 S6 7 S7 8 S8 9 S Seite 44 c) Ergänze hierzu nun die Beschaltung des Standard-Schrittkettenbausteins FB15: Die Schließer S1 bis S8 seien den Eingängen E0.0 bis E0.7 zugeordnet. Nun wird der FC1 erstellt mit der Ansteuerung der Ausgänge, d.h. der 4 LEDs: Zunächst werden die Variablen deklariert. d) Ergänze den Typ der Variablen: Seite 45 e) Ergänze die Beschaltung der Netzwerke: Netzwerk 1: Netzwerk 2: Seite 46 Netzwerk 3: Netzwerk 4: Im OB1 wird nun nach dem FB 15 noch der Baustein für die Befehlsausgabe geladen. Ergänze die äußere Beschaltung für die (interne) Variable Schritt: f) Wenn man das Bild der Anlage betrachtet, stellt man fest, dass die Steuerung mit diesen 4 Netzwerken noch nicht fertig programmiert ist. Welcher Teil fehlt noch ? Lösung: Es fehlt die Ansteuerung der ………………………………………… …………………………………………………………………………………………… Seite 47 4.5.2 Schlitten mit Schrittkette Der Werkzeugschlitten soll mit Hilfe einer Schrittkette nach Drücken des Start-Tasters zuerst nach rechts anfahren, am rechten Endschalter umdrehen und bis zum linken Ende fahren. 4.5.3 Schlitten mit mehrfacher Ansteuerung des gleichen Ausgangs Ergänze die vorige Aufgabe um einen Schritt so, dass der Schlitten nachdem er zuerst nach rechts und dann nach links gefahren ist, am Ende noch mal nach rechts fährt. Achtung: Hier gibt es evtl. Probleme, da beim 4.Schritt die vorher aktivierte Rechtsbewegung wieder auf „0“ gesetzt wird ! (Vergleiche zyklischen Ablauf der SPS, PAE, PAA !) Lösung: Man muss hier den Ausgang „Rechtsfahrt“ mit einem ODER versehen und die Schritte 2 und 4 als Eingänge haben, da beide die Rechtsfahrt aktivieren! 4.5.4 Schrittkette mit Schlitten und Zeiten Der Schlitten fährt nach Betätigung des START-Tasters erst nach links bis zum linken Endtaster, dann nach rechts bis zum rechten Endtaster. Dort fährt er nur für 4 Sekunde nach links, wartet dann 6 Sekunden lang mitten auf der Strecke, und fährt von dieser Stellung dann zurück zum rechten Endtaster. 4.5.5 Ampelsteuerung Es soll eine einfache Fußgängerampelsteuerung entworfen werden, d.h. die üblichen Folgen durchlaufen werden für eine KFZ-Ampel und eine zugehörige Fußgängerampel. Der Grundzustand ist rot für Fußgänger und grün für Autos. Nach dem Drücken soll die Ampel – wie in der Realität – nicht sofort, sondern erst nach einigen Sekunden reagieren. Seite 48 4.5.6 Waschanlage Es soll nach Betätigung der START-Taste mit dem Kistenerzeuger eine Kiste erzeugt werden. Darauf hin fällt eine Kiste runter auf das Förderband, die Kiste soll nach links bis zur linken Lichtschranke bewegt werden. Nun beginnt der „Waschvorgang“, d.h. für 10 Sekunden läuft die Kiste zwischen den zwei Lichtschranken hin und her und wird vom geöffneten Ventil „beregnet“. Dann fährt sie über die rechte Lichtschranke drüber bis sie in den Silo 2 fällt. Hilfe für die Schrittkette: Schritt 1: Grundstellung, Tippbetrieb des Bandes soll möglich sein Schritt 2: startet über START-Taste, es wird der Kistenerzeuger aktiviert, gleichzeitig startet das Band nach links Schritt 3: wenn die Kiste an der linken Lichtschranke ist, läuft für eine gewisse Zeit das Band im Automatik-Betrieb, bewegt sich also zwischen den Lichtschranken hin und her, gleichzeitig startet der Waschvorgang über die Aktivierung des Ventils Schritt 4: nach Ablauf der Waschzeit wird das Ventil deaktiviert, und das Band läuft nach rechts noch eine Zeit weiter, bis die Kiste in Silo 2 ist Seite 49 4.5.7 Prägeanlage (Stempel) Erstelle eine Steuerung für die Anlage „Stempel“, jeder Schritt soll zusätzlich durch die entsprechende LED angezeigt werden. In der Grundstellung leuchtet nur die LED. Startet man die Anlage mit „Start Automatik“, so kann nun durch Druck auf den blauen Taster ein Kasten erzeugt werden. Gleichzeitig startet das Förderband nach rechts. Sobald der erzeugte Kasten an der Lichtschranke angekommen ist, stoppt das Band. Nun senkt sich der Stempel bis zum unteren Endschalter und fährt wieder hoch. Erst wenn er wieder ganz oben angekommen ist, soll das Band weiterfahren. Kommt nun in den nächsten 10 Sekunden kein neuer Kasten an die Lichtschranke, so soll das Band stoppen. Seite 50 4.5.8 Stempel doppelt Erstelle eine Steuerung für die Anlage „Stempel doppelt“ mit folgender Funktion: Eine erzeugte Kiste soll zum linken Stempel gebracht werden, dort wird sie gestempelt. Ist der Stempel ganz oben, so wird sie zum rechten Stempel befördert. Dieser hämmert 3 Muster ein (also 3 Mal stempeln), dann fährt die Kiste wieder zum linken Stempel zum Versiegeln (d.h. nochmal stempeln). Nun wird sie über den rechten Rand gefahren, d.h. das Band fährt eine gewisse Zeit nach rechts. Der jeweilige Schritt soll durch die entsprechende LED angezeigt werden. Seite 51 4.5.9 Hebeanlage Erstelle eine Steuerung für die Anlage „Hebeanlage“ mit folgender Funktion: Wenn „Neuer Kasten“ gedrückt wird, soll eine Kiste erzeugt werden, die vom linken Förderband zum Aufzug fährt. Der Aufzug soll die Kiste in das vorher per Taster ausgewählte und per LED angezeigte Stockwerk fahren. Zusätzlich soll (aber nur im Grundzustand der Schrittkette) der Aufzug per Tippbetrieb gesteuert werden können. Achtung: Ein neuer Kasten darf nur erzeugt werden, wenn der Aufzug unten steht. Der jeweilige Schritt soll durch die entsprechende LED angezeigt werden. Seite 52 4.5.10 Multifunktions-Anlage Erstelle eine Steuerung für die Anlage „Multifunktion“, jeder Schritt soll zusätzlich durch die LEDs angezeigt werden. Im Schritt 2 ist ein Tippbetrieb des Schlittens möglich über die 2 Taster links und rechts. Im Schritt 3 soll der Schlitten 3 Mal hin und her fahren. Im Schritt 4 soll ein Lauflicht ca. 5 Sekunden lang laufen relativ rasch laufen (also einige Durchläufe der LEDs während der 5 Sekunden). Seite 53 4.6 Verzweigte Schrittketten 4.6.1 Variante 1 Die einfachste Variante einer verzweigten Schrittkette ist, wenn eine 2. Schrittkette quasi als Unterprogramm läuft. Während die Hauptschrittkette z.B. im Schritt 4 ist, läuft eine 2. Schrittkette ab. Erst wenn diese 2. Schrittkette durchgelaufen ist, kann Schrittkette 1 mit Schritt 5 weitermachen. Im folgenden Modell bzw. Bild beginnt die Hauptschrittkette (grün) mit dem Grundzustand, also mit Schritt 1. Alle Übergangsbedingungen sind einfach nur Taster. Mit Taster T1_2 wird also von Schritt 1 auf Schritt 2 geschaltet. Nun wird im Schritt 4 die zweite Schrittkette durchlaufen. Wenn diese fertig ist, geht die Hauptschrittkette nach Erfüllung der Bed. T4_5 weiter mit Schritt 5. Seite 54 4.6.2 Variante 2 Eine zweite Variante ist wie folgt strukturiert: Die Hauptschrittkette (grün) beginnt mit dem Grundzustand, also Schritt 1. Mit Taster T1_2 wird auf Schritt 2 geschaltet. Nun wird je nach erfüllter Bedingung (Bed. Linker Zweig, Bed. Rechter Zweig) der linke oder der rechte Zweig durchlaufen, evtl. auch beide. Daher kann man unterscheiden: A– Parallelbetrieb, d.h. beide Schrittkettenteile (Schrittkette 1, Schritt 3-5 und Schrittkette 2, Schritt 2-5) laufen gleichzeitig, Schrittkette 3 (dunkelblau) darf erst anlaufen, wenn beide Zweige komplett durchgelaufen sind. Beispiel: Bei einem Fließband können 2 Maschinen gleichzeitig an einem Werkstück (z.B. PKW) arbeiten. Bei der nächsten Bearbeitungsstation müssen aber beide fertig geworden sein. B- Alternativ-Betrieb, d.h. nur einer der beiden Schrittkettenteile ist möglich. Beispiel: Je nach Material (z.B. Werkstücke aus Metall und Kunststoff) wird ein Teil der Bearbeitung unterschiedlich sein, danach folgt wieder ein gemeinsamer Teil (z.B. Weitertransport). Seite 55 Beim Übergang in die 3. Schrittkette (Dunkelblau) muss klar sein, ob in der realen Anlage nur einer oder beide Zweige durchlaufen werden müssen, d.h. ob die Schrittkette im Parallelbetrieb (A) oder Alternativ-Betrieb (B) läuft. Realisierung: Erstelle die Steuerung für den Fall, dass nur einer der beiden Zweige durchlaufen und beendet sein müssen. (Variante B) Beachte: Schritt 1 von der 2. und 3. Schrittkette werden nicht angezeigt, da sie nur die Grundstellung beinhalten. Seite 56 5. Analogwertverarbeitung 5.1 Datentypen Die Informationsverarbeitung in einer SPS erfolgt grundsätzlich digital. Sollen nun analoge Werte, d.h. Spannungen oder Ströme, die ein Sensor liefert, verarbeitet werden, so müssen diese in ein digitales Signal umgewandelt werden. Die Analog-Eingabe-Baugruppe einer SPS wandelt solche analogen Prozesssignale (z.B. den genauen Spannungswert eines Temperatursensors) um in ein digitales Signal, also in eine Folge von Nullen und Einsen. (AD-Wandler) Entsprechend wandeln Analog-Ausgabe-Baugruppen die internen digitalen Signale in einen Spannungswert um, der nach aussen gegeben wird. (DA-Wandler) Dazu ist es intern in der SPS notwendig, mit entsprechenden Datentypen zu arbeiten, die diese analogen Signale abbilden, also Variablen mit z.B. 16 Bit. Je mehr Bit verwendet werden für die Darstellung, umso feiner ist die Auflösung des analogen Signals. In einer SPS hat man u.a. die folgenden Datentypen: Variablentyp BOOL INTEGER WORD REAL 5.2 Größe im Speicher 1 Bit 2 Byte = 16 Bit 2 Byte = 16 Bit 4 Byte = 32 Bit Wertebereich, Art 0,1 (boolsche Variable) -32768 bis + 32768 = Ganzzahl 0 bis 65536 (positive Ganzzahl) -1038 bis + 1038 (Gleitkommazahl) Rechen- und Vergleichsfunktionen Für die meisten Variablentypen gibt es nun „Rechenfunktionen“, z.B. Zur Variable „Anzahl“ soll 5 addiert werden, das Ergebnis wird der Variable „Gesamt“ zugewiesen: Man kann auch eine Variable mit einem festen Wert vergleichen, z.B. „wenn Anzahl > 5 ist, dann aktiviere das Ventil“. Diese beiden Funktionen haben 2 Eingänge für Integer-Variablen, der Ausgang ist eine boolsche Variable. Ähnliche Funktionen gibt es auch für REAL-Typen (Gleitkommazahlen). Eine typische Anwendung einer Vergleichsfunktion ist z.B. ein Zweipunktregler. Seite 57 5.3 Zweipunktregler Mit einer einfachen Vergleichsfunktion ist es nun möglich, einen Zweipunktregler zu realisieren. Dazu braucht man nur Soll- und Istwert in einer Regelung zu vergleichen und entsprechend dem Vergleichsergebnis den Ausgang anzusteuern. Beispiel mit trysim: „Thermo“ Heizung für einen chemischen Prozess, Temperatur soll zwischen 0 und 1000 Grad einstellbar sein. Der Sollwert ist in der Realität z.B. ein externer Schieberegler, der über den Analog-Eingang eingelesen wird. Hier bei trysim wird sein Wert direkt in das Merkerwort MW 512 gegeben. (Dies kann über Rechtsklick bei „Eigenschaften“ eingestellt werden). Das Thermometer ist in der Realität ein externer Sensor, hier bei trysim kann der zugehörige Temperaturwert am Eingang mit der Bezeichnung EW 512 (Eingangs-Wort 512) abgefragt werden. 5.3.1 Regler ohne Hysterese a) Erstelle ein simples Programm für das Projekt „Thermo“, mit dem man die Temperatur auf den gewünschten Sollwert von z.B. 500 Grad regeln kann. Verwende als zentrales Element ein SR-Glied für die Heizung und überlege, wann die Heizung gesetzt und wann sie rückgesetzt wird. Beachte auch, welchen Variablentyp die 3 notwendigen Variablen „Temperatur“, „Sollwert“ und „Heizung“ haben müssen. b) Warum ist hier der Verschleiß beim Stellglied relativ hoch ? 5.3.2 Regler mit Hysterese a) b) Ergänze nun das Programm so, dass es zwei Schaltpunkte gibt, die etwas oberhalb bzw. unterhalb des Sollwerts liegen. Den Abstand dieser Schaltpunkte nennt man Hysterese. Bei der Temperaturregelung soll die Heizung am oberen Schaltpunkt ausschalten, jedoch erst wieder einschalten, wenn die Temperatur den unteren Schaltpunkt unterschritten hat. Welchen Vorteil hat die Verwendung von zwei Schaltpunkten ? (Denke an ein Bügeleisen!) Seite 58 Beispiel mit Siemens S7: Hier kann ein Heizungs-Prozeß simuliert werden, indem man an einen Analog-Eingang eine Spannung vom Netzgerät legt, die einen Temperatursensor darstellen soll. Der Eingang heißt z.B. PEW 288, d.h. Peripherie-Eingangswort Nr. 288. Der Sollwert wird direkt im Program angegeben. Die Heizung wird angesteuert durch einen Ausgang, kontrollierbar durch die entsprechende LED. 5.4 Normierung Oft ist es erforderlich, den Spannungs- oder Strombereich eines Sensors zu „normieren“, d.h. umzurechnen, so dass das Ergebnis eine für den Anwender sinnvoll erkennbare Größe darstellt. Beispiel: Man möchte über den Analog-Eingang eine Spannung eingeben, und diese Spannung an der SPS über eine Anzeige sichtbar machen. Dazu muss man die Hardware kennen, d.h. man muss wissen, welcher Spannungsbereich für den Analogwert-Eingang zulässig ist. Daneben ist auch noch wichtig, in welches Zahlenformat und auf welche Art diese Spannung in einen digitalen Wert umgewandelt wird. Bei Siemens hat man üblicherweise die folgende Zuordnung: Bei einem Messbereich der Analog-Eingänge von ± 10V gilt: Spannung: dezimal Bereich ----------------------------------------------> 11,7589 32767... Überlauf 32512 ----------------------------------------------11,7589 32511 . . Übersteuerungsbereich 10,0004 27649 ----------------------------------------------10,00 27648 . . Nennbereich 7,50 20736 . . 0,00 0 usw. , das Ganze ebenfalls im negativen Bereich. Seite 59 Dieser Messbereich von z.B. ± 10V wird also intern dargestellt als eine Ganzzahl zwischen – 27648 und +27648. Um den Spannungswert nun mit einem SPS-Programm auf eine 4-stellige Anzeige zu geben, muss dieser Bereich transformiert werden auf z.B. den Bereich von -9999 bis + 9999. Ohne diese Transformation hat man obige Zuordnung, d.h. wenn 10 V einen Wert von 27648 ergeben, so hat man bei einer angelegten Spannung von z.B. 5,3V einen Wert von 14653. Dies ist sehr unübersichtlich, daher wird normiert, z.B. mit dem bibliotheksfähigen Normierungsbaustein: FC 48 und FC 51: FC 48: Normiert einen beliebigen Zahlenbereich z.B. –27648 bis + 27648 auf einen anderen Zahlenbereich, z.B. – 10000 bis + 10000. Am Ausgang steht eine REAL-Variable, d.h. eine Gleitkommazahl. Beispiel: Die Spannung von 5,3V, aus der die Analog-Eingabe-Baugruppe der SPS die 14653 macht, wird hier zu 5300,0 gewandelt. FC 51: Wandelt eine Gleitkommazahl in eine 4-stellige BCD-Anzeige um mit Vorzeichen. Beispiel: Die 5300,0 werden für die Anzeige umgewandelt in 5300. Man hat also nun bei einer angelegten Spannung von z.B. 5,3V einen Anzeigewert von 5300, d.h. praktisch in mV. Seite 60 Aufgaben zur Normierung: Lade das Projekt test FC48, untersuche die Funktion des Bausteins und beschreibe sie mit eigenen Worten: ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… Lade das Projekt test FC51, untersuche die Funktion des Bausteins und beschreibe sie mit eigenen Worten: ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… ………………………………………………………………………………………………………… 5.5 Füllstands-Regelung Erstelle im Projekt „Füllstand“ eine Zweipunktregelung mit einer Hysterese. Diese Anlage soll eine Füllstandsregelung erhalten: Mit dem Schieberegler wird ein Sollwert eingestellt zwischen 0 und 100 %. Mit Hilfe des Füllstandsmessers soll nun ein Zweipunktregler mit Hysterese realisiert werden, so dass bei Betätigung des Schalters "Regelung an" das Ventil "Zufluss" so betätigt wird, dass der Istwert ungefähr den Sollwert erreicht. Seite 61 Anleitung : Lade den Normierungsbaustein FC 48 in den OB1 und normiere mit ihm den Sollwert. Der Sollwert (Schieberegler) gibt eigentlich den Wertebereich 0….27648 aus. Dieser Wertebereich soll umgesetzt werden auf 0 …. 100, da man sich das als Prozent besser vorstellen kann. Lade nun einen weiteren Normierungsbaustein in den OB1, mit dem der Füllstandssensor normiert wird. Seine Maximalanzeige von ca. 4100 Litern soll ebenfalls auf 100 normiert werden. Nun brauchen wir noch einen FB1, in dem der eigentliche Regler sitzt. Die wirklich notwendigen Variablen sind nur „Istwert“, Sollwert“ und „Ventil“. Dort berechnen wir in 2 Netzwerken zunächst die 2 Schaltpunkte, deren Abstand die Hysterese ist (sie soll 2 Liter sein). Die Schaltpunkte liegen also 1 über und 1 unter dem Sollwert. Nun nehmen wir wieder ein SR-Speicher für das Stellglied, hier das Ventil „Zufluss“ und überlegen uns, wann wir setzen und rücksetzen (Vergleicher notwendig). Test + Fehlersuche = Inbetriebnahme -> fertig ! Ergänzungen: a) b) c) Ergänze die Regelung so, dass sie nur aktiv wird, wenn der Schalter „Regelung an“ aktiviert ist. Aktiviere auch die 3 LEDs für eine grobe Anzeige des Füllstandes in Abhängigkeit der 2 Niveau-Schalter. Ergänze eine Regelung für das Ventil „Abfluss“, damit ein schnelleres Abfließen erreicht wird, wenn der Sollwert Seite 62 6. Lösungen der Aufgaben: 2.2.3 Förderband 2 mit RS-Flipflop Erst muss das hinterste Förderband anlaufen, um evtl. Reste wegzubefördern, dann das dem Silo nähere Förderband. Wenn beide Förderbänder laufen, darf erst der Schieber aufgemacht werden. Variablendeklaration im FB1: Seite 63 im OB1: 2.3.2 Lösung Taster programmieren Die 2 Taster S1 und S2 sollen einmal als UND und einmal als ODER funktionieren. Die Lösung hier ist nach „alter“ Methode, d.h. mit globalem Merker, sämtliche Logik liegt im OB1 und dort sind auch direkt an den Logik-Elementen die Ein- und Ausgänge. Netzwerk 1: Netzwerk 2: Seite 64 Netzwerk 3: M1.0 geht auf Lampe UND Netzwerk 4: NICHT-M1.0 geht auf Lampe ODER 2.3.3. Lösung Schlitten Tippbetrieb Lade das Projekt „Schlitten Tippbetrieb“ und speichere es auf deine lokale Festplatte. Es soll nun ein einfacher Tippbetrieb realisiert werden. Mit Taste „Links“ soll der Schlitten nach links fahren, entsprechend mit der anderen Taste nach rechts. Variablen anlegen im FC1: Netzwerk 1 für Motor rechts: Seite 65 Netzwerk 2 für Motor links: im OB1 muss nun FC1 reingezogen werden: 2.3.4 Lösung Schlitten Automatik Lade das Projekt „Schlitten Automatik“ und speichere es auf deine lokale Festplatte. Es soll nun ein Automatikbetrieb realisiert werden. Mit Taste „Start“ soll der Schlitten nach rechts anfahren, am rechten Endschalter umkehren bis zum linken Endschalter, dort wieder umkehren usw. Erstelle einen neuen FB-Baustein, da SR-Speicher benötigt werden. Variablen anlegen im FB1: Seite 66 Netzwerk1 für Motor rechts: Netzwerk2 für Motor links: im OB1 muss nun FB1 reingezogen werden: Seite 67 2.5.2. Lösung Tipp- und Automatikbetrieb gleichzeitig im OB1: Variablen anlegen im FB1: Netzwerk 1 für Merker Automatikbetrieb: Netzwerk 2 für Motor rechts: Seite 68 Netzwerk 2 für Motor links: Seite 69 2.5.3 Lösung Rolltor Variablen anlegen im FB1: Netzwerk 1 für Aufwärtsbewegung (MotorHoch): Netzwerk 2 für Abwärtsbewegung (MotorRunter): Seite 70 OB1: Seite 71 2.5.4 Lösung Aufzug Variablen anlegen im FB1: Netzwerk 1 für Aufwärtsbewegung (MotorHoch): Netzwerk 2 für Abwärtsbewegung (MotorRunter): Netzwerk 3 für Anforderung nach oben Seite 72 Netzwerk 4 für Anforderung nach unten OB1: Seite 73 3.2.3 Stern-Dreieck-Hochlauf Lösung Aufgabe: Die Stern-Dreieck-Schaltung (Anfahren eines Drehstrom-Motors) kann simuliert werden über einen Start –Taster und 3 LEDs, die für die 3 Schütze stehen: Netzschütz, Sternschütz, Dreieckschütz Erst soll der Sternschütz anziehen, dann sofort danach der Netzschütz. Nun soll der Motor hochlaufen, die Steuerung soll nun nach einer bestimmten Zeit (hier: 2 Sekunden) das Sternschütz abschalten. Eine kurze Zeit später (z.B. 1 Sekunde) soll dann das Dreieckschütz anziehen. Dies ist dann der Endzustand des Hochlaufs. Variablen anlegen im FB1: Netzwerk 1 für Sternschütz: Seite 74 Netzwerk 2 für Netzschütz: Netzwerk 3 für Dreieckschütz: Seite 75 3.2.4 SchotterwerkLösung: Netzwerk 2: Netzwerk 3: Netzwerk 4. Netzwerk5: Seite 76 3.2.5 Lauflicht Lösung: Seite 77 Seite 78 3.4.1 Demo Zähler Lösung: Aufgabe: OB1: Variablen im FC1. Netzwerk 1: Netzwerk 3: Netzwerk 2: Seite 79 Seite 80 3.4.2 A Schlitten mit Zähler Lösung 1: Aufgabe: Lösung 1: OB1: Variablen im FB1. Netzwerke im FB 1: Seite 81 Netzwerk 1: Netzwerk 3: Netzwerk 4: Netzwerk 2: Seite 82 3.4.2 B Schlitten mit Zähler Lösung 2: OB1: Seite 83 4.1 Einführung Schrittkette Schritt 1: Schritt 2: Schritt 3: Schritt 4: Schritt 5: Zeiten: Aktionen: Seite 84 4.5.1 Schlitten mit Schrittkette Lösung: OB1: Der Standard-Baustein FB 15 für Schrittketten wird in den OB1 reingezogen und die Übergangsbedingungen bestimmt, dies sind hier : Starttaster und die zwei Endschalter. OB1: Netzwerk1 Netzwerk2: Seite 85 Innenleben des FC16: Netzwerk1: Netzwerk2: Netzwerk3: Seite 86 4.5.3 Schrittkette mit Schlitten und Zeiten Aufgabe: Der Schlitten fährt nach Betätigung des START-Tasters erst nach links bis zum linken Endtaster, dann nach rechts bis zum rechten Endtaster. Dort fährt er nur für 4 Sekunde nach links, wartet dann 6 Sekunden lang mitten auf der Strecke, und fährt von dieser Stellung dann zurück zum rechten Endtaster. Lösung mit Schrittkette: Schritt 1 Grundstellung N LED N Mlinks Start Schritt 2 Elinks Schritt 3 Transitionsbedingungen eintragen: N Mrechts Erechts Schritt 4 N Mlinks D T1 4 sec D T2 6 sec T1 Schritt 5 Variablen deklarieren im FC 16: T2 Schritt 6 N Erechts Mrechts Seite 87 Netzwerk 1 in FC16, hier wird nur in der Grundstellung die LED aktiviert: Netzwerk 2: in den Schritten 2 ODER 4 wird die Linksfahrt aktiviert: Netzwerk 3: entsprechend in den Schritten 3 und 6 die Rechtsfahrt: Netzwerk 4: hier wird nur gewartet (parallel fährt der Motor nach links, s.o.) Netzwerk 5: hier wird ebenso nur gewartet: Seite 88 4.5.5 Ampelsteuerung Eine Ampelanlage soll simuliert werden mit einer Ablaufsteuerung. Lösung: OB1: Der Standard-Baustein FB 15 für Schrittketten wird in den OB1 reingezogen und die Übergangsbedingungen bestimmt, dies sind hier nur Zeiten. Am Anfang braucht man den Starttaster, beim nächsten Zyklus wird die Grundstellung übersprungen mit Hilfe des Startmerkers M1.0. Seite 89 Die Variablen im FB1 lauten z.B.: Bei Schritt 1 (Grundstellung) wird alles rückgesetzt: 68614240 Seite 89 Seite 90 usw. 68614240 Seite 90 Seite 91 4.5.6 Lösung Waschanlage Es soll nach Betätigung der START-Taste mit dem Kistenerzeuger eine Kiste erzeugt werden. Darauf hin fällt eine Kiste runter auf das Förderband, die Kiste soll nach links bis zur linken Lichtschranke bewegt werden. Nun beginnt der „Waschvorgang“, d.h. für 10 Sekunden läuft die Kiste zwischen den zwei Lichtschranken hin und her und wird vom geöffneten Ventil „beregnet“. Dann fährt sie über die rechte Lichtschranke drüber bis sie in den Silo 2 fällt. 2 Netzwerke im OB1: Netzwerk 1: Schrittkette 68614240 Netzwerk 2: Aktions-Baustein Seite 91 Seite 92 Variablen und Netzwerke im FB1: 68614240 Seite 92 Seite 93 68614240 Seite 93 Seite 94 4.5.7 Lösung Prägeanlage (Stempel) Erstelle eine Steuerung für die Anlage „Stempel“, jeder Schritt soll zusätzlich durch die entsprechende LED angezeigt werden. In der Grundstellung leuchtet nur die LED. Startet man die Anlage mit „Start Automatik“, so kann nun durch Druck auf den blauen Taster ein Kasten erzeugt werden. Gleichzeitig startet das Förderband nach rechts. Sobald der erzeugte Kasten an der Lichtschranke angekommen ist, stoppt das Band. Nun senkt sich der Stempel bis zum unteren Endschalter und fährt wieder hoch. Erst wenn er wieder ganz oben angekommen ist, soll das Band weiterfahren. Kommt nun in den nächsten 10 Sekunden kein neuer Kasten an die Lichtschranke, so soll das Band stoppen. 68614240 Seite 94 Seite 95 OB1: Zur Ansteuerung der LEDs benutzt man den fertigen FC5 und beschaltet ihn: 68614240 Seite 95 Seite 96 FB1: 68614240 Seite 96 Seite 97 4.5.9 Lösung Hebeanlage Erstelle eine Steuerung für die Anlage „Hebeanlage“ mit folgender Funktion: Wenn „Neuer Kasten“ gedrückt wird, soll eine Kiste erzeugt werden, die vom linken Förderband zum Aufzug fährt. Der Aufzug soll die Kiste in das vorher per Taster ausgewählte und per LED angezeigte Stockwerk fahren. Zusätzlich soll (aber nur im Grundzustand der Schrittkette) der Aufzug per Tippbetrieb gesteuert werden können. Achtung: Ein neuer Kasten darf nur erzeugt werden, wenn der Aufzug unten steht. Der jeweilige Schritt soll durch die entsprechende LED angezeigt werden. 68614240 Seite 97 Seite 98 OB1: 68614240 Seite 98 Seite 99 FB1: 68614240 Seite 99 Seite 100 68614240 Seite 100 Seite 101 68614240 Seite 101 Seite 102 4.6.1 Lösung zu Variante 1 Im OB1: 68614240 Seite 102 Seite 103 Im FB1: usw. für alle LEDs 68614240 Seite 103 Seite 104 4.6.2 Lösung zu Variante 2 68614240 Seite 104 Seite 105 68614240 Seite 105 Seite 106 Im FB1: usw. für alle LEDs (gleich wie bei Variante 1). 68614240 Seite 106 Seite 107 5.3.1 Zweipunktregler ohne Hysterese 68614240 Seite 107 Seite 108 5.3.2 Zweipunktregler mit Hysterese OB1: ---------------------------------------------------------------------------------------FB1: (3 Netzwerke) 68614240 Seite 108 Seite 109 5.5 Füllstandsregelung OB1: (3 Netzwerke) 68614240 Seite 109 Seite 110 FB 1: (4 Netzwerke) 68614240 Seite 110 Seite 111 7. Anhang 7.1 Variablentypen Kleine Übersicht Variablentypen bei der SPS S7 bzw. bei Trysim: Typ Wert Bool 0 oder 1 WORD 0... 256 INT (Integer) -32767 .. 32768 DINT S5TIME S5T#3s TIMER COUNTER Erklärung einfaches Bit, z.B. für Taster, Endschalter, Motor An/Aus Wortvariable, d.h. 1 Byte = 8 Bit Ganzzahl (2 Byte = 16 Bit) Double-Integer (4Byte = 32 Bit) Zeitangabe für Timer Timer, kann beliebig heißen, im OB1 muss ein Systemtimer genommen werden, also T1 oder T2 usw. Zähler, kann bel. heißen, im OB1 muss ein Systemzähler genommen werden, also Z1 oder Z2 usw. 7.2 Siemens Hardware Kurzanleitung Vereinfachte Anleitung, um Hardware einzustellen bei Siemens S7: Starte Siemens S7 über „Simatic Manager“ Mit Assistent für Neues Projekt: Gebe CPU-Typ ein. Diese Konfiguration reicht für digitales Ein/Aus Speichern Jetzt: Simatic-Manager, gehe in CPU 313, S7-Programm, Bausteine. Nun wird ein FC oder FB eingefügt: Einfügen – S7-Baustein – Funktion Variablendeklaration, FC1 z.B. in FUP aufbauen, zumachen, speichern Öffne nun den OB1, hole den gebastelten FC1 rein, benenne Ein- und Ausgänge (E0.0 usw.) Speichern Zielsystem – Diagnose – Betriebszustand -> Warmstart anklicken (Evtl. vorher: Zielsystem – Diagnose – Urlöschen, dann ist alles an alten Programmen gelöscht auf dem AG) Achtung: Bei AG = SPS müssen Schalter auf „RUN“ stehen Markiere OB1 und FC1 und lade auf Zielsystem (STRG-L) 68614240 Seite 111 Seite 112 Menü „Ansicht“ auf Online, markiere FC1, mit „Beobachten“ (Symbol Brille) kann online die SPS beobachtet und damit getestet werden 68614240 Seite 112