Draw several grafcets (IEC 60848), check their syntax and watch them live, scan by scan, like in a PLC.
. AND, + OR, / NOT, ↑a ↓a edges (buttons, Alt+↑ / Alt+↓, or ^a), [c<4] comparison, 3s/X13 timer, 1 always true. A step is X12; if two grafcets have a step 12, write GA.X12. In a step label, / and . become _ (step 2/3 → X2_3).↑sa while the step is active), each with an optional comment (tooltip, ST code), or stored on activation / deactivation (arrow above / below the box, as in the standard: C:=C+1).G{8,9}, freeze G{*}, empty G{ }, initial G{INIT}. While the step is active, the forced grafcet cannot evolve; its actions go on. A grafcet is forced by one grafcet only, and never forces back. Hierarchy shows the levels; a forcing grafcet is evaluated before the grafcets it forces.Evolution follows the method taught in class: all the firing conditions first (cf = upstream steps AND receptivity), then the steps (X = activation OR (X AND NOT deactivation)), one evolution per scan; grafcets from the highest level down (dashboard order on the same level), each one followed by its forcing orders, then timers, then actions. A step whose receptivity is already true stays active for one scan: the tool says so (in the standard, this transient evolution emits no continuous action).
On a phone: read, simulate and export; drawing needs a computer. Coming next: timing diagrams and a simulated process to test your grafcets. These tools are for learning and preparing: always validate your program in your PLC software (CODESYS…).
© 2026 Philippe RAYMOND · Licence CC BY-NC-ND 4.0
Official version: phil-legacy.github.io/toolbox
Phone: view and simulate (controls and inputs at the bottom). Draw on a computer or a tablet.
A4 portrait. All grafcets are drawn at the same scale; small ones share a page.