Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

CX-Programmer SFC-Training. Inhalt SFC – Grundlagen Elemente des SFC SFC – Merkmale des CX-Programmers Der SFC-Editor Das erste SFC-Programm Übung.

Ähnliche Präsentationen


Präsentation zum Thema: "CX-Programmer SFC-Training. Inhalt SFC – Grundlagen Elemente des SFC SFC – Merkmale des CX-Programmers Der SFC-Editor Das erste SFC-Programm Übung."—  Präsentation transkript:

1 CX-Programmer SFC-Training

2 Inhalt SFC – Grundlagen Elemente des SFC SFC – Merkmale des CX-Programmers Der SFC-Editor Das erste SFC-Programm Übung

3 SFC – Begriffsbestimmung und Nutzen SFC = Sequential Function Chart wird in deutsch Ablaufsprache (AS) genannt. (Im französischen Sprachraum auch gerne Graphcet genannt) Es ist eine Weiterentwicklung der Schrittkettenprogrammierung. SFC ist dazu da, um eine komplexe Aufgabe in übersichtliche Teile zu zerlegen. Es eignet sich für alle automatischen Abläufe. Ein typisches Beispiel ist die Waschmaschine: Vorwaschen, Hauptwaschen, Spülen,... Es verleitet dazu, eine ordentliche Struktur zu erstellen.

4 SFC - Nutzen Als grafische Programmiersprache ähnelt sie allgemein verständlichen Darstellungsarten, wie sie in der Prozessindustrie geläufig sind. Auch Nicht-Programmierer können den Prozess damit selbst definieren bzw. verstehen. Die Darstellungsart ist sehr übersichtlich. Die Fehlersuche wird wesentlich vereinfacht. Bestehende Programmteile können einfach wieder verwendet werden. Die Programmabarbeitung beschränkt sich auf den aktiven Schritt, somit wird die Zykluszeit reduziert.

5 SFC, Kontaktplan und auch ST im Programm (Task) Für jede Task (Programm) kann die Programmiersprache frei gewählt werden, je nach dem, welche Programmiersprache am Besten passt: Kontaktplan für die Grundfunktionen; SFC für die automatischen Abläufe; oder Strukturierter Text für mathematische Berechnungen. Das bedeutet auch, dass man jetzt das gesamte SPS-Programm in ST schreiben kann.

6 Kontaktplan und ST als Teile von SFC-Programmen Innerhalb der Schritte können die Programmteile in Kontaktplan oder Strukturiertem Text programmiert werden. Funktionsblöcke können in den Kontaktplanteilen genauso wie in den ST-Teilen verwendet werden.

7 SFC, Grundlegender Ablauf Die Schrittkettensteuerung ist eine Methode zur Programmsteuerung, wo die Abarbeitung einzelner Schritte, die Teil des gesamten Prozesses sind, sequentiell oder zeitabhängig erfolgt. Wenn ein Schritt aktiv ist, so werden die Vorgänge, die darin beschrieben sind zyklisch abgearbeitet. Dies geschieht solange, bis eine Endbedingung eintritt, z.B. ein Sensor schaltet oder eine Zeit abgelaufen ist.

8 Schrittsteuerungsabfolge Ein Schritt ist entweder aktiv oder inaktiv. Ein aktiver Schritt führt Vorgänge aus, die in Aktionen beschrieben sind. Wenn die Endbedingung erfüllt ist, wird der aktuelle Schritt inaktiv und der nachfolgende Schritt wird aktiv.

9 Trans1 = 0Trans1 = 1 Schrittsteuerungsabfolge Der Übergang von einem zum anderen Schritt heißt Transition. In der Transition ist die Übergangsbedingung definiert. In diesem Beispiel ist die Bedingung erfüllt, und der Schritt: Step2 ist aktiv. Der Schritt mit dem " ist der aktive Schritt Step 1Action 1 Step 2Action 2

10 Elemente des SFC

11 Schritte Initial-SchrittNormal-SchrittSubchart(-Schritt)

12 Initial - Schritt Ein Initial-Schritt ist der Schritt, der aktiv wird, nachdem die Programmausführung gestartet wurde, ohne jede weitere Vorbedingung. Alle anderen Schritte sind in dem Moment inaktiv. Es ist der erste Schritt, der im SFC-Diagramm abgearbeitet wird. Wenn der Initialschritt aktiv wird, werden die dort definierten Aktionen ausgeführt. Der Initialschritt hat folgendes Aussehen: Nur ein Initialschritt kann in einem SFC-Diagramm eingefügt werden. Der Initialschritt muss nicht an der obersten Position stehen. Der Initialschritt kann eine oder mehrere Aktionen haben.

13 Normaler Schritt Ein normaler Schritt ist ein Schritt, der aktiv wird, wenn die Transitionsbedingung davor erfüllt wird. Wenn der normale Schritt aktiv wird, werden die dort definierten Aktionen ausgeführt. Der normale Schritt hat folgendes Aussehen: Es gibt keine Grenze für die Anzahl von normalen Schritten in einem SFC-Diagramm. Der normale Schritt kann eine oder mehrere Aktionen haben.

14 Subchart Der Subchart ist hier als ein Schritt dargestellt. Er dient zur Verbesserung der Übersichtlichkeit. Es verbirgt sich eine Ablaufkette dahinter, die in einem anderen Diagramm definiert ist. Es ist mit einem Unterprogrammaufruf bzw. Makro zu vergleichen. Er hat keine Aktionen. Der Subchart hat folgendes Aussehen:

15 Subchart Der Subchart fängt mit dem Entry-Schritt an. Er hört mit einem oder mehreren Return-Schritten auf. Wird ein Return-Schritt aktiv und die Transitionsbedingung hinter dem Subchart wird erfüllt, werden auch alle anderen Schritte inaktiviert. Ist die Transitionsbedingung hinter dem Subchart erfüllt, wird jedoch nicht in den nächsten Schritt gesprungen, solange nicht ein Return-Schritt des Subcharts aktiv wird.

16 Schrittsteuerungs – Befehle Schrittsteuerungsbefehle (SA, SE, TSR, TSW) können vom Kontaktplan benutzt werden, um Schritte zu steuern. SA:Schritt aktivieren (Schaltet einen Schritt in den aktiven Status) SE: Schritt deaktivieren (Schaltet einen Schritt in den inaktiven Status) TSR: Schritt-Timer-Wert-Lesebefehl (Liest den Istwert des Schritt-Timers) TSW:Schritt-Timer-Wert-Setz-Befehl (Überschreibt den aktuellen Wert des Schritt-Timers)

17 Schritt-Aktivierungs-/ Deaktivierungs- Befehle

18 Verwendung von Schrittsteuerungsbefehlen Step timer value read/set instructions can be used in the same way as step activation/deactivation instructions. Normalerweise wird eine andere Schrittkette mit den Befehlen gesteuert, die sich aber auch in einem Kontaktplan einer Aktion einer Schrittkette befinden können.

19 Verwendung von Schrittsteuerungsbefehlen Theoretisch ist es möglich die Befehle in einem Kontaktplan in einer Aktion für die Steuerung eines Schrittes innerhalb des gleichen SFC-Programms zu benutzen.

20 Einheit für die Schrittzeit Ein Schritt kann einen Schritt-Timer haben, um die Zeitdauer, festzustellen, die ein Schritt aktiv ist. Für jeden Schritt kann die Einheit der Zeit wie folgt gesetzt werden: –100 milliseconds –1 second

21 Transitionen Eine Transition ist die Bedingung, bei der der aktive Status vom vorherigen Schritt auf den nächsten übergeht. Eine Transition muss zwischen zwei Schritten stehen. Die Transition hat folgendes Aussehen: Trans1FALSE

22 Transitionsbedingungen In der grafischen Darstellung steht die Transitionsbedingung rechts neben der Transition. Wenn eine neue Transition hinzugefügt wird, steht die Bedingung standardmäßig auf dem logischen Wert FALSE der ST- Sprache. Die Transitionsbedingung kann einer der folgenden drei Arten definiert werden: –Direkte Transitionsbedingung (Boolean) –ST - Ausdruck –Transitions-Programmname Hinweis:Ein existierender Transitionsprogrammname muss angegeben werden. Das Transistionsprogramm muss also vorher definiert werden.

23 Direkte Transition (Boolean)

24 Transition als ST-Ausdruck (B[6] and A[5] OR c)

25 Transition als ST-Ausdruck OperationZeichenBeispielDetails Klammern ()(a & b) OR cBedingung erfüllt, wenn beide a und b sind ON, oder wenn c ON ist KomplementNOTNOT bFlagBedingung erfüllt, wenn bFlag OFF ist UndAND, &a & bBedingung erfüllt, wenn beide a und b ON sind Exclusiv OderXORa XOR bBedingung erfüllt, wenn a sich von b unterscheidet OderORa OR bBedingung erfüllt, wenn a oder b ON ist Gleich=a = bBedingung erfüllt, wenn a und b gleich sind OperationZeichenBeispielDetails Klammern()(nValue = 10) & aBedingung erfüllt, wenn nValue ist 10 und a ON ist Vergleich, = nValue >= 10Bedingung erfüllt, wenn nValue 10 oder größer ist Gleichheit=nValue = 10Bedingung erfüllt, wenn nValue gleich 10 ist Ungleichheit<>nValue <> 10Bedingung erfüllt, wenn nValue nicht 10 ist Folgende Elemente des Strukturierten Textes für boolsche Variablen können im Ausdruck der Transition verwendet werden.

26 Transitionsprogramm Programmnamen können als Transitionsbedingungen verwendet werden. Ein Transitionsprogramm kann entweder in Kontaktplan oder Strukturiertem Text geschrieben werden. Im CX-Programmer, ist eine Transitionsbedingung dann erfüllt, wenn die boolsche Variable mit dem gleichen Namen wie das Transitionsprogramm auf EIN schaltet.

27 Transitionsprogramm Kontaktplan Strukturierter Text

28 Aktionsblöcke Die Vorgänge, die ausgeführt werden sollen, während ein Schritt aktiv ist, sind in Aktionsblöcken beschrieben und rechts am Schritt aufgelistet. Wird ein Schritt aktiv, so werden alle Aktionsblöcke zyklisch ausgeführt. Sind mehrere Aktionsblöcke vorhanden, so werden sie im Zyklus nacheinander, von oben nach unten ausgeführt.

29 Der Aktionsblock Aktionen, die während des Schritts ausgeführt werden sollen, sind in Aktionsblöcken beschrieben. Ein Schritt kann mehrere Aktionsblöcke ausführen (Anzahl unbegrenzt). Ein Aktionsblock besteht aus folgenden drei Teilen: –Bestimmungszeichen (AQ = Action Qualifier) –Aktionsname –Rückkopplungsvariable (Indicator variable)

30 Der Aktionsblock Ein Aktionsblock sieht dann wie folgt aus: (von links nach rechts) Bestimmungszeichen (AQ), Aktionsname, Rückkopplungsvariable

31 Aktionen Aktionen können folgende zwei verschiedene Beschreibungsarten haben: - Boolsche Variable - Aktionsprogrammname Wenn eine Aktion als boolsche Variable definiert ist, wird die Variable auf TRUE gesetzt, wenn die Aktion ausgeführt wird und auf FALSE, wenn die Aktion gestoppt wird. Wenn in einer Aktion ein Aktionsprogrammname definiert ist, wird das Aktionsprogramm ausgeführt, wenn die Aktion ausgeführt wird, und übersprungen, wenn die Aktion gestoppt ist. Eine Aktion wird ausgeführt, wenn ein Schritt in den aktiven Status übergeht und das Bestimmungszeichen im Aktionsblock die Ausführung zuläßt. Hinweis: Mehrere Schritte können das gleiche Aktionsprogramm ausführen, innerhalb eines SFCs. Die Aktion wird aber nur einmal ausgeführt pro Zyklus.

32 Bestimmungszeichen (AQ= Action Qualifier) Bestimmungszeichen definieren die Ausführungsbedingung oder –zeiten der Aktion Man kann bestimmen, wie die Aktionen ausgeführt werden sollen, wenn der Schritt aktiv wird. In jedem Aktionsblock steht ein Bestimmungszeichen und eine Aktion.

33 AQ Symbol NameFunktionSchrittzeit benötigt? NNormal (standard) Die Aktion wird ausgeführt, solange der Schritt aktiv ist. PPulsDie Aktion wird einmal ausgeführt, wenn der Schritt aktiviert wird. P1Steigende Flanke (=P) Die Aktion wird einmal ausgeführt, wenn der Schritt aktiviert wird. P0Fallende Flanke Die Aktion wird einmal ausgeführt, nachdem der Schritt deaktiviert wurde. Typen von Bestimmungszeichen (AQ= Action Qualifier)

34 AQ Symbol NameFunktion Schrittzeit benötigt? LLimit (Zeitbegrenzt) Wenn der Schritt aktiv wird, wird die Aktion ausgeführt bis die angegebene Zeit abgelaufen ist. Wird der Schritt inaktiv, so wird auch die Ausführung abgebrochen. JA DDelay (Zeitverzögert) Die Aktion wird erst ausgeführt, wenn die angegebene Zeit abgelaufen ist, nachdem der Schritt aktiv wurde. Wenn der Schritt vorher inaktiv wurde, wird die Aktion nicht ausgeführt. JA SSETDie Aktion wird ausgeführt, wenn der Schritt aktiv wird, und wird weiter ausgeführt, auch wenn der Schritt deaktiviert wird. Zum Stoppen muss in einem anderen Aktionsblock die Aktion mit dem Bestimmungszeichen R ausgeführt werden. RResetWenn der Schritt aktiv wird und die Aktion durch "S", "SL", "SD", oder "DS aktiviert wurde, so wird die Ausführung gestoppt und zurückgesetzt. Wurde die Aktion mit anderen Bestimmungs- zeichen ausgeführt, so wird die Aktion nur zurückgesetzt und nicht gestoppt. Das Zurücksetzen bewirkt, dass OUT/ OUT NOT- Befehle auf AUS; TIM/TIMH-Befehle: Zurückgesetzt werden und andere Timer/Counter/Schieberegister auf Hold gesetzt werden. Typen von Bestimmungszeichen (AQ= Action Qualifier)

35 AQ SymbolNameFunktionSchrittzeit benötigt? SLSET Limit (zeit- begrenzt) Wenn der Schritt aktiv wird, wird die Aktion ausgeführt bis die angegebene Zeit abgelaufen ist. Im Gegensatz zu L wird die Aktion auch weiter ausgeführt wenn der Schritt inaktiv wird, bis die Zeit abgelaufen ist oder R auf die Aktion angewendet wird. JA SDSET Delay (zeit- verzögert, unbedingt) Die Aktion wird erst ausgeführt, wenn die angegebene Zeit abgelaufen ist, nachdem der Schritt aktiv wurde. Auch wenn der Schritt vorher inaktiv wurde, wird die Aktion ausgeführt. Zum Stoppen der Aktion muss R auf die Aktion angewendet werden. JA DSDelay SET (zeit- verzögert) Die Aktion wird erst ausgeführt, wenn die angegebene Zeit abgelaufen ist, nachdem der Schritt aktiv wurde. Im Gegensatz zu SD wird die Aktion nicht ausgeführt wenn der Schritt vorher inaktiv wurde. Zum Stoppen der Aktion muss R auf die Aktion angewendet werden. JA

36 Ausführungsdiagramm für Bestimmungszeichen (AQ) Schrittstatus N P P1 P0 L D AQ Ausgeführt Nicht Ausgeführt Aktiver Status Inaktiver Status Sollzeit

37 Ausführungsdiagramm für Bestimmungszeichen (AQ) Schrittstatus S SL SD AQ Aktiver Status Inaktiver Status Sollzeit R Beendigung durch R AQ Sollzeit DS Sollzeit

38 Final Scan- Logik Trans1 = 0Trans1 = 1 Step 1Action 1 Step 2Action 2 Action 1 Trans1 Ausgeführt Nicht Ausgeführt Step 1.X Nachdem der Schritt deaktiviert ist, wird er noch ein letztes Mal ausgeführt. Final Scan Logik Action 2

39 Final Scan- Logik Mit Final Scan Logik ++ addiert 2 Ohne Final Scan Logik ++ addiert 1

40 Schrittmerker Der Schrittmerker ist wie folgt spezifiziert: Innerhalb der gleichen Task [Schrittname].X In einer anderen Task [Programmname].[Schrittname].X Für einen Subchart in der gleichen Task [Subchartname].[Schrittname].X Für einen Subchart in einer anderen Task [Programmname].[Subchartname].[Schrittname].X

41 Schrittmerker Der Schrittmerker (.X) ist eine boolsche Variable, die TRUE ist, wenn der entsprechende Schritt aktiv ist. Die Variable hat die Form.X

42 Aktionsmerker Der Aktionsmerker ist wie folgt spezifiziert: Innerhalb der gleichen Task [Aktionsname].Q In einer anderen Task [Programmname].[Aktionsname].Q Für ein Subchart innerhalb der gleichen Task [Subchartname].[Aktionsname].Q Für ein Subchart in einer anderen Task [Programmname].[Subchartname].[Aktionsname].Q

43 Aktionsmerker Der Aktionsmerker (.Q) ist eine boolsche Variable, die TRUE ist, wenn die entsprechende Aktion aktiv ist. Diese Variable hat die Form.Q

44 Schrittzeit Der Aktionsmerker ist wie folgt spezifiziert: Innerhalb der gleichen Task [Schrittname].T In einer anderen Task [Programmname].[Schrittname].T Für ein Subchart innerhalb der gleichen Task [Subchartname].[Schrittname].T Für ein Subchart in einer anderen Task [Programmname].[Subchartname].[Schrittname].T

45 4 Mal unterschiedliches Verhalten?

46 Übung Beschreiben sie das Verhalten der 4 unterschiedlichen Aktionen von der vorherigen Seite.

47 Auflösung SchrittstatusAktiver Status Inaktiver Status Boolsche Aktion Schrittmerker D 5s Aktionsmerker Wert im Programm geändert Aktionsprogramm HinweisUm den Unterschied zwischen Schrittmerker und Aktionsmerker zu erkennnen, sollte das Bestimmungszeichen D verwendet werden.

48 Alternativkettenauswahl (Divergenz) Eine Alternativauswahl wird durch eine einfache horizontale Linie dargestellt. Es ist die Auswahl einer einzigen Folgeschrittkette. Ist Step2 aktiv erfolgt eine Auswertung der Transitionen von links nach rechts. Die erste Transition mit TRUE inaktiviert Step2 und schaltet ihren Nachfolgeschritt aktiv. FALSETRUETrans2Trans3 Step 2 Step 3Step 4

49 Zusammenführung Alternativketten (Konvergenz) Eine Alternativzusammenführung wird durch eine einfache horizontale Linie dargestellt. Die einzelnen Alternativketten werden wieder zusammengeführt. Wenn der letzte Schritt einer Alternativkette aktiv ist, und die entsprechende Transition TRUE wird, wird der nächste Schritt aktiv. FALSE Trans4Trans5 Step 5 Step 3Step 4

50 Simultan-Verzweigung Eine Simultanverzweigung wird durch eine doppelte horizontale Linie dargestellt. Gemeinsame Freigabe von mehreren Schrittketten. Es werden alle ersten Schritte der nachfolgenden Schrittketten aktiv. Die einzelnen Schrittketten werden dann aber unabhängig voneinander weitergeschaltet. FALSETrans2 Step 3Step 4

51 Simultan-Zusammenführung Eine Simultan-Zusammenführung wird durch eine doppelte horizontale Linie dargestellt. Sobald alle letzten Schritte der Simultanverzweigung aktiv sind und die zugehörige Transition TRUE wird, erfolgt eine Deaktivierung aller letzten Schritte der Simultanverzweigung und der einzelne nächste Schritt wird aktiv. FALSETrans3 Step 3Step 4

52 Verbindungen Eine Verbindung ist eine Linie, die Elemente wie Transitionen und Schritte miteinander verbindet. Sie repräsentiert den Prozessfluss. Step 4 Step 3 Verbindungen

53 Sprung Das ist eine Funktion, wo die Ausführung von einer Transition zu dem angegebenen Schritt springt. Vorwärts- und Rückwärtssprung (Schleife) sind funktionell identisch. Bei einer Schleife werden Anfangs- und Endpunkt mit einer Linie verbunden. Step 1 Step2 Step2…Jump …Jump Entry Step 2 Step 1 FALSETrans2 FALSETrans1

54 Kettensprung (Skip) Enthält ein Pfad einer Alternativkettenauswahl keinen Schritt, heißt dieser Pfad Kettensprung. Step 3 Step 2 FALSETrans5 FALSETrans2 FALSETrans6 FALSETrans3 Step 6 FALSETrans9 FALSETrans7 FALSETrans10 FALSETrans8 Step 5 Step 8 Step 4 FALSETrans4 Step 7

55 Fragen?

56 SFC – Merkmale des CX-Programmers

57 Gleichzeitiges Bearbeiten von Schrittkette und Aktionsprogrammen Der SFC-Editor kann die grafische Schrittkette und den Kontaktplan gleichzeitig anzeigen. Das Fenster kann vertikal oder horizontal geteilt sein. Dadurch kann man auch beides gleichzeitig editieren.

58 Geteiltes Fenster (Split view)

59 Anzeige der Aktionen abschalten

60 Array-Variablen Im SFC-Editor und zugehörigen Kontaktplänen des CX-Programmers können Array-Variablen benutzt werden. Strukturierter Text SFC Kontaktplan

61 Online Edit und Fehlersuche SFCs können online editiert werden; Aktionen hinzugefügt / gelöscht und Transitionen hinzugefügt / gelöscht werden. (Besonders wichtig bei Prozessen, die nicht abgeschaltet werden können) Man kann wählen zwischen Standard Modus (Übertragung mit Source Code) und Quick Modus (Übertragung ohne Source Code). (Wählen Sie den Quick Modus für häufiges und kontinuierliches Online Editieren und Fehlersuche.)

62 Der SFC-Editor Projekt Arbeits- bereich SFC-Editor SFC-Diagrammansicht Programmansicht

63 Symbole im Projekt-Arbeitsbereich SFC-Programm Aktionsprogrammme Transitionsordner Transitionsprogramm Subchart-Ordner Subchart-Programme Aktions-Ordner Lokale Variablen

64 Ordner: Aktionen

65 Ordner: Transitionen

66 Ordner: Subcharts

67 Symbole auf der Werkzeugleiste Symbole, die im CX-Programmer 6.0 nicht vorhanden waren

68 Symbole auf der Werkzeugleiste SymbPop-up MenüFunktion Zoom ResetSetzt die Skalierung im SFCEditor auf 100% zurück. SymbPop-up MenüFunktion Insert SFC ProgramErstellt ein neues SFC-Programm. Insert ST ProgramErstellt ein neues ST- Programm. SymbPop-up MenüFunktion Add StepSFC-Schritt hinzufügen. Add Subchart StepSFC-Subchart hinzufügen. Add Entry StepSFC-Subchart Eingangsschritt hinzufügen. Add Return StepSFC-Subchart Return-Schritt hinzufügen. Add TransitionSFC-Transition hinzufügen. Add DivergenceSFC-Alternativverzweigung hinzufügen. Add ConvergenceSFC-Alternativzusammenführung hinzufügen. Add Simultaneous DivergenceSFC-Simultanverzweigung hinzufügen. Add Simultaneous ConvergenceSFC-Simultanzusammenführung hinzufügen. Add ConnectorSFC-Verbindung hinzufügen.

69 Einstellung des angezeigten Editors bei Teilung Für ST: Einstellung welcher Inhalt angezeigt wird bei geteiltem Fenster. Auswählbar: Structured Text oder Symbols. Für SFC: Einstellung welcher Inhalt angezeigt wird bei geteiltem Fenster. Auswählbar: Actions/Transactions, SFC, oder Symbols.

70 Einstellung der Standardprogrammiersprache bei neuer SPS Auswählbar: Kontaktplan, ST oder SFC.

71 Einstellung der SFC-Darstellung SFC backgroundHintergrund SFC grid lineRaster SFC element Element Active step and action block colorFarbe Action block colorFarbe Subchart step colorFarbe Text color for transition conditionsFarbe Text color for transition namesFarbe

72 SFC-Diagramm Optionen Zeige Raster Am Raster ausrichten Zeige Transitionsnamen SFC horizontal teilen Zeige aktiven Schritt im Überwachungsmodus automatisch Rasterabstand

73 Standard-Einstellungen für SFC-Elemente Schritt Voreinstellung (Zeige Name) Transitions Voreinstellung (Zeige Name) Aktionsblock Voreinstellung (Zeige Name) Transitions Voreinstellung (Zeige Name) Subchart Voreinstellung (Zeige Name) Element-Abstand (Zeige Abstand )

74 Hinweise Symbole im SFC unterscheiden zwischen Groß- und Kleinbuchstaben Umlaute ÄÖÜäöü und ß sind nicht erlaubt. Der Schritt besteht eigentlich nur aus dem Namen (label) Die Transition ist eigentlich nur ein Name (label) Der Name des Transitionsprogramms wird als Transition im SFC benutzt Der Tansitionsname wird als Ausgang im Transitionsprogramm benutzt

75 Beispiel Parkhausschranke Parkhausschranke aus W459 Kapitel 1-4

76 Beispiel Parkhausschranke, Adressen AdresseNameFunktionSPS- Ein/ Aus W0.0carInFahrzeugsensorEin W0.1ticketSignal, Ticket genommenEin W0.2gateopenLimitEndschalter, Schranke offenEin W0.3gatecloseLimitEndschalter, Schranke geschlossenEin W1.1ticketOutTicket-Spender, Ticket ausgebenAus W1.2gateOpenSchrankenmotoranschl., zum ÖffnenAus W1.3gateCloseSchrankenmotoranschl., zum Schließen Aus

77 Beispiel Parkhausschranke, SFC Parkhausschranke aus W459 Kapitel 1-4

78 Das erste SFC-Programm

79 Eigenschaften für SFC-Programm auswählen

80 Zyklische Task 01 zuordnen 1.Zyklische Task 01 auswählen 2.Operation Start auswählen 3.Apply final scan logic auswählen

81 Transition hinzufügen Bitte bestehende Elemente umbenennen: Initial, carIn, S_ticketOut Dann Transition hinzufügen. Symbole, die benutzt werden können, sind nicht grau.

82 Schritt hinzufügen Als Transitionsbedingung die Eingangsvariable ticket eintragen. Dann den nächsten Schritt hinzufügen. Symbole, die benutzt werden können, sind nicht grau.

83 Weitere Schritte und Transitionen hinzufügen 1.Fügen Sie den Schritt S_openGate hinzu. 2.Fügen Sie die Transition mit der Bedingung gateopenLimit hinzu. 3.Fügen Sie den Schritt S_closeGate hinzu. 4.Fügen Sie die Transition mit der Bedingung gatecloseLimit hinzu.

84 Verbindung hinzufügen 1.Verbindungs-Symbol auswählen 2.Transition anklicken 3.Ersten Schritt anklicken

85 Beispiel Parkhausschranke, Aktionen Parkhausschranke aus W459 Kapitel 1-4

86 Neue Aktion mit Kontaktplan einfügen

87 Aktionsname ändern Ändern Sie im Verzeichnisbaum den Aktionsnamen in A_ticketOut.

88 Kontaktplan in der Aktion Geben Sie das Kontaktplan-Programm wie dargestellt ein.

89 Weitere Aktionen hinzufügen Fügen Sie noch die beiden anderen Aktionen und Kontaktpläne ein.

90 SFC - Erstellung abgeschlossen Gratulation, Sie haben Ihr erstes SFC- Programm erstellt.

91 Beispiel Parkhausschranke, Simulation Mit dem CX-Supervisor kann die Parkhausschranke auf dem PC simuliert werden:

92 Übungen und Beispiele: Parkhauseinfahrt (Beispiel zur Übung der SFC-Editierung) Ampel (einfache Schrittkette) Ampel mit Serviceschalter (Alternativverzweigung) Doppelbearbeitungsstation (Simultanverzweigung) Doppelstation-Erweiterungen (Zeitüberwachung, alternative Rücksprünge) Hand / Automatik (Subchart und Abbruch einer Schrittkette) Conveyor assignment

93 Übung Ampel Programmieren Sie eine Ampel mit den Schritten: – Rotphase – Gelbrotphase – Gruenphase – Gelbphase Die Transtionen: – 5 sec ROT-Zeit abgelaufen – 1 sec ROT/GELB-Zeit abgelaufen – 3 sec GRUEN-Zeit abgelaufen – 2 sec GELB -Zeit abgelaufen Rotlicht = W2.12(1.12) Gelblicht = W2.13(1.13) Gruenlicht = W2.14(1.14) Timer werden automatisch vergeben Schrittmerker werden automatisch vergeben

94 SFC editieren: Schritt und Transition einfügen Rechte Maustaste und dann: Insert Step and Transition above oder Add Transition and Step

95 SFC editieren: Alternativverzweigung einfügen Rechte Maustaste und dann: Add Divergence

96 SFC editieren: Alternativverzweigung erweitern Waagerechte Linie markieren und dann: einfach Transition hinzufügen

97 SFC editieren: Alternativzusammenführung einfügen Rechte Maustaste und dann: Add Convergence

98 SFC editieren: Alternativzusammenführung erweitern (waagerechte Linie markieren) einfach Verbindungen hinzufügen von der Linie zu der Transition

99 SFC editieren: Simultanverzweigung einfügen Rechte Maustaste und dann: Add simultaneous Divergence

100 SFC editieren: Sultanverzweigung erweitern Waagerechte Linie markieren und dann: einfach Schritte hinzufügen

101 SFC editieren: Simultanzusammenführung einfügen Rechte Maustaste und dann: Add simultaneous Divergence

102 SFC editieren: Simultanzusammenführung erweitern (waagerechte Linie markieren) einfach Verbindungen hinzufügen von der Linie zu den Schritten

103 SFC editieren: Subchart einfügen Rechte Maustaste und dann: Add Subchart Step

104 SFC editieren: Subchart im zweiten Fenster

105 SFC editieren: Eine Schleife in einen Sprung umwandeln Rechte Maustaste und dann: Connections: Draw Connection from Transition as Jump

106 SFC editieren: unabhängige Elemente einfügen An die Stelle auf dem SFC-Hintergrund, wo das Element erscheinen soll, die rechte Maustaste drücken und dann das Element auswählen oder auch einfügen (Paste) wählen, wenn Teile kopiert oder verschoben werden sollen.

107 Übung Ampel mit Serviceschalter Erweitern Sie die vorherige Übung mit einem Serviceschalter: –Wenn der Serviceschalter auf Service steht, sollen die Ampelphasen bis zum Ende durchlaufen werden, –und danach soll nur noch das gelbe Licht blinken. –Fügen Sie einen zusätzlichen Schritt, und –eine Alternativverzweigung ein. service = W5.00

108 Übung: Doppelbearbeitungsstation Übung für die Simultanverzweigung (vereinfachter Rundtisch)

109 Übung: Doppelstation, SPS-Eingangsadressen AdresseNameFunktionSPS- Ein/ Aus W3.00startknopfStart-TasterEin W3.01stopknopfStopp-TasterEin W3.02limitBobenEndschalter, Bohrer obenEin W3.03limitBuntenEndschalter, Bohrer untenEin W3.04limitBwtEndschalter, Warenträger am BohrerEin W3.05limitEobenEndschalter, Einsetzer obenEin W3.06limitEuntenEndschalter, Einsetzer untenEin W3.07limitEwtEndschalter, Warenträger am Einsetzer Ein

110 Übung: Doppelstation, SPS-Ausgangsadressen AdresseNameFunktionSPS- Ein/ Aus W4.00anhaltenNach Beendigung des Vorgangs soll die Maschine anhalten Aus W4.01runzustandDie Maschine läuftAus W4.02bohrervorBohrer nach unten bewegenAus W4.03bohrerzurueckBohrer nach oben bewegenAus W4.04einsetzervorEinsetzer nach unten bewegenAus W4.05einsetzerzurueckEinsetzer nach oben bewegenAus W4.06pusherwtvorWarenträger weiter transportierenAus

111 Übung Doppelstation: Ablaufbeschreibung Wenn der Startknopf gedrückt wird, soll die Maschine anlaufen. Der Warenträger soll so lange transportiert werden, bis der Endschalter belegt ist. Wenn der Warenträger in Position ist soll gebohrt und eingesetzt werden. Der Bohrer soll sich solange herunterbewegen, bis der Endschalter anspricht. Der Einsetzer soll sich solange herunterbewegen, bis der Endschalter anspricht. Der Bohrer soll sich wieder nach oben bewegen, wenn er unten war, bis der obere Endschalter angesprochen wird. Der Einsetzer soll sich wieder nach oben bewegen, wenn er unten war, bis der obere Endschalter angesprochen wird. Wenn Bohrer und Einsetzer fertig sind, soll der Warenträger weiter transportiert werden. (für ganz gute Leute: Die Maschine soll in den Zustand Anhalten gehen, wenn die Stopp-Taste gedrückt wurde und noch weiterfahren, bis der Arbeitsvorgang beendet ist und dann anhalten)

112 Übung: Doppelstation/ Erweiterungen Ob sich die Maschinen tatsächlich bewegen kann mit einer Zeitüberwachung kontrolliert werden. - Einfach eine boolsche Aktion mit dem Action Qualifier D für Delay (verzögerte Ausführung) hinzufügen, das Alarmbit dort reinschreiben, und die Zeit, die der Schritt maximal dauern darf.

113 Übung: Hand/ Automatik Große Programmteile können in Subcharts programmiert werden. Ein Beispiel hierfür sind die unterschiedlichen Programmteile für die Handbedienung einer Maschine und den Automatikablauf. Zwar gibt es hinter Subchartschritten Transitionen, diese können jedoch nicht zum Abbruch des Subcharts benutzt werden. Statt dessen muss im Subchart selber eine Simultanverzweigung mit zweitem Return-Schritt eingefügt werden. Wenn ein Return-Schritt aktiv wird, werden auch alle anderen Schritte im Subchart zurückgesetzt.

114 Übung: Conveyor M Every group create a mainchart for a conveyor belt 1.Detect the workpiece 2.Start the motor 3.Detect the workpiece has reached the end of the belt 4.Stop the motor M

115 9 Conveyor setup Lower levelUpper level 4 11 = Sensor Pusher 2Pusher 1 2 1

116 Beam Sensor Sensor allocation Sensor Bf001 Sensor Bf002 Sensor Bf003 Sensor Bf004 Sensor Bf005 Sensor Bf006 Sensor Bf007 Sensor Bf008 Sensor Bf010, pusher 1 Sensor Bf013 Sensor Bf010, pusher 2 Sensor Bf011 Sensor Bf014 Sensor Bridge 2 Sensor Bridge 1

117 Symbol table DeviceNet allocation sensor_track1BOOL sensor track1 sensor_track2BOOL sensor track2 sensor_track3BOOL sensor track3 sensor_track10BOOL sensor track10 sensor_track11BOOL sensor track11 sensor_track12BOOL sensor track12 sensor_track4BOOL sensor track4 sensor_track5BOOL sensor track5 sensor1_track6BOOL sensor1 track6 sensor_track7BOOL sensor track7 sensor2_track6BOOL sensor2 track6 sensor_track9BOOL sensor track9 sensor_track8BOOL sensor track8

118 Symbol table DeviceNet allocation ID_Tall_productBOOL ID Tall product Start_IDBOOL Start ID ID_Silver_productBOOL ID Silver product

119 Output allocation Bf001 Bf002 Bf003 Bf004 Bf005 Bf006 Bf007 Bf008 Bf010 Bf013 Bf011 Bf V COM DescriptionPin no.DescriptionPin no. Bf0010Bf0108 Bf0021Bf0139 Bf0032Bf01110 Bf0043Bf01411 Bf0054Elevator12 Bf0065Pusher113 Bf0076Pusher214 Bf0087NC15 Elevator Pusher1 Pusher2 15

120 Output allocation track1_ONBOOL1.00track1 track2_ONBOOL1.01track2 track3_ONBOOL1.02track3 track10_ONBOOL1.03track10 BOOL1.04track11 BOOL1.05track12 track4_ONBOOL1.06track4 track5_ONBOOL1.07track5 track6_ONBOOL1.08track6 track7_ONBOOL1.09track7 track9_ONBOOL1.10track9 track8_ONBOOL1.11track8 bridge_upBOOL1.12bridge_up Sort_to_track7BOOL1.13track6_7 Sort_to_track9BOOL1.14track6_9

121 Input allocation Elevator Down Elevator Up COM DescriptionPin no. Elevator Down0 Elevator Up1

122 Input allocation Sensor_bridge_closedBOOL0.00Sensor_bridge_closed0 Sensor_Bridge_openBOOL0.01Sensor_Bridge_open0

123 Assignment per group Use the program Conveyer.cxp for the symbol list Make a subchart per conveyor

124 Assignment Every group can test their part on local PLC Group 1 starts with 15 minutes ONLINE with conveyor ( ) Group 2 upload the program and adds the program for Belt 2 and 3 Group 3 upload the program and adds the program for Belt 4 and 5 Etc.. GroupResponsible for 1Belt 8 and 1 2Belt 2 and 3 3Belt 4 and 5 4Belt 6, 7 and 9 5Belt 10,11 and 12 6Main SFC and sorting


Herunterladen ppt "CX-Programmer SFC-Training. Inhalt SFC – Grundlagen Elemente des SFC SFC – Merkmale des CX-Programmers Der SFC-Editor Das erste SFC-Programm Übung."

Ähnliche Präsentationen


Google-Anzeigen