You are on page 1of 26

A Project Report On P.L.

C (Programable Logic Controller)

INDEX 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 2. Variable voltage variable frequency drive 1. Introduction 1. Advantages of using VVVF drive 1. Details of VVVF drive 1. PROGRAM MODE 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 relaybased control systems whenever it changed car models or made line modifications. To reduce the high cost of rewiring, gms 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 industrys 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. 1.2 WHY USE PLCs? 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: 1.2.1 RELIABILITY 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. 1.2.2 FLEXIBILITY 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. 1.2.3 COMMUNICATIONS 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. 1.2.5 DIAGNOSTICS

The troubleshooting capability of programming devices and the diagnostics resident in the PLCs allow users to easily trace and correct software and hardware problems. 1.3 APPLICATIONS OF PLC 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.

2. PLC COMPONENTS 2.1 OVERVIEW The main components of PLCs are as follows: 1. 2. 3. 4. 5. Inputs Outputs CPU Memory for program and data storage Programming device

Central Processing Unit Programming / Communication Device Memory Program Data Power Supply Output Circuits CR 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. 2.1.2 OUTPUTS

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 EMBEDDED 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. 2. 3. 4. Open the controller folder. Open the I/O configuration folder Open slot (MICROLOGIX 1500) 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-24BWA 12

1764-24AWA 12

RELAY 6 1764-28BXB 16 24V DC 12 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.

120 V AC



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. 2.1.3 CENTRAL PROCESSING UNIT- CPU 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. 2.1.5 PROGRAMMING DEVICE OPERATING CYCLE 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 Description 1764-BWA Number of I/O 12 Inputs; 12 Outputs Line Power 85 to 265V a.c. Power supply inrush 120V ac= 25A for 8 ms; 240V ac= 40A for 4 ms User power output 24V dc at 400 mA, 400 micro fared max. Input circuit type 24V dc, sink/source Output circuit type Relay Operating Temperature +0 degree cent. to +55 degree cent. Storage Temperature -40 degree cent. to +85 degree cent. 2.2.2 ANALOG INPUT MODULE (1769-IF4) Voltage: +/-10Vd.c, 0to 10V d.c, 0to5V d.c, 1 to 5 V d.c. Analog normal operating ranges Current: 0to20mA, 4to 20mA Number of inputs 4 Differential or single ended Rated working voltage 50V a.c. / 50Vd.c Common mode voltage range +/- 10V max. per channel Voltage terminal: 220killo-ohm (typical) Current terminal Input impedance 250 ohm 2.2.3 ANALOG OUTPUT MODULE (1769-OF2) Number of outputs To single ended Maximum inductive load (current outputs) 0.1Mh Maximum capacitive load (voltage outputs) 1micro -farad 1. DIGITAL INPUT MODULE-1769-IQ16 Voltage category Operating voltage range Off state voltage (Max.) Number of inputs 24Vd.c (sink/source) 10to30Vd.c at 30 deg. Cent. 10 to 26.4Vd.c at 60 deg. Cent. 5Vd.c 16

Off state current max. 1.5mA On state voltage min. 10Vd.c On state current min. 2.0mA Nominal impedance 3killo-ohm 2.2.5 DIGITAL OUTPUT MODULE (1769-OW8) Voltage category A.C/D.C normally open relay Operating voltage range 5 to 265V a.c. and 5 to 125V d.c. Number of outputs 8 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 AllenBradelTM. 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 AllenBradelTM 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 Microsofts 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 AllenBradley PLC-5 family of programmable controllers. RSLogix 5000 provides support for the Logix5000s 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 Softwares 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. INTEROPERABILITY Rockwell Software provides you with the most powerful and completes programming products available today in the RSLogix family. The interoperability between RSLogix and Rockwell Softwares 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 users 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 PLCs 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 M1 Rung PB1stop PB2start Motor L1 L2 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 PLCs 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 pb1stop pb2start Auxiliary holding contact m11 motor L1 L1 R u n g Electrical continuity 3.3 LADDER LOGIC INSTRUCTIONS 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. 3.3.1 NORMALLY OPEN INSTRUCTION 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 instructions 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 deenergized. Input terminal on plc I/3 I/3 True Output terminal on plc Status of output ON Normally open instruction Output terminal on plc Status of output ON I/3 O/4 True False False Normally open instruction Input device Input terminal on plc O/4 3.3.2 NORMALLY CLOSED INSTRUCTION: A normally closed instruction examines the PLC memory for an OFF condition (i.e., it checks to se if the bit element at the instructions 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 deenergized. Output terminal on plc True True Normally closed instruction Input terminal on plc I/3 Normally closed instruction Input terminal on plc I/3 I/3 O/4 Output terminal on plc False False I/3 O/4 3.3.3 OUTPUT ENERGIZE INSTRUCTION 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). 3.3.4 COMBINING 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 microprocessors instruction set we have studied in 8085. Categorized Instructions are as follows: 1. 2. 3. 4. 5. 6. 7. Compare Instructions Math Instructions Relay Type Instructions Timer and Counter Instructions Sequence Instructions PID Control 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 twos 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 twos 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 twos 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 Source Destination 0 1 1 0

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 its 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 controllers 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 controllers 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 3 phase phase Dynamic Power Coolin Output input input Input ratings braking torque Dissipation g ratings 50/60 50/60 (%) Watt method Hz Hz With Operating Without externa KW HP O/P Amps Voltage KVA external l range resistor resistor 160s- 160.37 1/2 2.3 180-265 1.1 100 300 20 Convection AA02 AA02 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 potentiometer 1k ohm to 10 k ohm, watt minimum Program keypad module Features: 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. 4.4 PROGRAM MODE You enter the program mode by pressing the escape key (ESC). While in program mode, you can edit any programmable controllers parameters. Display and Program Parameters Descriptions Display Parameters Parameter Parameter Description Units name Output 0.0 to 240 1 0.1 Hz frequency Hz Output 0 to max. 2 1 volt voltage Voltage 0 to 2 times Output controller .01 3 current rated output amps current 0 to 2 times Output controller 4 .01 KW power rated output power 0 to 410v 5 Bus voltage for 230v 1 volt controllers Frequency 0.0 to 240 6 0.1 Hz command Hz 7 Last fault Retains fault Numeric







for trouble value shooting Heat sink 0 to 150 1degree temperature degree cent cent. Running, Controller forward, Binary status accelerating, number decelerating Used by AllenController Numeric Bradley type value field service personal Control Display firm Numeric version wire version value Displays the status of start, stop, Binary Input status and reverse number discrete inputs Power 0.00 to 90 .01 factor angle degrees degrees Used by Memory AllenNumeric probe Bradley value display field service personnel Displays the status of Preset Binary speed status number discrete inputs Parameter Factory Description Name Default Accel 0.1 to 600 10 time 1 sec. Decel 0.1 to 600 10 time 1 sec. Min. 0 to240 Hz 0 Frequency Max. 0 to240 Hz 60 Frequency Stop Three Ramp mode settings 1)

Program parameters Parameter 30 31 32 33 34

35 36








selection Ramp 2) Coast 3) D.C. injection braking Base 10 to 240 frequency Hz 20 to 230 Base V for 230V Voltage controllers 20 to 200% Motor of over load controller current rated current Four settingskeypad, 2wire, Input 3wire, mode momentary run fwd/run reverse Nine different Output settings for configure a variety of controller conditions Clear Resets fault fault Resets controller Reset to factory default default settings Protects Program users lock settings Selects source of Frequency frequency select (internal or external)

60 230


3 wire


5. PROCESS AUTOMATION 5.1 INTRODUCTION Digital computers were first applied to the industrial process control in late 1950s 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. 2. 3. 4. 5. 6. 7. 8. Lowering and raising a job Moving job laterally. Synchronizing the opening and closing of tank with lowering and rising of job. Controlling start/stop and speed of conveyer motor using VVVF drive. Counting of job using proximity switch. Synchronizing finished job placement on conveyer belt. Measurement of temperature using thermocouple. Displaying of temperature on digital indicator.

5.2 DESCRIPTION OF MODEL 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: S.NO ITEM SPECIFICATION QUANTITY 1 Container Tin(19height,28cm diameter) 1 2 DC gear motor 24 volts separately excited with permanent magnet 2 3 Pulley and Gear 2,1 4 Relay( 8 terminals) 24 volts 2 Diagram of the model 5.2.1 CONTAINER 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. 5.2.2 DC GEAR 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. 5.2.3 PULLEY AND GEAR 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. 5.2.5 WOODEN STRUCTURE 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. OUTPUTS GIVEN OUT FROM PLC OUTPUT ADDRESS Motor 1 O:2/6 Motor 2 O:2/5 Relay 1 O:2/7 Relay 2 O:2/4 Digital controller O:4/0 Temperature hi alarm O:0/11 VVVF drive O:2/1 INPUTS GIVEN TO PLC INPUT ADDRESS To control the starting of operation I:0/0 Accept I:1/1 Test I:1/3 Proximity sensor I/P I:1/7 Emergency switch I:1/0 5.3 MOTION CONTROL USING PLC 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. Implementation 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: STEP 1 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. STEP 2 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. STEP 3

The motor -1 rotates clock wise without relay for 10.42sec. The container will close and the job will comes out. STEP 4 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. STEP 5 Arm motor rotate clock wise for 5.3sec and bring arm to its initial position. After that the next cycle starts after 4.5sec. OPERATION: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. 5.4 TEMPERATURE MEASUREMENT 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. Implementation 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. Operation 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 its 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. 5.5 SPEED CONTROL OF MOTOR USING VVVF DRIVE 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. Implementation 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. Operation 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. 5.6 CONVEYOR SYSTEM 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. Implementation 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. Operation 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. 2. 3. 4. 5.

User Manual, Allen BradleyTM Micro Logix 1500 Programmable Controller User Manual, Allen BradleyTM 160 SSC Variable Speed Controller Allen BradleyTMs URL Rockwell Automations URL MicroMentor, Allen BradleyTM, Rockwell International Company

8. APPENDIX A INSTRUCTION DESCRIPTION 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 counters 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 destination 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