Grafcet-FAQ 6

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 6
Wenn kontinuierlich wirkende Aktionen ständig ihre Variablen beschreiben, so muss doch folgender Grafcet immer einen Konflikt der Ausgangswertigkeit erzeugen?

kontinuierlich wirkende Aktion

kontinuierlich wirkende Aktion

 

 

 

 

 

 

 

 

 

 

 

 

 

Antwort:
Nein, das ist nicht so.

Erklärung:
Es werden nur die Variablen von kontinuierlich wirkenden Aktionen durch inaktive Schritte mit dem Wert false beschrieben, welche nicht bei dem aktuell aktiven Schritt vorkommen.
Im betrachteten Grafcet wird also bei aktivem Schritt X1 der Variablen Q0 der Wert 1 zugewiesen. Durch X2 und X4 erhält Q0 nicht den Wert 0, da Q0 ja beim aktiven Schritt X1 vorkommt.

Grafcet-FAQ 5

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 5
Kann eine kontinuierlich wirkende Aktion nur boolesche Ausgangsvariablen beschreiben?

Antwort:
Ja, wenn eine boolesche Ausgangsvariable nicht zwingend mit einem physikalischen Ausgang gleichgesetzt wird. Bei dieser Fragestellung ist es wichtig darüber nachzudenken, wann eine Variable zu einer booleschen Variable wird.

Erklärung:
Eine kontinuierlich wirkende Aktion ordnet einer Variablen lediglich den booleschen Wert 0 (False) oder 1 (True) zu. In der klassischen Programmiertechnik kann man zwar nur booleschen Variablen boolesche Werte zuordnen, jedoch ist Grafcet keine Programmiersprache, sondern eine Entwurfssprache.
So ist beispielsweise „Richtungswechsel“ eine gültige Variable für eine kontinuierlich wirkende Aktion. Die Aktion „Richtungswechsel“ kann also ausgeführt werden oder aber nicht.

Dadurch, dass die Variable „Richtungswechsel“ nur die Zustände True oder False annehmen kann, wird die Variable „Richtungswechsel“ zur booleschen Variablen. Wenn der Variablen Richtungswechsel der Wert False zugeordnet wird, so behält der Antrieb seine aktuelle Drehrichtung. Hier bleibt kein Raum für Spekulationen.


Würde es sich beim beschriebenen Antrieb um einen Drehstrommotor handeln, so wären passende boolesche Variablen „Q1“ bzw „Q2“ für die Bezeichnung der Lastschütze denkbar.
Eine Verwendung der booleschen Variablen „Q1“ und „Q2“ würde in diesem Fall eine Umsetzung des Grafcets in ein SPS Programm stark vereinfachen.

Trotzdem müssen hier nicht zwingend zwei unterschiedliche boolesche Variablen verwendet werden, die Grafcet Norm ist vielfältiger, sie beschreibt lediglich das logische Verhalten eines Systems (siehe Norm / C.2: Seite 53).

Beachten Sie zusätzlich Grafcet 21.

Grafcet-FAQ 4

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 4
Wie endet ein Grafcet, wenn dieser keine Rückführung besitzt?

Antwort:

Ein Grafcet kann mit einem Schritt enden. Dieser Schritt wird dann als Schlussschritt bezeichnet.

Ein Grafcet kann aber auch mit einer Transition enden. Diese Transition wird dann als Schlusstransition bezeichnet

Erklärung:

Damit dieser Grafcet wieder erneut ablaufen kann, kann z.B. ein zwangssteuernder Befehl eingesetzt werden.

Grafcet-FAQ 3

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 3
Muss ein Grafcet immer geschlossen sein, also eine Rückführung vom Ende zum Anfang besitzen?

Antwort:

Nein, das muss nicht zwangsläufig immer so sein.

 

Erklärung:

Sehr viele Grafctes besitzen trotzdem diese Rückführung, da oftmals ein mit Grafcet beschriebener Prozess mehrmals durchlaufen wird.

Um eine komplexe Anlage beschreiben zu können, genügt es meist nicht, nur einen einzigen Grafcet zu erstellen. Es werden mehrere Teil-Grafcets erstellt. Hierbei kann es leicht vorkommen, dass z.B. einzelne Teil-Grafcets keine Rückführung besitzen.

Wie endet ein Grafcet ohne Rückführung?

Grafcet-FAQ 2

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 2
Eine Transition soll 5 Sekunden nachdem der Sensor B3 bedämpft wurde auslösen. Löst die Transition nach 5s auch aus, wenn B3 nur für sehr kurze Zeit (im Millisekundenbereich) bedämpft wird?

Antwort:

Die zugehörige Transitionsbedingung hierfür lautet 5s/B3.

Nein, die Transition löst nicht aus.

Erklärung:

Die 5s starten mit einer positiven Flanke von B3. Die 5s laufen jedoch nur dann (fehlerfrei) ab, wenn B3 den Wert True beibehält. Wechselt B3 nach wenigen Millisekungen jedoch seinen zustand von True auf False, so läuft die Zeit nicht weiter ab. Die Transition kann also nicht auslösen.

Wechselt jetzt B3 seinen Zustand abermals von False auf True (B3 liefert also wieder eine steigende Flanke), so beginnen die 5s erneut von vorne abzulaufen.

Möchten man oben beschriebenes Verhalten jedoch trotzdem in seine Anlage implementieren, so bietet folgender Grafcet (über einen kleinen Umweg) eine mögliche Lösung:

Ein kurzer Impuls von B3 lässt die Zeit von 5s fehlerfrei ablaufen.

Ein kurzer Impuls von B3 lässt die Zeit von 5s fehlerfrei ablaufen.

 

Schritt 2a führt keine konkrete Aktion innnerhalb der Analge aus. Der Anlagenbediener wird diesen Schritt während des Prozesses niemals wahrnehmen, denn für den Anlagenbediener gelangt die Steuerung von Schritt 2 (automatisch nach 5s) in den Schritt 3.

Da der Leerschritt nicht als wirklicher Produktionsschritt existiert, wurde als Bezeichnung 2a gewählt. Der Ersteller des Grafcets hat hier freie Wahl. Jedoch ist es ratsam, den Grafcet immer so zu gestalten, dass er lesefreundlich ist. Denn nur so kann er seinen Zweck (Erfassung der Anlagenfunktion) gut erfüllen.

Grafcet – FAQ 1

Diese Rubrik bietet die Antworten auf die am häufigsten gestellten Fragen zum Thema Grafcet.
Sie vermissen Ihre Frage? Schreiben Sie mir!

Grafcet-FAQ 1
Darf man speichernd wirkende Aktionen mit kontinuierlich wirkende Aktionen vermischen?

Antwort:
Ja und nein!
Ja, ein Vermischen innerhalb eines Grafcets ist möglich, wenn man dabei verschiedene Ausgangsvariablen (hier Q0 und Q3) verwendet.

Speichernd wirkende und kontinuierlich wirkende Aktionen vermischen kann zulässig sein.

Speichernd wirkende und kontinuierlich wirkende Aktionen zu vermischen kann zulässig sein.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nein, ein Vermischen ist nicht möglich, wenn man sich dabei auf nur eine Ausgangsvariable (hier nur Q0) bezieht.

Hier ein kurzes Video zur Erklärung:

 

Der Inhalt des Videos nochmals in schriftlicher Form:

Grafcet Normverletzung

Grafcet Normverletzung

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Erklärung:

Wir betrachten den fehlerhaften Grafcet. Im Schritt 4 wird die kontinuierlich wirkende Aktion „Q0“ ausgeführt. Das bedeutet, dass Q0 immer genau dann aktiv ist, wenn Schritt 4 aktiv ist. So weit, so gut.

Jeder Leser stimmt zu, dass die Variable Q0 genau dann den Wert 1 zugewiesen bekommt, wenn X4=1 ist.

Was aber viele Leser nicht bedenken ist, dass eine kontinuierlich wirkende Aktion der Variablen (hier Q0) immer dann den Wert 0 zuordnet, wenn der zugehörige Schritt nicht aktiv ist. Folgender Grafcet soll dies verdeutlichen:

Einer kontinuierlich wirkende Aktion wird immer ein Wert (True oder False) zugeordnet.

Einer kontinuierlich wirkende Aktion wird immer ein Wert (True oder False) zugeordnet.

 

Würde man nun an den Schritt 1 eine speichernd wirkende Aktion (Q3:=1) anhängen, so würde ein Konflikt entstehen, die Variable Q3 würde dann an zwei Stellen gleichzeitig mit sich widersprechenden Werten beschrieben. Denn nach den Gesetzmäßigkeiten einer kontinuierlich wirkenden Aktion müsste die Ausgangsvariable Q3 den Zustand False erhalten, nach den Gestzmäßigkeiten der speichernd wirkenden Aktion müsste Q3 jedoch den Wert True erhalten. Welchen Wert soll nun Q3 erhalten? Es ist nicht so, dass der Zustand True Vorrang vor dem Zustand False hat!

Um diesen Konflikt der Ausgangswertigkeit zu vermeiden, verbietet die Norm die Vermischung von speichernd wirkenden und kontinuielrich wirkenden Aktionen für ein und die selbe Variable.

Grafcet 21 – Ausgangsvariable kennzeichnen

Ist es zulässig eine Lampe P1 als Blinklicht darzustellen, in dem man in das Aktionskästchen neben der Ausgangsvariablen P1 noch den Hinweis blinkend ergänzt? „P1 (blinkend)“

 

Lösung:

Ja, das ist zulässig, aber man muss hier weitere Aspekte beachten. Die Norm gibt an, das Kennzeichen für eine kontinuierlich wirkende Aktion ist die BENENNUNG der Ausgangsvariablen. Der Ausgangsvariablen wird dann der Wert TRUE zugewiesen. Weiter gilt, dass der Text der Kennzeichnung eine hinweisende Form besitzen kann. Im gezeigten Beispiel steht „blinkend“ für die hinweisende Form.

Wichtig ist lediglich der exakte Bezug zum Ausgang!

Grafcet-Blinklicht

Welches Problem kann bei der rechten Variante „P1 blinkend“ entstehen?

Bei Inaktivität von Schritt 4, wird der Variablen „P1 (blinkend)“ der Zustand False zugeschrieben. Das bedeutet, P1 blinkt nicht mehr.

a) Wenn P1 innerhalb der Anlage als reines Blinklicht definiert wäre, würde man eine Inaktivität von Schritt 4 mit einer dunklen Signallampe P1 gleichsetzen, das Blinklicht wäre inaktiv.

b) Wenn jedoch P1 innerhalb der Anlage drei Zustände (dauerleuchtend, blinkend und aus) annehmen könnte, so müsste man nun konsequent jeden Schritt mit einer kont. wirkenden Aktion von P1 verknüpfen. Diese Überlegung zeigt, dass „P1“ alleine nun nicht mehr als boolesche Variable betrachtt werden kann. Es wären drei boolesche Variablen („P1 leuchtet“, „P1 blinkt“, „P1 aus“) vorhanden, die den gleichen pysiklaischen Ausgang beschreiben.

Man könnte noch argumentieren, dass es sich nur um zwei boolesche Variablen handelt („P1 leuchtet“, „P1 blinkt“), da „P1 aus“ aus der Inaktivität der anderen beiden Fällen hervorgeht. Bei dieser Betrachtungsweise wäre ein Leerschritt mit einer ausgeschalteten Lampe gleichzusetzen, die weder blinkt noch leuchtet (also dunkel ist). 

Das Verhalten von P1 ist ständig eindeutig.

Das Verhalten von P1 ist ständig eindeutig.

 

 

 

 

 

 

 

 

 

 

 

Im linken Grafcet wurde auf die kontinuierlich wirkende Aktion „P1 Dauerlicht“ verzichtet.

Dies führt zum Problem:

Das Verhalten von P1 ist im Schritt 0 nicht vollständig definiert.

Das Verhalten von P1 ist im Schritt 0 nicht vollständig definiert.

Grafcet mit Blinklicht: eindeutiges Verhalten von P1

Grafcet mit Blinklicht: eindeutiges Verhalten von P1

 

 

 

 

 

 

 

 

 

 

 

Fazit: Werden vormals boolesche Variablen um textuelle Beschreibungen in ihrer Funktion ergänzt, muss damit sehr vorsichtig umgegangen werden.

Ein Videobeitrag zur weiteren Erklärung finden Sie unter Grafcet 22.

Grafcet 20 – Transienter Ablauf

Im abgebildeten Grafcet ist Schritt 2 aktiv und die Transitionsbedingung „B1“ ist ständig erfüllt.

Welchen Zustand nehmen die Signallampen P1 und P2 an, nachdem Taster S3 betätigt wurde?

Transienter Ablauf

Transienter Ablauf

Lösung:

Da die Transition B1 schon erfüllt ist, bevor S3 betätigt wird, wird Schritt 3 nach Betätigung von S3 als „virtuell aktiviert“ betrachtet. Der Grafcet befindet sich danach im Schritt 4.

Die Lampe P1 ist speichernd wirkend abgebildet und wird deshalb auch von einem „virtuell aktiven“ Schritt eingeschaltet.

Die Lampe P2 hingegen ist als kontinuierlich wirkende Akion ausgeführt und behält deshalb während des Übergangs von Schritt 2 zu Schritt 4 ständig den inaktiven Zustand.

Ein virtuell aktivierter Schritt hat keinerlei Auswirkungen auf eine kontinuierlich wirkende Aktion.

Fazit: Schritt 4 ist aktiv, Lampe P1 leuchtet und Lampe P2 hat nie (auch nicht kurz) geleuchtet.

Grafcet 19 – Zeitbegrenzung

Beschreiben Sie für die beiden Grafcets 19.1 und 19.2 das Verhalten der Signallampe.

Zeitbegrenzung, Schlusstransition

Zeitbegrenzung, Schlusstransition

 

 

 

 

 

 

 

 

 

 

Lösung:

Im Grafcet 19.1 wird P1 mit Aktivierung von Schritt 3 eingeschaltet. 5s später löst die Schlusstransition aus, Schritt 3 wird deaktiviert und P1 wird somit abgeschaltet.

Im Grafcet 19.2 wird P1 mit Aktivierung von Schritt 3 eingeschaltet. 5s später wird (durch die Angabe der Zeitbegrenzung) die Lampe P1 abgeschaltet. Weitere 5s später löst die Schlusstransition aus, Schritt 3 wird deaktiviert.

In beiden Fällen wurde die Leuchtdauer der Lampe P1 auf 5s begrenzt.

Grafcet 18 – Zeitangaben

Beschreiben Sie in wenigen Worten das Einschalt- und Abschaltverhalten der beiden Signallampen P1 und P2 in folgendem Grafcet:

Zeitbegrenzung und Einschaltverzögerung, Schlusstransition

Zeitbegrenzung und Einschaltverzögerung, Schlusstransition

 

 

 

 

 

 

Lösung:

P1 wird mit Aktivierung von Schritt 3 eingeschaltet, abgeschaltet wird sie 4s später durch die Schlusstransition. Die angegebene Zeitbegrenzung von 5s ist in diesem Fall nicht wirksam.

P2 wird 2s nach der Aktivierung von Schritt 3 eingeschaltet, abgeschaltet wird sie zum gleichen Zeitpunkt wie P1. P1 leuchtet also nur für 2s.

Anmerkung:

Die Transition 4s/X3 ist eine sogenannte Schlusstransition. Für Schlusstransitionen gilt, bei Auslösung deaktiveren sie den unmittelbar vor ihr liegenden Schritt (hier X3).

 

Fehlerteufel 10

Angenommen, eine Schützspule wird im Schritt 1 speichernd wirkend eingeschaltet und im Schritt 3 speichernd wirkend abgeschaltet.
Darf die gleiche Schützspule im Schritt 4 durch eine kontinuierlich wirkende Aktion wieder eingeschaltet werden?

Lösung:

Nein, denn die Norm schreibt vor, dass eine Ausgangsvariable, welche speichernd wirkend verwendet wurde somit nicht mehr als kontinuierlich wirkende Aktion verwendet werden darf.

Grafcet Normverletzung

Grafcet Normverletzung

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Im ersten Moment werden viele Leser behaupten, der linke Grafcet wäre doch eindeutig:

Die Schützspule würde mit Schritt 1 eingeschaltet, mit Schritt 3 abgeschaltet und mit Schritt 4 wieder eingeschaltet.

Jedoch wurde bei dieser Betrachtung ein wichtiger Aspekt (bezüglich kontinuierlich wirkende Aktionen) nicht beachtet:

In Schritt 4 wurde Q0 als kontinuierlich wirkende Aktion abgebildet. Für eine kontinuierliche Aktion gilt, sie ist maximal so lange aktiv, wie der zugehörige Schritt aktiv ist.

Es hilft hier die Vorstellung, dass eine kontinuierlich wirkende Aktion die Ausgangsvariable zu jeder Zeit beschreibt (und nicht einmalig, wie eine speichernd wirkende Aktion).

Deshalb gilt, dass immer dann wenn der zugehörige Schritt NICHT AKTIV ist, diese Aktion inaktiv sein MUSS.

Somit entsteht im Schritt 1 nun ein Konflikt der Ausgangswertigkeit!

Der rechte Grafcet löst dieses „Problem“, in dem er ausschließlich kontinuierlich wirkende Aktionen verwendet.

Grafcet 16 – Mehrere Schritte gleichzeitig aktiv

Folgende Ausgangssituation soll vorliegen:
Kein Schritt ist aktiv und der Schalter S0=true.

Wie oft muss nun der Taster S1 betätigt werden, damit X0=1 und X1=1 sind?

Quelltransition und Schlusstransition

Quelltransition und Schluss-transition


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lösung:

Der Taster S1 muss 2x betätigt werden.

Man sieht, die Annahme "in einem Grafcet ohne Verzweigung könne immer nur ein Schritt aktiv sein", ist nicht korrekt.

Grafcet 15 – Einschließender Schritt mit Aktion?

Ist es zulässig, an einen einschließenden Schritt ein Aktionskästchen anzufügen?

Lösung:

Ja, das ist möglich. Ein einschließender Schritt besitzt alle Eigenschaften, die ein "nicht-einschließender Schritt" auch besitzt.

Stehen beispielsweise mehrere einschließende Schritt für verschiedene Betriebsarten, so kann an den entsprechenden einschließenden Schritt die jeweilige Meldelampe für diese Betriebsart angefügt werden.

Grafcet 14 – Einschließender Schritt mit Initialschritt

Ist es möglich, dass innerhalb einer Einschließung ein Schritt als ein Initialschritt gekennzeichnet wird?

 

 

Lösung:

Ja, das ist möglich.

Es folgt aus dieser Kennzeichnung jedoch, dass der einschließende Schritt selbst ebenso als Initialschritt gekennzeichnet werden muss. Das Sternchen innerhalb der Einschließung kann beim Initalschritt stehen, muss es aber nicht.

Steht das Sternchen z.B. bei Schritt 9 und ist als Initialschritt der Schritt 7 gekennzeichnet, so ist in der Anfangssituation X7 aktiv. In allen weiteren (späteren) Situationen in denen der Initialschritt aktiviert wird, wird dadurch X9 aktiviert.

Fehlerteufel 9

Ein Drehstrommotor soll über den Taster S1 in den Linkslauf und mit Taster S2 in den Rechtslauf geschaltet werden.

Beide Taster sind in der Anlage nicht hardwareseitig gegeneinander verrigelt.

Wie müssen demnach die Transitionsbedingungen im folgenden Grafcet aussehen?

sich gegenseitig ausschließendeTransitionen

fehlende Transitionsbedingungen

 

 

 

 

 

 

 

 

Lösung:

Die Darstellung im Grafcet muss stets eindeutig sein. Auch der unwahrscheinliche Fall, dass die Taster S1 und S2 gleichzeitig betätigt werden, muss berücksichtigt werden. Würde auf eine Negation im Grafcet verzichtet, so könnten Schritt 3 und Schritt 4  gleichzeitig aktiviert werden. Dies widerspricht jedoch den Gesetzmäßigkeiten der Alternativverzweigung, wonach entweder Schritt 3 ODER Schritt 4 aktiv sein darf.

Auf diese Eindeutigkeit muss immer geachtet werden. Wären die Taster S1 und S2 hardwareseitig gegenseitig verriegelt, könnte man im Grafcet auf die Negationen in den Transitionsbedingungen verzichten. Gleiches gilt, wenn die Drehrichtungsänderung durch einen Wahlschalter einstellbar wäre.

sich gegenseitig ausschließendeTransitionen

sich gegenseitig ausschließendeTransitionsbedingungen

 

 

 

 

 

 

 

 

Würden jetzt tatsächlich beide Taster exakt gleichzeitig betätigt, so würde sich der Grafcet nicht verändern, d.h. weder Schritt 3 noch Schritt 4 würde aktiviert werden.

Grafcet 13 – Makroschritt mit Aktion

Durch einen Makroschritt kann man eine Vielzahl von Schritten komprimiert darstellen. Ist es empfehlenswert, diesen Makroschritt mit einer Aktion zu verknüpfen, wie im Bild gezeigt?

Makroschritt mit angehängter Aktion - empfehlenswert?

Makroschritt mit angehängter Aktion - empfehlenswert?


 

 

 

 

 

 

 

 

 

Lösung:

Nein, diese Darstellung ist nicht zu empfehlen. Möchte man zum Ausdruck bringen, dass der Motor währende der Dauer des Makroschrittes M3 aktiv ist, so sollte man auf das Aktionskästchen verzichten und stattdessen einen Kommentar "Motor läuft" verwenden:

Makroschritt mit Kommentar anstatt Aktion

Makroschritt mit Kommentar anstatt Aktion


 

 

 

 

 

 

 

 

Der Grund dafür liegt in der Eigenschaft des Makroschrittes. Er dient als eine Art Zusammenfassung einer Vielzahl von Einzelschritten. Im Beispiel müsste jeder dieser Einzelschritte mit der Aktion "Motor" verknüpft sein. Da aber Schritt M3 stellvertretend für alle diese Einzelschritte (incl. deren Aktionen) steht, wäre es unlogisch Teilbereiche/Aktionen dieser Einzelschritte in der  "Zusammenfassung" nochmals extra auszuweisen.

Ergänzender Hinweis:

Da der Makroschritt jedoch (ebenso, wie ein "normaler" Schritt) eine Schrittvariable (hier: XM3) besitzt, wäre eine angehängte Aktion nicht normverletzend. Die Schrittvariable des Makroschrittes ist genau dann "1", wenn ein Schritt der Expansion eines Makroschrittes aktiv ist.

Die Norm verbietet es nicht ausdrücklich, einem Makroschritt eine Aktion anzuhängen.

Der Verzicht auf eine Aktion ist also (nur) eine reine Empfehlung.

 

Grafcet 12

Wenn ein Grafcet aus nur zwei Schritten besteht, kann man diesen nicht nach den üblichen Gesetzen der Schrittkettenlogik im FUP programmieren.

Beachtet man jedoch wenige Regeln, so ist eine Umsetzung des Grafcets in einen FUP problemlos möglich.

Wie sieht der FUP zu folgendem Grafcet aus?

Grafcet aus zwei Schritten im FUP programmieren

Grafcet aus zwei Schritten im FUP programmieren


 

 

 

 

 

 

 

 

 

 

 

 

Die Lösung finden Sie in diesem Video Weiterleitung zu Youtube.

 

 

Grafcet Glossar

Hier folgt eine (unvollständige) Auflistung wichtiger Begriffe zum Thema Grafcet.

1 Der Initialschritt

Der Initialschritt ist durch einen Doppelrahmen gekennzeichnet. Dieser spezielle Schritt ist beim Initialiseren des Grafcets automatisch aktiv.

Nicht selten wird eine Anlage durch mehrere Grafcets beschrieben, in diesem Fall sind oftmals mehrere Initialschritte vorhanden.

2 Der Makroschritt

Sein Kennzeichen ist der Buchstabe "M", gefolgt von einer Schrittnummer (z.B. M4). Zusätzlich erhält er zwei waagerechte Linien im Schrittkästchen. Somit ist der Makroschritt von allen anderen Schritten gut zu unterscheiden.

Der Makroschritt steht als Platzhalter für eine Vielzahl von Schritten.

Ein Makroschritt kann somit erst dann verlassen werden, wenn alle "seine" Schritte vollständig abgearbeitet wurden.

Mittels eines Makroschritts lassen sich umfangreiche Grafcets "komprimiert" darstellen. So dient der Makroschritt beispielsweise der Übersichtlichkeit.

Der erste Schritt innerhalb eines Makroschrittes erhält den Buchstaben "E" (gefolgt von der Schrittnummer, z.B.: E4).

Der letzte Schritt innerhalb eines Makroschrittes erhält den Buchstaben "S" (gefolgt von der Schrittnummer, z.B.: S4).

3 Der einschließende Schritt

Sein Kennzeichen sind die diagonalen Linien an den Ecken innerhalb des Schrittkästchens. Der einschließende Schritt erhält wie üblich eine Schrittnummer.

Der einschließende Schritt wird leider oftmals mit dem Makroschritt verwechselt. Wird ein einschließender Schritt aktiv, so aktiviert er seine (ihm zugeordneten) Einschließungen. Diese Einschließungen laufen nach ihren eigenen Regeln ab. Eine Deaktivierung eines einschließenden Schrittes hat zur Folge, dass seine Einschließungen dadurch ebenfalls deaktiviert werden.

Mit Hilfe von einschließenden Schritten lassen sich beispielsweise verschiedene Betriebsarten (Hand, Automatik, Tipp-Betrieb etc.) realisieren.

Ein einschließender Schritt kann auch als Initialschritt gekennzeichnet sein. Dies ist dann der Fall, wenn ein Schritt seiner Einschließung(en) als Initialschritt gekennzeichnet wird.

4 Zwangssteuernde Befehle

Einen zwangssteuernden Befehl erkennt man an einem vermeintlichen Aktionskästchen mit Doppelrahmen. Obwohl man auf den Ersten Blick meinen könnte, es handelt sich um eine Aktion, wäre diese Annahme falsch.

Es werden vier Arten von zwangssteuernden Befehlen unterschieden:

... einen bestimmten Schritt (bzw. mehrere Schritte) setzen

... alle Schritte eines Grafcets deaktivieren

... einen Grafcet einfrieren

... den Initialschritt eines Grafcets aktivieren

Mit Hilfe von zwangssteuernden Befehlen lassen sich Abschaltbedingungen (NOT-Halt, NOT-Aus etc.) gut umsetzen.

Oftmals werden zwangssteuernde Befehle jedoch falsch gedeutet, deshalb möchte ich auf einen wichtigen Sachverhalt hinweisen:

Empfängt ein (untergeordneter) Grafcet von einem (übergeordneten) Grafcet einen zwangssteuernden Befehl, so kann sich der untergeordnete Grafcet während dessen n i c h t  v e r ä n d e r n ! Gleichgültig um welchen der vier Befehle es sich handelt.

5 Aktionen, kontinuierlich wirkend

Kontinuierlich wirkende Aktionen finden maximal so lange statt, wie der zugehörige Schritt aktiv ist. Sie können zusätzlich mit sog. Zuweisungen versehen werden. Diese Zuweisungen wirken i.d.R. dann als zusätzliche Bedingungen, die erfüllt sein müssen, damit die kontinuierlich wirkende Aktion ausgeführt wird.

Diese Zuweisungen können auch Zeiten beinhalten.

6 Aktionen, speichernd wirkend

Speichernd wirkende Aktionen werden i.d.R. durch die Flanke einer Schrittvariable aktiviert/ deaktiviert. Ein linksbündiger Pfeil nach oben oder aber nach unten zeigt eine steigende oder aber fallende Flanke der Schrittvariablen an.

Dies bedeutet, speichernd wirkende Aktionen können länger (für einen Vielzahl von Schritten) aktiv sein, als kontinuierlich wirkende Aktionen. Um eine speichernd wirkende Aktion auszuschalten, muss (wie beim Einschalten) ein speichernd wirkender Befehl verwendet werden.

Neben der Aktivierung/ Deaktivierung durch eine Schrittvariable ist auch eine Aktivierung/ Deaktivierung durch ein Ereignis (z.B. Flanke eines Sensors) möglich. In diesem Fall findet das Symbol "Fähnchen" seine Anwendung.

Aktion bei Auslösung: Die Norm (Ausgabe Dezember 2002, gültig bis Dez. 2014) bot die zusätzliche Möglichkeit, eine speichernd wirkende Aktion an eine Transition zu knüpfen. Löste die betreffende Transition aus, so war dies der Triggerimpuls für die angehängte speichernd wirkende Aktion. Auf einen linksbündigen Pfeil wurde in dieser Variante logischerweise verzichtet.

Siehe hierzu Grafcet 7.

7  Analoge Transitionsbedingungen

Sensoren stellen oftmals eine Transition von einem zum nächsten Schritt dar. Liefert ein Sensor nicht nur die Signale "high -1" oder "low - 0" sondern eine Vielzahl von Messwerten, so spricht die Grafcet-Norm von sog. Transitions-Variablen, diese werden in eckige Klammern gesetzt.

Beispiel:  [Temperatur>20°C] ;  [Drehzahl<100 1/min];   [Zähler=5]

Den Aussagen innerhalb der eckigen Klammern werden dann wieder logische Zustände wie „erfüllt“ bzw. „nicht erfüllt“ zugewiesen.

8 Zeiten

Zeiten können sowohl Transitionen als auch Aktionen beeinflussen.

Es können Einschaltverzögerungen, Ausschaltverzögerungen und Zeitbegrenzungen dargestellt werden.

Einschaltverzögerung: t1/y --> Mit steigender Flanke von y startet die Zeit t1 (und läuft nur dann ab, wenn y den Wert 1 beibehält).

Ausschaltverzögerung: y/t2 --> Mit fallender Flanke von y startet die Zeit t2 (Voraussetzung: y hatte vorher den Wert true).

Zeitbegrenzung: Negationsstrich über den kompletten Ausdruck t1/y --> Mit steigender Flanke von y startet die Zeit t1.

Oftmals wird eine Kombination von Ein- und Ausschaltverzögerung verwendet:   t1/y/t2

Schrittdauer

Die Variable T# gibt die Dauer des aktiven Schritts X# an. War z.B. Schritt 3 für 7s aktiv, so ist T3=7s. Der Wert T3=7s bleibt so lange erhalten, bis X3 erneut aktiv wird. Zu diesem Zeitpunkt wird T3=0s und beginnt erneut abzulaufen.

9 Verzweigungen

Ein Grafcet kann linear ablaufen aber auch Verzweigungen besitzen. Man unterscheidet Alternativverzweigungen von parallelen Verzweigungen.

Alternative Verzweigung: Von einem Schritt ausgehend kann die Steuerung entweder in den einen Schritt oder aber in den anderen Schritt übergehen. Jede Kette besitzt ihre eigene Transition. Eine gemeinsame Transition für mehrere Ketten ist hier nicht zulässig. Die jeweiligen Transitionen müssen so gewählt werden, dass sie niemals gleichzeitig erfüllt sein können. Gegebenenfalls müssen sie deshalb gegeneinander verriegelt werden.

Vor einer Zusammenführung steht für jeden Zweig eine eigene Transition.

Parallele Verzweigung: Von einem Schritt ausgehend führt eine gemeinsame Transition gleichzeitig in mehrere (parallele) Schritte. Die Zusammenführung von parallelen Ketten erfolgt ebenfalls durch eine gemeinsame Transition.

Diese gemeinsame Transition gilt jedoch erst dann als freigegeben, wenn alle Schritte, die unmittelbar vor ihr liegen, aktiv sind. (Die Norm spricht deshalb auch gerne von einer Synchronisation paralleler Ketten).

10 Kommentar

Durch Kommentare kann die Lesefreundlichkeit eines Grafcets sehr gut erhöht werden. Kommentare dürfen an beliebiger Stelle platziert werden, sie müssen lediglich in Anführungszeichen gesetzt werden.

Werden Kommentare in ausreichender Menge verwendet und aussagekräftig formuliert, so dient das dem Leser zur schnelleren Erfassung der Funktion.  "Kommentar"

11 Rückführung, Schleifen und Sprünge

Eine Rückführung (oftmals vom Ende des Grafcets zurück zum Anfang) realisiert man durch eine Wirkverbindung mit Richtungsangabe (Pfeil nach oben). Denn eine Wirkverbindung ohne Richtungspfeil wirkt grundsätzlich immer von oben nach unten.

Eine Schleife (die eventuell mehrmals durchlaufen werden soll) lässt sich so auch sehr leicht realisieren. Die Rückführung mündet dann einfach in den gewünschten Schritt und nicht im Initialschritt.

Ein Sprung von einem Schritt zu einem anderen Schritt ist oftmals nichts anderes als eine Alternativverzweigung mit "abgeschnittener" Wirkverbindung. An das Ende der Wirkverbindung schreibt man das Sprungziel, also die Schrittvariable des Schrittes, zu dem gesprungen werden soll (z.B. X4).

Ebenso kann diese Form der Darstellung auf eine Rückführung angewendet werden.

Auch bei Rückführungen, Schleifen und Sprüngen muss die Grundregel Schritt-Transition-Schritt immer eingehalten werden.

12 Struktur eines Grafcets

Ein Grafcet kann in zwei "Bereiche" unterteilt werden. Jeder Grafcet besteht er aus Schritten und Transitionen. Dieser Bereich wird Struktur genannt.

Als Wirkungsteil hingegen beschreibt man die Aktionen, ohne Betrachtung der Schritte.

13 Quellschritt und Schlussschritt

Unter einem Quellschritt versteht man einen Schritt ohne vorangehende Transition. Dies hat zur Folge, dass ein Quellschritt nur dann aktiv sein kann, wenn er

a) als Initialschritt gekennzeichnet ist

b) durch einen zwangssteuernden Befehl angesprochen wird

c) durch einen einschließenden Schritt aktiviert wird

Besitzt ein Schritt keine nachfolgende Transition, so spricht man von einem Schlussschritt. Dies hat zur Folge, dass ein Schlussschritt nur durch folgende Arten deaktiviert werden kann:

a) Deaktivierung durch einen zwangssteuernden Befehl

b) Deaktivierung eines einschließenden Schrittes (setzt voraus, dass der Schlussschritt Teil der Einschließung ist)

14 Quelltransition und Schlusstransition

Eine Transition ohne vorangehenden Schritt nennt man Quelltransition. Eine Quelltransition gilt immer als freigegeben (unabhängig davon, in welchem Schritt sich der GRAFCET befindet). Deshalb wird als Transitionsbedingung niemals ein Zustandsabfrage, sondern eine Flankenabfrage gewählt.

Ein GRAFCET mit einer Quelltransition könnte somit auf einen Initialschritt verzichten.

Eine Transition ohne nachfolgenden Schritt nennt man Schlusstransition. Löst diese Schlusstransition aus (ist sie also freigegeben und erfüllt), so deaktiviert diese Auslösung den vorherigen Schritt.

Ein GRACFET mit einer Schlusstransition besitzt also nach der Schlusstransition k e i n e Rückführung (zum Anfangsschritt etc.).

15 Einschließender Anfangsschritt

Beinhaltet eine Einschließung einen Initialschritt, so muss der zugehörige einschließende Schritt auch als Initialschritt gekennzeichnet werden, er wird somit zum "einschließenden Anfangsschritt".

Die 10 goldenen GRAFCET-Regeln

Regel 1

Ein GRAFCET besteht aus Schritten, Transitionen (Weiterschaltbedingungen), Wirkverbindungen und aus Aktionen.

Im erweiterten Sinn können auch spezielle Befehle Bestandteil eines GRAFCETs sein.

Regel 2

Ein Schritt wird durch eine Wirkverbindung mit einem anderen Schritt verbunden, wobei eine Transition als Weiterschaltbedinung von einem zum andern Schritt fungiert.

Eine Transition gilt als freigegeben, wenn der (die) unmittelbar vor ihr liegende(n) Schritt(e) aktiv ist (sind). Ist eine Transition freigegeben und ist ihre Transitionsbedinung=true, so löst diese Transition aus.

Regel 3

Es muss immer folgende Reihenfolge eingehalten werden: Schritt-Transition-Schritt-Transition-Schritt- usw.

Das bedeutet: Niemals kann ein Schritt direkt auf einen anderen Schritt folgen, und niemlas kann eine Transition direkt auf eine Transition folgen!

Regel 4

Einem Schritt können beliebig viele Aktionen zugeordnet werden. Man unterscheidet Aktionen die nur solange aktiv sind, wie der zugehörige Schritt (sog. kontinuierlich wirkende Aktionen) von Aktionen, die einmal aktiviert werden-dann für viele Schritte aktiv sind-und an späterer Stelle wieder deaktiviert werden (sog. speichernd wirkende Aktionen).

Nicht jedem Schritt muss eine Aktion zugeordnet werden, Schritte ohne Aktionen nennt man Leerschritte. Sie werden oftmals benötigt um Regel 3 nicht zu verletzen.

Regel 5

In der Regel wird ein Schritt dann aktiv, wenn sein vorheriger Schritt aktiv ist UND die unmittelbar vor ihm liegende Transition auslöst.

(I.d.R deshalb, weil Schritte in speziellen Fällen auch von anderen Schritten bzw. Befehlen aktiviert werden können)

Regel 6

Wird ein Schritt aktivert, so deaktivert er den unmittelbar vor ihm liegenden Schritt automatisch.

Wird ein aktiver Schritt während der Ausführung deaktiviert und gleichzeitig aktiviert (z.B. durch eine Schleife auf sich selbst), so bleibt er in diesem Fall aktiv.

Anmerkung zu Regel 5 und Regel 6: Die Norm gibt an, dass eine ausgelöste Transition  den Schritt vor ihr deaktiviert und gleichzeitig den ihr nachfolgenden Schritt aktiviert. Obige Logik der Aktivierung und Dektivierung von Schritten ergibt sich also aus der logischen Anwendung der Norm.

Regel 7

Eine GRAFCET kann sich verzweigen. Eine Alternativverzweigung lässt einen GRAFCET nur in einem Teil des Abzweiges weiter laufen. Eine parallele Verzweigung hingegen lässt den GRAFCET gleichzeitig in mehreren (parallelen) Zweigen weiter laufen (somit sind hier sehr wohl auch mehrere Schritte gleichzeitig aktiv!)

Vergleichen Sie Regel 6!

Regel 8

Ein Schritt, welcher doppelt umrandet ist, nennt man Initialschritt. Dieser Schritt ist automatisch zu Beginn des ersten Ablauf (=Anfangssituation) des GRAFCETs als aktiv zu sehen.

Regel 9

Die in der deutschsprachigen Literatur meist aufgeführte Regel, in einem Grafcet ohne Verzweigung dürfe immer nur ein Schritt (niemals aber mehrere Schritte gleichzeitig) aktiv sein, ist nicht korrekt.

Besitzt ein Grafcet eine Quelltransition und dient deren Flanke als Transition für alle weiteren Schritte, so bildet dieser Grafcet das Verhalten eines Schieberegisters nach. Es entstehen somit Zustände, in denen u.U. alle Schritte dieser Schrittkette gleichzeitig aktiv sein können! Siehe hierzu Grafcet 16.

Anmerkung: Der hier dargestellte Fall des Schieberegisters wird in der DIN EN 60848 als "häufiger Fall" dargestellt. Diese Betrachtung kann jedoch wohl getorst als überzogen angesehen werden.

In einer Schrittkette ohne Verzweigung ist i.d.R. immer nur ein Schritt aktiv!

Regel 10

Ein Leben ohne GRAFCET ist möglich, aber sinnlos. (Loriot)

Grafcet 11

Um von X3 nach X4 zu gelangen, muss der Sensor B1 5s lang bedämpft sein.

Was passiert jedoch, wenn Sensor B1 schon für 5s bedämpft war, während der Grafcet noch im Schritt 2 war und erst später in den Schritt X3 wechselt?

B1 muss für 5s bedämpft bleiben

B1 muss für 5s bedämpft bleiben

Lösung:

Die Transitionsbedingung 5s/B1 gilt als erfüllt, nachdem Sensor B1 5s lang true war (und weiterhin true bleibt). Im nebenstehenden Beispiel könnte dieser Zustand eintreten, während X2 aktiv ist. Wechselt die Steuerung später in den Schritt X3, so wird die (schon erfüllte) Transition 5s/B1 freigegeben, die Steuerung gelangt umgehend in den Schritt 4.

Schritt 3 wird somit als „instabiler Schritt“ bezeichnet. Es liegt ein sog. „Transienter Ablauf“ vor.

Anmerkung: Diese Fragestellung wird irrelevant, wenn anstatt eines Sensors eine Schrittvariable verwendet wird. Also z.B. 5s/X3. Denn dann ist klar, dass die 5s erst dann ablaufen, wenn X3 erreicht wurde.

Die Transition wird erst dann wieder als „false“ betrachtet, wenn B1 seinen Signalzustand von 1 auf 0 wechselt.

Möchte man das zweideutige Verhalten des obigen Grafcets verhindern, hat man hierzu mehrere Möglichkeiten.

Fehlerteufel 8

Ein Teil-Grafcet G2 soll genau dann in seinen Schritt X3/G2 gezwungen werden, wenn der Sensor B1 Bedämpft wird.

Ist es also möglich, den zwangssteuernden Befehl „G2{X3}“ um eine Zuweisung „B1“ zu ergänzen?

Lösung:

Nein. Kein zwangssteuernder Befehl kann durch irgendwelche zusätzlichen „Bedingungen“ etc. erweitert werden. Im beschriebenen Fall muss der Sensor B1 als Transition verwendet werden, die in den Schritt überleitet, der den zwangssteuernden Befehl „G2{X3}“ ausführt.

 

Grafcet 10

Möchte man innerhalb einer Transition eine Zeit starten lassen, wenn ein Sensor eine fallende Flanke liefert, so ist man geneigt, folgende Transition zu wählen:

fehlerhafte Transition im Grafcet

fehlerhafte Transition im Grafcet

 

Ist diese Darstellung normgerecht?

 

 

 

 

 

 

 

 

 

Lösung:

Nein, diese Darstellung ist (leider) nicht normgerecht, obwohl nahezu jeder Leser intuitiv (richtig) verstehen würde, was der Ersteller des Grafcet meinte.

Die Zeitnotation in Grafcet ist jedoch mit (t1/Variable/t2) so festgelegt, dass

  • die linke Zeit (t1) mit steigender Flanke von „Variable“ abzulaufen beginnt (Voraussetzung für einen kompletten Ablauf ist, dass „Variable“ ständig erfüllt bleibt-auch dies widerspricht der Darstellung im obigen Grafcet)
  • die rechte Zeit „t2“ mit fallender Flanke von „Variable“ startet und somit „nachläuft“

Eine mögliche Lösung kann so aussehen:

fallende Flanke als Einschaltverzögerung

fallende Flanke als Einschaltverzögerung

 

Von X3 ausgehend leitet die fallende Flanke von B1 über in den Schritt X3.1

Mit Aktivierung von X3.1 starten die 5s. Da X3.1 während dessen immer eine logische 1 besitzt, laufen die 5s auch vollständig ab.

Schritt X4 wird also 5s nachdem B1 eine fallende Flanke lieferte, erreicht.

Der Schritt X3.1 dient hier als klassischer „Leerschritt“. Ihm wird keine Aktion zugeordnet, im Produktionsablauf existiert dieser Schritt auch nicht.

Deshalb wurde im Beispiel auch die Schrittnummer mit 3.1 gewählt. Somit soll der Leser schnell erkennen, dass es sich nicht um einen „wirklichen“ Schritt handelt. Die Anlage nimmt diesen Schritt also nicht auf Grund Ihrer Abläufe ein.

Fehlerteufel 7

Welcher Grafcet bietet (unnötigen) Raum zur Diskussion uind sollte deshalb vermieden werden?

unklare Transitionsbedingungen

unklare Transitionsbedingungen

 

 

 

 

 

 

 

 

 

 

Lösung:

Die Erfahrung zeigt, dass der Grafcet unter a) von verschiedenen „Lesern“ verschiedenartig interpretiert werden kann. Mögliche Interpretationsvarianten sind:

b) X2 wird verlassen, nachdem 4s abgelaufen sind (Triggerimpuls für die Zeit ist ausschließlich  die steigende Flanke von X2) und zusätzlich (irgendwann) der Sensor B10 bedämpft wird

c) die 4s starten, wenn die Verknüpfung aus (X2&B10) eine steigende Flanke liefert. Nach Ablauf der 4s wird X2 verlassen

d) gleiches Verhalten wie in c)

 

Deshalb sollte die Schreibweise 4s/X2*B10 vermieden werden und durch die Varianten b, c oder d ersetzt werden!

Denn der Grafcet sollte für ALLE eindeutig lesbar sein!

Fehlerteufel 6

Auf welche Angabe im Grafcet sollte verzichtet werden, da sie weder der Übersichtlichkeit dient, noch die Funktion des Grafcet verändert?

überflüssige Angabe in Transition

überflüssige Angabe in Transition


 

 

 

 

 

 

 

 

Lösung:

Die Angabe X2 nach Schritt 2 ist überflüsig, denn die Transition nach X2 wird erst dann freigegeben, wenn X2 aktiv ist. Somit ist die Transition X2 immer erfüllt, es macht keinen Sinn, sie extra abfragen zu wollen.

Vergleiche Grafcet 4.

PAL Abschlussprüfung

Neue Kennzeichnungen von Objekten

Für einige Ausbildungsberufe wird in den PAL-Abschlussprüfungen die Kennzeichnung der Betriebsmittel in Zukunft (Stand: November 2015) umgestellt.

Es ist geplant, die Prüfungen sukzessive zu aktualisieren, wenn möglich sollen für eine gewisse Übergangszeit sowohl die neuen als auch die alten Bezeichnungen parallel verwendet werden.

Dies trifft ins Besondere folgende Berufe:

  • Mechatroniker
  • Industriemechaniker
  • Elektroniker für Automatisierungstechnik (EAT)

weiter Informationen finden Sie hier.

Grafcet 9 – Quellschritt

Nicht in jedem Grafcet erfolg eine Rückführung vom letzten Schritt hin zum Initialschritt. Oftmals dient der Initialschritt nur als „Quelle“ der Schrittkette. Man bezeichnet diesen Schritt dann als Quellschritt.

Quellschritt: Immer wenn ein Schritt keine im vorangestellte Transition besitzt, spricht man von einem Quellschritt.

Beispiel: Hier ist X0 der Initialschritt, erkennbar am Doppelrahmen. Vor dem Initialschritt befindet sich jedoch keine Transition, somit wird dieser Initialschritt als Quellschritt bezeichnet.

Grafcet: Quellschritt als Initialschritt

Grafcet: Quellschritt als Initialschritt

 

Grafcet 8 – Schleife

Wie realisiert man in einem Grafcet, dass eine Kolbenstange viermal aus und wieder einfährt, bevor die Schrittkette weiter abgearbeitet wird?

 

Lösung:

Schritt X3 wird als einschließender Schritt bezeichnet. Wird er aktiviert, so aktiviert er seine ihm zugeordnete(n) Einschließung(en), Schritt X4 wird deshalb aktiviert. Nun läuft G2 nach seinen eigenen Regeln ab: Nach dem die Kolbenstange wieder einfährt, wird der Zähler (Counter C) um den Wert 1 erhöht. Dies führt dazu, dass beim viertem Einfahren der Zähler den Wert 4 besitzt. Schritt X5 wird somit nicht mehr verlassen. Aber die nun erfüllte Transition [C=4] deaktivert den einschließenden Schritt X3. Somit wird auch der Teil-Grafcet G2 deaktiviert.

Zähler mit Grafcet

Zähler mit Grafcet

Grafcet 7 – Zähler

Wie stellt man im Grafcet einen Zähler dar, der beispielsweise Bauteile zählt, die an einem Sensor (B1) vorbeifahren …

a) … wenn das Zählen immer nur in einem bestimmten Schritt passiert?

b) … wenn der Zeitpunkt des Zählens nicht vorhersehbar ist?

Lösung:

a)

Im linken Bild wird der Zählerstand um den Wert 1 erhöht, wenn die Transition ausgelöst hat, d.h. X3=1 und B1 liefert eine steigende Flanke.
Im rechten Bild wird der Zählerstand um den Wert 1 erhöht, wenn die Schritt 4 aktiviert wird, d.h. X4 liefert eine steigende Flanke.

Zähler in Grafcet (Zählervariable "C")

Zähler in Grafcet (Zählervariable „C“)

 

 

 

 

 

 

 

 

 

 

 

b)

In G1 befindet sich die eigentliche Schrittkette. Der Teilgrafcet G2 dient nur dazu, den Zählerstand um den Wert 1 zu erhöhen, wenn Sensor B1 ein Werkstück erkennt. Der Zählvorgang kann so lange stattfinden, wie die Anlage eingeschaltet ist.

Zähler in Grafcet wenn Sensor B1 eine steigende Flanke liefert.

Zähler in Grafcet wenn Sensor B1 eine steigende Flanke liefert.

Grafcet 6 – Grafcet vs. FUP

Dies ist eine Antwort auf die Leseranfrage von Fabi96.

Es wird gezeigt, wie ein Initialschritt durch ein SPS Programm realisiert wird. In meinem Buch stelle ich vier verschiedene Möglichkeiten vor, einen Initialschritt/ Grafcet durch ein SPS Programm abzubilden.

Dieser einfache Grafcet soll in einen FUP umgesetzt werden:

 

vom Grafcet zum FUP

vom Grafcet zum FUP


 

 

 

 

 

 

 

 

Hier nun die erste Variante aus meinem Buch, der zugehörige FUP kann so aussehen:

vom Grafcet zum FUP; strukturiertes Programmieren

vom Grafcet zum FUP
strukturiertes Programmieren


 

Erklärung: Der Initialschritt wird genau dann "automatisch" gesetzt, wenn alle anderen Schritt nicht aktiv sind. Dies ist beim ersten Einschalten der Steuerung der Fall. Deshalb wurde an den Setzeingang von "X0" das UND-Gatter gelegt.

Beachten Sie die Rücksetzbedingung des letzen Schrittes. Der letze Schritt X2 wird durch den Taster S3 zurückgesetzt, dies führt in diesem Programm "automatisch" zum Setzen von X0. Und genau dieses Verhalten gibt der Grafcet auch vor.

 

 

Grafcet 5

Analogie Grafcet/FUP

Wie sieht der Grafcet aus, der Vorlage für den abgebildeten Programmausschnitt war?

Analogie Grafcet/FUP

einfache Schrittkette, Analogie Grafcet/FUP

 

Lösung:

Grafcet/FUP Analogie

Grafcet/FUP Analogie

 

 

 

 

 

 

 

 

 

 

Anmerkung: da hier nicht bekannt ist, welcher Schritt nach der Transition "S0" folgt, wurde die Transition selbst als Rücksetzbedingung gewählt.

Im Blogeintrag GRAFCET 6 sehen Sie, wie eine vollständige Umsetzung eines Grafcets in ein S7 Programm erfolgen kann.

Fehlerteufel 5

Auch dieser Grafcet beinhaltet ein Problem. Was hat der Ersteller des Grafcets nicht beachtet?

stockender Ablauf

stockender Ablauf

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lösung:

Der Ersteller des Grafcets hat nicht auf einen einwandfreien Ablauf geachtet. Nur führt dies in diesem Grafcet, im Vergleich zum Grafcet im Fehlerteufel 4, zu einem anderen Resultat.

X2 und X3 sind aktiv, S3 wird betätigt, nun sind also X2 und X5 aktiv.

Die gemeinsame Transition B2 wird erst freifgegeben, wenn X6 aktiv ist. Schritt 6 kann jedoch nun nicht mehr aktiv werden, denn dazu müsse X4 aktiv und B1 erfüllt sein. X4 kann aber nicht mehr aktiv werden, da X5 aktiv ist.

Der Grafcet ist also blockiert, seine Schritte 2 und 5 bleiben dauerhaft aktiv, daran kann nichts mehr geändert werden.

Dieses (fehlerhafte) Verhalten wird wohl nicht gewollt sein, und muss deshalb ausgeschlossen werden.

Fehlerteufel 4

Der abgebildete Grafcet sieht auf den ersten Blick korrekt aus. Worin liegt jedoch das Problem in dieser Darstellung?

unsichere Ablaufkette

unsichere Ablaufkette

 

 

 

 

 

 

 

 

 

 

 

 

Lösung:

X2 und X3 sind aktiv, wenn jetzt S3 betätigt würde, bevor die Transition 5s/X3 erfüllt wäre, so würde Schritt 5 aktiv werden. Die Transition B2 würde dann in den Schritt 1 überleiten. Schritt 1 und Schritt 2 wären aktiv.

Da Grafcet keine Programmiersprache, sondern eine Entwurfssprache ist, widerspricht dieser Ablauf nicht den Grundregeln der Grafcet Norm. Dieses Beispiel soll jedoch verdeutlichen, dass es u.U. zu unerwarteten Zuständen kommen kann.

Fehlerteufel 3

Ist in diesem Grafcet die Grundregel Transition-Schritt-Transition … erfüllt?

Ist der Grafcet somit normgerecht dargestellt oder ist er fehlerhaft gezeichnet?

Parallelverzweigung

Parallelverzweigung

 

 

 

 

 

 

 

 

 

 

 

Lösung:

Der Grafcet ist nicht normgerecht. Vor einer Parallelverzweigung darf es immer nur e i n e gemeinsame Transition geben. Im abgebildeten Grafcet kann jedoch vor der Parallelverzweigung keine Transition sitzen, da dann die Regel „Schritt-Transition-Schritt“ verletzt würde.

Darüber hinaus wäre es hier möglich, durch S1 n u r den Schritt 2 zu aktivieren, Schritt 3 wäre dann inaktiv. Auch das widerspricht der Logik einer Parallelverzweigung.

Grafcet 4

Ist es sinnvoll, die letzte Transition in einem geschlossenen Grafcet (bevor der Grafcet wieder von vorne abläuft) durch die Negation aller vorherigen Schritt (wie in folgendem Ausschnitt gezeigt) zu ergänzen?

Transition ergänzt durch Negation der Schritte

Transition ergänzt durch Negation der Schritte

 

 

 

 

 

 

 

Lösung:

Nein, denn die Grafcet Norm besagt, dass ein Schritt die vorherigen Schritt a u t o m a t i s c h  zurücksetzt. Somit ist es selbstverständlich, dass X1 und X2 nicht mehr aktiv sind, wenn X3 aktiv ist.

Diese Aussage bezieht sich auf einen linear (aber geschlossenen) ablaufenden Grafcet. Dieser besitzt weder eine Quell- noch eine Schlusstransition.

Grafcet 3

Erläuterung zum Eintrag „Grafcet 2“:

Die Variable T2 beschreibt die Dauer, die ein aktiver Schritt gesetzt ist.

Beispielsweise soll der Schritt 4 bereits seit 8s aktiv sein, die Variable T4 besitzt somit den Wert 8s (T4=8s).

Wird Schritt 4 verlassen, so behält die variable T4 den Wert 8s.

Wird Schritt 4 erneut aktiv, so werden die 8s auf 0s zurückgesetzt, die variable T4 erhält dann einen neuen Wert.

Anmerkung: Eigentlich schreibt die  Norm folgende Noation vor:

T“Bezeichnung des Schritts“ (Also beispielsweise TRechtslauf)

Anstelle der Schrittbezeichnung kann jedoch wohl problemlos dessen Schrittvariable geschrieben werden.

Sowohl die Schrittbezeichnung, als auch die Schrittvariable sind eindeutige Kennzeichen.

Grafcet 2

Sie wollen in einem GRAFCET mit einer Variablen die Schrittdauer eines aktiven Schrittes beschreiben (z.B. die Schrittdauer des aktiven Schrittes X2).  Wie lautet hierzu die korrekte Angabe der Variablen?

 

Lösung:

T2

Fehlerteufel 2

Wird der Motor im Rechtslauf betrieben, wenn der Schritt 5 aktiv ist? Was passiert, wenn der Grafcet (durch Betätigung von S2) in den Schritt 6 wechselt?

Grafcet_002_Speichernd_Aufgabe

 

 

 

 

 

Lösung:

Diese Darstellung ist nicht korrekt. Das Zeichen „:=“ deutet darauf hin, dass die Aktion „Motor rechts“ speichernd wirkend auf 1 gesetzt wurde. Dies jedoch verlangt nach einer zusätzlichen Angabe, durch was die Speicherung ausgelöst werden soll!

Beispielsweise kann dies durch Aktivierung eines Schrittes geschehen. Dann muss ein linksbündiger, nach oben gerichteter Pfeil eingezeichnet werden:

Grafcet_002_speichernde_Lösung_2

Bedeutung: Durch Betätigung von S1 gelangt man in den Schritt 5, dadurch wird „Motor rechts“ speichernd wirkend auf 1 gesetzt, d.h. er wird eingeschaltet. Wenn nun S2 betätigt wird, so wird zwar Schritt 5 verlassen, der Motor bleibt jedoch weiterhin im Rechtslauf. Um ihn abzuschalten wird wiederum eine speichernd wirkende Aktion an anderer Stelle benötigt.

 

Fehlerteufel 1

Hier stelle ich gern gemachte Fehler vor. Lernen Sie aus Fehlern der anderen.

Was ist an diesem Grafcet unlogisch?

fehlerhafter Grafcet 1

 

Lösung:

2s/X25: Die Aktion „Ausgang 1“ wird 2s nach Aktivierung von Schritt 25 (steigende Flanke von X25) aktiv. Soweit ist der Grafcet noch richtig.

X25/4s: Man könnte meinen, die Aktion „Ausgang 1“ wäre noch 4s lange aktiv, nachdem X25 eine fallende Flanke liefert. Jedoch stellt dies einen Widerspruch dar, denn eine fallende Flanke von X25 bedeutet, der Schritt 25 wurde verlassen (X26 ist aktiv). Die Grundvoraussetzung für die Aktion „Ausgang 1“ ist jedoch immer, dass der zugehörige Schritt 25 aktiv ist.

Dies ist der Widerspruch in diesem Grafcet!

Würde X25 beispielsweise durch einen Sensor ersetzt (z.B. 2s/B1/4s), wäre dieses Problem behoben.

Blogeröffnung

Herzlich Willkommen zum ersten deutschsprachigen GRAFCET-Blog!

Dieser Blog dient dem fachlichen Austausch rund um das Thema Grafcet.

Verwenden Sie die Kommentarfunktion des Blogs, Ihre Kommentare werden nach Prüfung veröffentlicht.

Ich freue mich auf einen regen Austausch!

Mit freundlichen Grüßen

Christian Duhr