Note: Updated For 2026
Books can teach you a lot about PLC programming, from ladder logic and structured text to working with specific platforms such as the Siemens S7-1200.
The collection below brings together the best PLC programming books. Some are free PDF downloads; others are sold as printed books or e-books.
I selected these books to help you choose from the many PLC programming titles available and spend your time and money on resources you can learn from.
You will find many types of PLC programming books online. Most cover PLC programming in general, including how a PLC works and how to use its programming languages. One common [...]
This is the second part of my ladder logic tutorial. In part 1 of the ladder logic tutorial, I introduced the basics of ladder logic and some of the basic instructions. Here, we will build on that starting point.
In this second part, I will show you how to solve practical problems with ladder logic and use those solutions to build PLC programs. As we work through the examples, you will also learn several more ladder logic instructions:
Set / Reset Coils Set or Reset Priority Set / Reset Function Blocks SR Function Block RS Function Block Building Logic with Ladder Logic Logic Gates with PLC Instructions OR and AND [...]A PLC counter counts up or down within a function block until it reaches a limit. Reaching that limit sets the output.
In PLC programming, counting tracks how often a process completes or how many products it produces. A PLC counter works as a digital tally counter to help manage these industrial tasks efficiently.
SCADA stands for “Supervisory Control and Data Acquisition”.
Engineers usually shorten that long name to “SCADA System”, or simply “SCADA”.
The basics of SCADA include its systems and architecture, applications and programming. These are the topics covered here.
PLC timers control when events happen, from starting a motor to setting a signal’s duration. They can seem tricky when you’re learning, but become straightforward with practice. Understanding how they work lets you choose and use them in your programs. The examples below connect each timer’s name to its behavior, so you can understand what happens when it runs.
In automation and manufacturing, you will inevitably encounter ISA-88, also called S88.
Published by The International Society of Automation (ISA), the standard defines models and terminology for batch control. Its aim is to standardize batch control so automation suppliers can more easily integrate, communicate and configure batches. Europe has adopted it as IEC 61512-1.
Most manufacturers and automation suppliers working with batch control use the standard today. Food and medicine producers in particular use all or part of it to keep track of batch production.
Are you looking for a course in PLC programming?
You can choose from many PLC training courses, including free options, but their reliability and quality differ. I put this guide together to help you find the course that suits your needs.
Compare what each course teaches and what it costs so you can decide which one suits you and whether it is worth paying for.
Our PLC training selections cover Allen Bradley (Rockwell Automation), Siemens, Omron and Factory Automation, so you can find a course for the platform you want to learn.
Compare the Best Online PLC Training Courses of 2026 below.
What is PLC Training?PLC training is training designed to help [...]
Do you know how to scale an analog input or wire an analog output?
Analog signals can be difficult to work with in PLC programming. Wiring an analog input or output and using it in your program can both be tricky. Most example PLC programs use digital signals, as do most examples in my Structured Text Tutorial.
Many of you have asked how to use analog signals in PLC programming, so I wrote this article to explain them. Analog signals are common in PLC programs and in a SCADA system. We will cover how to connect a 4-20mA analog transmitter to your PLC and how to use that signal once it reaches your PLC program. We will also examine how to scale an analog signal in [...]
The Function Block Diagram (FBD) is an official, widely used PLC programming language. It gives you a simple graphical way to connect functions in a PLC program. Function Block Diagram is easy to learn and supports many possibilities.
A PLC programming language I rate among the best visual languages is ladder logic, also called ladder diagram (LD).
Ladder logic is much more visual than most programming languages. That visual approach often makes the language easier for people to learn.
Ladder logic looks similar to electrical relay circuits. If you already have some experience with relay control and electrical circuits, that familiarity will likely help you learn it faster.
You don’t need that background to begin. When I first learned ladder logic, I didn’t understand relays either.
This Arduino tutorial starts from scratch and works through the basics, so you can follow along without previous experience. I’ll guide you through setting up your computer and writing your very first program for the Arduino Uno board. We will begin with the setup and build from there.
Do you find large ladder diagrams hard to read, including your own?
Although ladder logic is easy for beginners to learn, reading and understanding it can be difficult. For that reason, some programmers prefer Structured Text for PLC programming. This tutorial explains how it works.
Once you understand normally open and normally closed contacts, you can decide where and how to use them in PLC programming. This means relating your PLC program to the physical PLC inputs.
Ladder logic symbols are the building blocks of ladder diagrams. This guide covers the symbols defined in IEC 61131-3 and includes downloads in several formats, including a PDF you can keep for reference.
Here is how I often begin a PLC programming project:
When I develop a PLC program, I steal other people’s ladder logic.
I use other people’s ladder logic examples to find ideas and solutions for my PLC programs.
When programming a PLC with ladder logic, you will sometimes encounter a problem you have solved before. Looking through ladder logic program examples can help you find a solution quickly. An example may even suggest a better approach than the one you first had in mind.
