.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 hatcreatedAtErstellungszeitpunkt im ISO 8601 FormatnodesArray 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, Qualifizierer, etc.
Verfügbare Symboltypen
stepSchrittRepräsentiert einen Zustand im Ablaufdiagramm. Wird als Rechteck mit Schrittnummer dargestellt.
Speichert: Schrittnummer (z.B. "1", "2", "10")
initialStepInitialschrittDer Startzustand des GRAFCET, der bei Initialisierung automatisch aktiviert wird. Dargestellt als Rechteck mit doppelter Umrandung.
Speichert: Schrittnummer (typischerweise "0")
transitionTransitionDefiniert die Übergangsbedingung zwischen Schritten. Dargestellt als horizontaler Strich mit Bedingungstext.
Speichert: Übergangsbedingung (z.B. "a", "a AND b", "!x", "*" für immer wahr)
actionAktionBeschreibt eine Ausgabe oder Aktion, die bei aktivem Schritt ausgeführt wird. Wird rechts neben dem zugehörigen Schritt platziert.
Speichert: Aktionsbezeichnung, Qualifizierer (N/S/R/D/L/P/C), Zeitwert für D/L, Zusatzbedingung für C
andNodeSimultanverzweigungErmöglicht parallele Abläufe im GRAFCET. Dargestellt als doppelte horizontale Linie. Kann mehrere ein- und ausgehende Verbindungen haben.
Speichert: Breite (Standard: 240px), optionale Beschriftung
loopNodeSchleifeRü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")
textTextanmerkungFreitextfeld für Kommentare und Anmerkungen im Diagramm. Nicht Teil der GRAFCET-Logik.
Speichert: Anzeigetext
Aktion:
{
"id": "action-1",
"type": "action",
"position": { "x": 500, "y": 230 },
"data": {
"label": "Motor ein",
"qualifier": "N"
}
}{
"id": "action-2",
"type": "action",
"position": { "x": 500, "y": 350 },
"data": {
"label": "Ventil öffnen",
"qualifier": "D",
"time": "5s",
"condition": "p1"
}
}3. Aktionsqualifizierer (IEC 60848)
Aktionen können mit Qualifizierern versehen werden, die das Verhalten der Aktion bestimmen:
| Code | Name | Beschreibung |
|---|---|---|
N | Kontinuierlich | Aktion ist aktiv, solange der zugehörige Schritt aktiv ist |
S | Speichernd (Setzen) | Aktion wird eingeschaltet und bleibt auch nach Deaktivierung des Schritts aktiv |
R | Speichernd (Rücksetzen) | Aktion wird ausgeschaltet (setzt eine vorher gesetzte Aktion zurück) |
D | Verzögert | Aktion startet erst nach Ablauf der angegebenen Zeit (benötigt Zeitangabe) |
L | Zeitbegrenzt | Aktion endet automatisch nach der angegebenen Zeit (benötigt Zeitangabe) |
P | Impuls | Einzelner kurzer Impuls bei Aktivierung des Schritts |
C | Bedingt | Aktion 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 VerbindungsourceID des Quell-Symbols (von wo die Linie startet)targetID des Ziel-Symbols (wo die Linie endet)sourceHandleAnschlusspunkt am Quell-SymboltargetHandleAnschlusspunkt am Ziel-SymboltypeArt der Wirkungslinie
Linientypen
defaultEdgeactionEdgeAnschlusspunkte
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