AseptSoft Core Documentation

SFC Editor (GRAFCET)

The SFC Editor (Sequential Function Chart) provides a graphical view of the step-and-transition sequence within a process, following the IEC 61131-3 GRAFCET standard. It visualizes how steps connect through conditions, making complex process flows easy to understand and edit.

Access: Open a module → Module RibbonCondition panel → SFC button.

⚠️ Important: Everything you do in the SFC Editor window will automatically update the steps and conditions in the Algorithm Design, and vice versa. Changes are always synchronized.


🔎 Overview

The SFC Editor renders the entire process as a directed graph where:

  • Steps (phases) are shown as rectangular nodes with their step number and name

  • Transitions (conditions of type Transition) are shown as labeled edges connecting steps

  • Non-transition conditions (Continuous Action, Stored on Activation, etc.) are displayed directly alongside their parent step

  • The graph supports parallel fork, parallel merge, and jump patterns for complex branching logic


🖥️ Window Layout

The SFC Editor window has the following areas:

Area

Description

Phases Panel (left sidebar)

Shows a list of all steps in the current process with their numbers and names. Provides hover-based navigation and reordering.

Process Selector (top bar)

Dropdown to select which process to view/edit

Toolbar (top bar)

Controls for Lock, Snap, Grid, Linking settings, and Export

Canvas (center)

The dotted grid where the SFC graph is displayed and edited

Minimap (bottom right)

A small preview showing the overall layout and current viewport position


📦 Working with Steps

Hovering a Step

When you hover over a step node on the canvas, action buttons appear:

Button

Icon

Description

Connect

↓ Arrow down

Creates a new transition (edge) from this step to another step — click and drag to the target step

Duplicate

📋 Two papers

Duplicates the step. The new step is inserted below all existing steps, and the order of all other steps updates automatically

Edit

✏️ Pencil

Opens the step editing view

Delete

🗑️ Trash bin

Removes the step

Step Color Coding During Hover

When you hover over a step in the Phases Panel (left sidebar), the editor highlights the connections:

Color

Meaning

🟠 Orange

Steps that transition to the hovered step (parent/source steps)

🟢 Green

Steps that the hovered step transitions to (child/target steps)

🔵 Blue

The currently hovered step itself

This visual feedback helps you quickly understand the flow: which steps lead into the selected step, and where it goes next.


🔀 Working with Edges (Transitions)

Edges are the lines/arrows that connect steps. Each edge represents a transition condition.

Edge Hover Behavior

When you hover over an edge:

  • The edge turns blue

  • The source step turns orange

  • The target step turns green

This clearly shows the direction of the transition — from the orange step to the green step via the blue line.

Edge Label Actions

When you hover over the small label on an edge, you see the condition text and a set of action buttons:

Button

Description

Create

Create a new condition on this edge

Duplicate

Duplicate the existing condition

Fork

Add a new transition branch (adds a transition to the existing condition, creating a parallel fork)

Delete

Remove the condition/edge

Edit

Opens the Condition Editor window where you can adjust all condition fields

Link

Creates an off-page connector (teleport), interrupting the edge and connecting two steps without a continuous line

Rerouting Edges

Click on an edge to select it, then drag its segments to reroute the path. The editor uses orthogonal (right-angle) routing for clean, readable layouts.


🔗 Linking (Off-Page Connectors / Teleports)

The Link feature works like an off-page connector in traditional P&ID drawings. It interrupts a long edge and replaces it with a pair of matching symbols — keeping the graph clean when source and target steps are far apart.

  1. Hover over an edge label and click the Link button

  2. The edge is replaced by two matching teleport nodes with an identifier (e.g., "1-ngts")

  3. The entry node appears near the source step, the exit node near the target step

  4. Both nodes display a matching label so you can identify paired connections

To convert a linked connection back to a continuous line, use the Direct (unlink) option that appears on linked edges.

Teleport Naming Settings

Click the Linking button (🔗) in the toolbar to open the Teleport identifier settings window:

Setting

Description

Naming mode

Choose between "info" (descriptive labels) or "inc" (incremental numbering)

Prefix

Text added before the identifier

Intermediary

Separator character between parts (default: "-")

Suffix

Text added after the identifier


🧩 Condition Display in the SFC

Transition Conditions

Conditions of type Transition are displayed on the edges (lines/arrows) that connect steps. The condition text appears as a label along the edge.

Non-Transition Conditions

All other condition types (Continuous Action, Cont. Action + Condition, Stored on Activation, Stored on Deactivation, Stored on Event, Custom) are displayed directly next to their parent step as attached boxes. Each non-transition condition appears as a small box alongside the step node, with an icon indicating its type:

Icon

Condition Type

Continuous Action

🔲

Continuous action with condition

Stored action on activation

Stored action on deactivation

🏴

Action stored on event

✏️

Custom

You can right-click or hover these boxes to see options for editing, duplicating, or deleting the condition.


🧩 Graph Elements — Advanced

Parallel Fork (Simultaneous Branches)

A parallel fork occurs when a single condition has multiple target steps that activate simultaneously.

Element

Visual

Description

Parallel Fork vertex

◆ Diamond/junction

Inserted automatically when one condition has several success targets

Head edge

Step → ◆ with condition label

The "head" edge carries the condition label and supports full editing

Child edges

◆ → Step (no label)

The branches of the fork — only delete is available

Parallel Merge (Synchronization)

A parallel merge occurs when multiple transitions from different source steps converge on the same target step.

  • If all incoming conditions share the same text → Unified display (single shared label)

  • If conditions differ → Mixed display (individual labels per incoming edge)

Jump Nodes (Teleports)

Jumps are visual shortcuts created by the Link feature. Each jump consists of an entry node near the source and an exit node near the target, both sharing a matching display ID.

Dangling Conditions

Conditions without any transition target assigned are called dangling conditions and appear as a list on their parent step node. This helps identify incomplete configurations that still need transitions.


⚙️ Toolbar Options

The toolbar at the top of the SFC Editor provides these controls:

Button

Icon

Description

Sidebar

Show or hide the Phases Panel (left sidebar)

Lock

🔒

Activated: Only the selected object moves; parent and child objects stay in place. Deactivated: Moving a step also moves its connected branches (child steps, conditions, teleports follow).

Snap

🧲

Activated: Objects snap to grid positions when moved. Deactivated: Free movement without snapping.

Grid

🔲

Shows or hides the dot grid in the background

Linking

🔗

Opens the Teleport identifier settings window

Export

📄

Exports the chart to PDF


📋 Phases Panel (Left Sidebar)

The Phases Panel on the left shows all steps in the current process with their number and name.

Features

  • Hover a step to see visual connection highlights (orange = incoming, green = outgoing) drawn on the sidebar itself

  • Drag and drop steps in the sidebar to reorder them

  • Right-click or hover action buttons to Edit, Duplicate, or Delete steps and their conditions

  • The sidebar scrolls independently of the main canvas

Process Selector

Above the Phases Panel, a dropdown shows the current process. You can switch between processes to view different SFC charts.


📤 Exporting the SFC

PDF Export

Click the Export button (PDF icon) in the toolbar to generate a PDF of the current SFC chart.

💡 Tip: The dotted canvas area shows what will fit on a single PDF page. You can place objects beyond the canvas boundary, but they may not appear in the PDF export. Arrange your steps within the dotted area for the best export result.

Additional Export Options

  • Visio export — The SFC can also be exported to Microsoft Visio format. See Export Dialogs to Visio for details.

  • Condition export on P&IDs — Conditions can also be exported directly on the P&ID drawings via the Export feature in the Module Ribbon.


📖 Workflows

How to Build an SFC for a Process

  1. Open the SFC EditorModule RibbonCondition panel → SFC button

  2. Review the steps — All steps in the current process appear as rectangular nodes. If steps don't exist yet, create them first in Process Design

  3. Arrange the steps — Drag step nodes into a logical top-to-bottom flow

  4. Create transitions — Hover a step and click the Connect (↓) button, then drag to the target step. Enter the transition condition in the editor that opens

  5. Add non-transition conditions — Hover a step's attached condition area and use the context menu to add Continuous Actions, Stored on Activation/Deactivation actions, etc.

  6. Use Links for distant connections — If two connected steps are far apart, use the Link feature on their edge to create an off-page connector pair

  7. Review the flow — Use the Phases Panel to hover steps and verify the connection pattern (orange = sources, green = targets)

  8. Export — Click the PDF button to generate a printable chart

How to Navigate and Edit Conditions from the SFC

  1. Hover an edge label to see the condition details and available actions

  2. Click Edit to open the full Condition Editor window

  3. Make your changes — they are automatically reflected in the SFC

  4. Close the Condition Editor — the SFC updates immediately

How to Trace a Process Flow

  1. Open the SFC Editor for your process

  2. In the Phases Panel, hover over a starting step

  3. The sidebar draws colored lines: orange for upstream steps, green for downstream steps

  4. Follow the green lines to trace the forward path

  5. Follow the orange lines to trace the backward path

  6. Use Expand Previous/Next in the Module Ribbon for text-based chain navigation with condition descriptions


🏭 Pharma Example: CIP Sequence as a GRAFCET

This example shows a complete Clean-In-Place (CIP) sequence modeled as a Sequential Function Chart.

📋 Steps (Process Phases)

Step

Name

Description

0

Idle

System at rest, all valves closed, pumps off

1

Pre-Rinse

Flush the circuit with purified water to remove product residues

2

Caustic Wash

Circulate NaOH solution at elevated temperature

3

Intermediate Rinse

Flush with purified water to remove caustic residues

4

Acid Wash

Circulate acid solution for mineral deposit removal

5

Final Rinse

Final purified water flush to meet conductivity specifications

6

Drain

Drain all remaining fluid from the circuit

🔀 Transition Conditions

From

To

Condition

Type

Idle

Pre-Rinse

Operator starts CIP cycle

Transition

Pre-Rinse

Caustic Wash

Pre-rinse timer complete (5 min)

Transition

Caustic Wash

Intermediate Rinse

Temperature held for required duration

Transition

Intermediate Rinse

Acid Wash

Conductivity below threshold

Transition

Acid Wash

Final Rinse

Timer complete AND temperature maintained

Transition

Final Rinse

Drain

Conductivity below specification

Transition

Drain

Idle

Flow sensor reads zero for 30 seconds

Transition

Non-Transition Conditions

Step

Type

Action

Pre-Rinse

Continuous Action

Keep CIP pump running, valves open

Pre-Rinse

Stored on Activation

Record batch start time

Caustic Wash

Cont. Action + Condition

Boost heater when temperature drops below setpoint

Final Rinse

Stored on Activation

Reset rinse counter


🖱️ Keyboard and Mouse Interactions

Action

How

Pan

Click and drag on empty canvas area

Zoom

Mouse wheel

Select step

Click on a step vertex

Move step

Drag a step vertex (behavior depends on Lock setting)

Create transition

Hover step → click Connect (↓) → drag to target step

Edit condition

Hover edge label → click Edit

Reroute edge

Click on an edge segment and drag to reroute

Delete transition

Hover edge label → click Delete

Fork a transition

Hover edge label → click Fork to add a branch

Create link

Hover edge label → click Link

Remove link

Hover linked edge → click Direct/Unlink

Note: Vertex positions are saved per-process and restored when you reopen the editor. You can freely move steps and edges around — the logical connections remain unchanged.