A PROGRAMMABLE LOGIC CONTROLLER (PLC) is an industrial computer control system that continuously monitors the state of input devices and makes decisions based upon a custom program to control the state of output devices.
Almost any production line, machine function, or process can be greatly enhanced using this type of control system. However, the biggest benefit in using a PLC is the ability to change and replicate the operation or process while collecting and communicating vital information.
Another advantage of a PLC system is that it is modular. That is, you can mix and match the types of Input and Output devices to best suit your application.
The first Programmable Logic Controllers were designed and developed by Modicon as a relay re-placer for GM and Landis.
The Central Processing Unit, the CPU, contains an internal program that tells the PLC how to perform the following functions:
There are four basic steps in the operation of all PLCs; Input Scan, Program Scan, Output Scan, and Housekeeping. These steps continually take place in a repeating loop.
|Four Steps In The PLC Operations
While Ladder Logic is the most commonly used PLC programming language, it is not the only one. The following table lists of some of languages that are used to program a PLC.
Ladder Diagram (LD) Traditional ladder logic is graphical programming language. Initially programmed with simple contacts that simulated the opening and closing of relays, Ladder Logic programming has been expanded to include such functions as counters, timers, shift registers, and math operations.
Function Block Diagram (FBD) - A graphical language for depicting signal and data flows through re-usable function blocks. FBD is very useful for expressing the interconnection of control system algorithms and logic.
Structured Text (ST) – A high level text language that encourages structured programming. It has a language structure (syntax) that strongly resembles PASCAL and supports a wide range of standard functions and operators. For example;
|If Speed1 > 100.0 then
Flow_Rate: = 50.0 + Offset_A1;
Flow_Rate: = 100.0; Steam: = ON
Instruction List (IL): A low level “assembler like” language that is based on similar instructions list languages found in a wide range of today’s PLCs.
Sequential Function Chart (SFC) A method of programming complex control systems at a more highly structured level. A SFC program is an overview of the control system, in which the basic building blocks are entire program files. Each program file is created using one of the other types of programming languages. The SFC approach coordinates large, complicated programming tasks into smaller, more manageable tasks.
There are many PLC systems on the market today. Other than cost, you must consider the following when deciding which one will best suit the needs of your application.
The following table shows a list of commonly used Acronyms that you see when researching or using your PLC.
|ASCII||American Standard Code for Information Interchange|
|BCD||Binary Coded Decimal|
|CSA||Canadian Standards Association|
|EIA||Electronic Industries Association|
|HMI||Human Machine Interface|
|IEC||International Electrotechnical Commission|
|IEEE||Institute of Electrical and Electronic Engineers|
|I/O||Input(s) and/or Output(s)|
|ISO||International Standards Organization|
|LSB||Least Significant Bit|
|MMI||Man Machine Interface|
|MODICON||Modular Digital Controller|
|MSB||Most Significant Bit|
|PID||Proportional Integral Derivative (feedback control)|
|RTU||Remote Terminal Unit|
|SCADA||Supervisory Control And Data Acquisition|
|TCP/IP||Transmission Control Protocol / Internet Protocol|
portions of this tutorial contributed by www.modicon.com and www.searcheng.co.uk
A small number of U.S. based tech companies design, manufacture and sell PLC modules. Advanced Micro Controls Inc (AMCI) is such a company, specializing in Position Sensing interfaces and Motion Control modules.
The company's products are listed below for your reference: