Sitelet https://plcsimulationsoftware.com/plc-programming-course
PLC Simulator
Self-paced free course

PLC Programming Course — Free, Online, Hands-On.

A structured PLC programming course with 12 core lessons, 170 source-catalogued practice records, and real ladder logic exercises. No install, no credit card, no trial clock.

The first exercise in the course — you write the logic, we run the machine.

Overview

What this PLC programming course covers.

A PLC programming course should teach you to read and write the logic that runs industrial controllers: ladder diagrams, Structured Text, and the function blocks defined in IEC 61131-3. It should also make you dangerous with the two brand dialects you will encounter on most plant floors — Allen-Bradley and Siemens.

This course covers exactly that, in a specific sequence. You start with the scan cycle and contacts-and-coils (Module 1), move to timers, counters, comparisons, and Structured Text (Module 2), then work through structured design patterns like state machines and SFC (Module 3). From there you run hands-on machine scenarios — motor starters, conveyor sorters, batch mixers, PID loops (Module 4) — before finishing with debugging methodology, alarms, safety systems, and code organisation (Modules 5 and 6).

What makes this different from most PLC programming classes is the exercise model. Every scenario ships with a test harness: hidden test cases that run your actual ladder logic against a simulated machine and return a pass/fail. You get the same feedback loop a hardware lab gives you — without the hardware budget or the lab booking system.

PLC programming course overview — PLC architecture: CPU, power supply, input and output modules, and the field devices they connect toA modular PLC rack on a backplane: power supply, CPU processor, input module, output module and a communications module side by side.PLC RACKbackplane busPSUPowerCPUProcessorDIInputDOOutputNETComms
Lesson 1 of the course maps the hardware you are programming: CPU, I/O modules, and field wiring.
PLC programming course — the PLC scan cycle: read inputs, solve the program logic, then write outputs, repeated every scanThe repeating PLC scan cycle: read inputs, execute the ladder logic, update outputs, then housekeeping, looping continuously.1Read Inputs2Execute Logic3Update Outputs4HousekeepingSCANCYCLE
The scan cycle is the single mental model your whole program runs on — read inputs, solve logic, write outputs, repeat.
At a glance

Everything included in the course.

12 core lessons

Written with diagrams — faster to work through than video.

170

Source-catalogued practice records; visible access varies by plan and rollout.

12 quizzes

Multiple-choice with hidden marking — no answer-peeking.

9 dialects

IEC 61131-3 and vendor-style learning tracks; not full firmware emulation.

40–80 hours

Estimated total to reach interview-ready confidence. [ESTIMATE]

Free to start

32 source-tagged records after signup; one guided program at /try.

Curriculum you can see

Progress from first I/O to verified machine control

Each course stage adds a specific capability and an observable test. The goal is not to collect lesson views; it is to build, diagnose and prove increasingly realistic PLC behavior.

Six-stage PLC programming course roadmap from I O and Boolean logic through timers, patterns, diagnosis and practical assessment
01The course moves from observable I/O behavior to reusable control patterns, fault reasoning and an assessment that produces evidence—not just lesson completion.
Beginner PLC switch and lamp lesson showing off and on states, matching ladder contact and coil, and two tests passed
02The first learning loop is deliberately small: predict the state, run both input cases and prove that the output follows the program.
PLC conveyor lesson aligning a photoeye pulse, TON delay, reject gate action and CTU counter accumulator
03Timers and counters become understandable when their internal state is aligned with sensor pulses and visible machine events.
Pump-skid PLC lesson connecting permissive, seal-in and alarm-latch patterns to level switches, overload, pump and reset devices
04Reusable patterns are taught in context: permissives decide whether a start is allowed, seal-in logic remembers run state and alarm latches preserve important faults.
PLC tank debugging exercise comparing expected and actual behavior, a wrong high-level input address, corrected logic and passing retest
05Debugging starts from a failed requirement. The I/O table and ladder identify the address mismatch; the same test then proves the correction.
PLC programming practical assessment proving safe stop, sequence, jam timeout and recovery on a guarded conveyor
06A credible assessment asks the learner to interpret requirements, build the control, run hidden cases and preserve evidence for each required behavior.
Course curriculum

Six modules, structured from first principles.

Work through the modules in order. Each one builds on the last. Resist the urge to jump to the advanced scenarios — the sequencer muscle you build in Module 1 is what makes Module 4 tractable.

PLC programming course — a complete ladder logic rung: input contacts in series and parallel controlling an output coil, read left power rail to rightA basic ladder logic rung between two power rails: an examine-if-closed contact (XIC) in series driving an output coil (OTE).L1L2] [StartXIC I:0/0LampOTE O:0/0
A finished rung — contacts on the left decide whether power flows to the coil on the right. This is what you will be writing by the end of Module 1.

Module 1 — Foundations

The four lessons every PLC programmer must own before writing a single rung. Estimated: 4–8 hours.

  1. 1
    PLC Fundamentals

    What a PLC is, the scan cycle, and how I/O addressing works.

    Read →
  2. 2
    Ladder Logic Basics

    Contacts, coils, XIC/XIO, power flow across a rung.

    Read →
  3. 3
    Latching and Sealing-In

    SET/RESET coils, the seal-in rung, motor start/stop fundamentals.

    Read →
  4. 4
    Timers and Counters

    TON, TOF, TP, CTU, CTD — every beginner trips on timers first.

    Read →
PLC programming course Module 1 — ladder logic symbols: normally-open contact (XIC), normally-closed contact (XIO), and output coil (OTE)The core ladder logic symbols side by side: XIC examine-if-closed, XIO examine-if-open, OTE output energize, OTL output latch and OTU output unlatch.XICIfXIOIfOTEEnergizeLOTLLatchUOTUUnlatch
The three symbols Module 1 starts with — every rung you write is built from contacts and coils.
PLC programming course Module 1 — the seal-in (latching) rung: a START button sets a motor coil that holds itself in until STOP breaks the rungA seal-in latch rung: a Start contact in parallel with a Hold contact, in series with a normally-closed Stop contact, driving an output coil.StartHold (seal)StopMotor
The seal-in rung — the motor start/stop pattern behind your first hands-on exercise.

Module 2 — Logic Building Blocks

Comparisons, math, analog I/O, and Structured Text. Estimated: 4–8 hours.

  1. 5
    Comparisons and Math

    EQU, NEQ, GRT, LES, ADD, SUB — analog thresholds and setpoints.

    Read →
  2. 6
    Function Blocks Advanced

    Advanced timer and counter edge cases; FB instantiation patterns.

    Read →
  3. 7
    Analog I/O and Scaling

    4–20 mA loops, raw counts to engineering units, clamping.

    Read →
  4. 8
    Introduction to Structured Text

    ST syntax, CASE statements, and when to use ST over ladder.

    Read →
PLC programming course Module 2 — on-delay timer (TON): the timer accumulates while its input is true and turns its DONE bit on once the preset time elapsesA TON on-delay timer: the accumulated time bar ramps up toward the preset value, and the done (DN) bit turns on when the accumulator reaches preset.TONPRE 5000ACCACC ramps to PREPREDNdone bit
PLC programming course Module 2 — count-up counter (CTU): each false-to-true input transition increments the accumulator until it reaches the presetA CTU count-up counter: each input pulse increments the accumulator toward the preset, and the done (DN) bit turns on when count reaches preset.count pulsesCTUPRE 5ACC 3ACCcount toward presetDNdone bit
PLC programming course Module 2 — digital and analog I/O: discrete on/off signals plus scaled 4–20 mA analog inputs mapped to engineering unitsA digital input pushbutton wired to a PLC input card, and a PLC output card driving a lamp, with a sinking versus sourcing hint.I/O CARDINPUTOUTPUTPushbuttonI:0/0LampO:0/0sinking (NPN) vs sourcing (PNP)
Module 2 covers analog scaling — turning raw 4–20 mA counts into real engineering units.
PLC programming course Module 2 — Structured Text: an IEC 61131-3 textual language using IF, CASE, and assignment, for logic that is awkward in ladderA small Structured Text code block in an editor: an IF/THEN condition, a TON timer call and assignments, showing text-based PLC programming.main.st — Structured Text1IF Start AND NOT Stop THEN2 Run := TRUE;3END_IF;4DelayTmr(IN := Run, PT := T#5s);5Lamp := DelayTmr.Q;
Structured Text — the IEC 61131-3 textual language you learn alongside ladder in Module 2.

Module 4 — Machine Scenarios

Eight hands-on exercises that run your logic against a simulated machine. Auto-graded. Estimated: 12–24 hours for this module.

The full scenario library contains 170 source-catalogued practice records across motor control, water/HVAC, packaging, safety, and process verticals. Visible availability varies by account, plan, entitlement, and staged rollout.

PLC programming course Module 4 — motor start/stop control: START and STOP push buttons, a holding contact, an overload, and the motor output the simulator runsA 3-wire motor control circuit: Stop and Start pushbuttons, a contactor coil with a seal-in auxiliary contact and an overload contact, driving a motor.StopStartM (seal-in)OLMMmotor
The first scenario you grade — your ladder logic drives this exact motor circuit in the browser simulator.
Who it’s for

Who should take this PLC programming course?

This course is designed for anyone who needs to program PLCs but does not have consistent access to hardware or a structured learning path. Four groups find it particularly useful.

Complete beginners

No programming background needed. The course starts with what a PLC actually is and builds from first principles. You write real ladder logic by lesson two.

Engineering students

Preparing for an internship or controls-engineering interview? The scenario library gives you the practice reps your university lab session could not — without booking lab time.

Maintenance technicians

You already understand the machines. This course bridges the gap from reading ladder logic to writing it — and from recognizing a fault to isolating it in code.

Adjacent-field engineers

Mechanical, electrical, or software engineers moving into automation. The scan-cycle model is unlike web or embedded development; the course explains the mental shift explicitly.

Honest comparison

What makes this different from other PLC programming courses?

Most PLC programming classes are video-based. Udemy courses range from $20 to $100 and cover theory well, but you watch a completed rung rather than writing one. If you pause and try to replicate it, you are on your own with no feedback. YouTube tutorials are free but fragmented — there is no guaranteed sequence, no grading, and no way to know when you are ready for the next concept.

Paid platforms like RealPars (approximately $600/year) and PLCacademy (approximately $500 for a full course) are solid and genuinely structured. They are still video-based, and neither ships a browser-based simulator with auto-graded test cases. Classroom training from Allen-Bradley or Siemens partners typically starts at $2,000 per week and requires you to be in a specific city on a specific date.

This course is written, not filmed. Reading a lesson is faster than watching it when you already understand the mechanical context. Every scenario has a test harness: your code either makes the machine behave correctly or it does not, and you get specific feedback about which test case failed. That tight loop — write, run, fail, fix, pass — is the mechanism that builds genuine PLC programming competence faster than passive watching. It is also free to start, with no artificial trial deadline pushing you to rush.

If you want to compare in detail, see our PLC training overview page or how the simulator works.

“A course that cannot fail you cannot teach you. Every scenario here is graded against scripted test cases precisely because ‘watched all the videos’ and ‘can write a working interlock’ are different skills — employers only pay for the second.”
— Paul, author of this course

Whichever course you choose, learn the IEC 61131-3 languages first. The five standard languages — Ladder Diagram, Function Block Diagram, Structured Text, Instruction List, and Sequential Function Chart — are vendor-neutral, so the concepts transfer directly from this simulator to Allen-Bradley Studio 5000, Siemens TIA Portal, CODESYS, or any other platform you meet on the job. You can also dive straight into the learn PLC programming hub if you prefer to follow individual topics rather than the full course track.

PLC programming course — the five IEC 61131-3 languages: Ladder Diagram, Function Block Diagram, Structured Text, Instruction List, and Sequential Function ChartThe five IEC 61131-3 PLC programming languages as chips: Ladder Diagram, Function Block Diagram, Structured Text, Instruction List and Sequential Function Chart.IEC 61131-3 — five languagesLDLadder DiagramFBDFunction BlockSTStructured TextILInstruction ListSFCSequential Func. Chart
The five IEC 61131-3 languages this course is built around — learn these and the skills transfer to any PLC brand.
OptionCostHands-on exercisesAuto-graded
This courseFree (Pro optional)170 source-catalogued practice recordsYes
Udemy video courses$20–100NoneNo
YouTube tutorialsFreeNoneNo
RealPars / PLCacademy~$600/yr (RealPars) / varies (PLCacademy)LimitedNo
Classroom training$2,000+/weekLab time onlyNo
Time commitment

How long does the PLC programming course take?

The short answer: 40–80 hours end to end — roughly 8–16 hours for the fundamentals, 20–40 hours once the machine scenarios are included, and the balance on troubleshooting, safety, and the interview tracks. Evening learners typically finish in six to eight weeks. Set against O*NET’s 2025 median wage of $64,520 for industrial machinery mechanics, the roles this skill most often upgrades, it is a small investment.

Modules 1 and 2 — fundamentals through logic building blocks — take roughly 8–16 hours of focused practice for most learners. By the end you will have written working ladder rungs for timers, counters, seal-in circuits, and Structured Text conditionals. That is the point where you can read someone else’s ladder logic without constantly looking up notation.

Adding the machine scenarios in Modules 3 and 4 brings the total to 20–40 hours. A conveyor sorter, a batch mixer, and a PID temperature loop will each take you two to four hours the first time — longer than they look, because the test harness is precise and your first attempt will miss edge cases you did not think about. That is the point. Missing them in a simulator is free; missing them on a live production line is not.

Completing all six modules and working through the interview prep tracks is a 40–80 hour commitment. Most people doing this in the evenings — one to two hours per night — finish the foundational modules in three to four weeks and reach interview-ready confidence in six to eight weeks. That is a realistic timeline for an entry-level controls-engineering role, not a career change number. [ESTIMATE — based on typical learner progression; individual results vary.]

Explore the full lesson library or go directly to the PLC Fundamentals lesson to start.

Questions

PLC programming course — frequently asked questions.

Yes. A free account includes the first 6 core lessons per dialect and 32 source-tagged free-tier practice records. The /try path guides you through one first program without an account. There is no trial clock and no credit card required to start.

Open Module 1 now.

The PLC Fundamentals lesson takes about 20 minutes to read. The Motor Start/Stop scenario takes about 45 minutes to pass on your first attempt. Both are free.

Also: motor start/stop scenario · traffic light scenario · pricing · about the simulator

Competency and practice field guide

PLC programming course: practice plan

Direct answer

The learner can build, test, diagnose and explain a small control system rather than only recall instruction names.

Written for beginners, technicians and instructors seeking a sequenced route from Boolean logic to tested machine programs.

System map / 02

NODE 01observable

Scope

Competencies sequenced from I/O and scan logic to state and diagnostics.

NODE 02observable

Signal path

Lessons, exercises, scenarios and assessments to one skill map.

NODE 03observable

Baseline practice

Working discrete logic with stop priority and feedback.

NODE 04observable

Edge cases

Timing limits, data types, reset and startup behavior.

NODE 05observable

Fault practice

An injected logic, signal or machine fault.

NODE 06observable

Transfer to the job

Course artifacts transferred into a reviewed portfolio.

Real plc programming course footage

See this exact skill in the working simulator.

Watch the real browser product respond to the task on this page, then try the same practical workflow yourself. No slides, concept mockups, install, or credit card.

Try this in the browser
PLC Programming Course — From First Rung to Industrial Scenarios