Skip to content
Zum Inhalt springen

.grafcetio Dateiformat

Technische Dokumentation

Das .grafcetio-Format ist ein JSON-basiertes Dateiformat zum Speichern und Austauschen von GRAFCET-Diagrammen. Diese Dokumentation beschreibt den Aufbau und alle verfügbaren Elemente.

1. Dateistruktur

Eine .grafcetio-Datei ist eine JSON-Datei mit folgender Grundstruktur:

{
  "version": "1.0",
  "createdWith": "grafcet.io",
  "createdAt": "2024-01-15T10:30:00.000Z",
  "nodes": [...],
  "edges": [...],
  "counter": 5
}
  • versionVersionsnummer des Dateiformats (aktuell immer "1.0")
  • createdWithName der Anwendung, die die Datei erstellt hat
  • createdAtErstellungszeitpunkt im ISO 8601 Format
  • nodesArray mit allen GRAFCET-Symbolen (Schritte, Transitionen, Aktionen, etc.)
  • edgesArray mit allen Wirkungslinien (Verbindungen zwischen Symbolen)
  • counterInterner Zähler für die Vergabe eindeutiger Element-IDs

2. GRAFCET-Symbole

Alle Symbole werden im "nodes"-Array gespeichert. Jedes Symbol hat folgende Grundstruktur:

{
  "id": "step-1",
  "type": "step",
  "position": { "x": 400, "y": 240 },
  "data": { "label": "1" }
}
  • idEindeutige Kennung des Symbols (z.B. "step-1", "transition-2")
  • typeArt des Symbols (siehe Symboltypen unten)
  • positionPosition auf der Zeichenfläche in Pixeln (x/y-Koordinaten)
  • dataSymbolspezifische Daten wie Beschriftung, Aktionsart, etc.

Verfügbare Symboltypen

stepSchritt

Repräsentiert einen Zustand im Ablaufdiagramm. Wird als Rechteck mit Schrittnummer dargestellt.

Speichert: Schrittnummer (z.B. "1", "2", "10")

initialStepInitialschritt

Der Startzustand des GRAFCET, der bei Initialisierung automatisch aktiviert wird. Dargestellt als Rechteck mit doppelter Umrandung.

Speichert: Schrittnummer (typischerweise "0")

transitionTransition

Definiert die Übergangsbedingung zwischen Schritten. Dargestellt als horizontaler Strich mit Bedingungstext.

Speichert: Übergangsbedingung (z.B. "a", "a AND b", "!x", "*" für immer wahr)

actionAktion

Beschreibt eine Ausgabe oder Aktion, die bei aktivem Schritt ausgeführt wird. Wird rechts neben dem zugehörigen Schritt platziert.

Speichert: Aktionsbezeichnung, Aktionsart, Zeitwert, Zusatzbedingung

andNodeSimultanverzweigung

Ermöglicht parallele Abläufe im GRAFCET. Dargestellt als doppelte horizontale Linie. Kann mehrere ein- und ausgehende Verbindungen haben.

Speichert: Breite (Standard: 240px), optionale Beschriftung

loopNodeSchleife

Rückführungssymbol im GRAFCET. Dargestellt als vertikale Linie mit Dreieckspfeil nach oben. Zwei Symbole mit gleichem Referenzzeichen ersetzen eine lange Rückführungslinie.

Speichert: Referenzzeichen (z.B. "*", "A")

textTextanmerkung

Freitextfeld für Kommentare und Anmerkungen im Diagramm. Nicht Teil der GRAFCET-Logik.

Speichert: Anzeigetext, Schriftgröße, Fettdruck

enclosingStepEinschließender Schritt

Schritt, der einen Teilablauf (Einschließung) enthält. Dargestellt als Rechteck mit zwei senkrechten Linien.

Speichert: Schrittnummer

macroStepMakroschritt

Verweist auf ein Teil-GRAFCET (Makro-Erweiterung). Dargestellt als Rechteck mit zwei waagerechten Linien.

Speichert: Makro-Nummer

startTransitionQuelltransition

Transition ohne Vorgängerschritt, die immer freigegeben ist (IEC 60848).

Speichert: Übergangsbedingung

pitTransitionSchlusstransition

Transition ohne Nachfolgeschritt; deaktiviert den Vorgängerschritt.

Speichert: Übergangsbedingung

forcedCommandBefehlserzwingung

Erzwingt einen Zustand in einem anderen GRAFCET. Dargestellt als Box mit Doppelrahmen.

Speichert: Bezeichnung, Aktionsart, Zeitwert, Zusatzbedingung

orNodeAlternativverzweigung

Auswahl zwischen alternativen Zweigen (ODER-Verzweigung/-Zusammenführung). Dargestellt als einzelne waagerechte Linie.

Speichert: Breite, optionale Beschriftung

boxNodeKommentarrahmen

Rahmen zum Gruppieren oder Kommentieren von Bereichen. Nicht Teil der GRAFCET-Logik.

Speichert: Breite, Höhe, oberes Label (Nummer), unteres Label (Name)

startLoopRückführung (Start)

Startsymbol einer Sprung-/Rückführung; verweist über ein gemeinsames Referenzzeichen auf das Sprungziel.

Speichert: Referenzzeichen

endLoopRückführung (Ziel)

Zielsymbol einer Sprung-/Rückführung.

Speichert: Referenzzeichen

Aktion:

{
  "id": "action-1",
  "type": "action",
  "position": { "x": 500, "y": 230 },
  "data": {
    "label": "Motor ein",
    "actionType": "continuous"
  }
}
{
  "id": "action-2",
  "type": "action",
  "position": { "x": 500, "y": 350 },
  "data": {
    "label": "Ventil öffnen",
    "actionType": "delayed",
    "time": "5s",
    "condition": "p1"
  }
}

3. Aktionsarten (DIN EN 60848)

Aktionen können verschiedene Arten haben, die ihr Verhalten bestimmen. Die Aktionsart wird grafisch dargestellt:

AktionsartDarstellungBeschreibung
continuousEinfache BoxAktion ist aktiv, solange der zugehörige Schritt aktiv ist
setBox mit Pfeil ↑Aktion wird eingeschaltet und bleibt auch nach Deaktivierung des Schritts aktiv
resetBox mit Pfeil ↓Aktion wird ausgeschaltet (setzt eine vorher gesetzte Aktion zurück)
delayedBox mit ZeitangabeAktion startet erst nach Ablauf der angegebenen Zeit
limitedBox mit ZeitbegrenzungAktion endet automatisch nach der angegebenen Zeit
pulseBox mit ImpulssymbolEinzelner kurzer Impuls bei Aktivierung des Schritts
conditionalBox mit BedingungslinieAktion wird nur ausgeführt, wenn die Zusatzbedingung erfüllt ist

4. Wirkungslinien

Wirkungslinien verbinden die GRAFCET-Symbole und definieren den Ablauf. Sie werden im "edges"-Array gespeichert.

{
  "id": "e-step-1-transition-1",
  "source": "step-1",
  "sourceHandle": "bottom",
  "target": "transition-1",
  "targetHandle": "top",
  "type": "defaultEdge"
}
  • idEindeutige Kennung der Verbindung
  • sourceID des Quell-Symbols (von wo die Linie startet)
  • targetID des Ziel-Symbols (wo die Linie endet)
  • sourceHandleAnschlusspunkt am Quell-Symbol
  • targetHandleAnschlusspunkt am Ziel-Symbol
  • typeArt der Wirkungslinie

Linientypen

labeledEdge
Standard-WirkungslinieStandardverbindung mit Beschriftung. Verbindet Schritte mit Transitionen und Transitionen mit Schritten (Standardtyp).
defaultEdge
Einfache WirkungslinieEinfache Verbindung ohne Beschriftung.
loopEdge
RückführungslinieGekrümmte Linie für Rückführungen und Sprünge.

Anschlusspunkte

Jedes Symbol hat definierte Anschlusspunkte für Wirkungslinien:

  • "top" - Eingang von oben
  • "bottom" - Ausgang nach unten
  • "left" - Eingang von links (bei Aktionen)
  • "right" - Ausgang nach rechts (für Aktionslinien)
  • Bei Simultanverzweigungen: "handle-0", "handle-1", ... (oben) und "source-0", "source-1", ... (unten)

Editor ausprobieren

Erstelle dein eigenes GRAFCET-Diagramm und exportiere es als .grafcetio-Datei!

Zum Editor
.grafcetio Dateiformat | Dokumentation