Instruction List – PLC Programming

Instruction list the assembly look a like language for plc programming. Is one of the essential languages to develop and program mainstream plcs. For industrial automation applications. Some of the commands which are included are commands such as LD, OUT, SET, LDI, LDF, TMR and others. Most of these commands are associated with their Ladder naming convention. Difference being between Ladder is that the instruction list language. Is text based and gets programmed through typing instructions.

Unlike ladder which is a diagram language which allows you to add contacts, outputs, latches and other sub routines to your plc program.

Here is a explanation of some of the basic instruction list functions.

Example plc programming instructions

LD – Means open contact and is usually represented by two vertical parallel lines on the ladder diagram.

LDI – Means closed contact. Usually represents two vertical parallel lines with a line through it.

OUT – Energizes and output.

SET – Latches a output on your ladder diagram.

TMR – Is conventional timer which you can use in your ladder plc program.

Some other useful commands are STL which allows you to define step ladder operations. Which segregate your instruction list code from the rest of your program. PWM is a well known function also in arduino based development which allows you to create pulses in a Pulse Width Modulation form. Often used to drive devices which have stepping such as stepper motors.

How instruction list works

Instruction list in plc programming usually uses a step by step approach in the fashion of inputs and outputs. For a output to run a input condition needs to be met. Often in industrial automation projects known as energizing a contact or output. Once an output is energized it too can be used in a condition later in the program to meet some condition. Thus the naming of the convention programmable logic controllers.

Most of the plc programs are based on basic programming logic which can get very long and tedious to understand. However with a bit of practice it can become just as simple to understand as conventional programming languages.

Example instruction list plc program

Here is a simple program to give you an idea of how an instruction list program looks.


This simple program will turn on the output Y0 in the event of the memory register M0 gets energized.