Write IEC 61131-3, Allen-Bradley, or Siemens ladder logic, press Run, and watch a simulated machine respond in real time. 40 auto-graded scenarios. No install, no license key.
This is a live PLC simulator running in your browser right now — no plugin, no install.
A PLC simulator is software that emulates a programmable logic controller so you can write and test PLC code without owning hardware. Instead of wiring up a real rack, connecting IO modules, and commissioning a physical plant, you describe the control logic in ladder rungs or structured text, press Run, and a software model of the machine responds — tanks fill, motors spin, conveyors move, alarms trigger. Every instruction executes against a real scan cycle: read inputs, execute program, write outputs. The difference from a real PLC is that the IO table is virtual, not wired.
What makes a browser-based PLC simulator different is the absence of install friction. Traditional plc simulation software — Siemens PLCSIM, Rockwell Studio 5000 Logix Emulate, LogixPro, CoDeSys — all require a Windows machine, a multi-gigabyte installer, and often a paid license. That is fine for a plant engineer on a dedicated workstation, but it kills the first-hour experience for students, hobbyists, or engineers prepping for an interview on a locked-down corporate laptop. A plc simulator online changes that equation: load a URL, pick a scenario, and write your first rung in under two minutes. It runs on Chromebooks, Macs, Linux boxes, and Windows machines equally — anything with a modern browser.
Not every browser PLC emulator is the same, though. Rung drawing tools let you sketch a ladder diagram but do not actually execute the logic. A genuine plc emulator runs a scan cycle, maintains an IO table, evaluates every rung in order, and updates output coils accordingly. Ours goes further: each scenario ships with a scripted test harness that evaluates your program against specific objectives — correct sequencing, interlock behaviour, timing windows — and returns pass/fail results with failure reasons. That is the difference between drawing a ladder and proving your ladder works. See the full library at /scenarios or jump straight to the PLC programming simulator overview.
Every scenario follows the same three-step loop. The whole thing runs in one browser tab — no second window, no separate runtime process.
The Monaco-based code editor accepts IEC 61131-3 Structured Text, Allen-Bradley RSLogix-style rungs, or Siemens TIA Portal-style networks. Switch dialect from the toolbar at any time. Every standard instruction is wired: XIC, XIO, OTE, OTL, OTU contacts and coils; TON, TOF, TP timers; CTU, CTD counters; R_TRIG and F_TRIG edge detection; MOV, ADD, SUB, MUL, DIV math; PID. The IEC “VAR…END_VAR” declaration block and AB address notation (I:0/0, T4:0, C5:0) are both supported.
Press Run and the scan cycle starts. Each cycle reads the input image table, executes your rungs top-to-bottom, then writes coil states to the output image. The IO table panel shows every address — %I0.0, %Q0.1, T4:0.ACC — updating live so you can watch a rung evaluate in real time. Set a breakpoint on any rung, or inject a manual input override to test an edge case without waiting for the physics model to reach it.
The Phaser-rendered physics canvas updates as your outputs change. Tanks fill or drain based on valve coil states. Motors spin when the run coil is energised. Conveyors move, lamps light, alarms trigger. Auto-graded test cases evaluate whether the machine hit every objective — correct fill sequence, interlock respected, timing within spec — and return pass/fail with the exact failure reason so you know which rung to fix.
Each scenario is a full machine model with an IO list, a written objective, and a scripted test suite. They are ordered by difficulty so you build on each concept before the next one introduces a new instruction or control pattern. Browse the full library at /scenarios. Free-tier scenarios are accessible without an account at /scenarios/{slug}.
Four-way signal with timer chain and all-red safety interlock phase.
Three-wire control with seal-in, E-stop, and thermal overload interlock.
Photo-eye sort station with part counters and reject actuator output.
Level sensors with hysteresis control and latched high-level alarm.
Multi-floor call queue, door timing, and direction logic sequencer.
Multi-step sequencer with ingredient timing and agitator interlock.
Burner management sequence with purge cycle, flame detection, and lockout.
Layer-building logic with row count, column indexing, and stack reset.
Showing 8 of 40 scenarios. View all 40 →
Every simulator in this table does something useful. The differences are in access friction, cost, and scope. This comparison is honest — we note where the others are stronger.
| Simulator | Browser-based | Free tier | Auto-graded | Multi-dialect | Scenarios |
|---|---|---|---|---|---|
| This simulator | ✓ | ✓ (9 free) | ✓ | ✓ IEC, AB, Siemens | 40 |
| LogixPro | ✗ Windows only | ✗ Paid license | Partial | ✗ AB only | ~10 |
| Siemens PLCSIM | ✗ TIA Portal required | ✗ TIA Portal license | ✗ | ✗ Siemens only | None |
| Studio 5000 Logix Emulate | ✗ Windows only | ✗ Paid license | ✗ | ✗ AB only | None |
| CoDeSys (built-in sim) | ✗ IDE install required | ✓ IDE is free | ✗ | IEC 61131-3 only | None |
| PLC-Fiddle | ✓ | ✓ | ✗ | ✗ IEC only | None |
CoDeSys is genuinely the most capable free IEC 61131-3 IDE available. If your target is professional Beckhoff or Wago deployment, install CoDeSys. If your target is fast, hardware-free practice across multiple dialects with auto-graded feedback, this simulator is the faster path.
Three groups make up most of the active users. Each one has a different reason to avoid the install friction of traditional plc simulation software.
Mechatronics, electrical engineering, and automation students who need ladder logic practice outside the lab. Most cannot afford per-seat desktop licenses, and university lab machines frequently have admin-locked software installs. A free plc simulator that runs in a browser removes both barriers. The structured scenario library — from basic motor start/stop through PID control and multi-step batch sequencers — maps closely to the control-systems curriculum in technical colleges and universities.
Learn PLC programming →Engineers preparing for a controls role interview, or verifying a logic change before a commissioning window. You know the problem: spinning up a Siemens VM or a Rockwell emulator to test three rungs is a 45-minute setup tax, not a five-minute sanity check. A browser PLC emulator lets you draft and test the core logic at a coffee shop, hand it to a colleague for review, and only fire up the full vendor tool when the logic is already known-good. The PLC programming simulator supports the full instruction set you actually use day-to-day.
People who build home automation projects, tinker with Arduino/Raspberry Pi, and want to understand industrial control logic without buying a starter PLC kit. The free tier — two complete scenarios, no account required — is a genuine try-before-you-commit offer, not a limited demo. The ladder logic simulator page explains the rung-by-rung mechanics if you are coming from general programming rather than industrial controls.
Ladder logic — formally ladder diagram (LD) in the IEC 61131-3 standard — is the most widely used PLC programming language because it reads like the relay circuits PLCs replaced. A program is a stack of horizontal rungs drawn between two vertical power rails. Each rung holds input contacts on the left and one or more output coils on the right. Power is evaluated left to right: when a complete path of true contacts connects the left rail to a coil, that coil energises. Contacts in series form an AND; contacts in parallel form an OR. The PLC simulator evaluates every rung top to bottom, once per scan cycle, exactly like real hardware. For the full symbol set, see the ladder logic symbols reference.
The canonical first program is a motor starter. A Start push-button (normally-open, XIC) energises a Motor coil; a Stop push-button (normally-closed, XIO) breaks the rung; and a Motor contact in parallel with Start “seals in” the rung so the motor keeps running after Start is released:
|--[ Start ]--+--[/ Stop ]--( Motor )--| | | |--[ Motor ]--+
Press Run in the simulator and the scan cycle reads the inputs, solves the rung, and writes the Motor coil — you watch the motor spin on the physics canvas and the seal-in hold it on. Tap Stop and the normally-closed contact opens, the path breaks, and the motor stops. This single rung demonstrates contacts, a coil, an OR branch, and latching — the foundation of almost every PLC program. Dozens more worked examples live in the scenario library, each auto-graded against test cases.
The editor implements the standard IEC 61131-3 instruction set, with Allen-Bradley (XIC/XIO/OTE) and Siemens naming available per dialect. Every instruction below executes on a real scan cycle in the browser:
| Instruction | Type | What it does |
|---|---|---|
| XIC | Contact | Examine If Closed — passes power when the bit is TRUE (normally-open contact). |
| XIO | Contact | Examine If Open — passes power when the bit is FALSE (normally-closed contact). |
| OTE | Coil | Output Energise — the coil follows the rung: true when the rung is true. |
| OTL / OTU | Coil | Output Latch / Unlatch — set a bit and hold it, then reset it on a separate rung. |
| TON / TOF / TP | Timer | On-delay, off-delay and pulse timers with preset (PT/PRE) and elapsed (ET/ACC). |
| RTO | Timer | Retentive on-delay — accumulates run-time across cycles; cleared with RES. |
| CTU / CTD | Counter | Count up / count down on each false-to-true transition; DN at the preset. |
| R_TRIG / F_TRIG | Edge | Rising- and falling-edge one-shots — fire for a single scan on a transition. |
| MOV | Data | Move a value or tag into another tag. |
| ADD / SUB / MUL / DIV | Math | Integer and real arithmetic on tags and constants. |
| GRT / LES / EQU | Compare | Greater-than, less-than and equal comparisons that gate a rung. |
| PID | Process | Closed-loop PID control of an analog process value against a setpoint. |
Deep-dive guides cover each family in detail: PLC timers, PLC counters, structured text, and the ladder logic symbol reference. Prefer the Allen-Bradley dialect? Start with the Allen-Bradley simulator; for Siemens, the Siemens simulator.
Two scenarios, no credit card, sign up in under a minute — or open the Traffic Light scenario right now without an account.
Related: PLC programming simulator · ladder logic simulator · learn PLC programming.