Neue Möglichkeiten mit Grafcet

Die Beschreibung der Funktionsweise einer Automatisierungsanlage gehört zu den essenziellen Dingen in der Automatisierungstechnik. Die europäische Norm „GRAFCET“ wurde speziell für diesen Zweck entwickelt und ist für diese Anwendung geradezu ideal. Trotz der Vorteile, die sich durch das Erstellen eines GRAFCET für eine Anlage ergeben, wird oftmals der Aufwand nicht betrieben. Denn nach der Planungsphase hat der GRAFCET für viele keinen Nutzen mehr.
Was aber wäre, wenn man den erstellten GRAFCET direkt in eine SPS übertragen könnte?

GRAFCET ist eine Beschreibungssprache, mit der man die Funktionsweise einer Maschine bzw. deren Ablauf beschreiben kann. Diese europaweit gültige Norm mit der Kennung „DIN EN 60848“ gibt es seit über 14 Jahren. Die Norm wurde in Frankreich entwickelt: GRAFCET ist die Abkürzung von

Graphe Fonctionnel de Commande Etape Transition.

Dies bedeutet: „Darstellung der Steuerungsfunktion mit Schritten und Weiterschaltbedingungen“. Damit lassen sich also sehr gut Schrittketten bzw. Ablaufsteuerungen beschreiben.

Die Verantwortlichen der GRAFCET-Norm haben penibel darauf geachtet, dass die notwendigen Symbole einfach zu zeichnen sind und dass die Anzahl der verschiedenen Elemente möglichst gering ist. Aus diesen Gründen kann ein GRAFCET-Plan ohne viel Aufwand auch mit Bleistift und Papier umgesetzt werden.

Die wesentlichen Elemente eines GRAFCET-Plans sind:

  • Schritte (Quadrat)
    Ein Schritt kann aktiv oder inaktiv sein. Ist ein Schritt aktiv, dann befindet sich die Maschine gerade in diesem Zustand (z.B. eine Flasche wird befüllt).
  • Transitionen (waagrechte Linie, welche die Wirkungslinie kreuzt)
    Die Transition beinhaltet eine Bedingung. Ist diese Bedingung erfüllt, dann erfolgt der Übergang zum nachfolgenden Schritt, d.h. der nachfolgende Schritt wird aktiv. Der zuvor aktive Schritt wird deaktiviert.
  • Aktionen (Rechteck)
    Aktionen sind immer einem Schritt zugeordnet. In einer Aktion wird z.B. ein Aktor beeinflusst. Dies könnte beispielsweise ein Ventil sein.
    Es können mehrere Aktionen mit einem Schritt verbunden werden.
  • Wirkungslinien (horizontale und vertikale Linien)
    Mit den Wirkungslinien werden die einzelnen Elemente (Schritte, Transitionen, Aktionen) miteinander verbunden.

Darüber hinaus bietet GRAFCET Elemente, um Hierarchien und Strukturen zu bilden. Dazu gehören beispielsweise die zwangssteuernden Befehle, mit denen sich unter anderem die Bedingungen für die Betriebszustände (Hand/Automatik) einer Anlage realisieren lassen.

Bild 1: Beispiel für einen einfachen GRAFCET

In Bild 1 ist ein einfacher GRAFCET-Plan zu sehen. Was passiert hier?

Zuerst wird der sog. Initialschritt mit der Bezeichnung „1“ aktiv geschaltet. Somit wird die Aktion rechts daneben ebenfalls aktiv und der binäre Ausgang „Q0“ eingeschaltet. Die Bedingung der nachfolgenden Transition ist über den Term „1s/X1“ definiert. Dies bedeutet, dass die Transition ausgelöst wird, sobald der Schritt „1“ eine Sekunde lang aktiv ist. Beim Übergang wird Schritt „2“ aktiv und Schritt „1“ inaktiv. Mit der Aktivierung von Schritt „2“ wird auch der Ausgang „Q1“ eingeschaltet. Nachdem Schritt „2“ eine Sekunde lang aktiv war, wird Schritt „3“ aktiviert, und wiederum nach einer Sekunde erfolgt der Rücksprung zu Schritt „1“.
Die Ausgänge Q0 bis Q2 werden also nacheinander jeweils für eine Sekunde eingeschaltet.

GRAFCET stellt mehrere Varianten von Schritten und Aktionen mit unterschiedlichen Eigenschaften zur Verfügung. In der Transitionsbedingung kann eine binäre Verknüpfung (UND, ODER) formuliert werden; ebenso sind Flankenauswertungen, Vergleicher und Zeitverhalten realisierbar. Innerhalb einer Aktion sind nicht nur binäre Operanden verwendbar; auch die Verwendung von digitalen Operanden inkl. Rechenoperationen ist möglich. Alles zusammen ergibt eine mächtige und einfach zu erlernende Beschreibungssprache.

Eine ausführliche Beschreibung von GRAFCET finden Sie im neuen Buch „GRAFCET-Workbook“ (siehe Buchkasten).

GRAFCET wird disziplinübergreifend eingesetzt und ist Bestandteil in den meisten Lehrplänen von Ausbildungsberufen mit technischem Bezug. Damit sind also die Voraussetzungen gegeben, dass sich die unterschiedlichen Fachrichtungen ‚in‘ GRAFCET miteinander ‚unterhalten‘ können.
Wird eine neue Anlage entwickelt, können die Konstrukteure den Ablauf der Anlage über GRAFCET beschreiben. Fachleute aus den Bereichen Mechanik und Elektrotechnik haben damit eine Diskussionsgrundlage, anhand derer die ersten Probleme schon in der Planung erkannt und gelöst werden können. Auch der Bedarf an Aktoren und Sensoren ist damit sehr gut abschätzbar. Die Aktoren und Sensoren der Maschine werden in einem Steuerungsprogramm verknüpft, was üblicherweise in einer speicherprogrammierbaren Steuerung abläuft. Ein SPS-Programmierer muss somit das Steuerungsprogramm erstellen, wobei der GRAFCET seine Programmiergrundlage ist. Anschließend muss die Maschine in Betrieb genommen werden. Auch hier spielt der GRAFCET eine wichtige Rolle: Funktioniert die Maschine jetzt wirklich so, wie es sich die Konstrukteure vorgestellt haben?

Der Maschinenbediener hat natürlich ebenfalls Vorteile, wenn er Kenntnisse bzgl. der genauen Funktionsweise seiner Maschine hat. So muss beispielsweise bei einer Störung nicht immer das Servicepersonal gerufen werden.

Fazit: Ist ein GRAFCET-Plan vorhanden und auf dem aktuellen Stand, dann kann er überaus sinnvoll eingesetzt werden.

Jedem ist klar: Eine detaillierte Maschinendokumentation ist notwendig, damit eine Anlage erfolgreich gebaut, programmiert, in Betrieb genommen und gewartet werden kann.

Wichtig dabei: die Dokumentation muss auf dem neuesten Stand sein. Wenn also Änderungen an der Anlage vorgenommen werden, egal welchen Umfang sie haben, ist auch entsprechend die Dokumentation (der GRAFCET-Plan) zu aktualisieren. Und hier fangen meistens die Probleme an: Bei einer Anlagenänderung ist zwangsläufig die Programmierung anzupassen. Wenn man jetzt nicht auch den GRAFCET-Plan akribisch ändert, laufen die Programmierung und die Dokumentation so weit auseinander, dass man die ursprüngliche Dokumentation nicht mehr gebrauchen kann.

Das ist auch der Grund, weshalb sich GRAFCET in der Praxis nicht überall durchgesetzt hat. Man muss einen gewissen Aufwand betreiben, um sicherzustellen, dass der Istzustand in der Programmierung mit dem GRAFCET-Plan übereinstimmt.

Hier kommt schnell der Wunsch auf: Wenn ich schon den Aufwand betreibe und anfangs einen GRAFCET-Plan erstelle, dann möchte ich ihn auch in der Steuerung verwenden. Dann würden Programmierung und Dokumentation nie mehr auseinanderlaufen.

Den Wunsch, einen GRAFCET in eine Steuerung zu übertragen, ist so alt wie GRAFCET selbst. Aber GRAFCET ist keine Programmiersprache, sondern eine Beschreibungssprache.

Optimal wäre folgendes Szenario:

Man erstellt einen GRAFCET-Plan und überträgt dessen Logik in ein Device– unabhängig davon, von welchem Hersteller das Device stammt.

Wie könnte man so etwas realisieren? Die Hersteller verwenden ja in der Regel unterschiedliche Hardware, ebenso unterschiedliche Programmiersysteme. Die Lösung wäre eine Art „GRAFCET-Engine“. Dabei würde es sich um eine Zwischenschicht handeln, die mit einer GRAFCET-Logik gefüttert wird. Diese Zwischenschicht ist herstellerabhängig, muss somit für das Gerät verfügbar sein und ist darauf zu installieren. Wäre das der Fall, dann könnte man einen GRAFCET-Plan erstellen und direkt in ein solches Gerät übertragen.

Angenommen es ist möglich, einen GRAFCET-Plan zu erstellen und diesen in ein Device (z.B. eine SPS) zu übertragen, dann sind folgende Anwendungsszenarien realisierbar bzw. es ergeben sich folgende Vorteile:

  • Bei kleineren Maschinen und Anlagen (Bohrvorrichtung, Blechbiegeanlage u.ä.) kann das komplette Steuerungsprogramm mit GRAFCET erstellt werden.
  • Bei größeren Maschinen und Anlagen werden Teilbereiche in GRAFCET realisiert, wie z.B. die Schrittketten. Dinge wie PID-Regler, Motion-Control usw. werden wie bisher steuerungsspezifisch programmiert (z.B. in FUP, KOP, SCL).
  • In Anlagen können bestimmte Abläufe vom Endkunden (Anlagenbetreiber) verändert bzw. umprogrammiert werden. Der Endkunde benötigt dann nicht das umfangreiche Programmiertool des SPS-Herstellers, sondern kann dies mit einem kleinen, einfachen Tool bewerkstelligen. Dabei benötigt das Fachpersonal beim Endkunden ‚nur‘ Kenntnisse von GRAFCET und keine SPS-Programmierkenntnisse.
  • GRAFCET zur Unterstützung der Instandhaltung: Neben dem ‚normalen‘ Steuerungsprogramm wird ein speziell für die Fehlersuche entwickelter GRAFCET in der SPS abgelegt, der bei Bedarf die Instandhalter unterstützt. Auch hier wäre die Programmiersoftware des SPS-Herstellers nicht notwendig.
  • Dokumentation und Programmierung werden vereinheitlicht
  • Die SPS von Hersteller A wird durch eine SPS der Herstellers B ersetzt. Wenn die Programmierung über GRAFCET erfolgte, dann wird der gleiche GRAFCET ohne Änderung in SPS-B übertragen.
    Anpassungen wären nur in der Adresszuordnung (Symbolik) notwendig.

Verwendung in der Ausbildung:

  • Vorhandene Trainingsgeräte und mechatronische Systeme können wählweise herkömmlich oder mit GRAFCET programmiert werden.
  • Trainingsgeräte können mit einem Arduino oder Raspberry PI bestückt und mit GRAFCET programmiert werden.

Bild 2: GRAFCET-Studio

GRAFCET ist keine Programmiersprache, sondern eine Beschreibungssprache für Ablaufsteuerungen. Deshalb wird es immer Fälle geben, wo ein GRAFCET-Plan nur bedingt Sinn macht. Dem stehen aber auch Anwendungen gegenüber, bei denen ein GRAFCET-Programmiersystem eine sehr elegante Lösung darstellt.

Für die GRAFCET-Programmierung sehr gut geeignet sind alle kleinen und mittleren Ablaufsteuerungen ohne Regelungen, Motion und Kommunikationsaufgaben, z.B.:

  • Bohranlagen
  • Bearbeitungsstationen
  • Blechbiegevorrichtungen
  • Absauganlagen

Weniger geeignet bzw. nicht vollständig realisierbar sind umfangreiche Maschinen und Anlagen mit verteilten Steuerungen oder auch sehr zeitkritische Vorgänge, wo um jede Millisekunde Zykluszeit gekämpft wird. Hier kann der GRAFCET nur einen Teil der Anlagensteuerung übernehmen. Dinge wie z.B. PID-Regler oder Kommunikationsaufgaben sind dabei mit den nativen Sprachen und somit dem Tool des SPS-Herstellers auszuführen.

Die beschriebene Theorie setzt eine neue Software in die Praxis um: Auf dem Device sorgt eine GRAFCET-Engine für die Plattformunabhängigkeit. Nachdem die GRAFCET-Engine auf dem Device installiert ist, kann sie mit GRAFCET-Studio programmiert werden.

GRAFCET-Studio bietet folgende Features:

  • Erstellung eines GRAFCET nach DIN EN 60848
  • Simulation des GRAFCET auf dem PC (GRAFCET-Engine läuft auf dem PC)
  • Übertragung der GRAFCET-Logik in das Device
  • Beobachten des GRAFCET: Es wird der Zustand der Transitionsbedingungen (True, False, Zeitverzögerung) angezeigt sowie der Status der einzelnen Schritte
  • Laden einer vorhandenen GRAFCET-Logik aus einem Device

GRAFCET-Studio unterstützt derzeit folgende Geräte: Siemens S7-1200/1500/300/400, Arduino-Boards, IOT2000 von SIEMENS.

GRAFCET-Studio kann die Programmiersoftware des Geräteherstellers nicht komplett ersetzen, da im ersten Schritt das Device für GRAFCET-Studio vorbereitet werden muss: Die GRAFCET-Engine ist mit der Programmiersoftware des Geräteherstellers auf dem Device zu installieren. Des Weiteren sind die Ein-/Ausgänge zu parametrieren (Adressierung, Messbereiche der Analogeingänge, Ausgabebereiche der Analogausgänge). Danach kann das Gerät mit GRAFCET-Studio verwendet werden.

Sind diese Einstellungen bei einem Anlagentypus konstant (z.B. Serienmaschinen) und kann ein Device durch Einstecken eines externen Speichermediums (z.B. Speicherkarte) diese Daten übernehmen, dann ist der Vorbereitungsvorgang nur einmalig pro Anlagentypus notwendig.

GRAFCET-Studio unterstützt derzeit max. 255 Schritte.

Die Plattformunabhängigkeit durch die GRAFCET-Engine bringt auch einen Nachteil mit sich: Eine durch die GRAFCET-Engine bearbeitete Ablaufkette ist nicht so performant wie eine in den nativen Programmiersprachen (SCL, AWL) entwickelte Schrittkette. Dies ist allerdings nur bei zeitkritischen Anwendungen relevant.

Seit 2005 ist GRAFCET fest in der Ausbildung verankert. In zahlreichen Ausbildungsberufen mit technischem Bezug ist GRAFCET Bestandteil des Lehrplans. So z.B. bei der Ausbildung von Mechatronikern, Elektronikern für Automatisierungstechnik und Betriebstechnik sowie Industriemechanikern. Ebenso bei Schülern der Fachoberschule Fachrichtung Technik und der zweijährigen Fachschule Fachrichtung Chemietechnik Schwerpunkt Produktionstechnik. Selbst an technischen Gymnasien beschäftigt man sich im Unterricht mit GRAFCET.

Sehr viele ausgebildete Fachkräfte kennen demnach GRAFCET und sind so in der Lage, mit einem geeigneten Softwarewerkzeug eine speicherprogrammierbare Steuerung zu programmieren.

Es kommt neuer Schwung in das Thema GRAFCET. Die Verwendung von GRAFCET als herstellerübergreifende Programmiersprache steigert seinen Nutzen um ein Vielfaches. Mit GRAFCET-Studio ergeben sich neue Möglichkeiten (siehe Abschnitt Anwendungsszenarien) für Programmierer und Endanwender. So ist es beispielsweise erstmals möglich, mit einem kleinen, einfachen Tool eine S7-1200/1500 von Siemens zu programmieren.

Dieser Artikel ist in der Zeitschrift Computer&Automation erschienen. Heft 5, Mai/2017.

Autor: Dipl.-Ing. (FH) Matthias Habermann (mh@mhj.de)

MHJ-Software GmbH & Co. KG
Albert-Einstein-Str. 101
75015 Bretten – Deutschland
www.mhj.de