PLC Simulator
Browser-based · PLC, HMI & robot programming · 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 — plus a drag-and-drop HMI builder and a browser robot simulator. No install, no card.

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

Join 1300+ 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
HMI builder

Build the operator screen.
Run the real ladder behind it.

Drag pushbuttons, lamps, gauges, tank bars, sliders and trends onto a canvas, bind each widget to a tag, and run it against a live simulated PLC — real scan cycle, real interlocks. Wire up a full alarm system and stitch multi-screen, SCADA-style projects together.

  • Pushbuttons, lamps, gauges, level bars, sliders, selectors & live trends
  • A full alarm system — severity, acknowledge, shelve — plus multi-screen projects
  • Free to start — build to a verifiable HMI Designer certificate
Motor Control Panel — RunLive PLC
RUNNINGO:0/0LEVELPRESSURE
HIGHTank level above setpoint[ACK]
Robot simulator

Program a real robot,
right in your browser.

Write real robot code — URScript, ABB RAPID, KUKA KRL, FANUC TP — and run it on a simulated arm with real kinematics and live Havok physics. Jog, set waypoints, pick and place, drive the gripper, and learn collaborative-robot safety. No install. No robot. No vendor license.

6-axis armSCARACartesian gantryDeltaCobot
  • 5 robot types with real kinematics & physics — 4 real vendor languages
  • Pick-and-place, gripper I/O, waypoints, payload & protective-stop safety
  • Free to start jogging — Pro unlocks the full graded course & certificate
UR5e — Pick & PlaceLive physics
PICKPLACE
URScript
ABB RAPID
KUKA KRL
TCP error: 18 mm  ·  Payload: 3.0 kg  ·  Safety: OK
Three guided paths

Pick a path. Earn the certificate.

Each path is concept-first, then hands-on in the browser — progress-tracked and building to a verifiable certificate you can show an employer.

PLC Path

Ladder logic from zero — timers, counters, faults — across 8 vendor dialects.

PLC certificate
Start the PLC Path

HMI Path

Operator screens on a live PLC — tags, alarms, multi-screen SCADA lines.

HMI Designer certificate
Start the HMI Path

Robotics Path

Real robot code on a simulated arm — frames, moves, pick-and-place, safety.

Robot Programming certificate
Start the Robotics Path
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
Process

Garage Door Controller

A residential overhead garage door driven by a reversing motor. Pressing OPEN starts the UP contactor until the UP_LIMIT switch is made; pressing CLOSE starts the DOWN contactor until DOWN_LIMIT. While the door is closing, a photo-eye mounted near the floor monitors for obstructions — if OBSTACLE_PE trips during a close, the motor must immediately reverse and drive the door back up to the fully-open position. A warning lamp flashes whenever the door is in motion. UP and DOWN contactors must NEVER be energised at the same time; a mechanical interlock is also present, but your ladder logic must enforce it as well.

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.

This week’s featured challenge

Wiring 9 — RS-485 / Modbus RTU Daisy Chain

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.