Navigation

  • Page 1

    © 2011, The McGraw-Hill Companies, Inc. Chapter 5

  • Page 2

    © 2011, The McGraw-Hill Companies, Inc. Processor Memory Organization 5.1

  • Page 3

    © 2011, The McGraw-Hill Companies, Inc. The memory structure for a PLC processor consists of several areas, some of these having specific roles. With tag-based memory structures all data are assigned a variable name called a tag. A program can be developed using only tag names but you must assig...

  • Page 4

    © 2011, The McGraw-Hill Companies, Inc. The memory space can be divided into two broad categories: program files and Data files. Program and Data file organization for the SLC 500 controller.

  • Page 5

    © 2011, The McGraw-Hill Companies, Inc. Program files are the areas of processor memory where ladder logic programming is stored. Program files are the part of the processor memory that stores the user ladder logic program. The program accounts for most of the total memory of a given PLC system.

  • Page 6

    © 2011, The McGraw-Hill Companies, Inc. The Data file portion of the processor’s memory stores input and output status, processor status, the status of various bits, and numerical data. These files are organized by the type of data they contain.

  • Page 7

    © 2011, The McGraw-Hill Companies, Inc. I/O address format for the SLC family of PLCs.

  • Page 8

    © 2011, The McGraw-Hill Companies, Inc. Simulated I/O addressing format for the SLC family of PLCs.

  • Page 9

    © 2011, The McGraw-Hill Companies, Inc. Memory organization for a PLC-5 controller.

  • Page 10

    © 2011, The McGraw-Hill Companies, Inc. The PLC-5 and SLC 500 store all data in global data tables and are based on 16-bit operations. You access these data by specifying the address of the data you want. The addresses in the output data file and the input data file are potential locations for I...

  • Page 11

    © 2011, The McGraw-Hill Companies, Inc. The status data file contains information about the processor status The bit data file stores bit status and frequently serves for storage when using internal outputs.

  • Page 12

    © 2011, The McGraw-Hill Companies, Inc. The timer file stores the timer status and timer data. The counter file stores the counter status and counter data.

  • Page 13

    © 2011, The McGraw-Hill Companies, Inc. The integer file stores integer data values. The floating point file can store data that requires a decimal point.

  • Page 14

    © 2011, The McGraw-Hill Companies, Inc. The input image table is allocated to storing the on/off status of connected discrete inputs. If the input is on (switch closed), its corresponding bit in the table is set to 1. If the input is off (switch open), the corresponding bit is cleared, or reset...

  • Page 15

    © 2011, The McGraw-Hill Companies, Inc. Simulated operation of the input image table on/off status of connected discrete inputs.

  • Page 16

    © 2011, The McGraw-Hill Companies, Inc. The output image table is allocated to storing the on/off status of connected discrete outputs. If the program calls for an output to be ON, its corresponding bit in the table is set to 1. If the program calls for an output to be OFF, its corresponding bi...

  • Page 17

    © 2011, The McGraw-Hill Companies, Inc. Simulated operation of the output image table on/off status of connected discrete outputs.

  • Page 18

    © 2011, The McGraw-Hill Companies, Inc. Typically, micro PLCs have a fixed number of inputs and outputs. This controller has 20 discrete inputs with addresses I/0 through I/19 and 12 discrete outputs with addresses O/1 through O/11.

  • Page 19

    © 2011, The McGraw-Hill Companies, Inc. Program Scan 5.2

  • Page 20

    © 2011, The McGraw-Hill Companies, Inc. During each program scan cycle, the processor reads all the inputs, takes these values, and energizes or de-energizes the outputs according to the user program.

  • Page 21

    © 2011, The McGraw-Hill Companies, Inc. The time it takes to complete a scan cycle is a measure of how fast the controller can react to changes in inputs. If a controller has to react to an input signal that changes states twice during the scan time, it is possible that the PLC will never be abl...

  • Page 22

    © 2011, The McGraw-Hill Companies, Inc. The scan time is a function of: • The speed of the processor module • The length of the ladder program • The type of instructions executed • The actual ladder true/false conditions The PLC computes the scan time each time the END instruction is exe...

  • Page 23

    © 2011, The McGraw-Hill Companies, Inc. Overview of the data flow during the scan process.

  • Page 24

    © 2011, The McGraw-Hill Companies, Inc. Scan process applied to a single rung program.

  • Page 25

    © 2011, The McGraw-Hill Companies, Inc. Scan process applied to a multiple rung program.

  • Page 26

    © 2011, The McGraw-Hill Companies, Inc. Vertical versus horizontal scan patterns.

  • Page 27

    © 2011, The McGraw-Hill Companies, Inc. PLC Programming Languages 5.3

  • Page 28

    © 2011, The McGraw-Hill Companies, Inc. PLC programming language refers to the method by which the user communicates information to the PLC. Standard PLC programming languages

  • Page 29

    © 2011, The McGraw-Hill Companies, Inc. Ladder diagram language is the most commonly used PLC language and is designed to mimic hardwired relay logic. Hardwired relay control circuit Equivalent ladder diagram program

  • Page 30

    © 2011, The McGraw-Hill Companies, Inc. Instruction list programming language consists of a series of instructions that refer to the basic AND, OR, and NOT logic gate functions. Hardwired relay control circuit Equivalent instruction list program

  • Page 31

    © 2011, The McGraw-Hill Companies, Inc. Functional block diagram programming uses instructions that are programmed as blocks wired together to accomplish certain functions.

  • Page 32

    © 2011, The McGraw-Hill Companies, Inc. Ladder diagram and functional block diagram programming used to produce the same logical output. Ladder diagram Equivalent function block diagram.

  • Page 33

    © 2011, The McGraw-Hill Companies, Inc. Sequential function chart programming language is similar to a flowchart of your process. The program is split into steps with multiple operations happening in parallel branches.

  • Page 34

    © 2011, The McGraw-Hill Companies, Inc. Structured text is a high level language primarily used to implement more complex procedures. Ladder diagram Equivalent structured text program.

  • Page 35

    © 2011, The McGraw-Hill Companies, Inc. Relay Type Instructions 5.4

  • Page 36

    © 2011, The McGraw-Hill Companies, Inc. The ladder diagram language is a symbolic set of instructions used to create the controller program. Representations of contacts and coils are the basic symbols of the logic ladder diagram instruction set.

  • Page 37

    © 2011, The McGraw-Hill Companies, Inc. The Examine If Closed (XIC) instruction looks and operates like a normally open relay contact. Associated with each XIC instruction is a memory bit linked to the status of an input device or an internal logical condition in a rung.

  • Page 38

    © 2011, The McGraw-Hill Companies, Inc. The memory bit is set to 1 or 0 depending on the status of the input. A 1 corresponds to a true status or on condition. If the instruction memory bit is a 1 (true) this instruction will allow rung continuity through itself, like a closed relay contact.

  • Page 39

    © 2011, The McGraw-Hill Companies, Inc. A 0 corresponds to a false status or off condition. If the instruction memory bit is a 0 (false) this instruction will not allow rung continuity through itself and will assume a normally open state just like an open relay contact.

  • Page 40

    © 2011, The McGraw-Hill Companies, Inc. Simulated Examine If Closed (XIC) instruction operation.

  • Page 41

    © 2011, The McGraw-Hill Companies, Inc. The Examine If Open (XIO) instruction looks and operates like a normally closed relay contact. This instruction asks the PLC’s processor to examine if the contact is open. It does this by examining the bit at the memory location specified by the address ...

  • Page 42

    © 2011, The McGraw-Hill Companies, Inc. As with any other input the memory bit is set to 1 or 0 depending on the status of the input. A 1 corresponds to a true status or on condition. The instruction is interpreted as false when the bit is 1 and will not allow rung continuity through itself.

  • Page 43

    © 2011, The McGraw-Hill Companies, Inc. A 0 corresponds to a off condition. The instruction is interpreted as true when the bit is 0 and will not allow rung continuity through itself.

  • Page 44

    © 2011, The McGraw-Hill Companies, Inc. Simulated Examine If Open (XIO) instruction operation.

  • Page 45

    © 2011, The McGraw-Hill Companies, Inc. The Output Energize (OTE) instruction looks and operates like a relay coil. This instruction signals the PLC to energize (switch on) or de-energize (switch off ) the output. The instruction is associated with a memory bit that energizes the output when se...

  • Page 46

    © 2011, The McGraw-Hill Companies, Inc. A true logic path is established by the input instructions in the rung. OTE instruction is set to 1 to energize the output.

  • Page 47

    © 2011, The McGraw-Hill Companies, Inc. Simulated Output Energize (OTE) instruction operation.

  • Page 48

    © 2011, The McGraw-Hill Companies, Inc. Action of the field device and PLC bit. A signal present makes the NO bit (1) true; a signal absent makes the NO bit (0) false. The reverse is true for an NC bit.

  • Page 49

    © 2011, The McGraw-Hill Companies, Inc. Simulated operation of the field input device and the PLC bit.

  • Page 50

    © 2011, The McGraw-Hill Companies, Inc. The main function of the ladder logic diagram program is to control outputs based on input conditions. Each contact or coil symbol is referenced with an address that identifies what is being evaluated and what is being controlled. The same contact instruct...

  • Page 51

    © 2011, The McGraw-Hill Companies, Inc. For an output to be activated or energized, at least one left-to-right true logical path must exist. A complete closed path is referred to as having logical continuity. When logical continuity exists in at least one path, the rung condition and Output Ener...

  • Page 52

    © 2011, The McGraw-Hill Companies, Inc. Simulated operation of logic continuity.

  • Page 53

    © 2011, The McGraw-Hill Companies, Inc. Instruction Addressing 5.5

  • Page 54

    © 2011, The McGraw-Hill Companies, Inc. To complete the entry of a relay-type instruction, you must assign an address to each instruction. Address indicates what input is connected to what input device Address indicates what output is connected to what output device

  • Page 55

    © 2011, The McGraw-Hill Companies, Inc. Simulated operation of instruction addressing.

  • Page 56

    © 2011, The McGraw-Hill Companies, Inc. The assignment of an I/O address can be included in the I/O connection diagram. Inputs and outputs are typically represented by squares and diamonds, respectively.

  • Page 57

    © 2011, The McGraw-Hill Companies, Inc. Branch Instructions 5.6

  • Page 58

    © 2011, The McGraw-Hill Companies, Inc. Branch instructions are used to create parallel paths of input condition instructions. The rung will be true if either instruction A or B is true.

  • Page 59

    © 2011, The McGraw-Hill Companies, Inc. Simulated branch instructions.

  • Page 60

    © 2011, The McGraw-Hill Companies, Inc. Parallel branches can be used to allow more than one combination of input conditions. Either A and not B, or C provides logical continuity and energizes output D.

  • Page 61

    © 2011, The McGraw-Hill Companies, Inc. Simulated program, either A and not B, or C provides logical continuity and energizes output D.

  • Page 62

    © 2011, The McGraw-Hill Companies, Inc. Output branching allows a true logic path to control multiple outputs Either A or B provides a true logical path to all three output instructions: C, D, and E. Additional input instructions can be programmed in the output branches.

  • Page 63

    © 2011, The McGraw-Hill Companies, Inc. Simulated program, either A or B provides a true logical path to all three output instructions: C, D, and E.

  • Page 64

    © 2011, The McGraw-Hill Companies, Inc. Input and output branches can be nested to avoid redundant instructions and to speed up processor scan time. A nested branch starts or ends within another branch.

  • Page 65

    © 2011, The McGraw-Hill Companies, Inc. In some PLC models, the programming of a nested branch cannot be done directly. It is possible, however, to program a logically equivalent branching condition.

  • Page 66

    © 2011, The McGraw-Hill Companies, Inc. There may be limitations to the number of series contact instructions that can be included in one rung of a ladder diagram as well as limitations to the number of parallel branches.

  • Page 67

    © 2011, The McGraw-Hill Companies, Inc. The PLC will not allow for programming of vertical contacts. Reprogrammed to eliminate vertical contact.

  • Page 68

    © 2011, The McGraw-Hill Companies, Inc. The processor examines the ladder logic rung for logic continuity from left to right. If programmed as shown, contact combination FDBC would be ignored. Reprogrammed circuit.

  • Page 69

    © 2011, The McGraw-Hill Companies, Inc. Internal Relay Instructions 5.7

  • Page 70

    © 2011, The McGraw-Hill Companies, Inc. An internal output does not directly control an output field device. The advantage of using internal outputs is that there are many situations in which an output instruction is required in a program but no physical connection to a field device is needed.

  • Page 71

    © 2011, The McGraw-Hill Companies, Inc. SLC 500 controllers use bit file B3 for internal bit addressing.

  • Page 72

    © 2011, The McGraw-Hill Companies, Inc. Internal relay used for a program that requires more series contacts than the rung allows. This PLC allows for only 7 series contacts when 12 are actually required for the programmed logic.

  • Page 73

    © 2011, The McGraw-Hill Companies, Inc. Simulated internal relay program.

  • Page 74

    © 2011, The McGraw-Hill Companies, Inc. Programming Examine If Closed and Examine If Open Instructions 5.8

  • Page 75

    © 2011, The McGraw-Hill Companies, Inc. Examine If Closed (XIC) instruction Both the NO and the NC pushbuttons are represented in the program by the Examine If Closed instruction. The normal state of the field input device (NO or NC) does not matter to the controller. What matters is that contac...

  • Page 76

    © 2011, The McGraw-Hill Companies, Inc. Simulated Examine If Closed (XIC) instruction

  • Page 77

    © 2011, The McGraw-Hill Companies, Inc. Examine If Open (XIO) instruction The pushbutton is represented in the user program by an Examine If Open instruction. This is because the rung must be true when the external pushbutton is open and false when the pushbutton is closed.

  • Page 78

    © 2011, The McGraw-Hill Companies, Inc. Simulated Examine If Open (XIO) instruction

  • Page 79

    © 2011, The McGraw-Hill Companies, Inc. The logic states (0 or 1) indicate whether an instruction is true or false and is the basis of controller operation.

  • Page 80

    © 2011, The McGraw-Hill Companies, Inc. The time aspect relates to the repeated scans of the program, wherein the input table is updated with the most current status bits.

  • Page 81

    © 2011, The McGraw-Hill Companies, Inc. Entering The Ladder Diagram 5.9

  • Page 82

    © 2011, The McGraw-Hill Companies, Inc. Allen-Bradley’s RSLogix software packages are windows programming packages used to develop ladder logic programs. Software, in various versions, can be used to program the PLC-5, SLC 500, ControlLogix, and MicroLogic family of processors. A personal comp...

  • Page 83

    © 2011, The McGraw-Hill Companies, Inc. RSLogix SLC 500 main window.

  • Page 84

    © 2011, The McGraw-Hill Companies, Inc. Instruction toolbar with bit instructions selected. To place an instruction on a rung, click its icon on the toolbar and simply drag the instruction straight off the toolbar onto the rung of the ladder.

  • Page 85

    © 2011, The McGraw-Hill Companies, Inc. The programming software needs to know what processor is being used in conjunction with the user program. The Select Processor Type screen contains a list of the different processors that the RSLogix software can program.

  • Page 86

    © 2011, The McGraw-Hill Companies, Inc. The I/O Configuration screen lets you double click or drag-and-drop a module from an all-inclusive list to assign it to a slot in your configuration.

  • Page 87

    © 2011, The McGraw-Hill Companies, Inc. Data File screens contain data that are used in conjunction with ladder program instructions and include input and output files as well as timer, counter, integer, and bit files. The bit file B3 is used for internal relays.

  • Page 88

    © 2011, The McGraw-Hill Companies, Inc. Relay ladder logic is a graphical programming language designed to closely represent the appearance of a wired relay system. The logic is apparent from the highlighting which identifies the logic state of contacts in real time and which rungs have logic co...

  • Page 89

    © 2011, The McGraw-Hill Companies, Inc. Modes Of Operation 5.10

  • Page 90

    © 2011, The McGraw-Hill Companies, Inc. A processor has basically two modes of operation: the program mode and some variation of the run mode. A three-position keyswitch may be used to select different processor modes of operation.

  • Page 91

    © 2011, The McGraw-Hill Companies, Inc. The program mode is used to enter a new program, edit or update an existing program, upload files and download files. The run mode is used to execute the user program. The test mode is used to operate or monitor the user program without energizing any out...

x