EasyManua.ls Logo

Allen-Bradley SLC 500 Series User Manual

Allen-Bradley SLC 500 Series
694 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
Page #1 background imageLoading...
Page #1 background image
SLC 500 Instruction
Set
Catalog Numbers 1747-L20x,
1747-L30x, 1747-L40x, 1747-L511,
1747-L514, 1747-L524, 1747-L531,
1747-L532, 1747-L533, 1747-L541,
1747-L542, 1747-L543, 1747-L551,
1747-L552, 1747-L553
Reference Manual

Table of Contents

Other manuals for Allen-Bradley SLC 500 Series

Question and Answer IconNeed help?

Do you have a question about the Allen-Bradley SLC 500 Series and is the answer not in the manual?

Allen-Bradley SLC 500 Series Specifications

General IconGeneral
Programming SoftwareRSLogix 500
SeriesSLC 500
CategoryController
ManufacturerAllen-Bradley (Rockwell Automation)
I/O CapacityUp to 4096 I/O points
Communication PortsDH-485
Programming LanguagesLadder Logic
Operating Temperature0 to 60 °C (32 to 140 °F)
Relative Humidity5% to 95% (non-condensing)
Memory4K to 64K words (depending on the processor)
Power SupplyAC or DC (depending on the module)

Summary

Important User Information

Summary of Changes

Preface

Who Should Use This Manual

Identifies the target audience for this manual, including designers, installers, programmers, and troubleshooters of SLC 500 systems.

Purpose of This Manual

Defines the manual as a reference guide for SLC 500 controllers, covering status file functions and ladder logic instructions.

Related Documentation

Lists related Rockwell Automation documents for additional information on SLC 500 products and solid-state control considerations.

Common Techniques Used in This Manual

Explains conventions used throughout the manual, such as bulleted lists for information and numbered lists for sequential steps.

Chapter 1 Processor Files

File Structure

Describes the SLC 500 user memory structure, comprising Data Files and Program Files, and default file types.

Output and Input Data Files (Files O0: and I1:)

Explains Data Files 0 and 1 represent external outputs and inputs, detailing the addressing format for outputs and inputs.

Status File (File S2:)

Details the fixed Status File (S:2), its addressing format, and examples of accessing its bits and words.

Bit Data File (B3:)

Describes the bit file (File 3), its maximum size, and addressing formats for bits and elements.

Timer Data File (T4:)

Explains timer instructions use 3-word elements (Word 0: status, Word 1: preset, Word 2: accumulator) and provides addressing format.

Addressing Structure

Details how to address bits and words using the format Tf:e.s/b for timers.

Counter Data File Elements (C5:)

Describes counter addresses as 3-word elements (Word 0: control, Word 1: preset, Word 2: accumulator) and status bits.

Entering Parameters

Details parameters for Counter instructions, including Accumulator Value (ACC) and Preset Value (PRE), and addressing structure.

Control Data File (R6:)

Explains the use of control bits in 3-word elements for various instructions and the structure of control elements.

Integer Data File (N7:)

Describes how to assign integer addresses as 1-word elements, addressable at the element and bit level.

Float Data File (F8:)

Explains float data type addresses as 2-word elements, addressable at the element level.

Chapter 2 Basic Instructions

About the Basic Instructions

Introduces basic instructions that represent hardwired logic circuits and are separated into three groups: bit, timer, and counter.

Bit Instructions Overview

Explains that bit instructions operate on a single bit of data and are used with Output/Input Files, Status File, Bit File, and Timer File.

Examine if Closed (XIC)

Describes the XIC instruction for determining if a bit is ON, evaluating the instruction as true if the bit is addressed as ON (1).

Examine if Open (XIO)

Describes the XIO instruction for determining if a bit is OFF, evaluating the instruction as true if the bit is addressed as OFF (0).

Output Energize (OTE)

Explains the OTE instruction to turn a bit ON or OFF when rung conditions are true. OTE instructions are reset under specific conditions.

Output Latch (OTL) and Output Unlatch (OTU)

Describes OTL and OTU as retentive output instructions that turn a bit ON or OFF respectively, retaining state.

One-shot Rising (OSR)

Explains the OSR instruction as a retentive input instruction that triggers an event to occur one time based on rung state change.

Timer Instructions Overview

Provides general information about timer instructions and how they function, detailing parameters like Accumulator Value and Preset Value.

Timer On-delay (TON)

Describes the TON instruction to turn an output on or off after a preset time interval, counting timebase intervals when rung conditions are true.

Timer Off-delay (TOF)

Explains the TOF instruction to turn an output on or off after its rung has been off for a preset time interval.

Retentive Timer (RTO)

Describes the RTO instruction to turn an output on or off after its timer has been on for a preset time interval, retaining accumulated value.

Counter Instructions Overview

Explains how counters work, including the count value range and status bits for overflow (OV) or underflow (UN).

Count Up (CTU)

Describes the CTU instruction that counts false-to-true rung transitions, incrementing the accumulated value by one.

Count Down (CTD)

Explains the CTD instruction that counts false-to-true rung transitions, decrementing the accumulated value by one.

High-speed Counter (HSC)

Introduces the HSC as a variation of the CTU counter that counts high-speed pulses from a fixed controller's high-speed input.

Reset (RES)

Explains the RES instruction used to reset a timer or counter, clearing accumulated value and status bits.

Chapter 3 Comparison Instructions

About the Comparison Instructions

Explains that comparison instructions test pairs of values to condition rung continuity; if the first value meets the condition, the instruction is true.

Equal (EQU)

Describes the EQU instruction to test if two values are equal, evaluating as true if equal and false otherwise.

Not Equal (NEQ)

Explains the NEQ instruction to test if two values are not equal, evaluating as true if not equal and false if equal.

Less Than (LES)

Describes the LES instruction to test if one value is less than another, evaluating as true if A < B, and false otherwise.

Less Than or Equal (LEQ)

Explains the LEQ instruction to test if one value is less than or equal to another, evaluating as true if A <= B, and false otherwise.

Greater Than (GRT)

Describes the GRT instruction to test if one value is greater than another, evaluating as true if A > B, and false otherwise.

Greater Than or Equal (GEQ)

Explains the GEQ instruction to test if one value is greater than or equal to another, evaluating as true if A >= B, and false otherwise.

Masked Comparison for Equal (MEQ)

Describes the MEQ instruction to compare data at a source address with data at a compare address, using a mask.

Limit Test (LIM)

Explains the LIM instruction to test values within or outside a specified range, depending on how limits are set.

Chapter 4 Math Instructions

About the Math Instructions

Introduces math instructions that perform arithmetic functions, taking two input values and outputting the result to an assigned memory location.

Math Instructions Overview

Provides general information applicable to all math instructions, including source, destination, and operand types.

Entering Parameters

Details parameters for math instructions, including source (address/constant), destination (address), and support for floating point/string values.

Using Indexed Word Addresses

Explains the option of using indexed word addresses for instruction parameters specifying word addresses.

Using Indirect Word Addresses

Describes using indirect word-level and bit-level addresses for instructions specifying word addresses.

Updates to Arithmetic Status Bits

Explains that arithmetic status bits are in the controller status file (Word 0, bits 0-3) and are updated after instruction execution.

Overflow Trap Bit, S:5/0

Describes the minor error bit (S:5/0) set upon detection of mathematical overflow or division by zero.

Updates to the Math Register, S:13 and S:14

Explains that S:13 and S:14 contain the 32-bit signed result of MUL, DIV, and DDV instructions.

Using Floating Point Data File (F8:)

Describes the Float data file type valid for SLC 5/03 and higher, as 2-word elements addressable at the element level.

Add (ADD)

Explains the ADD instruction to add two values (source A and B) and place the result in the destination.

Subtract (SUB)

Describes the SUB instruction to subtract source B from source A and place the result in the destination.

32-Bit Addition and Subtraction

Explains the option of performing 16-bit or 32-bit signed integer addition and subtraction using status file bit S:2/14.

Math Overflow Selection Bit S:2/14

Details how to set S:2/14 for 32-bit operations and the resulting overflow bit and destination address behavior.

Multiply (MUL)

Describes the MUL instruction to multiply one value (source A) by another (source B) and place the result in the destination.

Updates to the Math Register, S:13 and S:14

Explains that S:13 and S:14 contain the unrounded quotient and remainder for DIV and DDV instructions.

Divide (DIV)

Describes the DIV instruction to divide one value (source A) by another (source B), placing the rounded quotient and remainder.

Double Divide (DDV)

Explains the DDV instruction to divide the 32-bit math register by a 16-bit source value, placing the rounded quotient in the destination.

Clear (CLR)

Describes the CLR instruction to set the destination value of a word to zero.

Square Root (SQR)

Explains the SQR instruction to calculate the square root of the absolute value of the source and place the rounded result in the destination.

Scale with Parameters (SCP)

Describes the SCP instruction to produce a scaled output value with a linear relationship between input and scaled values.

Entering Parameters

Details the parameters for SCP: Input value, Input Min/Max, Scaled Min/Max, and Scaled Output.

Scale Data (SCL)

Explains the SCL instruction where the source value is multiplied by the rate value, added to the offset, and placed in the destination.

Ramp Instruction (RMP)

Describes the RMP instruction for creating linear, acceleration, deceleration, and 'S' curve ramp output waveforms.

Absolute (ABS)

Explains the ABS instruction to calculate the absolute value of the source and place the result in the destination.

Compute (CPT)

Describes the CPT instruction for performing copy, arithmetic, logical, and conversion operations by defining an expression.

Swap (SWP)

Explains the SWP instruction to swap the low and high bytes of a specified number of words in various file types.

Arc Sine (ASN)

Describes the ASN instruction to take the arc sine of a number and store the result (in radians) in the destination.

Arc Cosine (ACS)

Explains the ACS instruction to take the arc cosine of a number (source in radians) and store the result in the destination.

Arc Tangent (ATN)

Describes the ATN instruction to take the arc tangent of a number (source) and store the result (in radians) in the destination.

Cosine (COS)

Explains the COS instruction to take the cosine of a number (source in radians) and store the result in the destination.

Natural Log (LN)

Describes the LN instruction to take the natural log of the value in the source and store the result in the destination.

Log to the Base 10 (LOG)

Explains the LOG instruction to take the log base 10 of the value in the source and store the result in the destination.

Sine (SIN)

Describes the SIN instruction to take the sine of a number (source in radians) and store the result in the destination.

Tangent (TAN)

Explains the TAN instruction to take the tangent of a number (source in radians) and store the result in the destination.

X to the Power of Y (XPY)

Describes the XPY instruction to raise a value (source A) to a power (source B) and store the result in the destination.

Chapter 5 Data Handling Instructions

Table 5.1 Data Handling Instructions

Lists data handling instructions with their mnemonic, name, purpose, and page number.

Convert to BCD (TOD)

Explains the TOD instruction to convert 16-bit integers into BCD values.

Updates to Arithmetic Status Bits

Details how arithmetic status bits in the controller status file (Word 0, bits 0-3) are updated after instruction execution.

Convert from BCD (FRD)

Describes the FRD instruction to convert BCD values to integer values.

Radian to Degrees (DEG)

Explains the DEG instruction to convert radians to degrees and store the result in the destination.

Degrees to Radians (RAD)

Describes the RAD instruction to convert degrees to radians and store the result in the destination.

Decode 4 to 1 of 16 (DCD)

Explains the DCD instruction sets one bit of the destination word based on the first four bits of the source word.

Encode 1 of 16 to 4 (ENC)

Describes the ENC instruction to search the source for the first set bit and write its position to the destination.

Copy File (COP) and Fill File (FLL) Instructions

Explains COP instruction copies data blocks and FLL instruction loads values into a file.

Move (MOV)

Describes the MOV instruction to move source value to the destination location, repeating each scan the rung remains true.

Masked Move (MVM)

Explains the MVM instruction to move data from source to destination, allowing portions to be masked by a separate word.

And (AND)

Describes the AND instruction for a bit-by-bit logical AND operation using source A and source B values.

Or (OR)

Explains the OR instruction for a bit-by-bit logical OR operation using source A and source B values.

Exclusive Or (XOR)

Describes the XOR instruction for a bit-by-bit logical XOR operation using source A and source B values.

Not (NOT)

Explains the NOT instruction for a bit-by-bit logical NOT operation using the value at source A.

Negate (NEG)

Describes the NEG instruction to change the sign of the source and place it in the destination.

FIFO and LIFO Instructions Overview

Introduces FIFO (First In First Out) and LIFO (Last In First Out) instructions for loading and unloading words into files.

Chapter 6 Program Flow Instructions

Table 6.1 Program Flow Instructions

Lists program flow instructions with mnemonic, instruction name, purpose, and page number.

About the Program Flow Control Instructions

Explains that control instructions manage program sequence, allowing changes to scan order to minimize scan time and troubleshoot.

Jump to Label (JMP) and Label (LBL)

Describes JMP and LBL instructions used in pairs to skip portions of the ladder program, saving scan time or executing segments repeatedly.

Jump to Subroutine (JSR), Subroutine (SBR), and Return (RET)

Explains JSR, SBR, and RET instructions for executing separate subroutine files and returning to the instruction following JSR.

Master Control Reset (MCR)

Describes MCR instructions used in pairs to create program zones that turn off non-retentive outputs within the zone.

Temporary End (TND)

Explains the TND instruction stops processor scanning for the rest of the program file, updates I/O, and resumes scanning at rung 0.

Suspend (SUS)

Describes the SUS instruction that causes the processor to enter Suspend Idle mode, storing the Suspend ID in S:7.

Immediate Input with Mask (IIM)

Explains the IIM instruction allows data update prior to the normal input scan, transferring data through a mask to the input data file.

Immediate Output with Mask (IOM)

Describes the IOM instruction to update outputs prior to the normal output scan, transferring data through a mask to the physical output.

I/O Refresh (REF)

Explains the REF instruction interrupts the program scan to execute the I/O scan and service communication portions.

Chapter 7 Application Specific Instructions

Table 7.1 Application Specific Instructions

Lists application specific instructions with mnemonic, instruction name, purpose, and page.

About the Application Specific Instructions

Explains that these instructions simplify ladder programs by performing complex operations with single instructions or pairs.

Bit Shift Instructions Overview

Provides general information applicable to bit shift instructions.

Bit Shift Left (BSL)

Describes BSL as an output instruction that loads data into a bit array one bit at a time, shifting data to the left.

Bit Shift Right (BSR)

Explains BSR as an output instruction that loads data into a bit array one bit at a time, shifting data to the right.

Sequencer Instructions Overview

Provides general information applicable to sequencer instructions.

Sequencer Output (SQO)

Describes SQO instruction that transfers 16-bit data to word addresses for sequential machine operations.

Sequencer Compare (SQC)

Explains SQC instruction that transfers 16-bit data to word addresses for sequential machine operations, comparing to a reference word.

Sequencer Load (SQL)

Describes the SQL instruction that stores 16-bit data into a sequencer load file at each step of sequencer operation.

Read High Speed Clock Instruction (RHC)

Explains the RHC instruction provides a high performance timestamp for diagnostics and calculations.

Compute Time Difference Instruction (TDF)

Describes the TDF instruction to calculate the number of 10 µs ticks between any two timestamps captured using the RHC instruction.

File Bit Comparison (FBC)

Explains the FBC instruction used to monitor operations to detect malfunctions by comparing bits in a file to a reference file.

Diagnostic Detect (DDT)

Describes the DDT instruction used to monitor operations to detect malfunctions, comparing bits and changing reference bits on mismatch.

Read Program Checksum (RPC)

Explains the RPC instruction copies the program checksum from processor RAM or memory module to a destination integer file.

Chapter 8 Block Transfer Instructions

Table 8.1 Block Transfer Instructions

Lists block transfer instructions with mnemonic, instruction name, purpose, and page.

Block Transfer Instructions (BTR and BTW)

Explains BTR (Block Transfer Read) and BTW (Block Transfer Write) instructions for transferring data over RIO link.

RIO Block Transfer General Functional Overview

Describes how RIO scanners perform block transfers using control/status buffers in M0 and M1 files.

Entering Parameters for BTR and BTW

Details parameters for BTR/BTW: Data File, BTR/BTW Buffer File, and Control.

Control Status Bits

Explains how to examine instruction control and status bits stored in the control structure, mapped to bits in Word 0.

Instruction Operation

Details the sequential processing of BTR/BTW instructions by the scanner and SLC control program.

Programming Examples

Provides examples of block transfer programming, referencing figures for different modes like Directional and Repeating.

Comparison to the PLC-5 BTR and BTW

Compares BTR/BTW instructions in SLC processors to PLC-5, highlighting differences in Control Block, Error Codes, and limitations.

Chapter 9 Proportional Integral Derivative Instruction

Overview

Describes the PID instruction as an output instruction controlling physical properties using process loops, typically with analog I/O.

The PID Concept

Explains PID closed loop control, holding a process variable at a desired set point, with examples of flow rate/fluid level control.

The PID Equation

Presents the standard PID equation with dependent gains, used to control processes by sending output signals to the control valve.

The PID Instruction

Shows a PID instruction with typical addresses and parameters, emphasizing integer-only algorithm and rung logic placement.

Entering Parameters

Details entering parameters for PID: Control Block, Process Variable, and Control Variable addresses.

PID Control Block Layout

Presents the PID control block layout, fixed at 23 words, detailing flags and parameters like Setpoint, Gain, and Reset.

Controller Gain (Kc)

Describes the Controller Gain (Kc) parameter, affecting proportional gain and its range.

Reset Term (Ti)

Explains the Reset Term (Ti) as the integral gain, ranging from 0 to 3276.7 minutes per repeat.

Rate Term (Td)

Describes the Rate Term (Td) as the derivative term, adjustment range 0 to 327.67 minutes.

Feed Forward/Bias

Explains how bias can be added to the CV output using the Feed Forward/Bias element for anticipation of disturbance.

Mode (TM)

Describes the Mode bit specifying PID operation in timed mode (1) or STI mode (0), affecting CV updates.

Loop Update

Explains Loop Update (Word 13) as the time interval between PID calculations, in 0.01 second intervals.

Deadband

Describes Deadband (DB) as extending above and below the setpoint, affecting operation only after the process variable enters the deadband.

Scaled Error

Defines Scaled Error as the difference between process variable and setpoint, with format determined by the Control Mode (CM) bit.

Auto / Manual (AM)

Explains the Auto/Manual bit, specifying automatic operation (0) or manual operation (1), controlling the control variable (CV).

Control (CM)

Describes the Control Mode bit, toggling E=SP-PV and E=PV-SP, affecting control variable increase or decrease relative to setpoint.

Deadband (DB)

States this bit is set (1) when the process variable is within the zero-crossing deadband range.

Reset and Gain Enhancement Bit (RG)

Explains the RG bit affects reset minute/repeat and gain multiplier values, dividing them by 10 when set (1).

Setpoint Scaling (SC)

Notes the SC bit is cleared when setpoint scaling values are specified.

Loop Update Time Too Fast (TF)

Explains the TF bit is set if the loop update time cannot be achieved by the controller due to scan time limitations.

Derivative Rate Action Bit (DA)

Describes the DA bit, which when set (1), evaluates derivative calculation on error; when clear (0), evaluates on process variable.

Output Alarm Upper Limit (UL)

States the control variable upper limit alarm bit is set (1) when calculated CV output exceeds the upper CV limit.

Output Alarm Lower Limit (LL)

Explains the control variable lower limit alarm bit is set (1) when calculated CV output is less than the lower CV limit.

Setpoint Out Of Range (SP)

This bit is set (1) when the setpoint exceeds the maximum scaled value or is less than the minimum scaled value.

PV Out Of Range (PV)

The process variable out of range bit is set (1) when the unscaled process variable (PV) exceeds 16,383 or is less than zero.

PID Done (DN)

The PID done bit is set (1) for one scan when the PID algorithm is computed; it resets automatically.

PID Rational Approximation Bit (RA)

When RA bit is set, rational approximation method is used for PID computation, resulting in more accurate output.

PID Enable (EN)

The PID enabled bit is set (1) whenever the PID instruction is enabled. It follows the rung state.

Integral Sum

This is the result of the integration of the error term over time.

Input Parameters

Shows input parameter addresses, data formats, and user program access types.

Setpoint (SP)

The SP (Setpoint) is the desired control point of the process variable.

Scaled Process Variable (SPV)

The SPV (Scaled Process Variable) is the analog input variable; range is SMIN to SMAX if scaling is enabled.

Setpoint Maximum Scaled (SMAX)

Corresponds to the setpoint value in engineering units when the control input is at its maximum.

Setpoint Minimum Scaled (SMIN)

Corresponds to the setpoint value in engineering units when the control input is at its minimum.

Output Parameters

Lists output parameter addresses, data formats, and user program access types.

Control Variable (CV)

The CV (Control Variable) is user-defined and represents the PID output value.

Control Variable Percent (CV%)

Displays the control variable as a percentage (0 to 100%), tracking CV in auto mode or manipulated value in manual mode.

Output Limiting Enable (OL)

A value of one enables output limiting to CVH (Max) and CVL (Min); a value of zero disables OL.

Output Maximum (CVH)

When OL is enabled, CVH is the maximum output (in percent). If CV exceeds CVH, CV is set to CVH, and UL bit is set.

Output Minimum (CVL)

When OL is enabled, CVL is the minimum output (in percent). If CV is below CVL, CV is set to CVL, and LL bit is set.

Runtime Errors

Lists PID instruction runtime errors, their descriptions, probable causes, and corrective actions.

Chapter 10 ASCII Instructions

Table 10.1 ASCII Instruction

Lists ASCII instructions with mnemonic, instruction name, purpose, and page number.

ASCII Instruction Overview

Describes ASCII instructions available in SLC 5/03+ processors, categorized into port control and string control.

Protocol Parameter Overview

Lists ASCII protocol parameters configurable via Channel 0 settings: Baud Rate, Start Bits, Stop Bits, Parity, Data Bits, Termination, Append.

Using the ASCII Data File Type

Explains that ASCII data file types are 1-word elements and provides the addressing format (Af:e/b).

Using the String (ST) Data File Type

Describes the ST data file type for SLC 5/03+ processors, 42-word elements, with string length and data access via .DATA[n].

Entering Parameters

Details the control element parameters for ASCII instructions, including status bits, error code byte, and character words.

Test ASCII Buffer for Line (ABL)

Explains the ABL instruction to determine total characters in input buffer up to end-of-line characters.

Number of ASCII Characters In Buffer (ACB)

Describes the ACB instruction to determine total characters in the buffer, recording value in the position field.

String to Integer (ACI)

Explains the ACI instruction to convert a numeric ASCII string to an integer value between -32,768 and 32,767.

ASCII Clear Receive and/or Transmit Buffer (ACL)

Describes the ACL instruction to clear ASCII buffers immediately upon rung transition to true.

String Concatenate (ACN)

Explains the ACN instruction to combine two strings using ASCII operands, appending the second string to the first.

String Extract (AEX)

Describes the AEX instruction to create a new string by taking a portion of an existing string.

ASCII Handshake Lines (AHL)

Explains the AHL instruction to set or reset RS-232 DTR and RTS handshake control lines for a modem.

Integer to String (AIC)

Describes the AIC instruction to convert an integer value to an ASCII string.

ASCII Read Characters (ARD)

Explains the ARD instruction to read characters from the buffer and store them in a string.

ASCII Read Line (ARL)

Describes the ARL instruction to read characters from the buffer up to and including end-of-line characters, storing them in a string.

String Search (ASC)

Explains the ASC instruction to search an existing string for an occurrence of the source string.

ASCII String Compare (ASR)

Describes the ASR instruction to compare two ASCII strings for length and case sensitivity.

ASCII Write with Append (AWA)

Explains the AWA instruction to write characters from a source string to an external device, adding configured append characters.

ASCII Write (AWT)

Describes the AWT instruction to write characters from a source string to an external device.

ASCII Instruction Error Codes

Lists ASCII instruction error codes and their recommended actions.

Chapter 11 Understanding Interrupt Routines

Table 11.1 Interrupt Routine Instructions

Lists interrupt routine instructions with mnemonic, instruction name, purpose, and page.

User Fault Routine Overview

Explains the user fault routine option to prevent processor shutdown on specific user faults.

Status File Data Saved

Details data saved on entry to user fault subroutine and rewritten upon exit: S:0, S:13/14, S:24.

Creating a User Fault Subroutine

Provides steps to create a user fault subroutine, specifying file number in S:29 and using S:20/S:21 for fault location.

User Interrupt Routine Application Example

Presents an example of controlling major errors (0020h, 0034h) by preventing shutdowns or resetting accumulator values.

Selectable Timed Interrupt Overview

Explains the STI function to interrupt processor scan periodically to scan a subroutine file.

Basic Programming Procedure for the STI Function

Provides steps for STI function: create subroutine file, enter STI file number in S:31, and setpoint in S:30.

STI Subroutine Content

Describes STI subroutine content, allowing most instructions except TND, REF, SVC; requires IIM/IOM for immediate I/O update.

Interrupt Latency and Interrupt Occurrences

Defines interrupt latency and shows interaction between interrupt and processor operating cycle.

Interrupt Priorities

Lists interrupt priorities for SLC 5/03 and higher processors: User Fault, DII, STI, I/O Interrupt.

Status File Data Saved

Details data saved on entry to STI subroutine and rewritten upon exit: S:0, S:13/14, S:24.

STD and STE Instructions

Explains STD (Selectable Timed Disable) and STE (Selectable Timed Enable) instructions used to create zones where STI execution is controlled.

Selectable Timed Disable - STD

Describes STD resets STI enable bit, preventing subroutine execution; timer continues to operate.

Selectable Timed Enable - STE

Explains STE sets STI enable bit on false-to-true transition, allowing subroutine execution.

STD/STE Zone Example

Provides a ladder program example showing STD and STE instructions to avoid STI subroutine execution at specific points.

Selectable Timed Start (STS)

Describes STS instruction to condition STI timer start upon REM Run mode entry, or to set file number/setpoint.

Discrete Input Interrupt Overview

Explains DII for high-speed applications or event response, allowing subroutine execution when input bit pattern matches a programmed value.

Basic Programming Procedure for the DII Function

Details steps for DII function: create subroutine file, enter Slot number (S:47), Bit Mask (S:48), Compare Value (S:49), Preset Value (S:50), File Number (S:46).

Operation

Describes DII operation after download and REM Run mode entry, including Counter Mode and Event Mode.

DII Subroutine Content

Explains DII subroutine content, allowing most instructions except TND, REF, SVC; requires IIM/IOM for immediate I/O.

Interrupt Latency and Interrupt Occurrences

Defines interrupt latency and shows interaction between DII and processor operating cycle.

Interrupt Priorities

Lists interrupt priorities for SLC 5/03 and higher: User Fault, DII, STI, I/O Interrupt.

Status File Data Saved

Details data saved on entry to DII subroutine and rewritten upon exit: S:0, S:13/14, S:24.

Reconfigurability

Explains DII reconfigurability through parameter changes and the use of reconfiguration bits.

DII Parameters

Details DII parameters with status file addresses: Pending Bit, Enable Bit, Executing Bit, Overflow Bit, Reconfigure Bit, Lost Bit, File Number, Slot Number, Bit Mask, Compare Value, Preset, Return Mask, Accumulator.

Chapter 12 SLC Communication Instructions

Table 12.1 Communication Instructions

Lists communication instructions with mnemonic, instruction name, purpose, and page.

About the Communication Instructions

Introduces SLC communication instructions, including Service Communication, Message Read/Write, CEM, DEM, and EEM.

Service Communications (SVC)

Explains the SVC instruction interrupts program scan to execute service communication portion of operating cycle.

MSG Instruction Operation

Describes MSG instruction operation, allowing read/write data between nodes and holding multiple messages enabled.

MSG Instruction Configuration Options

Lists configuration options for MSG on SLC 5/02+ processors: Peer-to-peer Read/Write on local/remote networks.

MSG Instruction Parameters

Details parameters for MSG instruction: Read/Write, Target Device, Local/Remote, Control Block, Control Block Length, Setup Screen.

Control Block Layouts

Shows control block layouts for 500CPU/PLC-5, 485CIF, and PLC-5 with Logical ASCII/Symbolic Addressing.

MSG Instruction Setup Screen Status Bits

Lists status bits associated with MSG instruction: Timeout (TO), Error (ER), Done (DN), Enabled (EN), Waiting for Queue Space (WQ).

MSG Instruction Control Block

Discusses limitations for manipulating MSG instruction control block values, highlighting CO, EN, and TO bits as manipulable.

Explicit Message Instruction Overview

Introduces CEM, DEM, EEM instructions for initiating generic CIP commands to devices on ControlNet, DeviceNet, EtherNet/IP networks.

CEM Instruction Parameters

Details parameters for CEM instruction: Control Block and Control Block Length.

CEM Instruction Setup Screen Parameters

Lists parameters for CEM setup screens: Parameters for This Controller (General Tab) and Parameters for Target Device (General Tab).

DeviceNet Explicit Message (DEM)

Explains DEM instruction for initiating unconnected CIP Generic messages via 1747-SDN DeviceNet scanner module.

DEM Instruction Parameters

Details parameters for DEM instruction: Control Block and Control Block Length.

DEM Instruction Setup Screen Parameters

Lists parameters for DEM setup screens: Parameters for This Controller (General Tab) and Parameters for Target Device (General Tab).

EtherNet/IP Explicit Message (EEM)

Describes EEM instruction for initiating connected CIP Generic messages via channel 1 on SLC 5/05 processor.

EEM Instruction Parameters

Details parameters for EEM instruction: Control Block and Control Block Length.

EEM Instruction Setup Screen Parameters

Lists parameters for EEM setup screens: Parameters for This Controller (General Tab).

Chapter 13 SLC Communication Channels

Table 13.1 Supported Communication Drivers

Lists supported communication drivers (DH-485, DH+, Ethernet, DF1, Modbus RTU, ASCII) and their capabilities per SLC processor.

Communication Driver Overview

Provides an overview of DH-485, DH+, and Ethernet protocols, including their features and capabilities.

DH-485 Communications

Details DH-485 network features, protocol, token rotation, and considerations for performance.

DH-485 Network Protocol

Describes the protocol used for message transfers on DH-485, supporting initiators and responders with token passing.

DH-485 Network Initialization

Explains network initialization process starting with link dead timeout and token claiming.

DH-485 Network Considerations

Lists major configuration factors affecting DH-485 network performance: nodes, addresses, baud rate, token hold factor, broadcasting.

Configuring a Channel for DH-485

Provides steps to configure an SLC processor channel for DH-485 using programming software.

DH+ Channel Status

Explains how channel status data is stored and displayed for DH+ communications on SLC 5/04 processors.

Ethernet Communications

Describes SLC 5/05 Ethernet capabilities, network connections, media, node establishment, and configuration.

SLC 5/05 Performance Considerations

Discusses factors affecting SLC 5/05 Ethernet performance: message size, frequency, network loading, and application program.

SLC 5/05 and PC Connections to the Ethernet Network

Explains TCP/IP mechanism for Ethernet messages and network setup using hubs or switches.

Configuring Channel 1 for Ethernet

Provides steps to configure SLC 5/05 processor channel 1 for Ethernet via BOOTP or DHCP, or manually.

DF1 Full-duplex Communications

Describes DF1 Full-duplex protocol for RS-232 point-to-point communication, supporting simultaneous bidirectional transmission.

Configuring Channel 0 for DF1 Full-duplex

Provides steps to configure SLC 5/03, 5/04, or 5/05 processor channel 0 for DF1 full-duplex.

DF1 Half-duplex Slave Channel Status

Explains how DF1 Half-duplex Slave channel status data is stored in the diagnostic file.

DF1 Radio Modem Communications

Describes DF1 Radio Modem driver protocol, optimized for radio networks, hybrid of DF1 full/half-duplex.

DF1 Radio Modem System Limitations

Lists questions to answer for implementing DF1 Radio Modem driver: device compatibility, firmware requirements, handshaking, duplex support.

Configuring Channel 0 for DF1 Radio Modem

Provides steps to configure SLC 5/03, 5/04, or 5/05 processor channel 0 for DF1 Radio Modem.

Modbus RTU Master

Explains Modbus RTU Master protocol for transferring information between data files in Master and Slaves.

Configuring a Channel for Modbus RTU Master

Provides steps to configure a channel for Modbus RTU Master using programming software.

Modbus RTU Master Channel Status

Explains how Modbus RTU Master channel status data is stored and displayed.

Chapter 14 SLC Passthru Communications

Table 14.1 Operating System (OS) Processor Firmware Required for Passthru Capability

Summarizes processor OS firmware and passthru capability for SLC 5/03-5/05 across various communication drivers.

Remote I/O Passthru

Describes SLC processor acting as a bridge between channel 0/1 and remote I/O network via 1747-SN/BSN modules.

DeviceNet Passthru

Explains DeviceNet passthru via 1747-SDN module, allowing PC communication to devices on DeviceNet network.

Channel-to-channel Passthru

Describes channel-to-channel passthru allowing devices on one network to communicate with devices on another via SLC processor bridge.

SLC 5/03 Passthru Error Codes

Lists SLC 5/03 passthru processor error codes (20H, 30H) and their conditions.

Optimizing RSLinx Channel 1 to DF1 Half-duplex Master/DF1 Radio Modem Passthru

Provides procedure to get RSWho to browse from channel 1 through SLC 5/03-5/05, configuring IP address and DF1 passthru enable bit.

Creating and Filling out the Passthru Routing Table File

Explains SLC 5/05 uses a routing table to cross-reference one-byte addresses with four-byte IP addresses for Ethernet communication.

Chapter 15 Messaging Examples

The purpose of this chapter...

Illustrates common and elaborate messaging examples using SLC 500 processors.

Local versus Remote type Message

Explains Local MSG for same-network communication and Remote MSG for cross-network communication via bridge/gateway.

Local Message

A Local MSG transmits data between processors on the same network.

Remote Message

A Remote MSG exchanges information with devices not on the local network.

Remote Terminology

Defines Remote Bridge Address, Remote Station Address, and Remote Bridge Link ID.

SLC 5/03 Passthru Examples

Illustrates SLC 5/03 passthru processor forwarding messages between DF1 and DH-485 networks.

Passthru Example: DF1 to DH-485

Shows SLC 5/03 processor forwarding DF1 network messages to DH-485 network as local messages.

SLC 5/04 Passthru Examples

Illustrates SLC 5/04 processor messaging to SLC 5/03 via DHRIO and KA5.

Passthru Example: DH-485 to DF1

Shows SLC 5/03 processor receiving remote messages on DH-485 and forwarding them to DF1 network.

Passthru Example: DH-485 to DH+

Illustrates SLC 5/03 sending local message via DF1 (CH0) to SLC 5/04 on DH+ network.

Passthru Example: DH+ to DH-485

Shows SLC 5/03 processor receiving remote messages on DH+ and forwarding them to DH-485 network.

SLC 5/05 Passthru Examples

Illustrates SLC 5/05 passthru example: DF1 to Ethernet.

Passthru Example: DF1 to Ethernet

Shows SLC 5/03 sending local message via DF1 to SLC 5/05 (IP Address 100.100.115.9) as bridge.

Network Message Example: SLC 5/04 to SLC 5/02 via DHRIO and KA5

Illustrates network message example between SLC 5/04 and SLC 5/02 via DHRIO and KA5.

Network Message Example: SLC 5/04 to SLC 5/03 via DHRIO and KA5

Shows network message example between SLC 5/04 and SLC 5/03 via DHRIO and KA5.

Network Message Example: SLC 5/04 to SLC 5/04 via DHRIO

Illustrates network message example between SLC 5/04 and SLC 5/04 via DHRIO.

Network Message Example: SLC 5/04 to SLC 5/02 via KA5

Shows network message example between SLC 5/04 and SLC 5/02 via KA5.

Network Message Example: SLC 5/04 to SLC 5/03 via KA5

Illustrates network message example between SLC 5/04 and SLC 5/03 via KA5.

Network Message Example: SLC 5/05 to SLC 5/04 via ENET and DHRIO

Shows network message example between SLC 5/05 and SLC 5/04 via ENET and DHRIO.

Network Message Example: SLC 5/05 to SLC 5/03 via ENET, CNB and KFC

Illustrates network message example between SLC 5/05 and SLC 5/03 via ENET, CNB and KFC.

Network Message Example: SLC 5/05 to SLC 5/04 via ENET, DHRIO and KA5

Shows network message example between SLC 5/05 and SLC 5/04 via ENET, DHRIO and KA5.

Network Message Example: PLC 5/20E to SLC 500 CH0 via ENI

Illustrates network message example from PLC 5/20E to SLC 500 CH0 via ENI.

Chapter 16 Troubleshooting Faults

Automatically Clear Faults

Describes methods to automatically clear faults using programming software, including Fault Override and User Fault Routine.

Manually Clear Faults

Explains manual fault clearing using status file bits, keyswitch toggling, or by pressing the clear major fault function key.

Use the Fault Routine

Details using the designated subroutine for recoverable faults to correct problems and clear the fault bit S:1/13.

SLC Processor Faults

Categorizes processor faults into Powerup errors, Going-to-run errors, Run errors, and User program instruction errors.

Powerup Errors

Lists powerup errors with Error Codes (Hex), Descriptions, Probable Causes, and Recommended Actions.

Going-to-run Errors

Details going-to-run errors with Error Codes (Hex), Descriptions, Probable Causes, and Recommended Actions.

Run Errors

Lists run errors with Error Codes (Hex), Descriptions, Probable Causes, and Recommended Actions.

User Program Instruction Errors

Details user program instruction errors with Error Codes (Hex), Descriptions, Probable Causes, and Recommended Actions.

I/O Errors

Lists I/O errors with Error Codes (Hex), Descriptions, Probable Causes, and Recommended Actions.

Appendix A SLC 5/03 (OS30x), SLC 5/04 (OS40x) and SLC 5/05 (OS50x) Firmware History

OS300, Series A, FRN 1 released: June 1993

Original Release information for OS300, Series A, FRN 1.

OS300, Series A, FRN 2 released: July 1993

Enhancements for OS300, Series A, FRN 2, listing 'None'.

OS300, Series A, FRN 3 released: March 1994

Enhancements for OS300, Series A, FRN 3, including On-Line Editing and Instruction Performance improvements.

OS300, Series A, FRN 4 released: May 1994

Enhancements for OS300, Series A, FRN 4, including ASCII Instructions and Floating Point Instructions support.

OS301, Series A, FRN 5 released: April 1994

Enhancements for OS301, Series A, FRN 5, including Multi-hop Messaging and improvements to diagnostics.

OS302, Series C, FRN 3 OS401, Series C, FRN 3 OS501, Series C, FRN 3 released: September 2000

Enhancements for OS302/OS401/OS501 Series C, FRN 3, including added Block Transfer Instructions and PID Rational Approximation.

OS302, Series C, FRN 4 OS401, Series C, FRN 4 OS501, Series C, FRN 4 released: February 2001

Enhancements for OS302/OS401/OS501 Series C, FRN 4, including Daughtercard Fault Signal and improvements to Interrupt Performance.

OS302, Series C, FRN 5 OS401, Series C, FRN 5 OS501, Series C, FRN 5 released: October 2001

Enhancements for OS302/OS401/OS501 Series C, FRN 5, including additional Ethernet connections and embedded web server.

OS302, Series C, FRN 6 OS401, Series C, FRN 6 OS501, Series C, FRN 6 released: November 2002

Enhancements for OS302/OS401/OS501 Series C, FRN 6, including Modbus RTU Master capability and DF1 passthru.

OS302, Series C, FRN 7 OS401, Series C, FRN 7 OS501, Series C, FRN 7 released: November 2003

Enhancements for OS302/OS401/OS501 Series C, FRN 7, including channel-to-channel passthru and DF1 radio modem driver.

OS302, Series C, FRN 8 OS401, Series C, FRN 8 OS501, Series C, FRN 8 released: May 2004

Enhancements for OS302/OS401/OS501 Series C, FRN 8, including HTTP and SNMP server enable/disable.

OS501, Series C, FRN 9 released: November 2004

Enhancements for OS501, Series C, FRN 9, including Selectively Disabling Individual Data Files from Web View and Secure Processor.

SLC 5/03 (OS30x), SLC 5/04 (OS40x) and SLC 5/05 (OS50x) Firmware History

Details firmware history for SLC 5/03, 5/04, and 5/05 processors, listing enhancements by FRN release.

Appendix B SLC Status File

SLC processor status file overview

Lists the status file overview, covering processor options, operating system, and fault monitoring.

status file detailed word/bit descriptions

Provides detailed descriptions of each status word and bit function, indicating processor support and page references.

Status File Overview

Explains the status file's purpose: monitoring OS, directing operations via interrupts, loading programs, and monitoring faults.

Arithmetic and Scan Status Flags

Details S:0 flags: Carry, Overflow, Zero, Sign, and their behavior during different operations and interrupts.

Processor Mode Status/Control

Explains S:1 bits 0-4 for processor modes: Remote Download, Remote Program, Fault after REM, REM Run, REM Idle, REM Download.

Processor Mode Status/Control (same keyswitch position)

Details processor modes after powerup based on keyswitch position, covering Run, Idle, Program/Download, and Fault states.

Forces Installed Bit

Indicates if forces have been enabled in ladder program; bit remains cleared if not enabled.

Communications Active Bit (Channel 1)

Indicates if at least one other node is present on the network attached to channel 1.

Fault Override at Powerup Bit

When set, clears Major Error Halted (S:1/13) and Minor Error bits (S:5/0-7) on power up, attempting REM Run mode.

Startup Protection Fault Bit

When set, executes fault routine before first scan if power is cycled after fault. Allows clearing Major Error Halted bit S:1/13.

Memory Module Program Compare

This bit prevents NVRAM user program modification when set; requires matching memory module for Run mode entry.

STI Resolution Selection (1 ms or 10 ms) Bit

Determines STI setpoint timebase: clear for 10 ms increments, set for 1 ms increments.

Discrete Input Interrupt Pending Bit

Indicates DII accumulator equals preset and DII file number is waiting for execution.

Discrete Input Interrupt Enabled Bit

Allows DII subroutine execution if DII file number is non-zero; if clear, subroutine does not execute.

Discrete Input Interrupt Executing Bit

Indicates DII interrupt has occurred and subroutine is executing; cleared on completion, power-up, or REM Run entry.

Math Overflow Selection Bit

Set to use 32-bit operations; affects overflow bit (S:0/1) and overflow trap bit (S:5/0).

Control Register Error Bit

Indicates error when LFU, LFL, FFU, FFL, BSL, BSR, SQO, SQC, SQL instructions generate an error.

Major Error Detected while Executing User Fault Routine Bit

Major error code (S:6) indicates major error occurred during fault routine processing.

I/O Errors

Lists I/O errors with codes (xx50-xx55, 0056, xx57-xx59, 0x00A0-0x00A2) and their causes/recommendations.

Appendix C Memory Usage

Table C.1 Processor Memory Capacity

Shows memory capacity for Fixed, SLC 5/01, 5/02, 5/03, 5/04, and 5/05 processors.

Memory Usage Overview

Describes SLC 500 controllers' user memory capacities and definitions for calculating memory usage.

Fixed and SLC 5/01 Processors

Provides memory usage estimates for instructions in Fixed and SLC 5/01 processors.

Estimating Total Memory Usage of Your System Using a Fixed or SLC 5/01 Processor

Provides a step-by-step method to estimate total memory usage for Fixed or SLC 5/01 processors.

Fixed Controller Memory Usage Example

Demonstrates calculation of total memory usage for a fixed controller with specific configuration.

SLC 5/01 Processor Memory Usage Example

Provides an example calculation of memory usage for an SLC 5/01 processor with a specific configuration.

SLC 5/02 Processor

Lists memory usage for instructions specific to SLC 5/02 processors.

Estimating Total Memory Usage of Your System Using an SLC 5/02 Processor

Provides a step-by-step method to estimate total memory usage for an SLC 5/02 processor.

SLC 5/02 Memory Usage Example

Demonstrates calculation of memory usage for an SLC 5/02 processor with a specific configuration.

User Word Comparison Between SLC 5/03 (and higher) Processors and the SLC 5/02 Processor

Compares user word accumulation in SLC 5/03+ processors versus SLC 5/02, noting SLC 5/02 efficiency.

SLC 5/03, SLC 5/04, and SLC 5/05 Processor

Shows memory usage times for SLC 5/03, 5/04, 5/05 processors, including floating point instructions.

Appendix D Programming Instruction References

Valid Addressing Modes and File Types

Lists available addressing modes (Direct, Indexed, Indirect) and file types (Output, Input, Status, Bit, Timer, etc.).

Direct Addressing

Explains direct addressing uses the data stored at the specified address in the instruction.

Indexed Addressing

Describes specifying address with '#' character; processor uses Index Register S:24 to add offset to base address.

Indirect Addressing

Explains specifying address indirectly by replacing file/element/sub-element number with [Xf:e.s] symbol.

Indexed Indirect Addressing

Describes combining indirect and indexed addressing; processor resolves indirect address first, then adds offset from S:24.

Addressing File Instructions - Using the File Indicator (#)

Explains file instructions use user-created files addressed with '#' sign, storing offset in S:24.

Numeric Constants

Describes entering numeric constants directly into instructions, with ranges and radix options (integer, binary, ASCII, hexadecimal).

M0 and M1 Data Files - Specialty I/O Modules

Explains M0/M1 files reside in specialty I/O modules, not processor memory, and can be addressed independently of processor scan.

Addressing M0-M1 Files

Provides addressing format Mf:e.s/b for M0/M1 files and restrictions on usage.

Capturing M0-M1 File Data

Illustrates techniques using ladder diagrams and COP instruction to capture and use M0 or M1 data.

Specialty I/O Modules with Retentive Memory

Discusses specialty I/O modules retaining M0-M1 data status after power removal, affecting OTE instruction behavior.

G Data Files - Specialty I/O Modules

Explains G files used for specialty I/O module configuration, accessed offline via I/O Configuration function.

Editing G File Data

Details editing G file data offline according to application requirements, using decimal and hex/bcd formats.

Appendix F Number Systems

Binary Numbers

Explains processor memory stores 16-bit binary numbers, with each position representing a decimal value based on powers of 2.

Positive Decimal Values

Describes positive decimal values, limited to 32767, with the far-left position always being 0.

Negative Decimal Values

Explains the use of 2s complement notation for negative values, calculated by subtracting the far-left position's value.

Hexadecimal Numbers

Describes hexadecimal numbers using single characters with equivalent decimal values from 0 to 15, based on powers of 16.

Hex Mask

Explains the 4-character hex code used as a parameter to exclude selected bits of a word from instruction operation.

Binary Floating-point Arithmetic

Discusses floating-point arithmetic support for numbers outside -32768 to +32767 range or requiring finer resolution.

Appendix G Application Example Programs

Paper Drilling Machine Application Example

Illustrates various instructions using a paper drilling machine example, including tracking drill wear and signaling replacement.

Paper Drilling Machine Operation Overview

Describes the paper drilling machine operation: book placement, drilling sequence, and conveyor movement.

Drill Calculation and Warning

Explains program logic tracking drilled holes and inches, with pilot lights for drill wear and machine shutdown.

Time Driven Sequencer Application Example

Illustrates the use of TON and SQO instructions in a traffic signal application with specific timing requirements.

Event Driven Sequencer Application Example

Shows how FD bit on SQC can advance SQO to the next step for specific event order requirements.

On/Off Circuit Application Example

Illustrates using an input to toggle an output on or off.

Interfacing with Enhanced Bar Code Decoders Over DH-485 Network Using the MSG Instruction

Shows interfacing Enhanced Bar Code Decoders to SLC 5/03+ processors via DH-485 using MSG instruction.

Appendix H Supported Read/Write Commands

Supported Read/Write Commands

Lists read/write commands supported by SLC 500 Fixed, 5/01, 5/02, 5/03, 5/04, 5/05 processors.

Table H.1 Supported Read/Write Commands

Details commands, CMD/FNC, processor support, and addressing modes for read/write operations.

Related product manuals