Sunday, July 17, 2016

PLC IN DETAILS

Before the advent of solid-state logic circuits, logical control systems were designed and built exclusively around electromechanical relays. Relays are far from obsolete in modern design, but have been replaced in many of their former roles as logic-level control devices, relegated most often to those applications demanding high current and/or high voltage switching.
Systems and processes requiring “on/off” control abound in modern commerce and industry, but such control systems are rarely built from either electromechanical relays or discrete logic gates. Instead, digital computers fill the need, which may be programmed to do a variety of logical functions.


In the late 1960’s an American company named Bedford Associates released a computing device they called the MODICON. As an acronym, it meant Modular Digital Controller, and later became the name of a company division devoted to the design, manufacture, and sale of these special-purpose control computers. Other engineering firms developed their own versions of this device, and it eventually came to be known in non-proprietary terms as a PLC, or Programmable Logic Controller. The purpose of a PLC was to directly replace electromechanical relays as logic elements, substituting instead a solid-state digital computer with a stored program, able to emulate the interconnection of many relays to perform certain logical tasks.
A PLC has many “input” terminals, through which it interprets “high” and “low” logical states from sensors and switches. It also has many output terminals, through which it outputs “high” and “low” signals to power lights, solenoids, contactors, small motors, and other devices lending themselves to on/off control. In an effort to make PLCs easy to program, their programming language was designed to resemble ladder logic diagrams. Thus, an industrial electrician or electrical engineer accustomed to reading ladder logic schematics would feel comfortable programming a PLC to perform the same control functions.
PLCs are industrial computers, and as such their input and output signals are typically 120 volts AC, just like the electromechanical control relays they were designed to replace. Although some PLCs have the ability to input and output low-level DC voltage signals of the magnitude used in logic gate circuits, this is the exception and not the rule.
Signal connection and programming standards vary somewhat between different models of PLC, but they are similar enough to allow a “generic” introduction to PLC programming here. The following illustration shows a simple PLC, as it might appear from a front view. Two screw terminals provide connection to 120 volts AC for powering the PLC’s internal circuitry, labeled L1 and L2. Six screw terminals on the left-hand side provide connection to input devices, each terminal representing a different input “channel” with its own “X” label. The lower-left screw terminal is a “Common” connection, which is generally connected to L2 (neutral) of the 120 VAC power source.

Inside the PLC housing, connected between each input terminal and the Common terminal, is an opto-isolator device (Light-Emitting Diode) that provides an electrically isolated “high” logic signal to the computer’s circuitry (a photo-transistor interprets the LED’s light) when there is 120 VAC power applied between the respective input terminal and the Common terminal. An indicating LED on the front panel of the PLC gives visual indication of an “energized” input:

Output signals are generated by the PLC’s computer circuitry activating a switching device (transistor, TRIAC, or even an electromechanical relay), connecting the “Source” terminal to any of the “Y-” labeled output terminals. The “Source” terminal, correspondingly, is usually connected to the L1 side of the 120 VAC power source. As with each input, an indicating LED on the front panel of the PLC gives visual indication of an “energized” output:

In this way, the PLC is able to interface with real-world devices such as switches and solenoids.
The actual logic of the control system is established inside the PLC by means of a computer program. This program dictates which output gets energized under which input conditions. Although the program itself appears to be a ladder logic diagram, with switch and relay symbols, there are no actual switch contacts or relay coils operating inside the PLC to create the logical relationships between input and output. These are imaginary contacts and coils, if you will. The program is entered and viewed via a personal computer connected to the PLC’s programming port.
Consider the following circuit and PLC program:

When the pushbutton switch is unactuated (unpressed), no power is sent to the X1 input of the PLC. Following the program, which shows a normally-open X1 contact in series with a Y1 coil, no “power” will be sent to the Y1 coil. Thus, the PLC’s Y1 output remains de-energized, and the indicator lamp connected to it remains dark.
If the pushbutton switch is pressed, however, power will be sent to the PLC’s X1 input. Any and all X1 contacts appearing in the program will assume the actuated (non-normal) state, as though they were relay contacts actuated by the energizing of a relay coil named “X1”. In this case, energizing the X1 input will cause the normally-open X1 contact will “close,” sending “power” to the Y1 coil. When the Y1 coil of the program “energizes,” the real Y1 output will become energized, lighting up the lamp connected to it:

It must be understood that the X1 contact, Y1 coil, connecting wires, and “power” appearing in the personal computer’s display are all virtual. They do not exist as real electrical components. They exist as commands in a computer program—a piece of software only—that just happens to resemble a real relay schematic diagram.
Equally important to understand is that the personal computer used to display and edit the PLC’s program is not necessary for the PLC’s continued operation. Once a program has been loaded to the PLC from the personal computer, the personal computer may be unplugged from the PLC, and the PLC will continue to follow the programmed commands. I include the personal computer display in these illustrations for your sake only, in aiding to understand the relationship between real-life conditions (switch closure and lamp status) and the program’s status (“power” through virtual contacts and virtual coils).
The true power and versatility of a PLC is revealed when we want to alter the behavior of a control system. Since the PLC is a programmable device, we can alter its behavior by changing the commands we give it, without having to reconfigure the electrical components connected to it. For example, suppose we wanted to make this switch-and-lamp circuit function in an inverted fashion: push the button to make the lamp turn off, and release it to make it turn on. The “hardware” solution would require that a normally-closed pushbutton switch be substituted for the normally-open switch currently in place. The “software” solution is much easier: just alter the program so that contact X1 is normally-closed rather than normally-open.
In the following illustration, we have the altered system shown in the state where the pushbutton is unactuated (not being pressed):

In this next illustration, the switch is shown actuated (pressed):

One of the advantages of implementing logical control in software rather than in hardware is that input signals can be re-used as many times in the program as is necessary. For example, take the following circuit and program, designed to energize the lamp if at least two of the three pushbutton switches are simultaneously actuated:

To build an equivalent circuit using electromechanical relays, three relays with two normally-open contacts each would have to be used, to provide two contacts per input switch. Using a PLC, however, we can program as many contacts as we wish for each “X” input without adding additional hardware, since each input and each output is nothing more than a single bit in the PLC’s digital memory (either 0 or 1), and can be recalled as many times as necessary.
Furthermore, since each output in the PLC is nothing more than a bit in its memory as well, we can assign contacts in a PLC program “actuated” by an output (Y) status. Take for instance this next system, a motor start-stop control circuit:



The pushbutton switch connected to input X1 serves as the “Start” switch, while the switch connected to input X2 serves as the “Stop.” Another contact in the program, named Y1, uses the output coil status as a seal-in contact, directly, so that the motor contactor will continue to be energized after the “Start” pushbutton switch is released. You can see the normally-closed contact X2 appear in a colored block, showing that it is in a closed (“electrically conducting”) state.
If we were to press the “Start” button, input X1 would energize, thus “closing” the X1 contact in the program, sending “power” to the Y1 “coil,” energizing the Y1 output and applying 120 volt AC power to the real motor contactor coil. The parallel Y1 contact will also “close,” thus latching the “circuit” in an energized state:

Now, if we release the “Start” pushbutton, the normally-open X1 “contact” will return to its “open” state, but the motor will continue to run because the Y1 seal-in “contact” continues to provide “continuity” to “power” coil Y1, thus keeping the Y1 output energized:

To stop the motor, we must momentarily press the “Stop” pushbutton, which will energize the X2 input and “open” the normally-closed “contact,” breaking continuity to the Y1 “coil:”

When the “Stop” pushbutton is released, input X2 will de-energize, returning “contact” X2 to its normal, “closed” state. The motor, however, will not start again until the “Start” pushbutton is actuated, because the “seal-in” of Y1 has been lost:


An important point to make here is that fail-safe design is just as important in PLC-controlled systems as it is in electromechanical relay-controlled systems. One should always consider the effects of failed (open) wiring on the device or devices being controlled. In this motor control circuit example, we have a problem: if the input wiring for X2 (the “Stop” switch) were to fail open, there would be no way to stop the motor!
The solution to this problem is a reversal of logic between the X2 “contact” inside the PLC program and the actual “Stop” pushbutton switch:

When the normally-closed “Stop” pushbutton switch is unactuated (not pressed), the PLC’s X2 input will be energized, thus “closing” the X2 “contact” inside the program. This allows the motor to be started when input X1 is energized, and allows it to continue to run when the “Start” pushbutton is no longer pressed. When the “Stop” pushbutton is actuated, input X2 will de-energize, thus “opening” the X2 “contact” inside the PLC program and shutting off the motor. So, we see there is no operational difference between this new design and the previous design.
However, if the input wiring on input X2 were to fail open, X2 input would de-energize in the same manner as when the “Stop” pushbutton is pressed. The result, then, for a wiring failure on the X2 input is that the motor will immediately shut off. This is a safer design than the one previously shown, where a “Stop” switch wiring failure would have resulted in an inability to turn off the motor.
In addition to input (X) and output (Y) program elements, PLCs provide “internal” coils and contacts with no intrinsic connection to the outside world. These are used much the same as “control relays” (CR1, CR2, etc.) are used in standard relay circuits: to provide logic signal inversion when necessary.
To demonstrate how one of these “internal” relays might be used, consider the following example circuit and program, designed to emulate the function of a three-input NAND gate. Since PLC program elements are typically designed by single letters, I will call the internal control relay “C1” rather than “CR1” as would be customary in a relay control circuit:

In this circuit, the lamp will remain lit so long as any of the pushbuttons remain unactuated (unpressed). To make the lamp turn off, we will have to actuate (press) all three switches, like this:

This section on programmable logic controllers illustrates just a small sample of their capabilities. As computers, PLCs can perform timing functions (for the equivalent of time-delay relays), drum sequencing, and other advanced functions with far greater accuracy and reliability than what is possible using electromechanical logic devices. Most PLCs have the capacity for far more than six inputs and six outputs. The following photograph shows several input and output modules of a single Allen-Bradley PLC.

With each module having sixteen “points” of either input or output, this PLC has the ability to monitor and control dozens of devices. Fit into a control cabinet, a PLC takes up little room, especially considering the equivalent space that would be needed by electromechanical relays to perform the same functions:

One advantage of PLCs that simply cannot be duplicated by electromechanical relays is remote monitoring and control via digital computer networks. Because a PLC is nothing more than a special-purpose digital computer, it has the ability to communicate with other computers rather easily. The following photograph shows a personal computer displaying a graphic image of a real liquid-level process (a pumping, or “lift,” station for a municipal wastewater treatment system) controlled by a PLC. The actual pumping station is located miles away from the personal computer display:

Rack-Based Specialty I/O

Rack-Based Specialty I/O

Over 20 years ago, our direct interface technology was referenced within the Rockwell Automation “Pyramid Solutions Program,” now the “Encompass  Program.”  Since that time, AMCI has developed a complete selection of PLC modules that interface directly with Allen-Bradley PLCs.

AMCI proudly designs and manufacturers our products in-house, enabling superior quality and innovative solutions.  Our specialty I/O modules can be easily programmed with Rockwell Automation RSLogix/Studio 5000 software.

Because our products are 100% compatible with Allen-Bradley PLCs, you can be confident that our solutions will work for your application.
Allen-Bradley Image

1756 ControlLogix I/O

Learn More

1769 CompactLogix I/O

Learn More

1764 MicroLogix 1500 I/O

Learn More

1762 MicroLogix I/O

Learn More

1734 Point I/O

Learn More

1746 SLC500 I/O

Learn More

1771 PLC-5 I/O

Learn More

PLC Acronyms

PLC Acronyms

The following table shows a list of commonly used Acronyms that you see when researching or using your PLC.
ASCIIAmerican Standard Code for Information Interchange
BCDBinary Coded Decimal
CSACanadian Standards Association
DIODistributed I/O
EIAElectronic Industries Association
EMIElectroMagnetic Interference
HMIHuman Machine Interface
IECInternational Electrotechnical Commission
IEEEInstitute of Electrical and Electronic Engineers
I/OInput(s) and/or Output(s)
ISOInternational Standards Organization
LLLadder Logic
LSBLeast Significant Bit
MMIMan Machine Interface
MODICONModular Digital Controller
MSBMost Significant Bit
PIDProportional Integral Derivative (feedback control)
RFRadio Frequency
RIORemote I/O
RTURemote Terminal Unit
SCADASupervisory Control And Data Acquisition
TCP/IPTransmission Control Protocol / Internet Protocol

How Does A PLC Operate?

How Does A PLC Operate?

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
1.) Input Scan
  • Detects the state of all input devices that are connected to the PLC
2.) Program Scan
  • Executes the user created program logic
3.) Output Scan
  • Energizes or de-energize all output devices that are connected to the PLC.
4.) Housekeeping
  • This step includes communications with programming terminals,
    internal diagnostics, etc...
plc-operation.gif
These steps are continually
processed in a loop.

 

What Programming Language Is Used To Program A PLC?

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.
ladder-diagram.gif
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.
function-block-diagram.gif
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;
Else
    Flow_Rate: = 100.0; Steam: = ON
End_If;
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.
LD
MPC
LD
ST
RESET:
ST
 R1
RESET
PRESS_1
MAX_PRESS
LD    0
A_X43
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.
sequential-function-chart.gif

PROGRAMMABLE LOGIC CONTROLLER

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.

What Is Inside A PLC?

inside-of-plc.gif
The Central Processing Unit, the CPU, contains an internal program that tells the PLC how to perform the following functions:
  • Execute the Control Instructions contained in the User's Programs. This program is stored in "nonvolatile" memory, meaning that the program will not be lost if power is removed
  • Communicate with other devices, which can include I/O Devices, Programming Devices, Networks, and even other PLCs.
  • Perform Housekeeping activities such as Communications, Internal Diagnostics, etc.

PROCESS CONTROLLERS

PROCESS CONTROLLERS
Controllers are the control devices in a process control system. Their functionistomaintainaprocessvariable(pressure,temperature,level, etc.)atsomedesiredvalue(Set-Point).Thisvaluemayormaynotbe constant.ControllerdevicecanbeeitherPneumaticorElectrical. Controllersareanintegralpartofanyprocesssystem.Controllersare designedtomaintainthecontrolledvariableatadesiredvaluethat ensuresthequalityoftheproduct.Adjustingthecontrollertoproducethe properresponsetoaprocessupsetiscalledtuning. Thefunctionisaccomplishedbycomparingaset-pointsignal(desired value)withtheactualvalue(controlledvariable).Ifthetwovaluesdiffer, an error signal is produced

DEFINITION OF PROCESS CONTROL TERMS
Instrumentation & Process Control System uses a lot of words which are explained/defined as follows:
A control system is a system of integrated elements whose function is to maintain a process variable at a desired value or within a desired range of values.
Control system input is the stimulus applied to a control system from an external source to produce a specified response from the control system.
Control system output is the actual response obtained from a control system.
An open-loop control system is one in which the control action is independent of the output.
A closed-loop control system is one in which control action is dependent on the output.
Feedback is information in a closed-loop control system about the condition of a process variable.
A controlled variable is the process variable that is maintained at a specified value or within a specified range.
A manipulated variable is the process variable that is acted on by the control system to maintain the controlled variable at the specified value or within the specified range.

OPEN LOOP (MANUAL CONTROL) SYSTEM
 Open Loop Control System is a control system with out a self(corrective)feedback mechanism. They often require an operator to (Manually)manipulate/control them. Manual control has its uses as it is cheap to install, maintain and simple to operate. However, it is very seldom used in industry because; The operator must remain in position at all times. It cannot be used if the operator is placed in a dangerous area. The process changes faster than the operator can react. A mistake by the operator can have dangerous results. These problems are avoided by using automatic control (closed loop).The job of theinstrumenttechnicianistomakesurethatthistypeofcontroloperates correctly. Modernhouseholdappliancesnowuseautomaticcontroltomakeworkeasier.For example:-Refrigerators and water heaters use automatic temperature control Washing machines use automatic heating and water control

AUTOMATIC (Closed Loop) CONTROL SYSTEM
An automatic control system is a preset closed-loop control system that requires no operator’s action. This assumes the process remains in the normal range for the control system. An automatic control system has two process variables associated with it: a controlled variable and a manipulated variable. Acontrolledvariableistheprocessvariablethatismaintainedataspecified value or within a specified range. example,thestoragetanklevelisthecontrolled variable. A manipulated variable is the process variable that is acted on by the control system to maintain the controlled variable at the specified value or with in the specified range. example, the flow rate of the water supplied to the tank is the manipulated variable.Inanyautomaticcontrolsystem,thefollowingarefour basic controller functions