Thursday, 10 January 2013

A Project Report On P.L.C (Programmable Logic Controller)

A Project Report On P.L.C (Programable Logic Controller)This is a featured page

  1. Introduction
    1. What is PLC?
    2. Why use PLC?
    3. applications of PLC
  2. Plc components
    1. Overview
    2. Specifications of the PLC
    3. Micrologix 1500 system
    4. RSLogix 500
  3. Ladder logic fundamentals
  1. Programming language of PLC
  1. Electrical ladder diagram
    1. Ladder logic instructions
  1. Variable voltage variable frequency drive
  1. Introduction
  1. Advantages of using VVVF drive
  1. Details of VVVF drive
  1. Process automation
    1. Introduction
    2. Description of model
    3. Motion Control using PLC
    4. Temperature measurement
    5. Speed Control of Motor using VVVF Drive
    6. Conveyor System
  2. Entrepreneurship
  3. Bibliography
  4. Appendix a
  5. Appendix b

A programmable logic controller (PLC) is an electronic device that controls machines and processes. It uses a programmable memory to store instructions and execute specific functions that include ON/OFF control, timing, counting, sequencing, arithmetic and data handling.
PLCs development began in 1968 in response to the request from hydromantic division of general motors. At the time, gm frequently spent days or weeks replacing inflexible relay-based control systems whenever it changed car models or made line modifications. To reduce the high cost of rewiring, gm’s control specifications called for a solid state system that had the flexibility of a computer yet could be programmed and maintained by plant engineers and technicians. It also had to withstand the dirty air, vibration, electrical noise, humidity and temperature extremes found in the industrial environment.
The first PLCs were installed in 1969 and quickly became a success. Functioning as relay replacements; even the early PLCs were more reliable than relay-based systems, largely due to the ruggedness of their solid-state components compared with the moving parts in electrochemical relays. PLCs provided material, installation; troubleshooting and labour cost savings by reducing wiring and associated wiring errors. They took up less space than the counters, timers and other control components they replaced. And their ability to be reprogrammed dramatically increased flexibility when changing control schemes.
Perhaps the biggest key to industry’s acceptance of the PLCs was based on the ladder diagrams and electrical symbols commonly used by electricians. Most plant personnel were already trained in ladder logic, and they easily adopted it for PLCs. In fact, ladder logic still plays an integral role in programming and troubleshooting; even though more “advanced” programming languages have been developed.
During the 1970s and early ‘80s, many engineers, manufacturing managers and control system designers spent considerable time debating this issue, trying to evaluate cost effectiveness.
Today, one generally accepted rule is that PLCs become economically viable in control system that requires three to four or more relays. Given that micro PLCs cost only a few hundred dollars, coupled with the emphasis manufacturers place on productivity and quality, the cost debate becomes also immaterial. In addition of cost savings, PLCs provide many value added benefits:
Once a program has been written and debugged. It can be easily transferred and download to other PLCs. This reduces programming time, minimizes debugging, and increases reliability. With all the logic existing in the PLCs memory, there is no chance of making a logic wiring error. The only wiring required is for power and inputs and outputs.
Program modifications can be made with just a few key strokes. Advanced functions PLCs can perform a wide variety of control tasks, from a single, repetitive action to complex data manipulation. Standardizing on PLCs opens many doors for designers, and simplifies the job for maintenance department personnel.
Communicating with operator interfaces, other PLCs or computers facilities data collection and information exchange.
1.2.4 SPEED
Some automated machines process thousands of items per minute and objects spend only a fraction of a second in front of a sensor, hence many automation applications require the PLCs quick response capability.
The troubleshooting capability of programming devices and the diagnostics resident in the PLCs allow users to easily trace and correct software and hardware problems.
No matter what the application, the use of PLCs helps increase competitiveness. Process using PLCs include: packaging, bottling and canning, material handling, machining, power generation building control systems, automated assembly, paint lines, and water treatment. PLCs are applied in variety of industries including food and beverages, automotive, chemical, plastics, pulp and paper, pharmaceuticals and metals. Virtually any application that requires electrical control can use PLCs.

The main components of PLCs are as follows:
  1. Inputs
  2. Outputs
  3. CPU
  4. Memory for program and data storage
  5. Programming device
Programming / Communication Device
Program Data
Power Supply
Output Circuits
Input Circuits
Optical Isolation
  1. Operator interfaces
2.1.1 INPUTS
The input screw terminals on a PLC from the interface by which field devices are connected to the PLC. Inputs include the items such as tool buttons, thumbwheels, limit switches, selector switches, proximity sensors and photoelectric sensors. These are all discrete devices that provide an ON/OFF status to the PLC. While larger PLCs can directly accept analog values (variable voltage or current signals). Such as from temperature or pressure sensors, micro PLCs do not typically possess this capability.
The electrical signals that field devices send to the PLC are typically unfiltered 120v a.c. or 24v D.C. The inputs circuitry on PLC takes this field voltage and “conditions”. It too is usable by the PLC. Conditioning is necessary because the internal components of PLC operate on 5v D.C. and this minimizes the possibility if damage by shielding them from voltage spikes. To electrically isolate internal components from the input terminals, PLCs employ an optical isolator, which uses light to couple signals from one electrical device to another.
Connectors tot the o/p terminals of the PLC are devices such as solenoids, relays, contractors, motor starters, indicator lights, valve and alarms. Output circuits operate in a manner similar to i/p circuits: signals from the CPU pass through an isolation barrier before energizing o/p circuits.
PLC use a variety of o/p circuits to energies their o/p terminals: relays, transistors and triac.
  • Relays are for either ac or dc power. Traditional PLC, electromagnetic relay typically handle current up to a few amps. Relays can better withstand voltage spikes, and they have an air gap between their contacts, which eliminates the possibility of current leakage. However they are comparatively slow and subject to wear overtime.
  • Transistors switch dc power are silent and have no moving parts to wear out transistors are fast and can reduce response time, but only carry loads of 0.5amps or less. Special types of transistors, such as FET (field effect transistors) can handle more power, typically up to 1amp.
Triac strictly switch ac power. Like transistors triac o/p are silent, have no moving parts to wear, are fast and carry loads of 0.5 amps or less.
This section discusses the various aspects of input and output features of the micrologix 1500 controller. the controller comes with a certain amount of embedded I/O, which is physically located on the base unit. The controller also allows for adding expansion I/O. This section discusses the following I/O functions:
  • Embedded I/O
  • I/O configuration
  • Expansion I/O
All embedded I/O is automatically configured to factory default settings and does not require setup. If you need to change the input filters for any DC input controller (1764-24BWA, 1764-28BXB), open RS Logix 1500.
  1. Open the controller folder.
  2. Open the I/O configuration folder
  3. Open slot (MICROLOGIX 1500)
  4. Select the I/O configuration tab.
  1. You can change the filter settings for any of the input groups and configure the latching inputs from the screen.
1764-24BWA1224V DC12RELAY
1764-24AWA12120 V AC12RELAY
1764-28BXB1624V DC126 RELAY,6FET
DC embedded I/O can be configured for a number of special function that can be used in your application these are selectable I/N filters, high speed counting, event interrupts, latching I/N and high speed O/P.

If the application requires more I/O then the controller provides, the user can attach up to eight additional I/O modules. Compact I/O is used to provide discrete inputs and outputs and in the future specialty modules. The number of compact I/O that can be attached to the MICROLOGIX 1500 is dependent on the amount of current required by the I/O modules.
The CPU made up of a microprocessor and a memory system, forms the primary component of the PLC. The CPU reads the inputs, executes logics as dictated by the application program, performs calculations and controls the output.
PLC users works with two areas of the CPU: program files and data files. Program files stores the user application program, subordinate files and the error files. Data files store data associated with the program such as input, counter/timer preset and accumulates the valves. Together, these two areas are called application memo0ry or user memory.
Also the CPU carries an executing program or a system memory that directs and performs ‘operation’ activities such as executing the user program and co-ordination scans and output updates. The user cannot access system memory, which is programmed by the manufacturer.2.1. 4 DATA, MEMORY AND ADDRESSING Memory is a physical space, data is and information stored in that space. The CPU operates just like a computer; it manipulates data using binary digits, or bits. Thus the data is a patter of electrical charges that represents the numerical values. CPU processes the stored data in 16 bit groups also known as ‘words’.
Each word of data has a specific physical location in the CPU called an address or a register. When assigned address to input in a program, note that address is related to the terminal where input and output are connected.
Component of the PLC system, come into play during the operating cycle, which consist of series of operation performed sequentially and repeatedly.
Major elements of operating cycle are:
During the input scan, the PLC examine the external input devices for a voltage present or absent i.e. an OFF or ON condition. The status of input is temporarily stored in an input image memory file.
During the program scan PLC scans the instructions in the ladder logic program. The resultant status of the output is written to the ‘output image memory file’.
It is based on the data in the output image file. The PLC energizes or de-energizes its output circuits, controlling external devices.


In order to convey information about machine status the front panel of a micro PLC has a series of indicator lights. For example, power, run, faults etc. To communicate with PLC i.e. is to enter data or monitor and control machine status. The new generation of electronic operator interfaces devices is used now a day. These are not programming devices but graphic or alphanumeric displays and control panel. These interfaces can output data and display messages about machine status in descriptive text. They can also be used for data input. These interfaces decrease need for operator training on machine operation and reduce system component and installation cost. These products communicate with the PLC through an RS 232 communication port.2.2 SPECIFICATIONS OF THE PLC 2.2.1 MICROLOGIX 1500 1764-24BWA
Number of I/O12 Inputs; 12 Outputs
Line Power85 to 265V a.c.
Power supply inrush120V ac= 25A for 8 ms; 240V ac= 40A for 4 ms
User power output24V dc at 400 mA, 400 micro fared max.
Input circuit type24V dc, sink/source
Output circuit typeRelay
Operating Temperature+0 degree cent. to +55 degree cent.
Storage Temperature-40 degree cent. to +85 degree cent.
Analog normal operating rangesVoltage: +/-10Vd.c, 0to 10V d.c, 0to5V d.c, 1 to 5 V d.c. Current: 0to20mA, 4to 20mA
Number of inputs4 Differential or single ended
Rated working voltage50V a.c. / 50Vd.c
Common mode voltage range+/- 10V max. per channel
Input impedanceVoltage terminal: 220killo-ohm (typical) Current terminal 250 ohm
Number of outputsTo single ended
Maximum inductive load (current outputs)0.1Mh
Maximum capacitive load (voltage outputs)1micro -farad
Voltage category24Vd.c (sink/source)
Operating voltage range10to30Vd.c at 30 deg. Cent. 10 to 26.4Vd.c at 60 deg. Cent.
Off state voltage (Max.)5Vd.c
Number of inputs16
Off state current max.1.5mA
On state voltage min.10Vd.c
On state current min.2.0mA
Nominal impedance3killo-ohm
Voltage categoryA.C/D.C normally open relay
Operating voltage range5 to 265V a.c. and 5 to 125V d.c.
Number of outputs8
Off state leakage max.0 mA
On state current min.10mA at 5Vd.c
Continuous current per common (max.)8Amp
Continuous current per module (max)16Amp
2.3 MICROLOGIX 1500 SYSTEM The PLC used in our lab is purchased by Allen-BradelTM. The name of the product is MicroLogix 1500. Allen-Bradley TM also provides the software by which one can interact with the PLC the name of software is RS Logix 500. This software is installed on the computer by which PLC is connected through series port (RS.2).the information about the Software and PLC available on the website of the Allen-BradelTM is as follows:
In a perfect world you would always know what's behind the next door. In the world of automation, the MicroLogix 1500 controller can help you open up new possibilities and get you to where you want to go with ease.
This dynamic controller is a more powerful and expandable addition to the MicroLogix family:
  • Application flexibility and versatility with Compact I/O means a small footprint and expansion to over 100 I/O points.
  • Large onboard non-volatile memory
  • Real Time Clock (RTC) capabilities allow time scheduling of control
  • Program portability allows user programs to be uploaded, downloaded and transported via Memory Modules
  • Built in PID capabilities
  • Data Access Tool for data monitoring and adjustment
  • Eight Latching (pulse catch) inputs
  • Four event interrupts
  • Performance
  • Approximate scan time for a typical 1K user program (includes timers, counters, etc.): 1 millisecond
  • Simple bit instruction execution: 0.7 microseconds
  • 2 millisecond selectable timed interrupt (STI)
  • 1 millisecond timers
  • Two 20 kHz high-speed counters each with eight modes of operation (up, down, up/down, quadrature, etc.)
  • Two 20 kHz high-speed outputs (PTO or PWM with acceleration/deceleration profiles)
  • Rugged tongue-and-groove package design, to provide strength and system reliability
  • May be expanded to include up to 16 Compact I/O modules
    Base Units continue to support up to eight modules (within the power budget of the base unit) with additional expansion through expansion cables and a number of expansion power supplies.
  • Optional Features
  • Data Access Tool (DAT) plug-in device
  • Memory Module
  • Real Time Clock (RTC) Module
  • Combination Memory & RTC Module
  • Expansion I/O modules for discrete and analog applications with a comprehensive selection of electrical configurations
2.4 RSLogix 500 The RSLogixâ„¢ family of ladder logic programming packages helps you maximize performance, save project development time, and improve productivity. This family of products has been developed to operate on Microsoft’s Windows® operating systems. Supporting the Allen-Bradley SLC 500â„¢ and MicroLogixâ„¢ families of processors, RSLogix 500â„¢ was the first PLC® programming software to offer unbeatable productivity with an industry-leading user interface. RSLogix 5â„¢ supports the Allen- Bradley PLC-5® family of programmable controllers. RSLogix 5000â„¢ provides support for the Logix5000’s Highly Integrated Motion functionality. RSLogix offers reliable communications, powerful functionality, and superior diagnostics.
These RSLogix products share:
  • Flexible, easy-to-use editors
  • Common look-and-feel
  • Diagnostics and troubleshooting tools
  • Powerful, time-saving features and functionality
RSLogix programming packages are compatible with programs created with Rockwell Software’s DOS based programming packages for the PLC-5 or SLC 500 and MicroLogix families of processors, making program maintenance across hardware platforms convenient and easy.
Rockwell Software provides you with the most powerful and completes programming products available today in the RSLogix family. The interoperability between RSLogix and Rockwell Software’s HMI package, RSView32™, and communication package, RSLinx™, positions RSLogix as the ultimate programming solution. With the Rockwell Software family of products, you have the ability to share your database with RSView32. You can create schematic drawings of your system directly from your RSLogix project using RSWire™, automatically tune PID loops with RSTune™, trend critical application parameters with RSTrend™, or test and debug your ladder logic programs using RSLogix Emulate 5™ or RSLogix Emulate 500™.

3. LADDER LOGIC FUNDAMENTALS3.1 Programming Language of PLC A program is a user developed series of instructions or commands that direct the PLC to execute actions. A programming language provides rules for combining the instructions so that they produce the desired actions.
The most commonly used language for programming PLCs is ladder logic. In fact, more PLC programs are written in ladder logic than any other language. The ladder logic programming language is an adaptation of an electrical relay wiring diagram, also known as a ladder diagram. Because ladder logic is a graphical system of symbols and terms even those not familiar with electrical relay wiring diagrams can easily learn it.
Other control languages occasionally used to program PLCs include BASIC, C and Boolean. These computer languages facilities programs that require complex instructions and calculations too cumbersome to implement with a ladder logic program. However, micro PLCs that can be programmed with BASIC and C are not widely available.
The instructions used to program most micro PLCs are based on a combination of Boolean, ladder logic and mnemonic expressions. A mnemonic expression is a simple and easy to remember term which represents a complex or lengthy instruction. For example, “TON” stands for “timer on.” Different PLCs use slightly different instructions, and these can be found by consulting the user’s manual.3.2 Electrical Ladder Diagrams Ladder logic programs evolved from electrical ladders diagrams, which represent how electrical current flows through devices to complete an electric circuit. These diagrams show the interconnection between electrical devices in an easy-to-read graphical format that guides the electrician when wiring.
An electrical diagram consists of two vertical bus lines, or power lines, with current flowing from the left bus to the right bus. Each electrical circuit in the diagram is considered a rung. Every rung has two key components: it contains at least one device that is controlled, and it contains the condition(s) that control the device, such as power from the bus or a contact from a field device.
A rung is said to have electrical continuity when current flows uninterrupted from left to right across the rung (i.e. all contacts are closed). If continuity exists, then the circuit is complete and the device controlled by the rung turns on. If continuity does not exist, the device stays off.
A PLC ladder logic program closely resembles an electrical ladder diagram. On an electrical diagram, the symbols represent real world devices and how they are wired. A PLC program uses similar symbols, but they represent ladder logic instructions for the application. A ladder logic program exists only in the PLC’s software- it is not the actual power bus or the flow of current through circuits. Another difference is that in an electrical diagram. Devices are described as being open or closed (Off or on). In a ladder logic program, instructions are either True or False (however, the terms are often used interchangeably).
Each rung in a ladder logic program must contain at least one control instruction (output) and usually contains one or more condition instructions (inputs). Condition instructions are programmed to the left of the control instruction. Examples of condition instructions include signals from connected input devices, contacts associated with outputs, and signals from timers and counters.
Auxiliary holding contact
Programmed on the right side of the rung, a control instruction is the operation or function that is activated/de-activated by the logic of the rung. Examples of control instructions include output energize (turn on the PLC’s output circuitry to activate a field device) and instructions internal to the PLC, such as bit commands, timers, counters and math commands.
The control instructions are energized or de-energized based on the status of the condition instructions in the rung. The PLC does this by examining a rung for logical continuity (i.e. all condition instructions are evaluated as True). If logical continuity exists, the PLC energizes the control instruction. If logical continuity does not exist, then the PLC maintains the control
Auxiliary holding contact
Electrical continuity
The most frequently used instructions in a PLC ladder logic program are normally open instruction, normally closed instruction, output energize instruction, these instructions are represented as symbols placed on the rungs of the program.
A normally open instructions examines a PLC memory location for an ON condition (i.e., it checks to se if the bit element at the instruction’s address is ON.
For example, a NO push button (pb1) is wired to input terminal I/3 is scanned, that instruction is seen as true and the PLC energizes output O/4 during its output scan.
When PB1 is released, the OFF status is written to address I/3, the no instruction is now false and the rung lacks logically continuity. During the PLCs output scan, O/4 will be de-energized.
Input terminal on plc I/3
Output terminal on plc
Status of output ON
Normally open instruction
Output terminal on plc
Status of output ON
Normally open instruction
Input device
Input terminal on plc
A normally closed instruction examines the PLC memory for an OFF condition (i.e., it checks to se if the bit element at the instruction’s address is OFF or 0). If the PLC detects an OFF condition, the instruction is true and has logical continuity.
For example, a NO pushbutton (PB1) is wired to input terminal I/4 is programmed as a D.C. instruction.
When PB1 is not pressed (OFF) that OFF status is written to input image memory location I/O during the PLCs input scan. When the rung containing the D.C. instruction with address I/O is scanned, that instruction is seen as true (not ON) and the PLC energizes output O/5 during the output scan.
When PB1 is pressed, the ON status is written to address I/4 the D.C. instruction is now false and the rung lacks logical continuity. During the PLCs output scan, output O/5 will be de-energized.
Output terminal on plc
Normally closed instruction
Input terminal on plc I/3
Normally closed instruction
Input terminal on plc I/3
Output terminal on plc
Controlled by the condition instructions that precede it on a rung, the output energize instruction (OTE) turns on a bit element in the output image file when rung conditions are true. Output energize is the ladder logic equivalent of a relay coil on an electrical diagram.
When logical continuity exists on a rung, the on condition (binary 1) is written to the location in memory associated with the output energize instruction. If the address is that of an external output device, the PLC energizes the output during the output scan. When the rung is False, the PLC de-energizes the output. The output energizes instruction controls real world devices (solenoid valves, motors, lights, etc.) or internal bit elements.
Higher Level Instructions
While relay logic is suitable for simple On/Off sensing and control, many applications require more powerful instructions. To allow this, enhanced ladder language commands have been developed. These instructions deal with numerical data beyond simple 1s or 0s by manipulating data in bytes or words. Examples of higher level instructions include counters, timers, sequencers, math, comparison and other operations that N.O., N.C., and OTE instructions cannot perform.
To keep the implementation of these operations simple, higher-level instructions are usually represented in ladder logic programming as function blocks. Function blocks are literally programmed as blocks on the rung of a ladder program. Depending on their operation, higher level instructions can be either condition instructions (e.g. comparison instructions) or control instructions (e.g. timer or counter instructions).
Two fundamental logic operations- AND and OR- provide the rules for governing how instructions are combined.
AND Logic
Condition instructions programmed in series are the ladder diagram equivalent of AND logic. For example, picture a metal stamping operation where the machine activates only if the operator simultaneously pushes both a left-hand start button (X) AND a right hand start button (Y).
The output of an AND equation will be True only if all conditions in series are True. If any condition is False, then the rung does not have logical continuity and the output will be off.
OR Logic
Condition instructions programmed in parallel are the ladder diagram equivalent of the OR operation. For example, imagine a conveyor that has two run switches, one located at each end. The conveyor could be configured to start if an operator pressed a start button at one end (X) OR the other (Y)
The output of an OR equation will be True if any condition in parallel is True. If all conditions are False, then the rung does not have logical continuity and the output will be False.
Branch Operations
The function of a branch is to allow both condition and control instructions to be programmed in parallel in a single rung.
  • Condition instructions programmed in parallel are the equivalent of an OR operation.
  • Control instructions programmed in parallel are the equivalent of an
3.3.5 PROGRAM EXECUTION Before reading how the PLC executes a ladder logic program, re-reading, “Operating Cycle” may be helpful.
The PLC solves each rung sequentially from top to bottom of the program. Even if the output of the current rung (e.g., rung 5) affects a previous rung (e.g., rung 2), the PLC does not go back to solve the earlier rung until the next program scan. For the output of one rung to affect an instruction in another rung in the same scan, it must have a lower rung number than the rung it is to affect. That is, the controlling rung must be programmed before the controlled rung.
While rungs are often ordered to show a sequence of events- the top –most rung is the first event and so on- this is done purely for organizational convenience. In both electrical diagrams and ladder logic programs, rung order does not necessarily dictate the sequence of operation. Remember, the status of the condition instructions of each rung dictates the sequence in which outputs are controlled. 3.3.5 INSTRUCTION SET PLC has a very big instruction set which is similar to microprocessor’s instruction set we have studied in 8085.
Categorized Instructions are as follows:
  1. Compare Instructions
  2. Math Instructions
  3. Relay Type Instructions
  4. Timer and Counter Instructions
  5. Sequence Instructions
  6. PID Control
  7. Bit Shift FIFO and LIFO Instructions
Different types of instruction used in PLC which empowers it are as follows: 
  • XIO (“Examine if closed” or “Normally opened”)
This instruction (also called "examine on" or "normally opened") functions as an input or storage bit.
If the corresponding memory bit is a "1" (on), this instruction will allow rung continuity and outputs will be energized.
  • XIO (“Examine if Open” or “Normally closed”)
This instruction (also called "examine off" or "normally closed") functions as an input or storage bit.
If the corresponding memory bit is a "1" (on), this instruction will not allow rung continuity and outputs on its rung will be de-energized (Note other factors may affect rung continuity).
If the corresponding memory bit is a "0" (off), this instruction will assume its normal status and allow rung continuity and outputs on the rung will be energized (Again, other factors can influence rung continuity).
If used as an input bit, its status should correspond to the status of real world input devices tied to the input image table by the identical addresses.
  • OTE [Output Energize]
This instruction sets the specified bit when rung continuity is achieved (rung goes true). Under normal operating conditions, if the set bit corresponds to an output device, the output device will be energized when the rung goes true.
If you are using a 5/02, 5/03, 5/04, 5/05 or MicroLogix processor, you can use indexed addresses. If you are using a 5/03 OS302, a 5/04 OS401, or a 5/05 processor, you can use indirect addresses.
Output addresses are specified to the bit level.
  • TON [Timer On-Delay]
Use the TON instruction to turn an output on or off after the timer has been on for a preset time interval. This output instruction begins timing (at either one second or one hundredth of a second intervals) when its rung goes "true." It waits the specified amount of time (as set in the PRESET), keeps track of the accumulated intervals which have occurred (ACCUM), and sets the DN (done) bit when the ACCUM (accumulated) time equals the PRESET time.
As long as rung conditions remain true, the timer adjusts its accumulated value (ACC) each evaluation until it reaches the preset value (PRE). The accumulated value is reset when rung conditions go false, regardless of whether the timer has timed out.
  • TOF [Timer Off Delay]
Use the TOF instruction to turn an output on or off after its rung has been off for a preset time interval. This output instruction begins timing (at either one second or one hundredth of a second intervals) when its rung goes "false." It waits the specified amount of time (as set in the PRESET), keeps track of the accumulated intervals which have occurred (ACCUM), and resets the DN (done) bit when the ACCUM (accumulated) time equals the PRESET time.
The Accumulated value is reset when rung conditions go true regardless of whether the timer has timed out.
  • RTO [Retentive Timer On-Delay]
An RTO function the same as a TON with the exception that once it has begun timing, it holds its count of time even if the rung goes false, a fault occurs, the mode changes from REM Run or REM Test to REM Program, or power is lost. When rung continuity returns (rung goes true again), the RTO begins timing from the accumulated time which was held when rung continuity was lost. By retaining its accumulated value, retentive timers measure the cumulative period during which rung conditions are true.
  • EQU [Equal]
This input instruction is true when Source A = Source B.
The EQU instruction compares two user specified values. If the values are equal, it allows rung continuity. The rung goes true and the output is energized (provided no other forces affect the rung's status).
Entering Parameters
Source A must be a word address.
Source B can be a word address or program constant.
  • NEQ [Not Equal]
Use the NEQ instruction to test whether two values are not equal. If Source A and Source B are not equal, the instruction is logically true. If the two values are equal, the instruction is logically false.
  • LES [Less Than]
This conditional input instruction tests whether one value (Source A) is less than another (Source B). If the value at Source A is less than the value at Source B, the instruction is logically true. If the value at Source A is greater than or equal to the value at Source B, the instruction is logically false.
Entering Parameters
Enter a word address for Source A. Enter a constant or a word address for Source B. Signed integers are stored in two’s complement form.
  • LEQ [Less Than or Equal]
This conditional input instruction tests whether one value (source A) is less than or equal to another (source B). If the value at source A is less than or equal to the value at source B, the instruction is logically true. If the value at source A is greater than the value at source B, the instruction is logically false.

Entering Parameters
Enter a word address for source A. Enter a constant or a word address for source B. Signed integers are stored in two’s complement form.
  • GRT [Greater Than]
This input instruction compares two user specified values. If the value stored in Source A is greater than the value stored in Source B, it allows rung continuity. The rung will go "true" and the output will be energized (provided no other instructions affect the rung's status). If the value at Source A is less than or equal to the value at Source B, the instruction is logically false.
Entering Parameters
You must enter a word address for Source A. You can enter a program constant or a word address for Source B. Signed integers are stored in two’s complementary form.
  • GEQ [Greater Than or Equal To]
This input instruction compares two user specified values. If the value stored in Source A is greater than or equal to the value stored in Source B, it allows rung continuity. The rung will go true and the output will be energized (provided no other instructions affect the rung's status). If the value at Source A is less than the value at Source B, the instruction is logically false.
  • OR [Inclusive OR Operation]
When rung conditions are true, Sources A and B of the OR instruction are OR bit by bit and stored in the destination. Sources A and B can be either word addresses or constants; however, both sources cannot be a constant. You can enter a constant or a word address for either Source parameter. The destination must be a word address.
  • NOT [Logical Not Operation]
When rung conditions are true, the source of the NOT instruction is NOT bit by bit and stored in the destination.
The source and destination must be word addresses.
If you are using a 5/02, 5/03, 5/04, 5/05 or MicroLogix processor, you can use indexed addresses for the source or destination parameters. If you are using a 5/03 OS302, a 5/04 OS401, or a 5/05 processor, you can use indirect addresses for the source or destination parameters.
NOT Truth Table
  • XOR [Exclusive OR Operation]
When rung conditions are true, Sources A and B of the XOR instruction are Exclusive Oared bit by bit and stored in the destination. Sources A and B can be either word addresses or constants; however, both sources cannot be a constant. Floating point values must be within the range of [-102943.7, +102943.7].
  • AND [Logical AND Operation]
When rung conditions are true, sources A and B of this output instruction are AND bit by bit and stored in the destination. Sources A and B can be either word addresses or constants; however, both sources cannot be a constant. The processor you are using you may use indexed or indirect addressing in this instruction.

4. VARIABLE VOLTAGE VARIABLE FREQUENCY DRIVE 4.1 Introduction One of the major factors needed for the automation in industries is the speed control of the motor without compensating on the efficiency and economy of the operation.
The earliest and simplest method of the motor control was manual control, which was accomplished by plain knife switches, rotary switches, starting and speed control rheostats pushbuttons and controller. Since then many changes has come across in the method of control of motors and with the advancement made in the field of power electronics the easy control of A.C. motors has become possible, to a great extent and usage of A.C. motors in industries has increased owing to it’s light-weight, inexpensive, low maintenance, compared to D.C. motors. Most common device used for this purpose is the power converters, inverters, and A.C. voltage controllers.
The latest trend in the industries to control the A.C. motors is to use a variable voltage variable frequency drive or variable speed controllers. They can control the frequency, voltage, and/or current to meet the drive requirement. Thus they can control the speed, direction of rotation of motor, its acceleration and deceleration time and as well as imply various modes of braking according to the requirement
The Allen-Bradley company (U.S.A.) Company has introduced 160SSC (smart speed controller) series B, for this purpose and besides this other models are too available, according to the requirement and voltage/current ratings.4.2 Advantages of using VVVF drive or SSC 1. Reduceenergyusages and operating cost
Reducing the speed of a centrifugal pump/fan load drastically reduces power consumption. Both SSC controller models offer the speed control to accomplish this. In addition the large reduction in starting current can save utility demand charges.
2. Reduces system Noise
Adjustment of PWM switching frequency (up to 8 kHz) provides quite motor operation and controllers to solutions for electromagnetic noise problem.
3. Prolong equipment: Adjustable acceleration and deceleration time provides inherent soft starting and stopping. This is further enhanced by the controller’s programmable “s” curve adjustment. This means a huge reduction in starting currents and elimination of excessive starting torques.
4. Eliminate electromechanical controls-Reduce system cost
SSC controller allows the user to control the process without the need for:
  • Reversing starters
  • Reduced voltage starters
  • Multi speed starters
  • Multi speed motor
5. Integral dynamic braking transistor
The SSC controller has an additional transistor built in for applications that require extra braking torque. The dynamic brake resister module connects directly to the controller’s terminals to provide up to 300% braking torque.
Braking torque depends up on controller rating and motor.
6. Compact design
Attaches directly to front of controller – replacing keypad or Ready/fault panel and saves valuable panel space.
7. Quick installations
Reduces installation time by allowing the user to configure node address via the network.
8. Electronic motor over load protection
SSC does not require an over load relay for the operation of one motor. Thus saves the extra cost and panel space of installing a separate over load relay.
9. Multiple specific speeds
Can be made available for manufacturing and material handling e.g. conveyors, packaging, winders, mixers, trolleys and for commercial applications examples laundry machines, automatic doors, automatic car washes, dock levellers. (In case of preset speed module)
10. Follows analog signal
It can be used in many applications that take advantage of the adjustability and simple control that comes from an analog signal. Example:
  1. Fans and pumps- Refrigeration, paint booths, exhaust, HVAC, metering.
  2. Machine tools- Lathes, milling machines, drill presses, saws, woodworking, grinders.
4.3 Details of VVVF Drive The A.B. 160 SSC series B comes in two different models i.e. analog signal follower and preset speed module. The major difference lying between them is that by using preset speed controller module, we can fix 8 different speeds for the motor by changing the preset frequency by programming it.
It has an option of program keypad module, through which we can change the parameter required for the control of motor.
The SSC (smart speed controller) is a compact motor speed controller for use on three-phase induction and synchronous A.C. motors. It is microprocessor controlled and fully programmable for a variety of applications.
1 phase input 50/60 Hz3 phase input 50/60 HzOutput ratingsInput ratingsDynamic braking torque (%)Power Dissipation WattCooling method
KWHPO/P AmpsOperating Voltage rangeKVAWithout external resistorWith external resistor
Control Inputs (analog signal follower model only)
Analog input (4 to 20 mA)Input impedance 250 ohm
Analog input (-10 to +10V DC)Input impedance 100k ohm
External speed potentiometer1k ohm to 10 k ohm, watt minimum
Program keypad module
The program keypad module is located on the front panel of the controller. It features the following:
# Five key on the module for display or programming controller parameter
# Three keys for control inputs to the controller
# Directional LEDs
# six digit, seven segment LED display
Four digits, seven segments LED display this four digit display the parameter value or fault code number
Two digit, seven segment LED display– These two digit display the active parameter number for both display and program parameter, which are designated as P## throughout this manual.
Escape key- It allows you to toggle between the display mode and program mode. When in program mode, this key also disables the editing of parameter value.
Select key – It is not only used while in program mode. It enables the editing of a parameter values. When you press this key the program mode indicator flashes.
Up/down arrow keys - Are used to scroll through a list of parameters, or increase and decrease the parameter values. Press and hold either key to increase scrolling speed.
Enter key – When pressed, while in programming mode causes the current value displayed to be entered into memory. When you press this key the program mode indicator remains on, but stops fleshing.
Starts Key - Initiates a start command when the controller is programmed for local start/stop control. (When P46- (input mode) is set to “2”).
Stop key- Initiates the motor to “coast”, “ramp” or “D.C. brake” to stop the motor depending on the setting of P 34 – [stop mode].
Reverse key – Pressing it causes the motor to ramp down to zero hertz and then ramp up to its set speed in the opposite direction.
Directional LEDs to indicate the direction of rotation – counter clockwise and clockwise LEDs.
The counter clockwise Led eliminates constantly when the motor rotates in reverse direction.
The clockwise LED eliminates constantly when the motor rotates in forward direction.
Four-digit parameter display – these four digits display the parameter value or fault code number.
Display mode
The controller always powers up in the display mode. While in this mode you may view all read only controller parameters, but not modify them.
You enter the program mode by pressing the escape key (ESC). While in program mode, you can edit any programmable controller’s parameters.
Display and Program Parameters Descriptions
Display Parameters
ParameterParameter nameDescriptionUnits
1Output frequency0.0 to 240 Hz0.1 Hz
2Output voltage0 to max. Voltage1 volt
3Output current0 to 2 times controller rated output current.01 amps
4Output power0 to 2 times controller rated output power.01 KW
5Bus voltage0 to 410v for 230v controllers1 volt
6Frequency command0.0 to 240 Hz0.1 Hz
7Last faultRetains fault for trouble shootingNumeric value
8Heat sink temperature0 to 150 degree cent1degree cent.
9Controller statusRunning, forward, accelerating, deceleratingBinary number
10Controller typeUsed by Allen-Bradley field service personalNumeric value
11Control versionDisplay firm wire versionNumeric value
12Input statusDisplays the status of start, stop, and reverse discrete inputsBinary number
13Power factor angle0.00 to 90 degrees.01 degrees
14Memory probe displayUsed by Allen-Bradley field service personnelNumeric value
15Preset statusDisplays the status of speed discrete inputsBinary number
Program parameters
ParameterParameter NameDescriptionFactory Default
30Accel time 10.1 to 600 sec.10
31Decel time 10.1 to 600 sec.10
32Min. Frequency0 to240 Hz0
33Max. Frequency0 to240 Hz60
34Stop mode selectionThree settings 1) Ramp
2) Coast
3) D.C. injection braking
35Base frequency10 to 240 Hz60
36Base Voltage20 to 230 V for 230V controllers230
42Motor over load current20 to 200% of controller rated current115%
46Input modeFour settings-keypad, 2wire, 3wire, momentary run fwd/run reverse3 wire
47Output configureNine different settings for a variety of controller conditions0
54Clear faultResets fault0
56Reset defaultResets controller to factory default settings0
57Program lockProtects users settings0
59Frequency selectSelects source of frequency (internal or external)External
Digital computers were first applied to the industrial process control in late 1950’s to automate the processes like to control temperature, pressure, flow etc. The use of computer increased and dedicated microcontrollers were then used. One of the most ingenious devices ever devised to advance the field of industrial automation is the Programmable Logic Controller. Broadly, the PLC performs tasks like - acquisition of process data, processing of collected data, plant hardware monitoring, system check and diagnosis, and generates control actions.
Industrial automation is being done in nearly every type of industry. Underlying most of this automation of big process is much more mundane tasks: turning equipment (pumps, conveyor belts etc.) on or off; opening and closing of valves; checking sensors to be certain they are working; sensing alarms when monitored signals go out of range etc. These logical functions can be implemented by PLCs
In this project we are demonstrating some of the industrial process control with the help of programmable logic controller. Such processes which we are controlling have applications in domains of electroplating, painting electro reforming, drying, heating, drying and any such type of industrial processes The processes which are demonstrating in this project are:
  1. Lowering and raising a job
  2. Moving job laterally.
  3. Synchronizing the opening and closing of tank with lowering and rising of job.
  4. Controlling start/stop and speed of conveyer motor using VVVF drive.
  5. Counting of job using proximity switch.
  6. Synchronizing finished job placement on conveyer belt.
  7. Measurement of temperature using thermocouple.
  8. Displaying of temperature on digital indicator.
To demonstrate the above objectives we have constructed a model, the details of which are given systematically below. In this model we are using following items:
1ContainerTin(19”height,28cm diameter)1
2DC gear motor24 volts separately excited with permanent magnet2
3Pulley and Gear
4Relay( 8 terminals)24 volts2
Diagram of the model
We have used a tin circular container of 30 centimeter diameter and forty five centimeter height for containing the useful liquid or device for the desired purpose .The lead of container is open one forth only. A sliding lead is riveted to main lead which meshes with gear of motor.
We used a 24 volt DC motor for the desired operation.D.C motor can rotate in both the direction by changing the polarity. We used gear motor because of smooth operation and high torque. One motor is synchronized with the cap of container as well as job piece and second motor rotates with the arm of the model.
Gear is used to mesh with the cap of container. It opens and closes the container cap. Pulley is used to wrap the rope of the job piece. Both are mounted on same shaft. The diameter of pulley is 3.5 cm which transmit power to another pulley of diameter of 1cm and increase the number of revolution per minute. Another pulley of 3.5 cm diameter is mounted on same shaft on which rope is mounted. The pitch circle diameter of gear is 4.5 cm which open and close the lid.
5.2.4 RELAY
We used 24 volts relay for reversing the direction of motor, having six terminals for reversing the direction of motor and two terminals for energizing the coil. The centre terminals is used to input supply and outer four terminal is cross connected and output is taken from their. when coil is energies then polarity is reverse and coil is deaneries then its output of same polarity.
We used shisham wood for the structure which gives the desired construction of the model. A flat base is used to put the container and proper standing of model
5.2.6 ROPE
We use nylon thread for the carrying of job. It is rolling on the 3.5 diameter pulley.
Motor 1O:2/6
Motor 2O:2/5
Relay 1O:2/7
Relay 2O:2/4
Digital controllerO:4/0
Temperature hi alarmO:0/11
VVVF driveO:2/1
To control the starting of operationI:0/0
Proximity sensor I/PI:1/7
Emergency switchI:1/0
Object To lower and raise a job in a container by means pulley and motor and place the job on the conveyor belt using an arm control.
Basic Idea
The basic idea behind this program is to control the direction of rotation of the motor. The placement of the motor should also be such that the transmission of mechanical power to the pulley can be done using belt drive. The job then can be raised or lower logically through the PLC.
In this project we are controlling a typical industrial processes by the PLC in this project we are controlling our model with the help of DC gear motors. The step of operation as follow:
We put job on the arm and arm motor start rotation for 2.48sec. & rest above the container for starting the operation to be perform on the job.
Motor1 rotate in anti-clock wise direction with the help of relay 1 for 10.4sec. The container will open & job moves into the container.
The motor -1 rotates clock wise without relay for 10.42sec. The container will close and the job will comes out.
Arm motor rotates in anti clockwise direction with out relay for 2.9sec & the arm goes over the conveyer belt and drop the job on it.
Arm motor rotate clock wise for 5.3sec and bring arm to its initial position.
After that the next cycle starts after 4.5sec.
In this process we have used the timer instruction for performing the operation for the specified duration. In all we have used 9 timers T4:1-T4:9.The output of timer T4:2 goes to T4:1 whose output comes back to T4:2 for initializing the whole process after 43sec.
T4:3 timers are used for the pause of 2.48 sec. After that T4:4 timers are used for rotating the motor 1 for 10.42sec with relay. T4:5 are used for pause of 5sec for completing the process to be done on the job.T4:6 are used for closing the lid of container. It takes 10.42sec.T4:7 are used for rotation of the arm motor for 2.9sec.T4:8 are used for the pause of 2.3sec.T4:9 are used to bring the arm in its initial position for 5.35sec.This cycle is repeated sequentially and continuously for desired number of times.
Object To sense the temperature of any particular device and simulation for the condition of fault occurrence in the device. 
Basic Idea
The basic idea behind this program is to basically indicate the temperature of any device through the digital indicator and to sense the temperature value for the faulty condition and to stop the process automatically so that the fault can be removed and then again restart the process.
To implement the above program we have a temperature sensor which senses the temperature of particular device and sends it to the CPU through the RTD converter and the CPU calibrate it and gives the output to the digital indicator so that the temperature of that device can be measured. In case of any faulty condition the CPU which is continuously sensing the temperature and giving the output senses the high temperature and stops the process and activates an indicator which is a flasher so that it can be known that which fault has occurred in the process. And the process remains stop until the fault is accepted and removed.
In the given program at rung 0 the input scaling of the temperature is done so that the reading of the temperature from the RTD converter goes to the CPU and at the very next rung the reading is calibrated according to the scale so gives the output at the digital indicator.
If the temperature increases more than the prescaled value the function GRT will give the high output to the flasher (O: 0/11). This flasher is used in the series of every output for suddenly stop the operation.
The above conditions remain as it is until the temperature remains below the presettable limit. It has preset value one so it’s done bit goes high in first increment and which stops the blinking of LED and glow it constantly. and the process is going on
Now to again restart the whole process the fault has to be removed and the temperature should become to its desired value.
We have used a thermocouple for measuring of temperature that will convert in the digital signal and indicated on the temperature indicator.
Object To control the speed of a motor by the help of variable voltage and variable frequency drive controlled by the PLC.
Basic Idea
The basic phenomenon to control the speed of any motor is to control its input voltage or to control its frequency and this job is performed by the VVVF drive.
To implement this program as ladder logic firstly its scaling has to be done so that it may run with the desired speed given in the computer. To scale any output or input the SCP (Scale w/parameters) instruction is used.
When the control switch TG#1 which is addressed at I:0/0 is switched on which gives the output to the VVVF drive and the motor connected to the this drive starts running. There is also an emergency stop button which can be pressed in case of any emergency occurred while the process is running.
In the SCP (Scale w/parameter) instruction the scaling is done to control the speed of motor the input given to it is the percentage value of the scaled values. And what ever may be the input is given in the SCP instruction the speed of the motor becomes high and low according to it.
Object To implement the conveyor system on a VVVF controlled motor and to count the number of the pieces passing through the conveyor.

Basic Idea
The basic idea behind this program is to count any number of pieces passing through the conveyor belts which are sensed by the proximity switch.
To implement this program the proximity switch is placed to the suitable distance from the conveyor belt. When any piece passes through the proximity sensor it gives a high pulse which is fed to the PLC and the counter placed in the program counts the number of pieces moving on it up to the preset value given to the counter.
When the motor is started by the switch TG#1 the conveyor starts to move in forward direction along with the pieces kept on it. The proximity switch inputs to the PLC when it senses any ferrous material passing through it at the address I:1/7 which increments the counter C5:0 by one and also glows a RED LED addressed at O:0/0 as per the count.
After one count of the counter C5:0 the another counter C5:1 is incremented by one and since its preset value is one so its done bit goes high in one increment and thus it stop the motor and also activates a timer T4:0 associated with it which counts for the given time period and then resets the counter C5:1 and thus motor is again started. Thus the delay of desired time period can be obtained with the help of this timer after each count so that any operation can be performed to the job counted by the proximity switch and after that operation the motor automatically restarts.
When the counter C5:0 counts 10 pieces the RED LED glows which is addressed at O:0/3. And after it counts 20 pieces another LED glows next the above LED and the very next to this glows after 30 count and similarly the LED addressed at O:0/8 glows after 40 pieces.
After the done bit of counter C5:0 goes high a RED LED addressed at O:0/10 glows and the counter stops counting the pieces.

  1. User Manual, Allen – BradleyTM Micro Logix 1500 Programmable Controller
  2. User Manual, Allen – BradleyTM 160 SSC Variable Speed Controller
  3. Allen – BradleyTM’s URL
  4. Rockwell Automation’s URL
  5. MicroMentor, Allen – BradleyTM, Rockwell International Company

  1. XIC Examines a bit for an ON condition
  2. XIO Examines a bit for an OFF condition
  3. OTE Turn ON or OFF a bit(non-retentive)
  4. OTL Latch a bit ON (retentive)
  5. OTU Unlatch a bit OFF (retentive)
  6. OSR Detects an OFF to ON transition [It sets a bit for false to true (one scan)]
  7. OSF It sets a bit for true to false (one scan)
  8. TON Delay turning ON an output on a true rung
  9. TOF Delay turning OFF an output on a false rung
  10. RTO Delay turning on an output from a true rung. The accumulator is retentive.
  11. CTU Count Up
  12. CTD Count Down
  13. RES Reset the RTO and counter’s ACC and status bits (not used with TOF timers)
  14. EQU Test whether two values are equal (=)
  15. NEQ Test whether one value is not equal to a second value.
  16. GRT Test whether one value is greater than a second value.
  17. GEQ Test whether one value is greater than or equal to a second value.
  18. LEQ Test whether one value is less than or equal to second value.
  19. MEQ Test portions of two values to see whether they are equal.
  20. LIM Test whether one value is within the range of two other values.
  21. ADD Add two values.
  22. SUB Subtract two values.
  23. MUL Multiply two values.
  24. DIV Divide one value by another.
  25. NEG Change the sign of the source value and place it in the destination.
  26. CLR Set all bits of a word to zero.
  27. SCL Scale a value.
  28. SCP Scale value to a range determined by creating a linear relationship.
  29. SQR Find the square root of a value.
  30. DCD Decodes a 14-bit value (0 to15), turning ON the corresponding bit in the 16-bit
  1. ENC Encodes a 16-bit source to a 4-bit value. Searches the source from the lowest to
the highest bit, and looks for the first set bit. The corresponding bit position is
written to the destination as an integer.
  1. FRD Converts the BCD source value to an integer and stores, in the destination.
  2. TOD Converts the integer source value to BCD format and stores it in the destination.
  3. AND Performs an AND operation
  4. OR Performs an inclusive OR operation
  5. XOR Performs an exclusive OR operation
  6. NOT Performs a NOT operation
  7. MOV Move the source value to the destination.
  8. MVM Move data from a source location to a selected portion of the destination.
  9. COP Copy a range of data from one file location to another.
  10. FLL Load a file with a program constant of a value from an element address.
  11. BSL Load and unload data into a bit array one at a time.
  12. BSR. Load and unload data into a bit array one at a time.
  13. FFL Load words into a file and unload them in the same order (first in, first out).
  14. FFU Load words into a file and unload them in the same order (first in, first out).
  15. LFL Load words into a file and unload them in reverse order (last In, last Out)
  16. LFU Load words into a file and unload them in reverse order (last In, last Out)
  17. SQC Compare 16-bit data with stored data.
  18. SQO Transfer 16-bit data to word addresses
  19. SQL Load 16-bit data into a file.
  20. JMP Jump forward/backward to a corresponding label instruction.
  21. LBL Jump forward/backward to a corresponding label instruction.
  22. JSR Jump to a designated subroutine and return.
  23. SBR Jump to a designated subroutine and return.
  24. RET Jump to a designated subroutine and return.
  25. SUS Debug or diagnose your user program.
  26. TND Abort current ladder scan
  27. END End a program or subroutine
  28. MCR. Enable or inhibit a master control zone in your ladder program.
  29. IIM Update data prior to the normal input scan
  30. IOM Update outputs prior to the normal output scan.
  31. REF Interrupt the program scans to execute the input/output scan


jowdjbrown said...

To reduce the high cost of rewiring, gm’s control specifications called for a solid state system that had the flexibility of a computer yet could be programmed and maintained by plant engineers and technicians. plc

Canara Docklifts said...

The information on this blog is very useful and very interesting. If someone needs to know about the just click Manufactures of Dock Levellers | Dock Leveler Manufacturers

Diac Noida said...

Industrial Automation Training - Looking for PLC SCADA Training in Delhi NCR? We have Lab facility fully practically and also giving project training , advanced training with 100% placement support. Call-9310096831.

Post a Comment