PLC Simulator
Browser-based · 8 PLC dialects · Free tier

Pass your first PLC program in 2 minutes. Build a portfolio for your next interview.

12 lessons, 8 vendor dialects, real-time scan-cycle simulation, and 5 free real-world scenarios. No install, no card.

$0 forever free·Pro $29/mo·7-day money-back

Join 700+ learners practicing PLC programming

No install. Works in any browser. · From the team at plcprogramming.io

0+scenarios
0+curriculum lessons
0+PLC dialects
0+quizzes
0+interview tracks
Zeroinstall required
Scan-cycle highlight

Watch your code execute,
rung by rung.

The PLC simulator steps through your ladder program in real time. Every contact, coil, and timer lights up exactly when it activates — so you can see the scan cycle in action, not just read about it.

  • Slow-mode: step through one rung at a time
  • Live-mode: watch the full scan cycle at speed
  • Instant visual feedback on logic errors
Ladder Logic — Scan Step 2 / 3Running
[Start_PB(NO)]
(Motor_Run)
[Motor_Run(NO)]
(Run_Lamp)
[Stop_PB(NC)]
(Motor_Run)
Scan time: 4.2 ms  ·  Watchdog: 500 ms
(* Motor Start/Stop — IEC 61131-3 *)
IF Start_PB AND NOT Stop_PB THEN
    Motor_Run := TRUE;
END_IF;
IF Stop_PB THEN
    Motor_Run := FALSE;
END_IF;
CODESYS / generic
8 dialects supported

Write once, switch
dialects instantly.

The same program, rendered in IEC 61131-3, Allen-Bradley, Siemens, Mitsubishi, Omron, Delta, Keyence, or Panasonic syntax. Switch between them without rewriting a line.

  • IEC 61131-3, Allen-Bradley, Siemens S7, Mitsubishi
  • Omron, Delta, Keyence, Panasonic
  • Side-by-side comparison view
12-lesson curriculum

From button-to-light
to traffic controller.

A structured path from absolute beginner to job-ready PLC programmer. Each lesson is paired with a live simulator exercise — you write real code against a real machine model.

Lesson 1
PLC Fundamentals
free
Lesson 2
Ladder Logic Basics
free
Lesson 3
Timers & Counters
free
Lesson 4
Seal-in Rungs
free
Lesson 5
Latching & Unlocking
basic
Lesson 6
Sensor Inputs
basic
Lesson 7
Motor Control Circuits
basic
Lesson 8
Sequencers
basic
Lesson 9
Analog I/O Basics
basic
Lesson 10
PID Control
basic
Lesson 11
Fault Finding
basic
Lesson 12
Structured Text
basic
Fault diagnosis

Debug faults the way
the job demands.

A random wiring fault is injected into a running simulation — a swapped NO/NC contact, a broken wire, a floating input. Your job is to find it using the scan-cycle highlight, cross-reference, and the variable table.

  • Realistic industrial fault scenarios
  • Graded difficulty: intro → advanced
  • Score your fault-finding speed
Fault Injection — Active1 fault active
⚠ Rung 3 — unexpected output state
[Stop_PB(NC→NO?)]———(Motor_Run)
Expected: contact open when Stop_PB pressed
Actual: contact closed — motor still running
Fault type
Contact polarity swap
Time elapsed
02:14
Coding tutor

One scenario. Eight dialects.
88 hands-on lessons.

The same physical machine — a motor start/stop, a conveyor, a tank fill — taught in the syntax your actual employer uses. Mitsubishi GX Works, Siemens TIA Portal, Allen-Bradley Studio 5000, Omron Sysmac, Delta, Keyence, Panasonic, and IEC 61131‑3.

IEC 61131-3Allen-BradleySiemensMitsubishiOmronDeltaKeyencePanasonic
  • Same scenario, different syntax — builds transferable mental models
  • Guided briefings walk you through each dialect's quirks
  • Live simulator runs your code against a real machine model
Press START → light comes onIEC 61131-3
(* Press START → light comes on *)IF Start_PB THEN    Run_Lamp := TRUE;END_IF;
CODESYS / genericauto-advances · click a tab to jump

Showing 3 of 8 — see all 8 dialect tracks

Wiring & fault-finding tutor

Wire a panel.
Find a fault.
Pass the lesson.

An interactive lab where you drag wires through a real panel layout — DIN rails, contactors, photoeyes, safety relays — and trace physical faults with a virtual multimeter. Eleven wiring lessons, eight fault scenarios.

  • 11 wiring lessons + 8 fault-finding scenarios
  • Drag wires, route circuits, get graded on every connection
  • Free Lesson 1 — sign up free and run it in your browser
Wiring Lab — Lesson 8 (Safety Circuit)Fault detected
PSU 24V+ / 0V / PE
K1 ContactorNO/NC swap
Motor M13-phase
Multimeter
0.0 VDC
Expected 24 V — open contact
Score
7 / 8 connections
What's inside

More than a simulator.

Four complementary product lines that take you from zero PLC knowledge to interview-ready — all in the browser.

18 lessons

Lessons

Structured theory with embedded exercises — from scan-cycle basics to PID tuning.

  • PLC Fundamentals
  • Ladder Logic Basics
  • Timers and Counters
Explore lessons
40 scenarios

Scenarios

Write real ladder logic against physics-driven machines. Automated test cases grade your solution.

  • Traffic Light
  • Motor Start/Stop
  • Bottling Line
Explore scenarios
12 quizzes

Quizzes

Timed multiple-choice sets that test concepts before and after you work through scenarios.

  • PLC Fundamentals Quiz
  • Timers and Counters Quiz
  • PLC Safety Concepts Quiz
Explore quizzes
6 tracks

Interview Prep

Full mock interviews with Q&A rounds and live scenarios. Pass to earn a downloadable certificate.

  • Junior PLC Engineer Interview
  • Maintenance Technician Interview
  • Controls Engineer Interview
Explore tracks
How it feels

Built to build intuition.

A browser tab that behaves like a real PLC bench — without the hardware budget.

Real machine physics

Every scenario simulates real equipment. Tanks fill, motors spin, valves modulate — driven by your actual ladder logic.

Live I/O experimentation

Toggle inputs by hand to see how the PLC responds. No wiring, no hardware — just click and learn.

Certificate-backed interview prep

Pass an interview track and earn a downloadable PDF certificate. Pro users get solution walk-throughs with expert commentary on every scenario.

Why this simulator

Built for how people actually learn PLC programming.

Desktop PLC tools punish beginners with install friction, licensing, and one-vendor lock-in. We strip all of that out so you can focus on the logic.

Browser-based, zero install

A full PLC programming simulator that runs in any modern browser. No Windows-only install, no vendor runtime, no license keys. Write and test ladder logic from a Chromebook, a Mac, or a rusty lab PC and get identical behaviour.

PLC programming simulator

Multi-dialect by design

One ladder logic source compiles against IEC 61131-3, Allen-Bradley (RSLogix-style), Siemens (TIA Portal-style), and Delta dialects. Practice the syntax your employer or certification body actually uses without juggling three separate tools.

Ladder logic simulator

Real machine scenarios

Forty physics-backed scenarios across motor control, water & HVAC, packaging, material handling, safety, process, and food & beverage. Each runs a real scan cycle, drives an animated scene, and grades your program against scripted test cases.

Learn PLC programming
How it works

Four steps from code to machine.

You write the logic. We handle the compiler, the scan loop, the physics, and the test report.

1
1XIC START_PB
2OTE RUN_BIT
3XIC RUN_BIT

Write ladder logic

Use the in-browser editor. IEC 61131-3 Structured Text today; Allen-Bradley, Siemens, and Delta dialects also supported.

2

Press Run

Your program compiles and starts driving the simulated I/O. Test cases track objectives and catch violations automatically.

3

Watch the machine react

A Phaser-rendered scene animates in real time — lamps, motors, photo-eyes, valves, limit switches respond to your logic.

4
Motor runs
E-stop trips
Level alarm fires

Read the test report

Automated test cases mark each objective pass or fail. A score card tells you exactly where your logic fell short.

Multi-dialect

One idea, four dialects.

The same motor seal-in rung, expressed in each syntax your employer might use. Switch dialects without rewiring your mental model.

motor-seal-in — IEC 61131-3
| START_PB OR RUN_BIT | AND NOT STOP_PB | := RUN_BIT ;
| RUN_BIT | := MOTOR_CONTACTOR ;

Auto-advances every 3 seconds · click any dialect to jump directly

See all 8 dialects → full comparison
Live scenarios

40 working machines across six verticals.

Each scenario ships with a briefing, canonical solution, automated test cases, and a physics-driven animation. Sign up to play — the first two are free.

free
Motor Control

Motor Start/Stop

Classic 3-wire motor start-stop with seal-in, emergency stop, and thermal overload protection. The contactor must latch on a momentary start-button press, drop out on stop, and latch a fault on E-stop or thermal trip. Faults may only be cleared by an explicit stop-button press once the underlying condition has gone away. You also need to detect a welded contactor via the auxiliary feedback contact.

free
Fundamentals

Car Wash

An automatic car-wash bay runs a fixed wash sequence. When a car drives into the bay it breaks the CAR_PRESENT photo-eye. The operator then presses START to begin the cycle. The bay must run each stage for three seconds, one stage at a time, in order: SOAP, then BRUSHES, then RINSE, then DRYER. When the dryer finishes, a DONE lamp latches on to tell the driver the wash is complete. Pressing STOP at any point is an emergency abort: every output must drop immediately.

free
Fundamentals

Beginner 01 — Switch turns on Light

Your first PLC program. When SWITCH is ON, LIGHT turns ON. When SWITCH is OFF, LIGHT turns OFF. That's it — one rung. A contact reads an input. A coil writes an output. When the contact is true, energy flows right to the coil and the output energises.

free
Fundamentals

Beginner 02 — Two switches (AND)

Two switches in series. The light only turns on when SWITCH_1 AND SWITCH_2 are both ON. If either is OFF the light is OFF. This is how interlocks work — guard-closed AND start-pressed, both required to start the motor. Series contacts read as AND.

free
Fundamentals

Beginner 03 — Two switches (OR)

Two switches in parallel. The light turns on when SWITCH_1 OR SWITCH_2 is ON. Either one is enough. This is how you wire two start buttons — front-of-machine and back-of-machine — so an operator on either side can run the line. Parallel contacts read as OR.

free
Fundamentals

Beginner 04 — Stop button (NC contact)

The light is on by default. Pressing STOP_BUTTON should turn it OFF. That's a normally-closed (NC) contact — current passes through it until the input is true, then it breaks. This is exactly how a real stop button works: idle = circuit complete, pressed = circuit broken. Same idea as an e-stop.

free
Fundamentals

Beginner 05 — Start/Stop (no latch)

Combine an NO START with an NC STOP. Hold START to turn the LIGHT on, release it and the LIGHT drops out. STOP also turns it off. This is the obvious-but-wrong design. Try it. Notice what you have to do to keep the LIGHT on. The next lesson fixes the problem with a latch.

free
Fundamentals

Beginner 06 — Latch the start (SET coil)

Now we fix stage 4. A SET coil (S=) latches a bit on. Pulse START once — the LIGHT turns on and stays on, even after you release the button. That's how real machines work: you tap the start button, the motor runs. You don't stand there holding the button down all day.

free
Fundamentals

Beginner 07 — Latched Start/Stop (SET/RESET)

Add a STOP to the previous scenario. Pulse START, LIGHT latches on. Pulse STOP, LIGHT resets off. Pulse START again, it comes back on. Two rungs: one SET, one RESET. That's the pattern behind nearly every industrial start/stop circuit you'll ever read.

free
Fundamentals

Beginner 08 — Delayed-on light (TON)

An on-delay timer: after SWITCH closes, wait 2 seconds, then turn LIGHT on. Release the switch early and the timer resets — the LIGHT never comes on. A TON ("Timer On-Delay") is a function block. You declare an instance in VAR, call it with an enable input and a preset time in milliseconds, then read its .Q output bit on a rung.

free
Fundamentals

Beginner 09 — Conveyor with auto stop

Pull everything together. Tap START — MOTOR latches on. After 3 seconds, a timer auto-shuts the MOTOR off. That's a real industrial pattern: short-cycle a conveyor with a single button press. Three rungs: a SET on START, a TON enabled by MOTOR, and a RESET when the timer's .Q goes true.

free
Fundamentals

Free-play Sandbox

Build anything you like. Wire up the available tags and write ladder logic — no objectives, no grading, just experimentation.

This week’s featured challenge

Lesson 2 — E-Stop (NC contact)

No completions yet — be the first!

See full leaderboard →
How we compare

Not just another video course.

Video courses explain concepts. Vendor software locks you to one platform. We let you practice on real machines in your browser, across every major dialect.

FeaturePLC SimulatorVideo courses(typical)Vendor software(RSLogix / TIA Portal)
Browser-based
Multi-dialectLimitedLimited
Real machine scenariosVideo only
Interview prep + certificates
Solution walk-throughs
PLC handbook PDF
No install needed
Scenario / lab count40+~12N/A
Starting price$12/mo$99/yr$1,500+ license

Comparison represents typical tools in each category. Features vary; check individual vendors.

Pricing

Free to try. Pay once a year for full access.

A hands-on PLC practice library, interview portfolio, and reference handbook — for less than one hour of a controls engineer’s rate.

Free
$0
forever free

Sample the simulator — no card needed.

  • Curriculum lessons 1–6 (free intro track)
  • 40+ practice scenarios (basic tier locked)
  • 8-dialect comparison reference
  • Sensor School previews + dialect picker
Start free
Basic
$99/yror $12/month
Save 31% annually

Serious learners and students.

  • 37 of 40 scenarios (3 premium reserved for Pro)
  • All 18 lessons + 12 quizzes
  • Progress tracking + dashboard cards
Go Basic
Most popular
Pro
$249/yror $29/month
Save 28% annually

Working engineers and job candidates.

  • All 8 PLC dialects (IEC, AB, Siemens, Mitsubishi, Omron, Schneider, Delta, IL)
  • AI Rung Assistant — debug ladders in plain English
  • Fault-injection scenarios — diagnose like a real tech
  • Portfolio PDF export + LinkedIn shareable certificates
  • All 6 interview tracks + cert prep packs included
  • Solution walk-throughs with expert commentary
Go Pro

Training a class or team? Create a team free — bulk Pro at $199/seat/year.

See full pricing →
Questions

Frequently asked.

No. Everything runs in your browser — the editor, compiler, scan loop, and the animated machine. You just need a modern Chrome, Firefox, Safari, or Edge.

Ready to start?

Two free scenarios. No credit card. Sign up in under a minute.

Used by learners and engineers worldwide. No install, no vendor lock-in.