Tables
Tables
Programming Reference
(Tables) Manual
! WARNING
WARNING indicates a potentially hazardous situation that, if not avoided, could
result in death or serious injury, and/or property damage.
! CAUTION
CAUTION used with a safety alert symbol indicates a potentially hazardous situ-
ation that, if not avoided, could result in minor or moderate injury.
CAUTION
CAUTION used without the safety alert symbol indicates a potentially
hazardous situation that, if not avoided, could result in property damage.
NOTICE
NOTICE indicates a potential situation that, if not avoided, could result in an
undesirable result or state.
Reproduction, transmission, or use of this document or contents is not permitted without express consent of Siemens Energy &
Automation, Inc. All rights, including rights created by patent grant or registration of a utility model or design, are reserved.
Since Siemens Energy & Automation, Inc., does not possess full access to data concerning all of the uses and applications of
customer’s products, we do not assume responsibility either for customer product design or for any infringements of patents or rights
of others which may result from our assistance.
MANUAL PUBLICATION HISTORY
SIMATIC APT Programming Reference (Tables) Manual
Order Manual Number: PPX:APT--8102--10
Refer to this history in all correspondence and/or discussion about this manual.
S5t, SIMOREGt, and SIMOVERTt are trademarks, and STEPr, SIMATICr, and SINECr are registered trademarks, of Siemens AG.
386/ATMt, APTt, ESPt, Peerlinkt, Series 500t, Series 505t, TISOFTt, PCSt, TISTARt, TIWAYt, Thermocouplet, and
TurboMoldt are trademarks of Siemens Energy & Automation, Inc.
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv
Chapter 1 APT Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
1.1 Process Control Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Modular Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
APT Philosophy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Basic Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
Contents iii
1.9 Controller Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Controller Models Supported By APT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
iv Contents
4.2 Standard Modules (continued)
Parallel Word Output (Series 505: 16WO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-25
Parallel Word Output SF (Series 505: 8WOSF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
8-Channel Discrete Input (Series 500: 8DI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27
8-Channel Discrete Input (Series 505: 8DI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-28
8-Channel Discrete Output (Series 500: 8DO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29
8-Channel Discrete Output (Series 505: 8DO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30
16-Channel Analog Input (Series 505: 16AI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
16-Channel Discrete Input (Series 505: 16DI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
16-Channel Discrete Output (Series 505: 16DO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33
20-Channel Analog Input/4-Channel Analog Output (Series 505: 2AI4O) . . . . . . . . . . . . . . . . 4-34
32-Channel Discrete Input (Series 500: 32DI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-35
32-Channel Discrete Input (Series 505: 32DI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
32-Channel Discrete Output (Series 500: 32DO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
32-Channel Discrete Output (Series 505: 32DO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38
Smartslice (Series 505: SLICE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
User-Defined Module (Series 500: USER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40
User-Defined Module (Series 505: USER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
Isolated Interrupt Discrete Input Module (Series 505: INTRP) . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
4.3 Intelligent Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46
ASCII Message Output (Series 500: ASCII) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46
Programmable BASIC (Series 500:BASIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-48
Programmable BASIC (Series 505: BASIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-49
Dual Comm Port (Series 500: DCOMM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-50
High Speed Pulse Input (Series 500: HSPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-52
High Speed Counter/Encoder (Series 505: HSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-54
Network Interface/ TIWAY (Series 500: NIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-55
Network Interface/ TIWAY (Series 505: NIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-56
Peerlink (Series 500: PLINK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-57
Peerlink (Series 505: PLINK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-59
Resistance Temperature Detector (Series 500: RTD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-61
Resistance Temperature Detector (Series 505: 8RTD or 16RTD) . . . . . . . . . . . . . . . . . . . . . . . 4-62
Servo Axis (Series 500: SERVO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-63
Thermocouple (Series 500: TC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-64
Thermocouple (Series 505: TC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-65
386/ATM Coprocessor (Series 505: ATM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66
Expert Solutions Processor (Series 500: ESP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67
TurboMold (Series 500: TURBO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-68
TurboMold (Series 505: TURBO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69
High Speed PID Controller (Series 500: HSPID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70
110 VAC Redundant Output (Series 500: 110VO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71
110 VAC Rapid Response (Series 500: 110VR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72
120 VDC Rapid Response (Series 500: 120VR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-73
24 VDC Rapid Response (Series 500: 24VDC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-74
Field Interface SIMOREG Mode (Series 505:SREG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-76
Field Interface SIMOREG Broadcast Mode (Series 505:SREGB) . . . . . . . . . . . . . . . . . . . . . . . 4-78
Field Interface SIMOVERT Mode (Series 505:SVRT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80
Field Interface SIMOVERT Broadcast Mode (Series 505:SVRTB) . . . . . . . . . . . . . . . . . . . . . . 4-82
Communications Processor (Series 505: H1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-84
Contents v
4.3 Intelligent Modules (continued)
High Density Advanced Function (Series 505: 16AF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-85
Ethernet TCP/IP Adapter (Series 505: ENET) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-87
High Speed Counter Encoder (Series 505: HSCE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-88
Program Port Expander (Series 505: PPEXP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-90
vi Contents
5.8 Word Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Using Word Input (WI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Defining WI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
5.9 Word Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Using Word Output (WO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Defining WO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
5.10 Binary-coded Decimal Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-20
Using Binary-coded Decimal Input (BI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-20
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-20
Defining BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21
5.11 Binary-coded Decimal Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22
Using Binary-coded Output (BO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-22
Defining BO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
5.12 Resistance Temperature Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
Using Resistance Temperature Detector (RT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
Defining RT (Series 500) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-25
Defining RT (Series 505) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-26
5.13 Thermocouple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-27
Using Thermocouple (TC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-27
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-27
Defining TC (Series 500) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-28
Defining TC (Series 505) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-29
Contents vii
6.3 Device Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28
Override Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28
Reset Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28
Null Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-29
Single Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-30
Dual Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-32
6.4 Device Power Fail Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34
Power-Fail Recovery Logic for Series 505 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34
Power-Fail Recovery Logic for S5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-35
6.5 Device Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36
viii Contents
7.7 Presses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-72
Hand-Operated/Dual-Feedback Press (PND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-72
Single-Drive/Null-Feedback Press (PSN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-74
Single-Drive/Single-Feedback Press (PSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-76
Single-Drive/Dual-Feedback Press (PSD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-80
Dual-Drive/Dual-Feedback Press (PDD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-84
Motor-Drive/Dual-Feedback Press (PMD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-88
User-defined Press (PUD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-92
7.8 Three-Position Press with Dual Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-96
Three-Position Press/Type 1 (PS1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-96
Three-Position Press/Type 2 (PS2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-100
7.9 Stopwatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-104
Using the Device Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-104
Timer (TMR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-105
Contents ix
Chapter 9 Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
9.1 Understanding Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Recipe Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Recipe Usage Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
9.2 Defining Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
Downloading from OSx (PCS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-4
Selecting a Recipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-5
Using Recipe Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-6
Recipe Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
9.3 Recipe Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8
Creating a Recipe Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-8
Editing a Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-9
9.4 Program and Unit Recipe Usage Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10
Creating a Program or Unit Recipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10
Editing Recipe Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12
9.5 Implementing Recipes in APT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-15
x Contents
Appendix A Device RLL Code for Series 505 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
A.1 Device Extensions and Table Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-2
Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-2
VND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-3
VSN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-3
VSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-4
VSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-6
VDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-8
VMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-9
BV1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-10
BV2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-11
VUD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-12
MSN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-12
MSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-13
MDN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-14
MDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-15
MUD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-15
RM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-16
RM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-17
TS1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-18
TS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-19
CSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-20
CUD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-22
Press . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-22
A.2 RLL for Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-23
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index-1
Contents xi
List of Figures
3-1 Physical Addresses and I/O Symbolic Names for Series 505 Controllers . . . . . . . . . . . . . . . . 3-3
3-2 Physical Addresses and I/O Symbolic Names for S5 Controllers . . . . . . . . . . . . . . . . . . . . . . . 3-4
3-3 Defining Series 505 Modules Before I/O Symbolic Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
3-4 Defining I/O Symbolic Names Before Series 505 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7
3-5 Defining I/O Symbolic Names for S5 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
xii Contents
4-26 Series 505 8-Channel Discrete Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-30
4-27 Series 505 High Density Analog Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31
4-28 Series 505 16-Channel Discrete Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-32
4-29 Series 505 16-Channel Discrete Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33
4-30 Series 505 20-Channel Analog Input/4-Channel Analog Output Module . . . . . . . . . . . . . . . . . 4-34
4-31 Series 500 32-Channel High Density Discrete Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-35
4-32 Series 505 32-Channel High Density Discrete Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
4-33 Series 500 32-Channel High Density Discrete Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . 4-37
4-34 Series 505 32-Channel High Density Discrete Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . 4-38
4-35 Series 505 Smartslice Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
4-36 Series 500 User Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-41
4-37 Series 505 User Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-43
4-38 Series 505 Isolated Interrupt Discrete Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
4-39 Series 500 ASCII Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-47
4-40 Series 500 BASIC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-48
4-41 Series 505 BASIC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-49
4-42 Series 500 Dual Comm Port Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-51
4-43 Series 500 High Speed Pulse Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-53
4-44 Series 505 High Speed Counter Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-54
4-45 Series 500 NIM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-55
4-46 Series 505 NIM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-56
4-47 Series 500 Peer-to-Peer Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-57
4-48 Series 500 Peerlink Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-58
4-49 Series 505 Peer-to-Peer Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-59
4-50 Series 505 Peerlink Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-60
4-51 Series 500 RTD Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-61
4-52 Series 505 xxRTD Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-62
4-53 Series 500 Servo Axis Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-63
4-54 Series 500 Thermocouple Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-64
4-55 Series 505 Thermocouple Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-65
4-56 Series 505 386/ATM Coprocessor Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66
4-57 Series 500 Expert Solutions Processor Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-67
4-58 Series 500 TurboMold Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-68
4-59 Series 505 TurboMold Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-69
4-60 Series 500 High Speed PID Controller Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70
4-61 Series 500 110 VAC Redundant Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-71
4-62 Series 500 110 VAC Rapid Response Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72
4-63 Series 500 120 VDC Rapid Response Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-73
4-64 Series 500 24 VDC Rapid Response Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-75
4-65 Series 505 FIM Module: SIMOREG Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77
4-66 Series 505 FIM Module: SIMOREG Broadcast Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-79
4-67 Series 505 FIM Module: SIMOVERT Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-81
Contents xiii
List of Figures (continued)
6-1 Devices, Modules, and I/O Symbolic Names For Series 505 Controllers . . . . . . . . . . . . . . . . . 6-4
6-2 Devices and I/O Symbolic Names For S5 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
6-3 Using Device Commands and Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11
6-4 Manual and Auto Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-25
6-5 Memory Locations Showing Status for APT Motors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-36
6-6 Memory Locations Showing Status for APT Valves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-38
6-7 Memory Locations Showing Status for APT Cylinders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-40
6-8 Memory Locations Showing Status for APT Presses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-41
xiv Contents
7-25 PDD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-87
7-26 PMD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-91
7-27 PUD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-95
7-28 PS1 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-99
7-29 PS2 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-103
Contents xv
List of Figures (continued)
xvi Contents
A-53 VSD: OVRDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-40
A-54 VSD: OVRDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-40
A-55 VSD: OPND (EO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-41
A-56 VSD: OPND (EC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-41
A-57 VSD: OPND (EO) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-41
A-58 VSD: OPND (EC) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-42
A-59 VSD: OPENC (EO) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-42
A-60 VSD: OPND (EC) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-42
A-61 VSD: OPND (EO) (CLEAR CMMD ON FTO/FTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-42
A-62 VSD: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-43
A-63 VSD: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD) (CLEAR CMMD ON FTO/FTC) . . A-43
A-64 VSD: OPND (EC) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-43
A-65 VSD: CLSD (EO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-43
A-66 VSD: CLSD (EC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-44
A-67 VSD: CLSD (EO) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-44
A-68 VSD: CLSD (EC) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-44
A-69 VSD: CLSD (EO) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45
A-70 VSD: CLSD (EC) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45
A-71 VSD: CLSD (EC) (CLEAR CMMD ON FTO/FTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45
A-72 VSD: CLSD (EO) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-45
A-73 VSD: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-46
A-74 VSD: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD) (CLEAR CMMD ON FTO/FTC) . . . A-46
A-75 VSD: FAILD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-46
A-76 VSD: FTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-46
A-77 VSD: FTO (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-47
A-78 VSD: FTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-47
A-79 VSD: FTC (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-47
A-80 VSD: CMMD (EO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-47
A-81 VSD: CMMD (EO) (CLEAR CMMD ON FTO/FTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-48
A-82 VSD: CMMD (EC) (CLEAR CMMD ON FTO/FTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-48
A-83 VDD: CMMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-48
A-84 VDD: OPENC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-48
A-85 VDD: CLSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-49
A-86 VDD: OPNTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-49
A-87 VDD: CLSTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-49
A-88 VDD: OPND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-50
A-89 VDD: OPND (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-50
A-90 VDD: OPND (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-50
A-91 VDD: OPND (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-50
A-92 VDD: CLSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-51
A-93 VDD: CLSD (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-51
A-94 VDD: CLSD (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-51
Contents xvii
List of Figures (continued)
xviii Contents
A-137 MSS: STRTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-68
A-138 MSS: MSTRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-68
A-139 MSS: Running Time Expired (R.T.E.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-69
A-140 MSS: Stopped Time Expired (S.T.E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-69
A-141 MSS: RUNNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-70
A-142 MSS: RUNNG (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-70
A-143 MSS: RUNNG (LATCH FTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-70
A-144 MSS: RUNNG (IGNORE FDBK OVRD) (LATCH FTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-71
A-145 MSS: STPPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-71
A-146 MSS: STPPD (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-71
A-147 MSS: TRVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-72
A-148 MSS: FTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-72
A-149 MSS: FTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-72
A-150 MSS: CMMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-72
A-151 MSS: CMMD (LATCH FTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-73
A-152 MDN: CMMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-73
A-153 MDN: STRTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-73
A-154 MDN: STOPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-73
A-155 MDS: STRTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-74
A-156 MDS: STOPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-74
A-157 MDS: STRTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-74
A-158 MDS: STPTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-75
A-159 MDS: RUNNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-75
A-160 MDS: RUNNG (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-75
A-161 MDS: STPPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-76
A-162 MDS: STPPD (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-76
A-163 MDS: TRVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-76
A-164 MDS: FTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-76
A-165 MDS: FTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-77
A-166 MUD: STRTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-77
A-167 MUD: STPTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-77
A-168 RM1: OVRDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-77
A-169 RM1: OVRDR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-78
A-170 RM1: FWRD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-78
A-171 RM1: SFWRD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-78
A-172 RM1: REV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-79
A-173 RM1: SREV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-79
A-174 RM1: MSTRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-80
A-175 RM1: MREV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-80
A-176 RM1: STRTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-81
A-177 RM1: STPTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-81
A-178 RM1: RUNF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-81
Contents xix
List of Figures (continued)
xx Contents
A-221 CSD: EXTEND TIME EXPIRED [E.T.E] (EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-98
A-222 CSD: EXTEND TIME EXPIRED [E.T.E] (ER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-98
A-223 CSD: RETRACT TIME EXPIRED [R.T.E] (EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-98
A-224 CSD: RETRACT TIME EXPIRED [R.T.E] (ER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-99
A-225 CSD: EXTENDED (EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-99
A-226 CSD: EXTENDED (ER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-99
A-227 CSD: EXTENDED (EE) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
A-228 CSD: EXTENDED (ER) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
A-229 CSD: EXTENDED (EE) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
A-230 CSD: EXTENDED (ER) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-100
A-231 CSD: EXTENDED (EE) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . A-101
A-232 CSD: EXTENDED (ER) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . A-101
A-233 CDS: RETRACTED (EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101
A-234 CSD: RETRACTED (ER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-101
A-235 CSD: RETRACTED (EE) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-102
A-236 CSD: RETRACTED (ER) (N.O. FDBK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-102
A-237 CSD: RETRACTED (EE) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-102
A-238 CSD: RETRACTED (ER) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-102
A-239 CSD: RETRACTED (EE) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . A-103
A-240 CSD: RETRACTED (ER) (N.O. FDBK) (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . A-103
A-241 CSD: TRVL (EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-103
A-242 CSD: TRVL (ER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-104
A-243 CSD: FTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-104
A-244 CSD: FTE (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-104
A-245 CSD: FTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-104
A-246 CSD: FTR (IGNORE FDBK OVRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-105
A-247 CSD: FAILD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-105
A-248 CYLINDERS: Move image to V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-105
A-249 CUD: EXTTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-106
A-250 CUD: RETTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-106
Contents xxi
List of Tables
3-1 I/O Symbolic Name Types for Series 505 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
3-2 I/O Symbolic Name Types for S5 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
3-3 Module Types for Series 505 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
xxii Contents
7-5 VDD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16
7-6 VMD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20
7-7 VUD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-24
7-8 BV1 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-28
7-9 BV2 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-32
7-10 MSN Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-35
7-11 MSS Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-37
7-12 MDN Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-39
7-13 MDS Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-42
7-14 MUD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-46
7-15 RM1 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-50
7-16 RM2 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-54
7-17 TS1 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-58
7-18 TS2 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-62
7-19 CSD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-66
7-20 CUD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-70
7-21 PND Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-73
7-22 PSN Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-75
7-23 PSS Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-78
7-24 PSD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-82
7-25 PDD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-86
7-26 PMD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-90
7-27 PUD Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-94
7-28 PS1 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-98
7-29 PS2 Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-102
7-30 TMR Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-106
8-1 OSx (PCS) Translation and Declaration Fields That Do Not Change . . . . . . . . . . . . . . . . . . . . 8-6
8-2 Integer Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-8
8-3 Scaled Integer Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
8-4 Boolean Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-13
8-5 Real Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-15
8-6 Flag Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-17
8-7 Text Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-20
8-8 SA Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-36
8-9 SR Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-40
8-10 CT Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-46
8-11 FT Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-51
8-12 ST Extensions and Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-53
Contents xxiii
List of Tables (continued)
xxiv Contents
Preface
New Features of SIMATIC Application Productivity Tool — APT is a software package that
APT you can use to design and implement a solution to your process control
problem. The capabilities of APT have been enhanced in Software
Release 1.9A. The documented differences between APT Release 1.9 and
Release 1.9A are indicated by change bars in the manual page margins.
Controller Families APT continues to support two controller families, the Series 505 and the
SIMATIC S5. Most programming tasks, like writing a program,
downloading, or debugging, are handled the same way in APT regardless of
your controller type. The way APT treats direct memory addressing and I/O
is determined by whether you have an S5 or a Series 505 controller.
Using APT The APT manual set is organized to make it easy both to use the manuals
Documentation and to follow the program design process that is appropriate for APT. The
APT manual organization is described below.
The APT manual set is available both in paper form (APT--8200--T) and
in electronic form on CD-ROM (APT--8200--CD).
NOTE: Unless otherwise specified, the term “OSx” is used throughout this
manual to designate SIMATIC TISTAR Releases 1.x and 2.x in addition to
SIMATIC PCS Release 3.x and SIMATIC PCS 7 OSx Release 4.x.
Modular Approach APT is a program design tool that allows you to solve a process control
problem by using a structured, top-down approach. While APT encourages
and supports this modular technique, it does not require you to use this
approach.
APT Philosophy A basic philosophy of APT is that the control solution should reflect the
natural organization of the physical plant. In arranging the physical layout
of the plant, the design engineer usually breaks the process into unit
operations (mixers, reactors, etc.). While each unit is designed
independently, the engineer also considers the overall requirements for the
integrated process.
For example, Figure 1-1 shows a process that consists of a weighing system
and two kettles, or cookers, along with the corresponding pipes, pumps,
valves, etc. Typically, the design engineer determines the size of the
equipment according to the general production requirements and then deals
with the design specifics on an equipment-by-equipment basis.
The process control engineer can use a similar approach and divide the
control solution along natural equipment boundaries. The overall control
requirement is to move ingredients through a weigh system, into the
cookers, and then on to the next processing phase. Each equipment area has
its own requirements that can be determined independently; however,
integration requirements make it necessary to consider the
inter-connectivity of the total solution.
Identify the control process, which defines the sequence of events in the
process as well as the continuous control of equipment and ingredients.
Weigh WT
Tank
Weigh System
FT FT
M M
H2O H2O
M M
T T
LT LT
Cooker 1 Cooker 2
M M
Equipment Areas One of the basic tasks in designing the process control solution is to identify
the physical process. Because of the modularity of APT, one of the primary
considerations in identifying the physical process is to partition that process
into manageable units that can be operated independently. This is the first
step in breaking the large problem into subproblems.
For example, the weigh system in Figure 1-2 consists of two valves and a
weight indicator. Each cooker consists of a water valve, a dump valve, an
agitator motor, a steam valve, a flow transmitter, and temperature and level
indicators. The transportation system includes two motor-driven pumps to
transport the ingredients.
M
FEED_PMP
FEED_VLV
Weigh WT
Tank
WS_DMP_VLV
M AUGER
C1_DVLV C2_DVLV
M FAN1
C1_FEED_VLV C2_FEED_VLV
C1_FEED_PMP C2_FEED_PMP
FT H_FLOW FT H_FLOW
M C1_AGITATOR M C2_AGITATOR
H2O H2O
M M
C1_TEMP T C2_TEMP T
C1_DMP_VLV C2_DMP_VLV
M M
Unit 2: Cooker 1 C1_DMP_PMP Unit 3: Cooker 2 C2_DMP_PMP
Sequence of To define the sequence of events, examine each step, or state, that the
Events process must follow in order to produce a product. If you break the physical
process into manageable units, the definition of this sequence becomes
much easier.
In the production line example, you can define a relatively simple process if
you look only at the steps involved in one cooker. The sequence of events for
one cooker include the following.
Fill cooker.
Cook ingredients.
Turn on steam.
Mix ingredients.
Start agitator.
Cool ingredients.
Dump cooker.
Continuous Control Continuous control is used to define the control of field equipment that must
be controlled no matter what step is currently being executed in the process.
For example, in the cooking process, the steam valve must be controlled
continuously to reach and maintain the specified temperature. The
temperature transmitter must be monitored continuously to determine
when the specified temperature is reached.
Emergency In any physical process, situations can arise that require you to stop the
Conditions process and make certain that all equipment is in a safe-state condition. For
example, if a motor overheats, it may be necessary to use a special
procedure to control the process during this emergency. In designing the
control solution, be sure to identify all situations that require special
procedures.
Emergency Like the control process for normal operation, the control process for
Procedures handling special conditions involves not only a sequence of events but also
continuous control and monitoring of equipment.
APT Hierarchy The APT environment provides a hierarchical structure that assists you in
breaking your large process control problem into subproblems. The
hierarchy shown in Figure 1-3 consists of three levels.
PROGRAM DIRECTORY
SYSTEM
PROGRAM CONTENT
CONFIG [ ] System Configuration
PROGRAMS ? CTLs OPTs ESC
WASH_DEM [ ] Site 1 UNIT CONTENT
Production COMPILE
Line F1 F2 F3
CONTROL [ ] Configuration for compile
TABLES TABLES
IO IO[ ] I/O symbolic
[ ]name
I/O symbolic
table name table
MODULE DEVICE [ ] Device
[ ] Module definition tabledefinition table
DEVICE DECLARE [ ] Declaration
[ ] Device definition table table
DECLARE RECIPE [ table
[ ] Declaration ] Recipe usage table
RECIPE [ ] Recipe usage table SFCs
SUBROUTINEMAIN SFC
[ ] Subroutine[ table
] A: The main calling structure
DOWNLOAD UNITS [ ] B: Recipe Management
WASHER [ ] Washing machine unit CFCs
WSIM INTERLOC [ ] A: Device interlocks
[ ] Washer simulation
H2O CTR [ ] B: Auto open/close of hot/cold
RECIPE TEMPLATES
SAVED REPORTSSAVED REPORTS
DEVICE VAL [ ] Device Validation Report
SYSTEM
CONFIG [ ] System Configuration Site 1
PROGRAMS Controller
SITE 1 [ ] Site 1 production line
SITE 2 [ ] Site 2 production line
Site 2
Controller
A program in APT is that portion of the process that can run on a single
controller. The size of the program depends on controller memory size,
safety considerations, and other characteristics of the process line.
Program Content The Program Content Level, as shown in Figure 1-5, contains a list of all
units that you identify as a part of one program. The equipment areas, or
units, that are identified in the process line are the basis of the unit
definitions at the Program Content Level.
For example, the transportation system in the Site 1 Production Line shown
in Figure 1-5 needs to be accessed by all three units in the process. The
equipment in the transportation system is defined in the Device Definition
Table, and control can be handled by the program-level Sequential Function
Charts (SFC)s and Continuous Function Charts (CFC)s. Ingredients for the
product(s) are defined in the Recipe Template. The amounts of ingredients
for each product are defined in the Recipe Usage Table.
COMPILE
CONTROL [ ] Configuration for compile
TABLES
IO [ ] I/O symbolic name table
MODULE [ ] Module definition table
DEVICE [ ] Device definition table
DECLARE [ ] Declaration table
RECIPE [ ] Recipe usage table
SUBROUTINE [ ] Subroutine table
UNITS
COOKER1 [ ] Cooker 1
COOKER2 [ ] Cooker 2
WEIGHSYS [ ] Weigh System
RECIPE TEMPLATES
PRODUCTA [ ] Product A Recipe Template
SFCS
CFCS
SAVED REPORTS
Weigh system
Unit
Global
Transportation
system
Cooker1 Cooker2
Unit Unit
Sequential control of the process at the unit level is defined in one or more
SFCs, which are listed at the Unit Content Level, as shown in Figure 1-6.
Continuous control at the unit level is defined in one or more CFCs.
The equipment that is local to the unit is identified in the Device Definition
Table at the Unit Level. Amounts of ingredients for the products made in
the unit are stored in the Recipe Usage Table at the Unit Level.
TABLES
IO [ ] I/O symbolic name table
DEVICE [ ] Device definition table
DECLARE [ ] Declaration table
RECIPE [ ] Recipe usage table
SFCs
CK1MAIN [ ] Control of Cooker 1
RAW_CHG [ ] Charge Raw Material to Cooker1
COOL [ ] Cool Down Cooker 1
CFCs
CK1TEMP [ ] Temp Control for Cooker 1
SAVED REPORTS
APT Object An APT object is any portion of the control system that can be named and
Definition has attributes that can be configured. A unit is an object that includes a set
of items that define the unit. These items that define the unit are also
objects. These items include field devices (such as pumps, motors and
valves), control strategies, and processes. SFCs and CFBs are also objects.
All of these objects combine to define the control of the unit. You open a
valve to begin filling the cooker; you open a steam valve to start heating the
jacket of the cooker; and you start the motor to start agitating the cooking
ingredients.
Table 1-1 lists the basic APT objects, along with the maximum characters
that can be used in each object name.
Naming Objects Observe the following rules when you name an object.
APT object names must contain at least one letter. Object names are
not case-sensitive; that is, you can enter a name in either upper-case or
lower-case letters.
Configuring Each object that you name in APT must be configured. To configure a
Objects program, for example, you define units and global equipment and
ingredients. APT provides a set of six definition tables at the Program
Content Level that you use to define equipment and ingredients and
user-defined subtasks. These tables, shown in Figure 1-7, allow you to
define the I/O modules in your program as well as global I/O symbolic
names, devices, subroutines, declared constants and variables, and recipes.
Program-level sequence control is handled in the program-level SFCs.
Program-level continuous control is handled in the program-level CFCs.
To configure a unit, you define local equipment, ingredients, and the control
processes. Four definition tables are available at the Unit Content Level, as
shown in Figure 1-7. Each unit contains a table for defining I/O symbolic
names, devices, declared constants and variables, and recipes that are local
to the unit. SFCs and CFCs are part of a unit and are configured at this
level also.
PROGRAM CONTENT
COMPILE
CONTROL [ ] Configuration for compile
TABLES
IO [ ] I/O symbolic name table
MODULE [ ] Module definition table
DEVICE [ ] Device definition table
DECLARE [ ] Declaration table
RECIPE [ ] Recipe usage table
SUBROUTINE [ ] Subroutine table
UNITS
RECIPE TEMPLATES
SFCs
CFCs
SAVED REPORTS
? CTLs OPTs ESC
UNIT CONTENT F1 F2 F3
UNIT CONTENT
TABLES
IO [ ] I/O symbolic name table
DEVICE [ ] Device definition table
DECLARE [ ] Declaration table
RECIPE [ ] Recipe usage table
SFCs
CFC
SAVED REPORTS
Objects that are defined at the Unit Content Level are local to that unit and
can be accessed only within that unit.
When you name objects in APT, you must consider the scope of that object
and use names that are unique within that scope.
Dot Extensions When you name an object, you can access various aspects of that object by
appending a dot extension to the name that you created.
For example, if you identify switch102 as the open limit switch for valve102,
you can also refer to that switch as valve102.OLS. The dot extension .OLS
always indicates an open limit switch for the named device. You can
determine if valve102 is open by checking the status of valve102.OPND.
Each type of object has a corresponding list of dot extensions that provide
access to the different attributes that you configured for that object.
Recipes Recipes provide a structure that allows you to define the necessary
ingredients to produce a product. Recipes can also serve as a structure for
reports, control strategies, etc., and are considered objects that you
configure. The Recipe Template at the Program Level allows you to create
your own form for configuring the attributes of a recipe. The values of the
ingredients in a recipe can be configured at either the Program Level or at
the Unit Level.
Textual and APT provides four languages that you use to define the actual solution to
Graphics-based your control process. Table 1-3 lists these languages according to type.
Languages
Table 1-3 APT Programming Languages
The State Control Language and the Math Language are called textual
languages to differentiate them from the graphics-based languages, namely,
the SFC Language and the CFC Language.
With the SFC and CFC Languages, you combine graphical elements on the
screen and configure relationships and characteristics with graphics and
text. With the text-based languages, you create a series of sequentially
executed program statements.
OPEN valve102;
Math Language The Math Language is a text-based language that provides a means for you
to perform arithmetic calculations and logical operations in both sequential
and continuous control operations.
Sequential The SFC Language is a graphics-based language that allows you to define
Function Chart the sequence of events that control your physical process. SFCs control and
Language monitor the normal operation of objects. The SFC can be thought of as the
“supervisor” of all of the other objects within the unit.
Wait for the temperature to reach a certain point and then turn on the
agitator.
Wait for the temperature to cool down and then open the drain valve.
This sequential order of events is translated into the SFC Language, which
consists of a sequence of steps and transitions. A step specifies the control
action; a transition monitors the states of objects to determine when the
process is ready to proceed to the next step.
An SFC step can contain one or more State Control Language statements.
An SFC step can also include a math section consisting of one or more Math
Language statements.
Action request
S1 OPEN valve102;
Like the physical process, the control process can be broken into small,
logical pieces. The SFC Language allows you to nest SFCs; that is, one step
can call another SFC and, therefore, make it possible to solve problems in
parts.
For example, you can have a main SFC for Cooker 1. The first phase, or
step, in the main SFC calls a subordinate SFC that prepares the devices for
the process. The second step calls another subordinate SFC that fills the
cooker and monitors the ingredients. In configuring the main SFC, you
define the upper level of the process (procedures) without concern for
details. In configuring a subordinate SFC you concentrate on details, but
only on the details related to a smaller portion of the overall process control
solution.
After naming and configuring the PID block, the system controls the CFB
like a device. The CFB can be enabled and disabled from an SFC, and the
CFB has dot extensions that can be used to access status or other configured
attributes.
xxxxxx.PV
PV
SP SP
P I D
xxxxxx
OUT
xxxxxx.OUT
Monitoring APT allows you to define special procedures to handle situations that make
Emergency it necessary to stop the process for safety reasons. For example, you can
Conditions configure a CFB to provide continuous monitoring of conditions that could
become critical.
Safe-State SFCs Safe-state SFCs allow you to define special sequential procedures for use
when critical conditions are detected. Safe-state SFCs are separate
operations for handling special processing conditions. In an emergency,
therefore, the program can exit the normal sequence of events and go to
another SFC to shut down equipment and return the process to safe
operational conditions.
To configure a safe-state SFC, you must first define the conditions that
trigger the execution of the special procedure. You can define a priority level
that determines which safe-state SFC is executed if several emergency
conditions are detected simultaneously. You can also define a safe-state SFC
that is associated with only a single SFC and all its subordinate SFCs.
Controller Models APT supports two controller families, the Series 505 and the S5. The Series
Supported By APT 505 controllers that APT supports are the following models.
SIMATIC 560T
Table 1-4 shows the part numbers for the Series 505 controller/CPU
configurations that are supported for this release.
Table 1-5 APT Minimum Firmware Support and STEP 5 Support (S5)
CPU
Feature
928B 948R 948U
Minimum Firmware Revision 2 Revision 1 Revision 1
STEP 5 Compatible Stage 6, version 6.3 Stage 6, version 6.3 Stage 6, version 6.3
Table 1-6 lists the minimum firmware support and SIMATIC TISOFT
support for controller models in the Series 505 family. For releases earlier
than the minimums supported by APT, you must purchase an upgrade for
your controller.
Table 1-6 APT Minimum Firmware Support and TISOFT Support (Series 505)
Controller
Feature
545 545L 555 560 560T 565 565T 565P 575
Minimum See See
2.1 4.0 3.0 3.0 6.0 3.0 3.0
Firmware Note 1 Note 2
TISOFT
Rel. 4.0 Rel. 6.0 Rel. 4.0 Rel. 4.0 Rel. 4.0 Rel 4.0 Rel. 4.0 Rel. 4.0 Rel. 4.0
Compatible
Note 1: The 560--2820 card must be Release 6.0 or higher. The 565--2120 card must be Release 3.0 or higher.
Note 2: The 560--2820 card must be Release 6.0 or higher. The 565--2820 card must be Release 2.0 or higher.
Table 1-7 lists the APT tools that are supported for each controller family
(Series 505 and S5).
CPU
Feature
928B 948U 948R
WHILE Loops Yes Yes Yes
Array Indexing Yes Yes Yes
Real/Integer Array Indexing with Expressions Yes Yes Yes
Boolean Array Indexing with Expressions No No No
Real Math Yes Yes Yes
All CFBs Supported Yes Yes Yes
SFPGM-only Instructions No 1 No 1 No 1
Analog I/O Modules Support Yes Yes Yes
Immediate Read/Write Yes Yes Yes
COPY_BYTES Procedure No No No
Real Number PID Inputs Yes Yes Yes
Integer PID Inputs No No No
1 While SFPGM code is not used with S5 controllers, all SFPGM functionality
has been incorporated into the STL code.
Table 1-9 lists the APT features supported by the Series 505 controllers.
Controller
Feature
545 545L 555 560 560T 565 565T 565P 575
WHILE Loops Yes Yes Yes No No Yes Yes Yes Yes
Array Indexing Yes Yes Yes Note 1 Note 1 Yes Yes Yes Yes
Real/Integer Array
Note 5 Yes Yes Yes
Indexing with No No No No No
Note 8 Note 8 Note 8 Note 8
Expressions in RLL
Boolean Array
Indexing with
Expressions in Yes Yes Yes No No Yes Yes Yes Yes
SFPGM
Real Math Yes Yes Yes Note 2 Note 2 Yes Yes Yes Yes
All CFBs Supported Yes Yes Yes Note 3 Note 3 Yes Yes Yes Yes
SFPGM-only
Yes Yes Yes No No Yes Yes Yes Yes
Instructions
Analog I/O Modules
Yes Yes Yes Note 4 Note 4 Yes Yes Yes Yes
Support
Use Local Cs on the
Yes No Yes No Yes No Yes Yes Yes
CPU
Cyclic RLL task
Note 5 Yes Yes No No No No No Yes
support
Interrupt RLL task
Note 6 Yes Note 6 No No No No No No
support
Immediate
Note 5 Yes Yes No No No No No Yes
Read/Write
Fast Bitpick
Note 7 Yes Yes No Note 7 No Note 7 Note 7 Yes
operations
COPY_BYTES
Note 5 Yes Yes No No No No No Yes
procedure
Real Number PID
Yes Yes Yes No No Yes Yes Yes Yes
Inputs
Integer Number PID
Yes Yes Yes No No Yes Yes Yes Yes
Inputs
1 Arrays can be addressed with literal indexes only.
2 Real numbers can be used, but only with limited MATH capabilities.
3 Only Interlock and Math CFBs can be used.
4 Analog input points must have the .RAW extension. For example, AI point IVAR1 must be
addressed as IVAR1.RAW. APT cannot add scaling or filtering to the input from these points.
5 545 firmware Rel. 3.0 and higher.
6 545 firmware Rel. 3.0 and higher. 555 firmware Rel. 3.0 and higher
7 545 firmware Rel. 3.0. 560T RLL card firmware Rel. 6.x.
8 Avoid indexing with expressions wherever possible because it produces less efficient code generation.
Program Definition A program in APT is that portion of the process that can run on a single
controller. The actual size of the program depends on controller memory
size, safety considerations, and other characteristics of the process line.
At the Program Content Level of an APT program you define the divisions
of plant operation (APT units) for your process along lines of equipment and
ingredient requirements. At this level, you also define the I/O modules, I/O
symbolic names, devices, declarations, recipes, and user-defined subtasks
(subroutines) that you want to access from all APT units in the program.
Recipe templates are also defined at the Program Content Level. Global
sequential and continuous control requirements can be handled at the
Program Content Level through global SFCs and CFCs.
Unit Definition The APT unit contains the control logic for a single division of plant
operation. This includes sequential (unit-level SFCs) and continuous
(unit-level CFCs) control and the safe-state procedures for the unit. At this
level, you also define the I/O symbolic names, devices, declarations, and
recipes that are local to this unit only.
Stopping and The unit_name.ENABL extension can be used to restart the unit SFCs either
Restarting SFCs during the debug operation or from an OSx (PCS) workstation. The
prog_name.ENABL extension restarts the program SFCs.
You can control the operation of any SFC by toggling the .ENABL extension
of the unit or program. If the .ENABL bit is true and you set it to false, all
SFCs are turned off and all devices are set to an unlocked state (manual
mode). When you set the .ENABL bit back to true, the first step of the main
SFC is activated. All devices can then be placed in the locked state
(automatic mode) with the appropriate command or assignment statement.
Monitoring Analog When you create a program for a Series 505 controller, APT defines two
Inputs control blocks that are used to monitor analog inputs.
The first control block is used to scale unfiltered analog inputs and
most math CFBs (exceptions: Interlock and Math). This process is
executed as quickly as possible.
The second control block monitors filtered analog inputs. This process
is executed as quickly as possible.
Availability These control blocks require special function programming, and are
supported for Series 505 controllers only. S5 controllers can scale and filter
analog inputs, but do not use these control blocks or the extensions
(.DIS_SF1, .DIS_SF2, .ECODE, .IID, and .SNUM) associated with them. The
560/560T controllers do not use these control blocks or their associated
extensions, and do not scale or filter analog inputs.
Table 2-2 lists the SFPGM error codes and the associated number that
appear in the .ECODE1 or .ECODE2 extension.
Code
Meaning
Hex Decimal
02 02 Address out of range
03 03 Requested data not found
09 09 Incorrect amount of data sent with request
11 17 Invalid data
43 67 Control block does not exist
4A 74 Attempt to access an integer variable as a real
4B 75 Attempt to access a real variable as an integer
4E 78 Attempt to write to a read-only variable
4F 79 Invalid variable data type for this operation
52 82 Invalid returned value
Attempt to use lead-lag procedure in event or continuous
53 83
math block
58 88 Stack overflow while evaluating IF..THEN statement
5A 90 Arithmetic overflow
5B 91 Invalid operator in an IF..THEN statement
5D 93 Attempt to divide by zero
60 96 Invalid data type code (usually in IF..THEN statement)
Using Scan Time You can use the program_name.TSCAN extension variable to read the
and Time-of-Day program scan time for all controller models. For Series 505 controllers, you
Variables can also read status word 10, using the format %STW10, to obtain the scan
time.
The time-of-day extension variables (.TODS, .IHOUR, .ISEC, etc.) can be used
anywhere in the program to read the current time from the real-time clock.
These extensions roll over at midnight. You cannot set the clock from your
APT program, although you can set the clock using the APT Debug option.
You can also set the clock from TISOFT if you have a Series 505 controller.
If you have a Series 505 controller, you can access status words 141--144 to
read the real-time clock. Use the format %STW## and read the date or time
as a variable. See the your controller’s programming reference manual more
information.
Using the Powerfail The powerfail extension variable (prog_name.PWRFL) can be monitored and
Variable used to trigger a high-priority interlock or a safe-state SFC in the event of a
power loss. The powerfail bit is set on return from powerfail and remains
true for one controller scan.
If the controller loses power, all units become inactive and remain inactive
until the power returns. When power returns, each unit and/or program
starts up in the initial step of the main SFC. To control the response to a
power failure, use a retentive safe-state SFC. Place an SSARM command in
the initial step of the main SFC, and use the prog_name.PWRFL extension as
a trigger in the SSTRIGGER command.
Referring to I/O The APT system provides two methods for referring to an I/O point.
Series 505 controllers and S5 controllers can both use these two methods,
which are explained below.
If you define a symbolic name, you can use that name anywhere in the
program to refer to the actual, physical I/O point; and you can change
the location of the I/O module without making changes to your
program.
Figure 3-1 shows how you configure the symbolic name and the controller
address for your I/O if you have a Series 505 controller. Figure 3-2 shows
how you configure the symbolic name and the controller address for your
I/O if you have an S5 controller.
Unit Level
SFC
S3 AG1_CW := true;
P C 8 8 LTS_1
/ P D D T3
S U O I S4 AG1_OFF := true;
Figure 3-1 Physical Addresses and I/O Symbolic Names for Series 505 Controllers
Low temperature
limit switch: LTS_1
Physical address:
I 0.1
Program Level
I/O Symbolic Name Table
Cooling water: AG1_CW
Physical address: Q 0.1 Name Type Address Description
AG1_CW DO Q 0.1 Cooling water
AG1_OFF DO Q 0.2 Stop bit
LTS_1 DI I 0.1 Low temp.
Stop bit: AG1_OFF limit switch
Physical address:
Q 0.2
Unit Level
SFC
S3 AG1_CW := true;
C 8 8 T3 LTS_1
P D D
U O I S4 AG1_OFF := true;
SIMATIC S5 SIEMENS
P/S
Figure 3-2 Physical Addresses and I/O Symbolic Names for S5 Controllers
The Module Definition Table is a utility which allows you to specify the
location of a module in a channel, base, and slot. The Module Definition
Table also associates a controller memory address with each I/O symbolic
name that identifies a physical I/O point wired to a module.
For S5 controllers, you must define the internal controller address in the I/O
Symbolic Name Table instead of using the Module Definition Table, because
you set the address of the I/O with dipswitches on the I/O card. Use the I/O
Symbol Table to associate a controller memory address with each I/O
symbolic name that identifies a physical I/O point wired to a module.
Availability I/O Symbolic Name Tables are supported for Series 500t I/O, Series 505
I/O, and S5 I/O. The Module Definition Table is only supported for Series
500 I/O and Series 505 I/O.
Overview The procedure you follow to configure your I/O points and modules differs
depending on your controller type.
For Series 505 controllers, APT allows you to define modules and I/O in
either of the following orders:
Define I/O First. This is a two-step process: you define the symbolic
names and then configure the modules. The I/O names are not linked
with the physical addresses until you define the I/O name in the
Module Definition Table. See Figure 3-4.
Result
APT Program Program Level
I/O Symbolic Name Table
Channel
Unit Level
Base
Unit 1
Slot
I/O Symbolic Name Table
Pos Address I/O Name Unit
1 WX0129 name0 Name Type Address
2 WX0130 name1 unit1 name1 WI WX0130
3 WX0131 name2 unit2
Figure 3-3 Defining Series 505 Modules Before I/O Symbolic Names
2
Program Level
Module Definition Table
Definition Sequence
Channel 1. Enter I/O name and I/O type in I/O Symbolic Name Table(s) at
Base appropriate level(s).
Slot 2. Define module and enter I/O name (defined in Step 1) in Module
Definition Table.
Pos Address I/O Name Unit Result: I/O address automatically appears in I/O Symbolic Name Table
with corresponding name at appropriate level.
1 WX0129 name0
2 WX0130 name1 unit1
3 WX0131 name2 unit2
Result
Program Level
I/O Symbolic Name Table Unit Level Unit Level
Unit 1 Unit 2
Name Type Address
name0 WI WX0129 I/O Symbolic Name Table I/O Symbolic Name Table
Figure 3-4 Defining I/O Symbolic Names Before Series 505 Modules
For S5 controllers, you use only the I/O Symbolic Name Table, and not the
Module Definition Table, so it is a one-step process to link the symbolic
name to the physical address of your I/O points. See Figure 3-5.
APT Program
1
Program Level
I/O Symbolic Name Table Unit Level Unit Level
Unit 1 Unit 2
Name Type Address
name0 WI %PW128 I/O Symbolic Name Table I/O Symbolic Name Table
Definition Sequence
1. Enter I/O name, I/O type, and I/O address in I/O Symbolic Name Table(s) at appropriate level(s).
Result: I/O address appears in I/O Symbolic Name Table with corresponding name and address at appropriate level.
Result
Program Level
I/O Symbolic Name Table Unit Level Unit Level
Unit 1 Unit 2
Name Type Address
name0 WI %PW128 I/O Symbolic Name Table I/O Symbolic Name Table
Table 3-1 lists the I/O code for each I/O type available in APT for Series 505
controllers. Table 3-2 lists the I/O code for each I/O type available in APT for
S5 controllers. Some types of I/O require additional information such as
high and low ranges, or offer options such as filtering and square root. Each
I/O type is described in detail in Chapter 5, which also shows the form that
you use to define each type.
Table 3-1 I/O Symbolic Name Types for Series 505 Controllers
Type of I/O Point Code Value Type Modules Supported Page Reference
4AI, 8AI, 4AI4O, 6AI2O,
Analog Input AI Real 1 5-6
8AI4O, 16AI, 2AI40
2AO, 4AO, 8AO, 4AI4O,
Analog Output AO Integer 5-11
6AI2O, 8AI4O, 2AI4O
Binary-coded Decimal Input BI Integer 8WI 5-20
Binary-coded Decimal Output BO Integer 8WO, 8WOSF 5-22
Digital Flag DF Boolean 8DO, 16DO, 32DO 5-14
Digital Input DI Boolean 8DI, 16DI, 32DI 5-16
Digital Output DO Boolean 8DO, 16DO, 32DO 5-17
Resistance Temperature
RT Real 1 RT 5-24
Detector
Thermocouple TC Real 1 TC 5-27
Word Input WI Integer 8WI, 16WI 5-18
Word Output WO Integer 8WO, 16WO, 8WOSF 5-19
1 These values appear in integer form for 560/560T controllers.
Table 3-2 lists the code for each I/O type available in APT for S5 controllers.
Page
Type of I/O Point Code Value Type Modules Supported 1
Reference
Analog Input AI Real 460, 465, 466 (not 463) 5-6
Analog Output AO Integer 470 5-11
Binary-coded Decimal Input BI Integer 420, 430, 431, 432, 434, 435, 436 5-20
Binary-coded Decimal Output BO Integer 420, 430, 431, 432, 434, 435, 436 5-22
441, 451, 453, 454, 456, 457, 458,
Digital Flag 2 DF Boolean 5-14
482, 498
Digital Input DI Boolean 420, 430, 431, 432, 434, 435, 436 5-16
441, 451, 453, 454, 456, 457, 458,
Digital Output DO Boolean 5-17
482, 498
Word Input WI Integer 420, 430, 431, 432, 434, 435, 436 5-18
441, 451, 453, 454, 456, 457, 458,
Word Output WO Integer 5-19
482, 498
1 Listed are the part numbers for the modules supported. The prefix to all of the part numbers is 6ES5.
2 An APT digital flag includes several interrelated logical statements that control an external bit. It is
different from an S5 flag.
500 BASIC
4 WX WI
-- 4-48
4 WY WO
Programmable BASIC
505 BASIC
4 WX WI
-- 4-49
4 WY WO
500 TURBO
4 WX WI
-- 4-68
4 WY WO
TurboMold
505 TURBO
4 WX WI
-- 4-69
4 WY WO
Overview The APT Module Definition Utility lets you configure the wiring of the
controller hardware to I/O points by specifying a channel, base, slot, type,
and starting address. It also lets you assign each controller address
(physical address) on that module to an I/O symbolic name.
Availability The APT Module Definition Utility is available for Series 500 I/O and
Series 505 I/O only. It is not available for S5 I/O.
Each I/O point can be associated with only one controller address, but all
points do not have to have a symbolic name. Once you have defined a
symbolic name and assigned it an address, you can refer to that I/O point by
either its symbolic name or by its associated controller address. However, if
you use the physical address in your program and later move the module,
you have to change those addresses in the program.
Select a channel, base, and slot, and specify a module type and starting
address.
Assign an I/O symbolic name to each address, and specify a unit and
description if necessary.
Assigning The first step in defining a module is to select the channel, base, and slot to
Addresses specify a module type and starting address. The input windows for this step
are illustrated in Figure 4-2. Follow the editing procedures described in the
chapter on using table definition utilities in the SIMATIC APT User Manual
to select a channel, base, and slot to specify the module type and the
starting address.
! WARNING
APT assumes that the field I/O matches the configuration of the Module Table,
including slot size. A mismatch between your field I/O and your Module Table
configuration could cause unpredictable operation by the controller.
Unpredictable operation by the controller after you download an APT program
could result in death or serious injury and/or equipment damage.
Verify that the field I/O matches the APT configuration before placing the
controller in RUN mode. This verification must be done as part of any actions
carried out prior to system commissioning. The Verify operation, accessed from
the hierarchy, and the AUX functions, accessed from Debug, warn you of I/O
mismatches. Refer to the “Compiling an APT Program” and the “Debugging an
APT Program” chapters in the SIMATIC APT User Manual for more information
about these operations.
The address ranges for each channel for the 560, 560T, 565, and 565P
controllers are listed in Table 4-1.
Table 4-2 lists the address ranges for Channel 1 for the 545, 545L, 555, and
575.
After you indicate the starting address, APT automatically assigns the
remaining points in the module to the next available sequential addresses.
You can change the I/O series from Series 500 to Series 505, and vice versa.
APT reports any incompatible modules when you select this option and
prompts you about deleting them. If you select Yes, the modules are
removed from the table. If you select No, the I/O series change is aborted
and no changes are made in the channel/base status.
You can change the slot width for a module if the APT default for the
module is not correct.
Some modules are double-wide and require two I/O slots. You may be able to
save a slot in a Series 500 base by placing a double-wide module in the last
slot of the base and allowing it to extend beyond the base.
For standard modules, a form appears like the one shown in Figure 4-3.
1 X0033
2 X0034
3 X0035
4 X0036
5 X0037
6 X0038
7 X0039
8 X0040
If you have previously defined the I/O point in the I/O Symbolic Name
Definition Table, you only need to enter the I/O name and unit (if the point
is not global). The completion aids ( ) allow you to pick a unit and I/O point
within the unit defined. When you exit from the Module Definition
Sub-Editor, APT places the description from the I/O Symbolic Name Table
into the Description field of the Module Definition Sub-Editor.
After you enter the I/O points in the Module Definition Sub-Editor, the I/O
symbolic name and all related information are automatically inserted in the
I/O Symbolic Name Table as shown in Figure 4-4.
Program Level
I/O Symbolic Name Table
Program Level
Module Definition Table Name Type Address
name0 WI WX0129
Channel
Base
Slot
Unit Level
Unit 1
Pos Address I/O Name Unit
1 WX0129 name0
I/O Symbolic Name Table
2 WX0130 name1 unit1
Name Type Address
name1 WI WX0130
The first form appears the first time you edit the module and allows
you to enter a default prefix for the I/O names and the unit.
2-Channel Analog The Series 500 2-Channel Analog Output (2AO) Module is a differential,
Output 12-bit digital-to-analog converter that has two user-selectable voltage
(Series 500: 2AO) ranges per channel. The ranges are bipolar (--10 to 10) and unipolar (0 to
10). Regardless of the voltage range you select, the current output from each
channel is always 0 to 20 milliamps.
Figure 4-5 shows the form that you use to define a Series 500 2-Channel
Analog Output Module.
1 X0009
2 X0010
3 X0011
4 X0012
5 X0013
6 X0014
7 WY0015
8 WY0016
2-Channel Analog The Series 505 2-Channel Analog Output (2AO) Module is a differential,
Output 12-bit digital-to-analog converter that has two user-selectable voltage
(Series 505:2AO) ranges per channel. The ranges are bipolar (--10 to 10) and unipolar (0 to
10). Regardless of the voltage range you select, the current output from each
channel is always 0 to 20 milliamps.
Figure 4-6 shows the form that you use to define a Series 505 2-Channel
Analog Output Module.
1 WY0009
2 WY0010
3 WY0011
4 WY0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
4-Channel Analog The Series 500 4-Channel Analog Input (4AI) Module is a differential, 12-bit
Input analog-to-digital converter that accepts bipolar (--10 to 10 or --5 to 5 volts) or
(Series 500: 4AI) unipolar (0 to 10 or 0 to 5 volts) signals and converts them to the equivalent
integer representation for the controller. The data sheet for the module
contains details of the electrical characteristics of the module.
Figure 4-7 shows the form that you use to define a Series 500 4-Channel
Analog Input Module.
1 WX0001
2 WX0002
3 WX0003
4 WX0004
5 Y0005
6 Y0006
7 Y0007
8 Y0008
4-Channel Analog The Series 505 4-Channel Analog Output (4AO) Module is a differential,
Output 12-bit digital-to-analog converter that has four user-selectable voltage
(Series 505: 4AO) ranges per channel. The ranges are bipolar (--10 to 10) and unipolar (0 to
10). Regardless of the voltage range you select, the current output from each
channel is always 0 to 20 milliamps.
Figure 4-8 shows the form that you use to define a Series 505 4-Channel
Analog Output Module.
1 WY0009
2 WY0010
3 WY0011
4 WY0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
4-Channel Analog The Series 505 4-Channel Analog Input/4-Channel Analog Output (4AI4O)
Input/4-Channel Module combines 12-bit analog-to-digital converters and 12-bit
Analog Output digital-to-analog converters into one unit. Refer to the user manual for this
(Series 505: 4AI4O) module for details about the electrical characteristics of this module.
Figure 4-9 shows the form that you use to define a Series 505 4-Channel
Analog Input/4-Channel Analog Output Module.
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
6-Channel Analog The Series 505 6-Channel Analog Input/2-Channel Analog Output (6AI2O)
Input/2-Channel Module combines 12-bit analog-to-digital converters and 12-bit
Analog Output digital-to-analog converters into one unit. Refer to the user manual for this
(Series 505: 6AI2O) module for details about the electrical characteristics of this module.
Figure 4-10 shows the form that you use to define a Series 505 6-Channel
Analog Input/2-Channel Analog Output Module.
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WX0013
6 WX0014
7 WY0015
8 WY0016
8-Channel Analog The Series 505 8-Channel Analog Input/4-Channel Analog Output (8AI4O)
Input/4-Channel Module combines 12-bit analog-to-digital converters and 12-bit
Analog Output digital-to-analog converters into one unit. Refer to the user manual for this
(Series 505: 8AI4O) module for details about the electrical characteristics of this module.
Figure 4-11 shows the form that you use to define a Series 505 8-Channel
Analog Input/4-Channel Analog Output Module.
1 WX0009 Input 1
2 WX0010 Input 2
3 WX0011 Input 3
4 WX0012 Input 4
5 WX0013 Input 5
6 WX0014 Input 6
7 WX0015 Input 7
8 WX0016 Input 8
9 WX0017 Output 1 Feedback
10 WX0018 Output 2 Feedback
11 WX0019 Output 3 Feedback
12 WX0020 Output 4 Feedback
13 WY0021 Output 1
14 WY0022 Output 2
15 WY0023 Output 3
16 WY0024 Output 4
8-Channel The Series 500 8-Channel Analog Input (8AI) Module is a single-ended,
Analog Input 12-bit analog-to-digital converter. The module accepts eight analog inputs.
(Series 500: 8AI) You can select current or voltage at the terminal strip on the module. The
voltage input range is --5 to +5 volts; the current input range is 0 to 20
milliamps (across a 250-ohm resistor). The user manual for the module
contains more details.
Figure 4-12 shows the form that you use to define a Series 500 8-Channel
Analog Input Module.
1 WX0017
2 WX0018
3 WX0019
4 WX0020
5 WX0021
6 WX0022
7 WX0023
8 WX0024
8-Channel The Series 505 8-Channel Analog Input (8AI) Module is a single-ended,
Analog Input 12-bit analog-to-digital converter. The module accepts eight analog inputs.
(Series 505: 8AI) You can select current or voltage at the terminal strip on the module. The
voltage input range is --5 to +5 volts; the current input range is 0 to 20
milliamps (across a 250-ohm resistor). The user manual for the module
contains more details.
Figure 4-13 shows the form that you use to define a Series 505 8-Channel
Analog Input Module.
1 WX0017
2 WX0018
3 WX0019
4 WX0020
5 WX0021
6 WX0022
7 WX0023
8 WX0024
8-Channel The Series 500 8-Channel Analog Output (8AO) Module is a single-ended,
Analog Output 12-bit digital-to-analog converter. The output from the module is
(Series 500: 8AO) simultaneously available as a voltage (0 to 10 volts) and as a current (0 to
20 milliamps). Both outputs are on the terminal strip for each channel. The
user manual for the module contains more details.
Figure 4-14 shows the form that you use to define a Series 500 8-Channel
Analog Output Module.
1 WY0025
2 WY0026
3 WY0027
4 WY0028
5 WY0029
6 WY0030
7 WY0031
8 WY0032
8-Channel The Series 505 8-Channel Analog Output (8AO) Module is a single-ended,
Analog Output 12-bit digital-to-analog converter. The output from the module is
(Series 505: 8AO) simultaneously available as a voltage (0 to 10 volts) and as a current (0 to
20 milliamps). Both outputs are on the terminal strip for each channel. The
user manual for the module contains more details.
Figure 4-15 shows the form that you use to define a Series 505 8-Channel
Analog Output Module.
1 WY0025
2 WY0026
3 WY0027
4 WY0028
5 WY0029
6 WY0030
7 WY0031
8 WY0032
Parallel Word Input The Series 500 Parallel Word Input (8WI) Module is an eight-channel
(Series 500: 8WI) (multiplexed) module that accepts the following types of input signals.
TTL
CMOS
Up to 28 volts DC
Figure 4-16 shows the form that you use to define a Series 500 Parallel
Word Input Module.
* WI is the default I/O type, but you can change this to a binary-coded decimal input (BI) in
the I/O Symbolic Name Table.
1 WX0113
2 WX0114
3 WX0115
4 WX0116
5 WX0117
6 WX0118
7 WX0119
8 WX0120
Parallel Word Input The Series 505 Parallel Word Input (8WI) Module is an eight-channel
(Series 505: 8WI) (multiplexed) module that accepts the following types of input signals.
TTL
CMOS
Up to 28 volts DC
Figure 4-17 shows the form that you use to define a Series 505 Parallel
Word Input Module.
* WI is the default I/O type, but you can change this to a binary-coded decimal input (BI) in
the I/O Symbolic Name Table.
1 WX0113
2 WX0114
3 WX0115
4 WX0116
5 WX0117
6 WX0118
7 WX0119
8 WX0120
Parallel Word Input The Series 505-Compatible Parallel Word Input (16WI) Module is a
(Series 505: 16WI) 16-channel (multiplexed) input module. Each channel provides a 16-bit data
word that is available as a WX memory location.
Figure 4-18 shows the form that you use to define a Series 505-compatible
16-point parallel word input module.
* WI is the default I/O type, but you can change this to a binary-coded decimal input (BI) in
the I/O Symbolic Name Table.
1 WX0113
2 WX0114
3 WX0115
4 WX0116
5 WX0117
6 WX0118
7 WX0119
8 WX0120
9 WX0121
10 WX0122
11 WX0123
12 WX0124
13 WX0125
14 WX0126
15 WX0127
16 WX0128
Parallel Word The Series 500 Parallel Word Output (8WO) Module is an eight-channel
Output (multiplexed) module that outputs TTL or CMOS signals. Each channel
(Series 500: 8WO) provides a 16-bit data word that is available as a WY memory location. A
BCD (binary-coded decimal) display is commonly connected to a Parallel
Word Output Module.
Figure 4-19 shows the form that you use to define a Series 500 Parallel
Word Output Module, which has the following configuration requirements.
* WO is the default I/O type, but you can change this to a binary-coded decimal output (BO) in
the I/O Symbolic Name Table.
1 WY0121
2 WY0122
3 WY0123
4 WY0124
5 WY0125
6 WY0126
7 WY0127
8 WY0128
Parallel Word The Series 505 Parallel Word Output (8WO) Module is an eight-channel
Output (multiplexed) module that outputs TTL or CMOS signals. Each channel
(Series 505: 8WO) provides a 16-bit data word that is available as a WY memory location. A
BCD (binary-coded decimal) display is commonly connected to a Parallel
Word Output Module.
Figure 4-20 shows the form that you use to define a Series 505 Parallel
Word Output Module.
* WO is the default I/O type, but you can change this to a binary-coded decimal output (BO) in
the I/O Symbolic Name Table.
1 WY0121
2 WY0122
3 WY0123
4 WY0124
5 WY0125
6 WY0126
7 WY0127
8 WY0128
Parallel Word The Series 505-Compatible Parallel Word Output (16WO) Module is a
Output 16-channel (multiplexed) output module. Each channel provides a 16-bit
(Series 505: 16WO) data word that is available as a WY memory location.
Figure 4-21 shows the form that you use to define a Series 505-compatible
parallel word output module.
* WO is the default I/O type, but you can change this to a binary-coded decimal output (BO) in
the I/O Symbolic Name Table.
1 WY0113
2 WY0114
3 WY0115
4 WY0116
5 WY0117
6 WY0118
7 WY0119
8 WY0120
9 WY0121
10 WY0122
11 WY0123
12 WY0124
13 WY0125
14 WY0126
15 WY0127
16 WY0128
Parallel Word The Series 505-Compatible Parallel Word Output (8WOSF) Special
Output SF Function (SF) Module operates similarly to the Parallel Word Output (8WO)
(Series 505: Module. However, the controller interacts with an 8WOSF module as if it
8WOSF) were an intelligent (SF) module. The 8WOSF module is an eight-channel
(multiplexed) module that outputs TTL or CMOS signals. Each channel
provides a 16-bit data word that is available as a WY memory location. A
BCD (binary-coded decimal) display is commonly connected to a Parallel
Word Output SF Module.
Figure 4-22 shows the form that you use to define a Series 505-Compatible
Parallel Word Output Module.
* WO is the default I/O type, but you can change this to a binary-coded decimal output (BO) in
the I/O Symbolic Name Table.
1 WY0121
2 WY0122
3 WY0123
4 WY0124
5 WY0125
6 WY0126
7 WY0127
8 WY0128
8-Channel The Series 500 8-Channel Discrete Input (8DI) Module accepts eight
Discrete Input discrete inputs, which may come from field devices such as push buttons or
(Series 500: 8DI) limit switches.
Figure 4-23 shows the form that you use to define a Series 500 8-Channel
Discrete Input Module.
1 X0033
2 X0034
3 X0035
4 X0036
5 X0037
6 X0038
7 X0039
8 X0040
8-Channel The Series 505 8-Channel Discrete Input (8DI) Module accepts eight
Discrete Input discrete inputs, which may come from field devices such as push buttons or
(Series 505: 8DI) limit switches.
Figure 4-24 shows the form that you use to define a Series 505 8-Channel
Discrete Input Module, which has the following configuration requirements.
1 X0033
2 X0034
3 X0035
4 X0036
5 X0037
6 X0038
7 X0039
8 X0040
8-Channel The Series 500 8-Channel Discrete Output (8DO) Module provides eight
Discrete Output channels of discrete outputs that drive field devices such as pilot lamps,
(Series 500: 8DO) motor starters, or solenoid valves.
Figure 4-25 shows the form that you use to define a Series 500 8-Channel
Discrete Output Module.
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
1 Y0041
2 Y0042
3 Y0043
4 Y0044
5 Y0045
6 Y0046
7 Y0047
8 Y0048
8-Channel The Series 505 8-Channel Discrete Output (8DO) Module provides eight
Discrete Output channels of discrete outputs that drive field devices such as pilot lamps,
(Series 505: 8DO) motor starters, or solenoid valves.
Figure 4-26 shows the form that you use to define a Series 505 8-Channel
Discrete Output Module.
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
1 Y0041
2 Y0042
3 Y0043
4 Y0044
5 Y0045
6 Y0046
7 Y0047
8 Y0048
16-Channel Analog The Series 505 16-Channel Analog Input (16AI) Module is a 16-channel
Input analog-to-digital converter. In unipolar mode, the module’s voltage input
(Series 505: 16AI) range is 0 to 5 VDC, or 0 to 10 VDC. Its current input range is 0 to 20 mA.
In bipolar mode, the module’s voltage input range is --5 to +5 VDC, or --10 to
+10 VDC. Its current input range is --20 to +20 mA. Please refer to the
module’s user manual for more details concerning the operation of the
module.
Figure 4-27 shows the form that you use to define a Series 505 16-Channel
Analog Input Module.
1 WX0001
2 WX0002
3 WX0003
4 WX0004
5 WX0005
6 WX0006
7 WX0007
8 WX0008
9 WX0009
10 WX0010
11 WX0011
12 WX0012
13 WX0013
14 WX0014
15 WX0015
16 WX0016
16-Channel The Series 505 16-Channel Discrete Input (16DI) Module accepts sixteen
Discrete Input discrete inputs, which may come from field devices such as push buttons or
(Series 505: 16DI) limit switches.
Figure 4-28 shows the form that you use to define a Series 505 16-Channel
Discrete Input Module.
1 X0009
2 X0010
3 X0011
4 X0012
5 X0013
6 X0014
7 X0015
8 X0016
9 X0017
10 X0018
11 X0019
12 X0020
13 X0021
14 X0022
15 X0023
16 X0024
16-Channel The Series 505 16-Channel Discrete Output (16DO) Module provides sixteen
Discrete Output channels of discrete outputs that drive field devices such as pilot lamps,
(Series 505: 16DO) motor starters, or solenoid valves.
Figure 4-29 shows the form that you use to define a Series 505 16-Channel
Discrete Output Module.
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
20-Channel Analog The Series 505 20-Channel Analog Input/4-Channel Analog Output (2AI4O)
Input/ Module combines 12-bit analog-to-digital converters and 12-bit
4-Channel Analog digital-to-analog converters into one unit. Refer to the module’s user manual
Output for details on its electrical characteristics.
(Series 505: 2AI4O)
Figure 4-30 shows the form that you use to define a Series 505 20-Channel
Analog Input/4-Channel Analog Output Module.
1 WX0001 Input 1
2 WX0002 Input 2
3 WX0003 Input 3
4 WX0004 Input 4
5 WX0005 Input 5
6 WX0006 Input 6
7 WX0007 Input 7
8 WX0008 Input 8
9 WX0009 Input 1 Error Word
10 WX0010 Input 2 Error Word
11 WX0011 Input 3 Error Word
12 WX0012 Input 4 Error Word
13 WX0013 Input 5 Error Word
14 WX0014 Input 6 Error Word
15 WX0015 Input 7 Error Word
16 WX0016 Input 8 Error Word
17 WX0017 Output 1 Feedback
18 WX0018 Output 2 Feedback
19 WX0019 Output 3 Feedback
20 WX0020 Output 4 Feedback
21 WY0021 Output 1
22 WY0022 Output 2
23 WY0023 Output 3
24 WY0024 Output 4
32-Channel The Series 500 32-Channel High Density Discrete Input (32DI) Module
Discrete Input accepts 32 channels of discrete inputs from field devices such as push
(Series 500: 32DI) buttons or limit switches.
Figure 4-31 shows the form that you use to define a Series 500 32-Channel
High Density Discrete Input Module.
1 X0049
2 X0050
3 X0051
4 X0052
5 X0053
6 X0054
7 X0055
8 X0056
. . . . .
. . . . .
. . . . .
29 X0077
30 X0078
31 X0079
32 X0080
Figure 4-31 Series 500 32-Channel High Density Discrete Input Module
32-Channel The Series 505 32-Channel High Density Discrete Input (32DI) Module
Discrete Input accepts 32 channels of discrete inputs from field devices such as push
(Series 505: 32DI) buttons or limit switches.
Figure 4-32 shows the form that you use to define a Series 505 32-Channel
High Density Discrete Input Module.
Figure 4-32 Series 505 32-Channel High Density Discrete Input Module
32-Channel The Series 500 32-Channel High Density Discrete Output (32DO) Module
Discrete Output provides 32 channels of discrete outputs that control the operation of
(Series 500: 32DO) equipment such as solenoid valves or motor starters.
Figure 4-33 shows the form that you use to define a Series 500 32-Channel
High Density Discrete Output Module.
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
1 Y0081
2 Y0082
3 Y0083
4 Y0084
5 Y0085
6 Y0086
7 Y0087
8 Y0088
. . . . .
. . . . .
. . . . .
29 Y0109
30 Y0110
31 Y0111
32 Y0112
Figure 4-33 Series 500 32-Channel High Density Discrete Output Module
32-Channel The Series 505 32-Channel High Density Discrete Output (32DO) Module
Discrete Output provides 32 channels of discrete outputs that control the operation of
(Series 505: 32DO) equipment such as solenoid valves or motor starters.
Figure 4-34 shows the form that you use to define a Series 505 32-Channel
High Density Discrete Output Module.
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
Figure 4-34 Series 505 32-Channel High Density Discrete Output Module
Smartslice The Series 505 Smartslice (SLICE) Module is a self-contained block of I/O
(Series 505: SLICE) that can be located at a remote distance from the base.
Figure 4-35 shows the form that you use to define a Series 505 Smartslice
Module.
1 X0009
2 X0010
3 X0011
4 X0012
5 X0013
6 X0014
7 X0015
8 X0016
9 X0017
10 X0018
11 X0019 (not used)
12 X0020 (not used)
13 X0021 (not used)
14 X0022 (not used)
15 X0023 (not used)
16 X0024 (not used)
17 Y0025
18 Y0026
19 Y0027
20 Y0028
21 Y0029
22 Y0030
23 Y0031 (not used)
24 Y0032 (not used)
User-Defined The Series 500 User (USER) Module is a user-definable module that is not
Module associated with any specific hardware module. Use this module if your
(Series 500: USER) module does not fit any of the other modules supported by APT.
The User Module allows you to select the mix of X, Y, WX and WY locations
for your specific module needs. If your module is a special function module,
select the SF option in the form. The User Module cannot be reconfigured.
In order to change the configuration, you must first delete the module and
then add a new one. You will have to reconnect the associated I/O points.
Normal I/O and Special Function Modules have eight I/O points.
Configurations of a single I/O type are allowed, but modules of that
configuration are already supported by APT. The configuration can be in
any combination of an input and an output type (X/Y, X/WY, WX/Y, WX/WY),
except that the configuration of 5 X and 3 Y is not supported.
High Density Modules are those that have more than eight I/O points and
are limited by APT to 64 I/O points. The configuration for the I/O points
must follow these rules.
Word I/O points (WX and WY) are allowed on boundaries that are
multiples of two. The following values are supported: 0, 2, 4, 6, 8, 10,
12, 14, 16, 18, 20, 22, 24, 26, 28, 32, and 64.
Figure 4-36 shows the forms that you use to define the Series 500 User
Module.
Number of X: [ ]
Number of Y: [ ]
Number of WX: [4]
Number of WY: [4]
Special Function: [ ]
OKAY
Channel: 1 Base: 00 Slot: 13 USER ? CTLs OPTs ESC
F1 F2 F3
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
User-Defined The Series 505 User (USER) Module is a user-definable module that is not
Module associated with any specific hardware module. Use this module if your
(Series 505: USER) module does not fit any of the APT supported modules.
The User Module allows you to select the mix of X, Y, WX and WY locations
for your specific module needs. If your module is a special function module,
select the SF option in the form. The User Module cannot be reconfigured.
In order to change the configuration, first delete the module and then add a
new one. You will have to reconnect the associated I/O points.
Normal I/O and Special Function Modules have eight I/O points.
Configurations of a single I/O type are allowed, but modules of that
configuration are already supported by APT. The configuration can be in
any combination of an input and an output type (X/Y, X/WY, WX/Y, WX/WY),
except that the configuration of 5 X and 3 Y is not supported.
High Density Modules are those that have more than eight I/O points and
are limited by APT to 64 I/O points. The configuration for the I/O points
must follow these rules.
Word I/O points (WX and WY) are allowed on boundaries that are
multiples of two. The following values are supported: 0, 2, 4, 6, 8, 10,
12, 14, 16, 18, 20, 22, 24, 26, 28, 32, and 64.
NOTE: If you are using the User Module to define a rack of I/O, for
instance, the ET200, you do not have to use all the types of I/O available for
the User Module. However, when you physically wire your I/O rack, you
must follow the order expected by the User Module: that is, Xs, Ys, WXs,
and finally WYs. So if you are only using WXs and WYs in your ET200 rack,
the WXs must precede the WYs.
Figure 4-37 shows the forms that you use to define the Series 505 User
Module.
? ESC
Build User-Defined Module F1
Number of X: [ ]
Number of Y: [ ]
Number of WX: [4]
Number of WY: [4]
Special Function: [ ] OKAY
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
Isolated Interrupt The Series 505 Isolated Interrupt Discrete Input (INTRP) Module can be
Discrete Input configured in two ways:
Module
(Series 505: INTRP) Sixteen isolated discrete inputs, all non-interrupts.
In the interrupt input mode, the interrupt is first enabled (bits 25--32), and
then the status is continuously checked (bits 17--24). When an interrupt
occurs (bits 9--16), it triggers an immediate response without having to wait
for the controller to complete its current program scan. The controller
executes the interrupt code and continues with its normal execution (unless
the interrupt code specifies that it remain halted).
When used for 16 discrete inputs, the interrupt module can be installed on a
local base or on a remote base. When used for interrupts, the interrupt
module must be installed on the local base. For this reason, you cannot use
the INTRP module with 560, 565, and 575 controllers.
Figure 4-38 shows the forms that you use to define the Series 505 Interrupt
Module.
Slots required: 1
Address type: X 24 consecutive locations
Y 8 consecutive locations
I/O symbolic name type: DI (digital input)
DO (digital output)*
* DO is the default I/O type, but you can change this to a digital flag (DF) in the I/O Symbolic
Name Table.
ASCII Message The Series 500 ASCII Message Output (ASCII) Module is an intelligent I/O
Output module that lets you generate, store, and transmit messages in standard
(Series 500: ASCII) U.S. ASCII-character format. You program the module outside of the APT
environment.
Whenever you program an ASCII module, you define the control relay
or digital output that initiates each function and the control relay that
signals its completion.
APT does not recognize these control relays (CRs) unless you reserve
CR memory locations in the compile control file. (See the section on
Compiling an APT Program (Chapter 6) in the SIMATIC APT User
Manual.) If you use digital outputs in your ASCII module program, you
must also configure these within APT.
Figure 4-39 shows the extensions and forms that you use to define an ASCII
Message Output Module.
? ESC
I/O Default Name F1
APT appends the default prefix that you specify to the I/O words. For
information about the meaning of these variables and how to program the
module, see the manual that comes with the BASIC Module.
Figure 4-40 shows the forms that you use to define the Series 500
Programmable BASIC Module.
? ESC
I/O Default Name F1
APT appends the default prefix that you specify to the I/O words. For
information about the meaning of these variables and how to program the
module, see the manual that comes with the BASIC Module.
Figure 4-41 shows the forms that you use to define the Series 505
Programmable BASIC Module.
? ESC
I/O Default Name F1
Dual Comm Port The Series 500 Dual Communications Port (DCOMM) Module provides two
(Series 500: independent RS-232-C/423 communications ports to the controller. It can
DCOMM) serve as a programming, monitoring, or troubleshooting tool from any
remote I/O base.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the Dual Communications Port Module.
Figure 4-42 shows the forms that you use to define the Series 500 Dual
Communications Port Module.
? ESC
I/O Default Name F1
High Speed Pulse The Series 500 High Speed Pulse Input (HSPI) Module is an intelligent
Input module that contains its own microprocessor and memory. It can make
(Series 500: HSPI) decisions based on the total count values from a field device. Typically, this
device counts pulse trains that a standard controller cannot accurately
count during its scan time.
When you edit the Series 500 HSPI module, you must specify a counter
mode. The module supports six different modes.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the High Speed Pulse Input Module.
Figure 4-43 shows the form that you use to define Counter Mode 1 of the
Series 500 High Speed Pulse Input Module.
? ESC
I/O Default Name F1
COUNTER MODE: 1
(2 16-bit counters)
High Speed The Series 505 High Speed Counter/Encoder (HSC) Module is an intelligent
Counter/Encoder module that contains its own microprocessor and memory. It can make
(Series 505: HSC) decisions based on the total count values from a field device. Typically, this
device counts pulse trains that a standard controller cannot accurately
count during its scan time.
APT appends the default prefix that you specify to the status words. For
more information, see the user’s manual for the High Speed Counter and
Encoder Module.
Figure 4-44 shows the form that you use to define the Series 505 High
Speed Counter/Encoder Module.
? ESC
I/O Default Name F1
Network Interface/ The Series 500 Network Interface/TIWAY (NIM) Module is the TIWAY I
TIWAY interface for Series 500 programmable controllers. The module provides two
(Series 500: NIM) TIWAY I communication ports.
APT appends the default prefix that you specify to the status word. For
more information about the meaning of this variable, see the manual that
comes with the NIM Module.
Figure 4-45 shows the form that you use to define the Series 500 Network
Interface Module.
Network Interface/ The Series 505 Network Interface/TIWAY (NIM) Module is the TIWAY I
TIWAY interface for Series 505 programmable controllers. The module provides two
(Series 505: NIM) TIWAY I communication ports.
APT appends the default prefix that you specify to the status word. For
more information about the meaning of this variable, see the manual that
comes with the NIM Module.
Figure 4-46 shows the form that you use to define the Series 505 Network
Interface Module.
Peerlink The Series 500 Peerlink (PLINK) Module is an intelligent module that
(Series 500: PLINK) allows each programmable controller on a peer-to-peer network to distribute
a block of data to every other controller on the network.
For example, Figure 4-47 shows a network with three stations. Each
controller has a block of 16 reserved words for each station. Each controller
can write to the reserved words for its own station. The words that are
reserved for other stations in that controller are read-only.
1 1 1
read/write read only read only
2 2 2
read only read/write read only
3 3 3
read only read only read/write
APT appends the default prefix that you specify to the status words. For
more information about the operation of Peerlink, see the manual that
comes with the module.
Figure 4-48 shows the forms that you use to define a Series 500 Peerlink
Module.
? ESC
I/O Default Name F1
Peerlink The Series 505 Peerlink (PLINK) Module is an intelligent module that
(Series 505: PLINK) allows each programmable controller on a peer-to-peer network distribute a
block of data to every other controller on the network.
For example, Figure 4-49 shows a network with three stations. Each
controller has a block of 16 reserved words for each station. Each controller
can write to the reserved words for its own station. The words that are
reserved for other stations in that controller are read-only.
1 1 1
read/write read only read only
2 2 2
read only read/write read only
3 3 3
read only read only read/write
APT appends the default prefix that you specify to the status words. For
more information about the operation of Peerlink, see the manual that
comes with the module.
Figure 4-50 shows the forms that you use to define a Series 505 Peerlink
Module.
? ESC
I/O Default Name F1
Figure 4-51 shows the form that you use to define the Series 500 Resistance
Temperature Detector Module.
1 WX0249
2 WX0250
3 WX0251
4 WX0252
5 WX0253
6 WX0254
7 WX0255
8 WX0256
9 WX0257
10 WX0258
11 WX0259
12 WX0260
13 WX0261
14 WX0262
15 WX0263
16 WX0264
Resistance The Series 505 Resistance Temperature Detector (8RTD or 16RTD) Module
Temperature is an intelligent module that measures an RTD resistance and converts it to
Detector a temperature value. The RTD Module maintains a small, consistent
(Series 505: 8RTD current through its attached detector and monitors the voltage generated by
and 16RTD) the current passing through the detector. For more information, see the
manual that comes with the RTD module.
When you configure a Series 505 RTD module for 16 word inputs (16RTD),
the errors for the first eight inputs are returned on the corresponding inputs
9 through 16. If you are using the inputs as process variables in loops or
analog alarms, APT does not recognize the error code because it is not
contained in the loop’s or analog alarm’s .IERR extension. If you want the
error to be displayed in the .IERR extension, configure the module for eight
word inputs (8RTD).
Figure 4-52 shows the form to use for defining the Series 505 xxRTD
Module (xx=8 or 16).
Servo Axis The Series 500 Servo Axis (SERVO) Module controls a single axis of motion.
(Series 500: You can synchronize a Servo Axis Module to serve in a multiple-axis system
SERVO) with other Servo Axis Modules.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the SERVO Module.
The Servo Axis Module executes real-time control that is independent of the
controller scan. It can select and execute any program, communicating with
the module through the eight contiguous I/O words shown in Figure 4-53.
Figure 4-53 shows the forms that you use to define the Series 500 Servo
Axis Module.
? ESC
I/O Default Name F1
Thermocouple The Series 500 Thermocouple (TC) Module is an intelligent module that
(Series 500: TC) measures a thermocouple voltage and converts the value to a temperature
reading. The Thermocouple Module also accepts millivolt analog inputs. If
the thermocouple input is the process variable for a loop or an analog alarm,
the .IERR extension of the loop will contain the error code if an error occurs.
Figure 4-54 shows the form that you use to define the Series 500
Thermocouple Module.
1 WX0273
2 WX0274
3 WX0275
4 WX0276
5 WX0277
6 WX0278
7 WX0279
8 WX0280
Thermocouple The Series 505 Thermocouple (TC) Module is an intelligent module that
(Series 505: TC) measures a thermocouple voltage and converts the value to a temperature
reading. The Thermocouple Module also accepts millivolt analog inputs. If
the thermocouple input is the process variable for a loop or an analog alarm,
the .IERR extension of the loop will contain the error code if an error occurs.
Figure 4-55 shows the form that you use to define the Series 505
Thermocouple Module.
1 WX0273
2 WX0274
3 WX0275
4 WX0276
5 WX0277
6 WX0278
7 WX0279
8 WX0280
386/ATM The Series 505 386/ATM Coprocessor (ATM) Module is an intelligent module
Coprocessor that is an IBM-compatible Intel 80386 computer with a diskette drive and a
(Series 505: ATM) hard disk.
Figure 4-56 shows the form that you use to define the Series 505 386/ATM
Coprocessor Module.
1 WX0273
2 WX0274
3 WX0275
4 WX0276
5 WY0277
6 WY0278
7 WY0279
8 WY0280
Expert Solutions The Series 500 Expert Solutions Processor (ESP) Module is a high
Processor performance MS-DOS computer. APT supports only the 4WX/4WY I/O
(Series 500: ESP) configuration.
APT appends the default prefix that you specify to the status words. For
information about the meaning of these variables and how to program the
module, see the manual that comes with the Expert Solutions Module.
Figure 4-57 shows the form that you use to define the Series 500 Expert
Solutions Processor Module.
? ESC
I/O Default Name F1
TurboMold The Series 500 TurboMold (TURBO) Module is an intelligent module that
(Series 500: has its own set of high-speed I/O for rubber injection molding machine
TURBO) control. The I/O consist of four analog inputs and four analog outputs. The
TurboMold module provides these functions.
Injection
Barrel refill/cure
APT appends the default prefix that you specify to the status words. For
information about the meaning of these variables, see the manual that
comes with the TurboMold Module.
Figure 4-58 shows the forms that you use to define the Series 500
TurboMold Module.
? ESC
I/O Default Name F1
TurboMold The Series 505 TurboMold (TURBO) Module is an intelligent module that
(Series 505: has its own set of high-speed I/O for rubber injection molding machine
TURBO) control. The I/O consist of four analog inputs and four analog outputs. The
TurboMold module provides these functions.
Injection
Barrel refill/cure
APT appends the default prefix that you specify to the status words. For
information about the meaning of these variables, see the manual that
comes with the TurboMold Module.
Figure 4-59 shows the forms that you use to define the Series 505
TurboMold Module.
? ESC
I/O Default Name F1
High Speed PID The Series 500 High Speed PID Controller (HSPID) Module is an intelligent
Controller module that has its own set of high-speed I/O for PID loop control. The I/O
(Series 500: HSPID) consist of four analog inputs and four analog outputs.
APT appends the default prefix that you specify to the status words. For
information about the meaning of these variables, see the manual that
comes with the High Speed PID Controller Module.
Figure 4-60 shows the forms that you use to define the Series 500 High
Speed PID Controller Module.
? ESC
I/O Default Name F1
110 VAC The Series 500 110 VAC Redundant Output (110VO) Module is an
Redundant Output intelligent I/O module that senses an input and switches an output without
(Series 500: 110VO) requiring controller intervention. The 110 VAC Redundant Module accepts
110 VAC signals from field devices such as push buttons, limit switches, and
optical sensors. The module provides two physically separate and isolated
channels.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the 110 VAC Redundant Output Module.
Figure 4-61 shows the forms that you use to define the Series 500 110 VAC
Redundant Output Module.
? ESC
I/O Default Name F1
110 VAC Rapid The Series 500 110 VAC Rapid Response (110VR) Module is an intelligent
Response I/O module that senses an input and switches an output without controller
(Series 500: 110VR) intervention. The 110 VAC Rapid Response Module accepts 110 VAC signals
from field devices such as push buttons, limit switches, and optical sensors.
The module provides two physically separate and isolated channels.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the 110 VAC Rapid Response Module.
Figure 4-62 shows the forms that you use to define the Series 500 110 VAC
Rapid Response Module.
? ESC
I/O Default Name F1
120 VDC Rapid The Series 500 120 VDC Rapid Response (120VR) Module is an intelligent
Response I/O module that senses an input and switches an output without controller
(Series 500: 120VR) intervention. The 120 VDC Rapid Response Module accepts 120 VDC
signals from field devices such as push buttons, limit switches, and optical
sensors. The module provides two physically separate and isolated channels.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the 120 VDC Rapid Response Module.
Figure 4-63 shows the forms that you use to define the Series 500 120 VDC
Rapid Response Module.
? ESC
I/O Default Name F1
24 VDC Rapid The Series 500 24 VDC Rapid Response (24VDC) Module is an intelligent
Response I/O module that senses an input and switches an output without controller
(Series 500: intervention. The 24 VDC Rapid Response Module accepts 24 VAC signals
24VDC) from field devices such as push buttons, limit switches, and optical sensors.
It detects an input and responds with an output more quickly than a
standard module that uses normal, discrete I/O. The module provides two
physically separate and isolated channels.
APT appends the default prefix that you specify to the status words. For
more information about the meaning of these variables, see the manual that
comes with the 24 VDC Rapid Response Module.
Figure 4-64 shows the forms that you use to define the Series 500 24 VDC
Rapid Response Module.
? ESC
I/O Default Name F1
Field Interface The Series 505 Field Interface Module (FIM) with the SIMOREG (SREG)
SIMOREG Mode configuration is a field interface module that controls a SIMOREG DC
(Series 505:SREG) drive. Although the module requires a configuration of 14 WYs, four are
unused. APT downloads only 10 WYs to the controller. The controller then
communicates to the DC drive; the 10 WXs contain the response from the
DC drive. (See the manuals for the SIMATIC 505 Field Interface Module
and the SIMOREG Digital DC Drive Serial Interface for more information
concerning the contents of these WYs and WXs.)
Since the FIM module acts like a remote base controller (RBC) card and can
handle up to 15 SIMOREG DC motors, you need to define the SIMOREG
DC drives that are controlled by the FIM module in a separate I/O base.
Configure the I/O base on the FIM module with switch S1. For example, if
you set switch S1 to 2 on the FIM module, then you must configure your
SREG modules in APT for I/O base 2.
When you set up an SREG in APT, each SREG appears as a slot in the I/O
base. You can use slots 1 through 15 to define the SIMOREG DC motors
that are controlled by the FIM module, and you must define a SIMOREG
broadcast channel (SREGB) in slot 16. The SIMOREGs do not work unless
you have an SREGB defined in slot 16 of whichever I/O base you have
configured for the FIM module. You do not have to use the SREGB, but it
must be configured. (See the SIMATIC 505 Field Interface Module User
Manual for more information.)
Figure 4-65 shows the form that you use to define a FIM Module in this
mode.
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WX0013
6 WX0014
7 WX0015
8 WX0016
9 WX0017
10 WX0018
11 WY0019
12 WY0020
13 WY0021
14 WY0022
15 WY0023
16 WY0024
17 WY0025
18 WY0026
19 WY0027
20 WY0029
Field Interface The Series 505 Field Interface Module (FIM) with the SIMOREG broadcast
SIMOREG (SREGB) configuration is a field interface module that controls Siemens
Broadcast Mode SIMOREG DC drives in broadcast mode. You can send an immediate
(Series 505: command to one or more DC motors, or to all 15 motors, with the SREGB.
SREGB) (See the SIMATIC 505 Field Interface Module User Manual for a description
of the immediate broadcast mode.)
Figure 4-66 shows the form that you use to define a FIM module in this
mode.
Field Interface The Series 505 Field Interface Module (FIM) with the SIMOVERT (SVRT)
SIMOVERT Mode configuration is a field interface module that controls a SIMOVERT AC
(Series 505:SVRT) drive. APT downloads four WYs to the controller. The controller then
communicates to the AC drive; the four WXs contain the response from the
AC drive. (See the manuals for the SIMATIC 505 Field Interface Module
and the SIMOVERT AC Drive Serial Interface for more information
concerning the contents of these WYs and WXs.)
Since the FIM module acts like a remote base controller (RBC) card and can
handle up to 15 SIMOVERT AC motors, you need to define the SIMOVERT
AC drives that are controlled by the FIM module in a separate I/O base.
Configure the I/O base on the FIM module with switch S1. For example, if
you set switch S1 to 2 on the FIM module, then you must configure your
SVRT modules in APT for I/O base 2.
When you set up an SVRT in APT, each SVRT appears as a slot in the I/O
base. You can use slots 1 through 15 to define the SIMOVERT AC motors
that are controlled by the FIM module, and you must define a SIMOVERT
broadcast channel (SVRTB) in slot 16. The SIMOVERTs do not work unless
you have an SVRTB defined in slot 16 of whichever I/O base you have
configured for the FIM module. You do not have to use the SVRTB, but it
must be configured. (See the SIMATIC 505 Field Interface Module User
Manual for more information.)
Figure 4-67 shows the form that you use to define a FIM module in this
mode.
1 WX0009
2 WX0010
3 WX0011
4 WX0012
5 WY0013
6 WY0014
7 WY0015
8 WY0016
Field Interface The Series 505 Field Interface Module (FIM) with the SIMOVERT
SIMOVERT broadcast (SVRTB) configuration is a field interface module that controls
Broadcast Mode Siemens SIMOVERT AC drives in broadcast mode. You can send an
(Series 505:SVRTB) immediate command to one or more AC motors, or to all 15 motors, with the
SVRTB. (See the SIMATIC 505 Field Interface Module User Manual for a
description of the immediate broadcast mode.)
Figure 4-68 shows the form that you use to define a FIM module in this
mode.
1 X0001
. .
. .
. .
. .
. .
. .
. .
16 X0016
17 Y0017
. .
. .
. .
. .
32 Y0032
33 WY0033
. .
. .
36 WY0036
Communications The Series 505 Communications Processor Module (CP1434TF) can be used
Processor for both controller-to-controller communication (peer) and supervisory host
(Series 505: H1) to controller communication (TF) on the Industrial Ethernet. The
information transferred and the logic to perform the transfer have to be
configured elsewhere in APT. The module editor defines the CP module.
Figure 4-69 shows the form that you use to define the module.
The module uses four WXs and four WYs. They are 16-bit words, in which
the bits are used for handshaking. The WYs contain the start bits for 40
jobs and the WXs contain the corresponding status bits for the 40 jobs. The
bits have to be manipulated for communication to occur. The last WX and
WY are not currently used.
APT appends the default prefix that you specify to the status words (xxxxx
in Figure 4-69). For information about the meaning of these variables, see
the manual that comes with the CP1434TF communications processor.
? ESC
I/O Default Name F1
High Density The Series 505 High Density Advanced Function (16AF) Module provides 16
Advanced Function channels and performs processing on the analog signals before transferring
(Series 505: 16AF) that information to the programmable controller. This module supports
scaling, alarming, peak/valley hold, averaging, and digital filtering for each
of its 16 channels. Refer to the module’s user manual for more details
concerning the operation of the module.
Figure 4-70 shows the form that you use to define a Series 505 High Density
Advanced Function (16AF) Module.
Ethernet TCP/IP The Series 505 Ethernet TCP/IP Adapter (ENET) Module provides
Adapter communication capability using the Transmission Control Protocol/Internet
(Series 505: ENET) Protocol (TCP/IP).
APT appends the default prefix that you specify to the status words. Refer
to the module’s user manual for more details concerning the operation of the
module. APT does not communicate with the controller by means of this
module. APT does not support program download, debug, MAITT, or any
other APT communication functions with this module.
Figure 4-71 shows the form that you use to define a Series 505 Ethernet
TCP/IP Adapter (ENET) Module.
High Speed The Series 505 High Speed Counter Encoder Module is an intelligent
Counter Encoder module that contains its own microprocessor and memory. It provides a total
(Series 505: HSCE) of six counters and eight outputs, divided into two channels.
APT appends the default prefix that you specify to the status words. Refer
to the module’s user manual for more details concerning the operation of the
module.
Figure 4-72 shows the form that you use to define a Series 505 High Speed
Counter Encoder (HSCE) Module.
Program Port The Series 505 Program Port Expander (PPEXP) Module provides
Expander additional RS-232C and RS-422 communications ports for the
(Series 505: programmable controller to use. Refer to the module’s user manual for more
PPEXP) details concerning the operation of the module.
Figure 4-73 shows the form that you use to define a Series 505 Program
Port Expander (PPEXP) Module.
1 WX0001
2 WX0002
3 WY0003
4 WY0004
5 WY0005
6 WY0006
7 WY0007
8 WY0008
Overview The APT I/O Symbolic Name Definition Utility lets you define I/O symbolic
names that you then use to refer to I/O points in your system.
The I/O Symbolic Name Definition Utility lets you identify various
characteristics of I/O points, including the type of input or output, high and
low input ranges, and the rates at which variables are filtered.
You can enter the I/O Symbolic Name Table at either the Program Content
Level or the Unit Content Level. A symbolic name that is defined at the
Program Content Level is considered global and can be used in any unit in
that program. A symbolic name that is defined at the Unit Content Level
can be used only within that unit.
Availability The I/O Symbolic Name Definition Utility is supported for both Series 505
and S5 controllers. The Module Editor Utility is not supported for S5
controllers; use the I/O Symbolic Name Definition Utility to define your I/O
symbolic names if you have an S5 controller.
Entering I/O When you define an I/O symbolic name, you enter information in the
Symbolic Names following fields.
Type is a two-letter code that represents the type of I/O point that you
are defining.
Other Information that you need to enter appears on the screen after
you specify the name and type. This information varies depending on
the type of I/O point that you are defining.
You cannot edit the Name or Type fields if you have already marked the I/O
name for OSx (PCS) tag translation. Additional fields for thermocouple
(TC), resistance temperature detector (RT), and analog input (AI) I/O types
cannot be edited after the name is marked for translation. These fields are
listed under the descriptions for these I/O types.
Analog I/O Analog values are 16-bit words that evaluate to one distinct signal. APT
provides two types of analog I/O symbolic names: analog input (AI) and
analog output (AO).
Availability AI and AO are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The
symbol names and their use in APT are the same regardless of your
controller type; however, the actual I/O addresses are different.
Analog I/O are typically used with CFBs, as shown in Figure 5-1, but they
can also be monitored and changed in an SFC.
CFB flow
Series 500/Series 505 PV
SP P
I/O Symbolic Name Table
I
Name Type Address VLV_CTL D
OUT
flow AI WX0017
valve
valve AO WY0025
SFC
S5 Controllers
Digital I/O Digital I/O values are one-bit discrete values that evaluate to True or False.
APT provides three types of digital I/O symbolic names: digital input (DI),
digital output (DO), and digital flag (DF).
Availability DI, DO, and DF are available for Series 500 I/O, Series 505 I/O, and S5 I/O.
The symbol names and their use in APT are the same regardless of your
controller type; however, the actual I/O addresses are different.
Digital I/O symbolic names can be used in SFC steps and transitions to
detect and change the status of field equipment.
Figure 5-2 shows the symbolic name assignments used in an SFC that
checks the status of a digital input, writes to a digital output, and turns on a
digital flag. Figure 5-2 also shows how to use digital I/O in a CFB Math
statement. (Digital flags cannot be used on the left side of an assignment
statement.)
NOTE: A digital flag contains logic that controls an external bit, that is, the
flag is a logical construct that manipulates a digital output. A digital flag
requires the commands LATCH, CLEAR, and ON to set its logic state. This
is different from an S5 flag, which controls a single internal bit and has no
associated logic or commands.
S5 Controllers SFC
S4 bch_phase := true;
Word I/O Word I/O values are 16-bit values that contain 16 different bits of
information. APT provides four types of word I/O symbolic names: word
input (WI), word output (WO), binary-coded decimal input (BI), and
binary-coded decimal output (BO).
Availability WI, WO, BI, and BO are available for Series 500 I/O, Series 505 I/O, and S5
I/O. The symbol names and their use in APT are the same regardless of
your controller type; however, the actual I/O addresses are different.
If you have a Series 505 controller, and you configure a parallel word
module in the Module Definition Table before you define the I/O symbolic
name, the type defaults to word input or word output. You can change the
type to binary-coded decimal in the I/O Symbolic Name Table.
Intelligent I/O For Series 500 I/O and Series 505 I/O, APT provides two special input types
that are used with intelligent I/O modules, the Resistance Temperature
Detector (RT) and the Thermocouple (TC).
Availability RT and TC inputs are only available for Series 500 I/O and Series 505 I/O.
The Image Register Series 505 controllers have an image register for digital and word I/O in
Option their firmware. S5 controllers have an image register that handles digital
I/O in their firmware (the PII and PIQ area); in addition, APT has provided
the Image Register option in the I/O Table for S5 peripheral I/O.
If you have an S5 controller, you must select (X) the Image Register option
when you want to do the following:
You do not have to deselect the Image Register option when you connect
your I/O; actual physical I/O values automatically take precedence over the
values contained by the image register.
NOTE: When your output module is not physically connected, and you wish
to use the Image Register, you must program an error OB. Use a
system-activated subroutine (described in Chapter 10) to program OB 23,
24, or 25. You can put any necessary code in the math section of the
subroutine, or else simply enter a BEGIN statement. If you do not program
an error OB, the controller goes into STOP mode. You do not have to
program an error OB for input modules.
Using Analog Input An analog input (AI) is a voltage or current signal from the field to the
(AI) controller that varies continuously over a specified range of voltages or
currents. Analog inputs normally come from measuring devices, such as
flow meters and pressure transmitters, and are proportional to the
measured parameter. The three scaling options that are available for analog
inputs are described at the end of this section.
Availability Both the Series 505 and S5 controllers can scale, calculate square roots, and
filter an analog input. The 560/560T controllers, which do not support
floating point calculations, cannot do these functions.
For S5 I/O, when you choose any scaling option (that is, when you do
not select No Scaling), the analog input or output is bit-shifted by the
SCALE or UNSCALE procedure. See the chapter called “Math
Functions and Procedures” in the SIMATIC APT Programming
Reference (Graphics/Math) Manual for more information. When an S5
analog input is used as the process variable for a PID loop, analog
alarm block, or on/off block, the analog input must be scaled.
For Series 500 and Series 505 I/O, if an analog input is used as the
process variable for any of the standard or advanced control blocks
(PID loop, analog alarm, dual mode, etc.) then the algorithms for these
blocks can do a square root and an internal scaling based on the values
of the process variable low and high ranges (PVL and PVH).
NOTE: For Series 500 and Series 505 I/O, do not select the No Scaling
option for the uncontrolled (wild) process variable for a ratio station block.
You can select No Scaling for the controlled process variable, however.
For Series 500 and Series 505 I/O, if you choose an analog input for the
process variable for any standard or advanced control block and also
select the No Scaling option, then you may still use the PID .IN or .PV
extensions just like a scaled analog input.
If you do not select the No Scaling option: When you change the
values of the process variable low or high ranges (PVL and PVH) for
standard or advanced blocks during program execution, the range for
the analog input (loop_name.IN or AI name) does not change
correspondingly and therefore will no longer reflect the same value as
the .LPV. If you want to change the high and low values you must
change them on the AI form, recompile and download.
Extension Definition
name1 scaled2, processed (filtered) real value (read-only)
name.BTA3 broken transmitter flag (read-only)
name.FLTR1 filtered value (read-only)
name.FTAU1 time constant that indicates rate for filter (read/write)
name.IO image register value (Image Register option3)(read-only)
name.OVR3 overrange flag (read-only)
name.RAW raw, integer input from module (read-only)
name.SRV1 raw, scaled2 value before filter (read-only)
1 Used by Series 505 and S5 but not 560/560T controllers.
2 All but the 560/560T controllers can scale inputs.
3 Used by S5 only.
When you reference the symbolic name of an AI in your program, APT uses
the scaled value (for all but the 560/560T). The scaling of the analog input is
updated each time the associated math is executed. Any program attempts
to modify this scaled value are overwritten by the system. The 560/560T
controllers, which do not scale inputs, use the raw integer input, name.RAW,
from an analog module.
When you mark the AI object name for OSx (PCS) tag translation in the
Mark PCS Tags subeditor, you cannot edit the Name and Type fields.
Furthermore, if you mark the AI object name for translate without using
the .RAW extension, you also cannot edit the No Scaling field. The AI object
name without the .RAW extension translates to an OSx CALC data type,
whereas object_name.RAW translates to an OSx AI data type.
(Series 500/505)
20% offset (T) is the default.
B (Bipolar): --10 to +10 V or --5 to +5 V
T (20% offset): 1 to 5 V, 2 to 10 V, or 4 to 20 mA
Z (Zero bias): 0 to 5 V, 0 to 10 V, or 0 to 20 mA
(S5)
20% offset (T) is the default.
B (Bipolar): á12 mV, á50 mV, á500 mV, á1 V, á5 V, á10 V, á20 mA
T (20% offset): 4 to 20 mA
Z (Zero bias): 0 to 12 mV, 0 to 50 mV, 0 to 500 mV, Pt100, 0 to 1 V, 0 to 5 V,
0 to 10 V, or 0 to 20 mA
Reserved Address (all but the 560/560T): starting controller address you specify
for the scaled value of the analog input.
(Series 500/505)
The types of memory available for this declaration are %V, %G, and %Gx (where x is
the application ID). See your controller manual for the types of memory your
controller supports. Memory types %G and %Gx are only available for a 575
controller.
(S5)
The types of memory available for this declaration are %DB:DD or %DX:DD.
Scaling Analog Series 505 controller analog values are scaled differently from S5 controller
Values analog values. For Series 500/Series 505 I/O, three scaling options are
available for analog input and output values: bipolar, 20% offset, and zero
bias. See Table 5-2.
For S5, the scaling of the analog inputs are handled differently from the
scaling of outputs. Three scaling options are available for analog input
values: bipolar, 20% offset, and zero bias. Analog inputs are allowed up to
200% overranging. The following measuring ranges are supported: á12 mV,
á50 mV, á500 mV, Pt100, á1 V, á5 V, á10 V, á4--20 mA (with 4 and 2
wire transducers). Table 5-3 lists examples of the different ranges.
Using Analog Analog Output (AO) is a signal from the controller to a process control
Output (AO) device that provides modulation information for field equipment. Analog
outputs normally go to analog display meters and proportional control
valves.
Availability Analog outputs are available for Series 500 I/O, Series 505 I/O, and S5 I/O.
The symbol names and their use in APT are the same regardless of your
controller type; however, the actual I/O addresses are different.
The scaling options are used only when the AO is configured as the output
of a loop. If you write directly to the AO from a math block, you must use
the UNSCALE function to get a properly scaled output.
Extension Definition
name integer value (read-only)
name.IO image register value (Image Register option1) (read-only)
name.OVR overrange occurred during scaling1 (read-only)
1 Used by S5 only.
(Series 500/505)
20% (T) is the default.
B (Bipolar): --10 to +10 V or --5 to +5 V
T (20% offset): 1 to 5 V, 2 to 10 V, or 4 to 20 mA
Z (Zero bias): 0 to 5 V, 0 to 10 V, or 0 to 20 mA
(S5)
Zero bias (Z) is the default.
B (Bipolar): --10 V to 10 V
T (20% offset): NOT AVAILABLE
Z (Zero bias): 0 to 20 mA, 0 to 10 V, 0 to 5 V, or 4 to 20 mA
NOTE: If your S5 analog output module has a built-in 20% offset, you must select
zero bias. If your module does not have a 20% offset built in, you can choose between
zero bias and bipolar. You cannot choose 20% offset.
For Series 500/Series 505 I/O, three scaling options are available for analog
output values: bipolar, 20% offset, and zero bias. See Table 5-2.
For S5 analog outputs, two scaling options are available; bipolar and zero
bias. A 20% offset module is entered as a zero bias module, because the
offset is done in the modules themselves. Table 5-5 lists the scaling options
available for S5 analog outputs.
Using Digital Flag A Digital Flag (DF) is a read/write boolean value that can be used anywhere
(DF) you might use a digital output and can be assigned to any digital output
module.
Availability DFs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
NOTE: If you have Series 500 or Series 505 I/O and you define a DF in the
I/O Symbolic Name Table before you define the DO module, the point
remains a DF when you enter the name in the module. If you define the
module first, the default is a digital output (DO), and you must change the
type to DF in the I/O Symbolic Name Table.
A digital flag I/O symbolic name is used in the parallel section of an SFC
step or a Math section with the commands listed in Table 5-6.
Command Definition
LATCH Turns on output until CLEAR command turns it off.
Digital flags differ from boolean and DO (digital output) variables. All
references to a digital flag are logically connected, and the flag state is set in
one place in the compiled program. In contrast, an S5 flag controls a single
internal bit and has no associated logic or commands. References to boolean
or digital output (DO) variables can appear any number of places in the
compiled code.
Use the following commands to turn on and off s1_low, a digital flag.
NOTE: Do not use a digital flag on the left side of an assignment statement.
NOTE: For S5 controllers, APT digital flags are stored in the PIQ area, so S5
controllers do not need the Image Register for DFs. If you want to test your S5
program without I/O connected, enter No to the “System stop if addressing error
occurs” option in the Compiler Control file. After this selection is downloaded to the
controller, you must do a COLDSTART.
Using Digital Input Digital Input (DI) is a signal from the field to the controller that reflects the
(DI) status of field equipment, such as the position of a valve or the input from a
limit switch.
Availability DIs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
Digital Input is a read-only boolean value that is either true or false and
represents a discrete value such as on/off, open/closed, or running/stopped.
NOTE: For S5 controllers, digital inputs are stored in the PII area, so S5 controllers
do not need the Image Register for DIs. If you want to test your S5 program without
I/O connected, enter No to the “System stop if addressing error occurs” option in the
Compiler Control file. After this selection is downloaded to the controller, you must
do a COLDSTART.
Using Digital Digital Output (DO) is a signal from the controller that changes the on/off
Output (DO) state of field equipment.
Availability DOs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
Digital Output is a read/write boolean value that is either true or false and
represents discrete values such as on/off, open/shut, or start/stop.
NOTE: For S5 controllers, digital outputs are stored in the PIQ area, so S5
controllers do not need the Image Register for DOs. If you want to test your S5
program without I/O connected, enter No to the “System stop if addressing error
occurs” option in the Compiler Control file. After this selection is downloaded to the
controller, you must do a COLDSTART.
Using Word Input Word Input (WI) is a signal from the field to the controller that is a
(WI) read-only integer. Because it does not require special processing, Word
Input does not include scaling or filtering information.
Availability WIs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
Extension Definition
name converted, integer value
name.IO image register value (Image Register option1)
1 Used by S5 only.
Using Word Output Word Output (WO) is a signal from the controller to a process-control device
(WO) that is a read/write integer. Because it does not require special processing,
Word Output does not include scaling or filtering information.
Availability WOs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The
symbol names and their use in APT are the same regardless of your
controller type; however, the actual I/O addresses are different.
Extension Definition
name converted, integer value
name.IO image register value (Image Register option1)
1 Used by S5 only.
Using Binary-coded Decimal Input (BI) is a signal from the field to the controller
Binary-coded that represents a decimal number that has been coded into a binary
Decimal Input (BI) representation.
Availability BIs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
The BI symbolic name has the extensions listed in Table 5-9. Notice that the
name.RAW contains the binary value, while the symbolic name contains the
converted integer.
Extension Definition
name converted, integer value (read-only)
name.IO image register value (Image Register option1)(read-only)
name.RAW raw, integer value of BCD input from module (read-only)
1 Used by S5 only.
Defining BI When you select Binary-coded Decimal Input, this form appears, as shown
below.
Availability BOs are available for Series 500 I/O, Series 505 I/O, and S5 I/O. The symbol
names and their use in APT are the same regardless of your controller type;
however, the actual I/O addresses are different.
Extension Definition
name binary value of integer
name.IO image register value (Image Register option1)
name.OUT integer that represents BCD value that is sent to the field
(read only)
1 Used by S5 only.
Defining BO When you select Binary-coded Decimal Output, this form appears:
Using Resistance Resistance Temperature Detector (RT) is a signal from the field to the
Temperature controller that represents an analog-to-digital conversion of the input
Detector (RT) temperature. This is a symbolic name type that is used specifically for the
inputs to an RTD module.
Availability RTs are available for Series 500 and Series 505 I/O only.
Extension Definition
When you reference the symbolic name of an RT in your program, APT uses
the scaled value for all but the 560/560T; the scaling is updated each time
the associated SFPGM is executed. Any program attempts to modify this
scaled value are overwritten by the system. The 560/560T controllers, which
do not scale inputs, use the raw integer input, name.RAW, from an RTD
module.
NOTE: Refer to the appropriate Series 500 or Series 505 RTD manual for
configuration information.
Defining RT When you select Resistance Temperature Detector (for the Series 500), this
(Series 500) form appears:
You cannot edit the Name or Type fields of an RT I/O tag you have marked
for OSx (PCS) translation unless you first unmark the tag.
Defining RT When you select Resistance Temperature Detector (for the Series 505), this
(Series 505) form appears:
5.13 Thermocouple
Using Thermocouple (TC) is a signal from the field to the controller that
Thermocouple (TC) represents a thermocouple voltage. This a symbolic name type that is used
specifically for the inputs to a thermocouple module.
Availability TCs are available for Series 500 and Series 505 I/O only.
Extension Definition
When you reference the symbolic name of a TC in your program, APT uses
the scaled value for all but the 560/560T; the scaling is updated each time
the associated SFPGM is executed. Any program attempts to modify this
scaled value are overwritten by the system. The 560/560T controllers, which
do not scale inputs, use the raw integer input, name.RAW, from a
thermocouple module.
Thermocouple (continued)
Defining TC When you select Thermocouple (for the Series 500), this form appears:
(Series 500)
You cannot edit the Name, Type, or Engineering Units fields of an TC I/O
tag you have marked for OSx (PCS) translation unless you first unmark the
tag.
Defining TC When you select Thermocouple (for the Series 505), this form appears:
(Series 505)
You cannot edit the Name, Type, or Engineering Units fields of an TC I/O
tag you have marked for OSx (PCS) translation unless you first unmark the
tag.
Overview An APT device is an object that uses a collection of I/O points to monitor and
manipulate a field device, such as a valve, motor, cylinder, or press.
APT valves, motors, cylinders, and presses have two basic modes of
operation.
Auto mode indicates that the field device is under the control of the
controller from a Sequential Function Chart, or from a Continuous
Function Block.
The State Control Language and the Math Language include commands
that you use to manipulate the field devices in auto mode. These commands
have no effect in manual mode. APT also provides dot extensions that are
appended to device names and used to monitor and control the field devices.
In auto mode, commands take precedence over assignments made to
extension variables.
A Device Definition Table is available at both the Program Level and at the
Unit Content Level. Devices defined at the Program Level can be referenced
in any unit in that program. Devices defined at the Unit Level can be
referenced only within that unit.
Each device type is described in detail in Chapter 7, which also shows the
form that you use in configuring a device. You cannot edit the Name or Type
fields in these forms if you have already marked the device for OSx (PCS)
tag translation.
Availability All APT devices (valves, motors, cylinders, presses, and stopwatch timers)
are supported for both Series 505 and S5 controllers.
Program Level
Device Definition Table
Name: V10 Type: VSS Valve single drive / single feedback
Description:
Energized state: O Open
Open/Close command: V10_OC
Open/Close limit switch: V10_OLS
Normally open feedback?: [ ]
Ignore feedback override?: [ ]
Clear CMMD on FTO/FTC?: [ ] Program Level
Open/Close alarm time: 0.5 seconds
Module Definition Table
Channel: 1
Base: 1
V10_OC Slot: 6
or
V10.CMMD
Pos Address I/O Name Unit
1Y0041 V10_OC
V10 V10_OLS 2Y0042
. :
or
V10.OLS . :
. :
8Y0048
Program Level
I/O Symbolic name: V10_OLS
Physical Address: X0049 Module Definition Table
Channel: 1
Base: 1
I/O Symbolic name:
Slot: 7
V10_OC
Physical Address: Y0041 Pos Address I/O Name Unit
1X0049 V10_OLS
2X0050
. :
. :
. :
8X0056
Program Level
I/O Symbolic Name Table
P C 8 8 V10_OLS DI X0049
/ P D D V10_OC DO Y0041
S U O I
Figure 6-1 Devices, Modules, and I/O Symbolic Names For Series 505 Controllers
V10_OC
or
V10.CMMD
V10 V10_OLS
or
V10.OLS
Program Level
I/O Symbolic Name Table
SIMATIC S5 SIEMENS
P/S
Devices Types Table 6-1 lists characteristics of the APT devices provided by the system. If
none of these devices fit your application, you can control and monitor field
devices with Math Language statements in a math or interlock CFB.
Commands All devices have associated commands in the State Control Language that
you use to control the device when it is in auto mode. Commands have no
effect in manual mode. You can use commands from the parallel section of
an SFC step or a math block that generates RLL code. Table 6-2 lists the
device commands with the corresponding APT device types.
Extensions All APT devices have associated extension variables that can be used to
monitor and control the operation of a field device. APT creates these
variables by appending a dot extension to the APT device name. These
extensions create two types of bit variables.
Status bits, which are read-only boolean values, allow you to monitor
the condition of the device. These include output bits, position bits,
feedback inputs, and fail bits.
All of the following methods can be used to change the state of a device;
however, since commands overwrite APT flags and boolean extensions, do
not try to control a device using a mixed-method approach.
Method Example
Use a command in an SFC Lock valve_1;
Use a command in MATH (RLL only) Lock (valve_1);
Use an APT flag On (valve_1.RTL);
Use a boolean extension valve_1.LOCKD := true;
Use the commands, rather than the command-bit extensions, to control the
mode of the device. Use the APT flags and any of the boolean extensions to
monitor the status of the device. If you use an APT flag extension, you must
use the LATCH, ON, and CLEAR math procedures, described in the chapter
called “Math Functions and Procedures” in the SIMATIC APT Programming
Reference (Graphics/Math) Manual.
The stopwatch device has other types of extensions that are explained in the
“Stopwatch” section of Chapter 7 in this manual.
S1 OPEN v10;
S2
APT device name
Table 6-3 lists the valve extensions, their basic function, and the
corresponding valve types. Table 6-4 lists the motor extensions; Table 6-5
lists the cylinder extensions; Table 6-6 lists the press extensions; and
Table 6-7 lists the timer extensions.
! WARNING
APT does not prevent you from writing to read-only variables. If you write to
these variables, the controller overwrites them on the next scan with the
system-defined values.
Writing to read-only variables may cause your application to execute in an
unpredictable and unsafe manner that could result in death or serious injury
and/or property damage.
Understand what you are doing when you write to read-only variables.
Manual Mode A field device is in manual mode whenever the .LOCKD bit for that device is
false. When the program is first downloaded to the controller, all devices are
in manual mode and set to the failed (de-energized) state, which is listed in
Table 6-1.
After the program is in the controller, the following conditions place a field
device in manual mode.
A device remains in manual mode until a LOCK command places the device
in auto mode, or the device is interlocked (.NRDY is true). However, any one
of the above conditions takes precedence over a LOCK command and
prevents the object from leaving manual mode.
To open (start, extend, raise) the device, set the .MOPEN (.MSTRT,
.MEXTEND, or .MRAISE) bit to true.
To close (stop, retract, lower) the device, set the .MOPEN (.MSTRT,
.MEXTEND, or .MRAISE) bit to false.
Auto Mode A field device is in auto, or locked, mode whenever the .LOCKD bit is true. A
LOCK command places the device in auto mode if no manual-mode
conditions exist (page 6-23) and the device is interlocked (.NRDY is true).
After the device enters auto mode, it remains that way until any one of the
conditions that places the device in manual mode becomes true.
While a field device is in auto mode, the .MOPEN (.MSTRT, .MEXTEND, and
.MRAISE) bit follows the desired state. If the desired state is open (running,
extended, raised), .MOPEN (.MSTRT, .MEXTEND, .MRAISE) is forced to true;
otherwise, .MOPEN (.MSTRT, .MEXTEND, .MRAISE) is forced to false. While in
auto mode, the .MOPEN (.MSTRT, .MEXTEND, .MRAISE) bit cannot be changed
manually.
UNLOCK
Auto Mode
OPEN/CLOSE
(START/STOP) unit.ENABL = false
(EXTEND/RETRACT) (for unit-defined devices)
Manual Mode
(RAISE/LOWER)
.MOPEN (.MSTRT, .MEXTEND, .MRAISE)
.CMMD
.CMMD
.MOPEN (.MSTRT,
.MEXTEND, .MRAISE)
LOCK
.DSBLD = true
Changing Modes When a field device is switched from manual mode to auto mode, the device
maintains the state that existed before the mode change. For example, if a
valve is open, it remains open to provide a bumpless transfer. If the valve is
in a traveling state, it remains in that state and continues toward the state
that was requested before the mode change.
The way that the device behaves when switching from auto mode to manual
mode depends on how the .MOPEN/.MSTRT/.MEXTEND/.MRAISE bit is
controlled.
If the .NRDY bit becomes true, the device is forced to the failed state
and the .MOPEN (.MSTRT, .MEXTEND, .MRAISE) bit shows the
corresponding failed-state value.
When .NRDY returns to false, the device remains in its failed state until
it receives a request to change.
The second special case is when the power to the controller fails. In this
case, the device behaves exactly as if the .NRDY bit were true during
the power loss and returns to false when the power returns.
APT devices have feedback bits that indicate that the device has reached
the required state or position. A device has either no feedback bits (null
feedback, page 6-29), one feedback bit (single feedback, page 6-30), or two
feedback bits (dual feedback, page 6-32).
Override Bits Devices with feedback have override bits that allow you to ignore the
feedback status.
Dual feedback cylinders have two override bits (.OVRDE and .OVRDR).
Dual feedback presses have two override bits (.OVRDU and .OVRDD).
Reset Command The RESET command allows you to set all override bits to false. When the
SFC step or math section that contains this command is active, attempts to
change the override bits to true are ignored.
The RESET command also triggers the appropriate alarm timer to reset.
The .TRVL bit becomes true and the alarm time begins timing down. From
this point, the behavior of the device depends on the state of the override
bits.
When the alarm time elapses, the .TRVL bit becomes false and the bit that
indicates the desired position becomes true: either .OPND or .CLSD
(correspondingly, either .RUNNG or STPPD, .EXTENDED or .RETRACTED, .UP
or .DOWN). That bit then remains true until either the desired state changes
or the controller loses power.
Single Feedback A single-feedback device has one input that indicates whether or not the
device has actually reached the desired state, or position. Single-feedback
devices use the following feedback bits:
If the feedback bit indicates that the device is in the desired state, the
appropriate position or state bit listed below is true:
If the alarm time is expired and the feedback bit indicates that the
device is not in the desired state, the appropriate fail bit listed below is
true:
If the alarm time is not expired and the feedback bit is false, the .TRVL
bit is true.
If .OVRD is true, the feedback bit is ignored, and the device operates like a
null-feedback device.
When the step or math section that contains the RESET command is active,
the .OVRD bit is forced to false; attempts to change this bit to true are
overwritten.
When the step or math section that contains the RESET command becomes
inactive, the .OVRD bit remains false until changed by an operator station or
by the program.
Dual Feedback A dual-feedback device has two inputs that indicate whether or not the
device has actually reached the desired state or position. Dual-feedback
devices use the following feedback bits:
Both override bits false. If both override bits are false, the following
actions occur.
If the appropriate feedback input for the required position is true, the
corresponding position or state bit listed below is true:
If the alarm time is expired and both feedback bits are true, the .FAILD
bit is true.
If the alarm time is not expired and neither feedback input is in the
desired state, the .TRVL bit is true.
Either override bit true. If either override bit is true, the state that is
overridden acts like a null-feedback device.
Both override bits true. If both override bits are true, the feedback bits
are ignored, and the device operates like a null-feedback device.
In switching the override bits between states, the position and fail bits
assume whatever status is correct for the current state of the command and
feedback bits.
When the SFC step or math section that contains the RESET command is
active, the override bits are forced to false; attempts to change these bits to
true are overwritten. When the SFC step or math section that contains the
RESET command becomes inactive, the override bits remain false until
changed by an operator station or by the program.
Power-Fail For Series 505 controllers, APT devices are based on non-retentive control
Recovery Logic for relays. However, the controller saves only the state of the retentive control
Series 505 relays during a power failure. For this reason, APT includes power-fail
recovery logic in the code for each device unless you select the
Uninterruptible Power Supply (UPS) option in the Compiler Control file.
The power-fail recovery logic is represented by the .PFAIL control relays
shown in the figures of Appendix A, and provides a means of saving the
status of a device during a power failure.
APT executes the power-fail recovery logic for all APT devices during every
controller scan. For each device, the states of the device’s status control
relays are copied into a word in the Series 505 controller V-Memory.
V-Memory is one of the memory areas which is backed up by a battery when
there is no power to the controller. The APT designation for the V-Memory
location that stores device status is the .VFLAGS extension to the device.
After the recovery from a power failure, the device status data contained in
V-Memory is copied back into the appropriate control relays. All devices
then go to their safe-state positions.
NOTE: The device .VFLAGS extension, like the V-Flags used in the
controller’s analog alarm or loop code, is an integer word that stores status
information; the device .VFLAGS integer extension and the V-Flags for a loop
or analog alarm are not otherwise related.
APT does not generate power-fail recovery logic for user-defined devices. If
your process requires power-fail recovery logic, you can write code based on
the boolean extensions, status boolean array elements, or .VFLAGS integer
extension for your user-defined devices; see Section 6.5.
If you do select the UPS option in the Compile Control File, the states of the
device status control relays are not copied into V-Memory, and the .VFLAGS
extension does not contain meaningful information. After recovery from
power failure all devices enter the de-energized state and are unlocked. This
action is not controlled.
NOTE: The battery backup on your Series 505 controller must be enabled in
order for the controller to save data during a power failure.
If your process requires power-fail recovery logic, you can write code based
on the boolean extensions or status boolean array elements of your devices;
see Section 6.5. For S5 controllers, the device .VFLAGS integer extension
does not exist.
After recovery from power failure, all S5 devices enter their de-energized
states and are unlocked. The devices must be unlocked and returned to
their desired position.
You can monitor or change the status of a device by examining one of the
following memory locations.
The boolean extension and the status boolean array represent two ways to
access the same memory location. For example, you can achieve the same
results by writing a value to a .DSBLD extension or by writing to the array
.STATUS [6].
You can do a bit test on the .VFLAGS extension of a device to examine the
status of the device. Because the .VFLAGS extension is read only, you cannot
change the status by writing to this extension.
The relationship of these different memory locations is shown for the APT
devices for Series 505 controllers in Figure 6-5 through Figure 6-8.
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.OVRDR
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.OVRDL
Figure 6-5 Memory Locations Showing Status for APT Motors (continued)
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.TRVL
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.TRVL
Figure 6-6 Memory Locations Showing Status for APT Valves (continued)
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.TRVL
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.FAILD
.VFlags
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Extension
Bit Positions
.MHIGH .FAILD
7.1 Valves
Hand-Operated/ The VND device has two positions (open and closed) and is controlled by
Dual-Feedback two discrete feedback signals.
Valve (VND)
The two feedback signals consist of an open feedback signal (.OLS) and a
closed feedback signal (.CLS).
The .OLS bit should be true when the valve is open and false when it is
closed.
The .CLS bit should be true when the valve is closed and false when it
is open.
If the desired state is closed, (.CLS=true), the .MOPEN bit is set to false.
When you select VND in the Device Definition Table, this form appears:
NOTE: The VND does not support the dual feedback logic. Refer to
Appendix A for the logic of a VND.
Table 7-1 lists the extensions and commands used with a VND device.
Extension Commands
Read-only Boolean
.OPND opened
.CLSD closed
.OLS 1 open feedback
.CLS 2 closed feed back There are no commands.
.FAILD
failed (both feedback bits
are true)
.MOPEN open/close status
.STATUS device status
1 device_name.OLS is interchangeable with symbolic name configured as Open
Limit Switch for energize-open valves. If feedback is not a DI, this is
read/write.
2 device_name.CLS is interchangeable with symbolic name configured as Close
Limit Switch for energize-closed valves. If feedback is not a DI, this is
read/write.
Figure 7-1 shows how the input bits (on the left) affect the status bits
(across the bottom) and/or the output bits (on the right).
Commands and
.OLS operation bits
Open Limit determine outputs
Switch Input
Input, override, and .MOPEN
.CLS operation bits Open/Close
determine status Status
Close Limit
Switch Input
.OPND .FAILD
.CLSD
Valves (continued)
Single-Drive/ The VSN device has two positions (open and closed) and is controlled by one
Null-Feedback discrete signal with no feedback. Two types of VSN devices are available:
Valve (VSN) energize-open (Type O) and energize-closed (Type C).
When you select VSN in the Device Definition Table, this form appears:
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 open/close command UNLOCK place in manual mode
.OPND opened OPEN open valve
.CLSD closed CLOSE close valve
.TRVL traveling
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MOPEN manual open
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Open/Close command.
Figure 7-2 shows how the operation bits (across the top) affect the status
bits (across the bottom) and/or the output bits (on the right).
OPEN/CLOSE LOCK/UNLOCK
.MOPEN .NRDY .LOCKD
.DSBLD
Commands and
operation bits
determine outputs
.CMMD
Open/Close
Command
Output
Operation bit
determines status
Valves (continued)
Single-Drive/ The VSS device has two positions (open and closed) and is controlled by a
Single-Feedback single discrete signal with one discrete feedback signal. Two types of VSS
Valve (VSS) devices are available: energize-open (Type O) and energize-closed (Type C).
The feedback signal for the energize-open valve (.OLS) should be true
when the valve is open and false when the valve is closed.
The feedback signal for the energize-close valve (.CLS) should be false
when the valve is open and true when the valve is closed.
If the Clear CMMD on FTO/FTC option is selected, the .CMMD bit changes
to false when the .FTR becomes true. The .CMMD bit remains false until
a RESET command is issued.
When you select VSS in the Device Definition Table, this form appears:
Valves (continued)
Table 7-3 lists the extensions and commands used with a VSS device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 open/close command UNLOCK place in manual mode
.OPND opened OPEN open valve
.CLSD closed CLOSE close valve
.TRVL traveling RESET clear feedback override
.OLS 2 open feedback (O) and/or
d/ iissues open/close
/ l
command after .FTO or
.CLS 3 closed feedback (C) .FTC is true.
.FTO fail to open
.FTC fail to close
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MOPEN manual open
.OVRD override feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Open/Close command.
2 device_name.OLS is interchangeable with symbolic name configured as Open
Limit Switch for energize-open valves. If feedback is not a DI, this is
read/write.
3 device_name.CLS is interchangeable with symbolic name configured as Close
Limit Switch for energize-closed valves. If feedback is not a DI, this is
read/write.
Figure 7-3 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Valves (continued)
Single-Drive/ The VSD device has two positions (open and closed) and is controlled by a
Dual-Feedback single discrete signal with two discrete feedback signals. Two types of VSD
Valve (VSD) devices are supported: energize-open (Type O) and energize-closed (Type C).
If the Clear CMMD on FTO/FTC option is selected, the .CMMD bit changes
to false when the .FTR becomes true. The .CMMD bit remains false until
a RESET command is issued.
For both types of valves, the two feedback signals consist of an open
feedback signal (.OLS) and a closed feedback signal (.CLS).
The .OLS bit should be true when the valve is open and false when it is
closed.
The .CLS bit should be true when the valve is closed and false when it
is open.
When you select VSD in the Device Definition Table, this form appears:
Valves (continued)
Table 7-4 lists the extensions and commands used with a VSD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 open/close command UNLOCK place in manual mode
.OPND opened OPEN open valve
.CLSD closed CLOSE close valve
.TRVL traveling RESET clear feedback override
.OLS 2 open feedback (O) and/or
d/ iissue open/close
/ l
command after .FTO or
.CLS 3 closed feedback (C) .FTC is true.
.FTO fail to open
.FTC fail to close
.FAILD
failed (both feedback bits
are true)
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MOPEN manual open
.OVRDO override open feedback
.OVRDC override closed feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Open/Close command.
2 device_name.OLS is interchangeable with symbolic name configured as Open
Limit Switch for energize-open valves. If feedback is not a DI, this is
read/write.
3 device_name.CLS is interchangeable with symbolic name configured as Close
Limit Switch for energize-closed valves. If feedback is not a DI, this is
read/write.
Figure 7-4 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.OLS operation bits
Open Limit determine outputs
Switch Input
(Type O)
Input, override, and .CMMD
operation bits Open/Close
.CLS determine status Command
Close Limit Output
Switch Input
(Type C)
Valves (continued)
Dual-Drive/ The VDD device has two positions (open and closed) and is controlled by two
Dual-Feedback discrete signals with two discrete feedback signals.
Valve (VDD)
The two control signals consist of an open signal (.OPENC) and a close signal
(.CLSC), which are both normally false.
If the desired state is open (.MOPEN=true), the .OPENC bit is set to true.
The .OPENC bit remains true until either the open feedback signal is
true or the open alarm time expires; then .OPENC is set to false.
If the desired state is closed, the .CLSC bit is set to true to close the
valve. The .CLSC bit remains true until either the close feedback signal
is true or the close alarm time expires; then .CLSC is set to false.
The two feedback signals consist of an open feedback signal (.OLS) and a
closed feedback signal (.CLS).
The .OLS bit should be true when the valve is open; otherwise, it should
be false.
The .CLS bit should be true when the valve is closed; otherwise, it
should be false.
When you select VDD in the Device Definition Table, this form appears:
Valves (continued)
Table 7-5 lists the extensions and commands used with a VDD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD open/close command UNLOCK place in manual mode
.OPENC 1 open command OPEN open valve
.CLSC 2 close command CLOSE close valve
.OPND opened RESET clear feedback override
.CLSD closed
.TRVL traveling
.OLS 3 open feedback
.CLS 4 closed feedback
.FTO fail to open
.FTC fail to close
.FAILD
failed (both feedback bits
are true)
.CLSTO close timeout
.OPNTO open timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MOPEN manual open
.OVRDO override open feedback
.OVRDC override closed feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.OPENC is interchangeable with symbolic name configured as
Open command.
2 device_name.CLSC is interchangeable with symbolic name configured as
Close command.
3 device_name.OLS is interchangeable with symbolic name configured as Open
Limit Switch. If feedback is not a DI, this is read/write.
4 device_name.CLS is interchangeable with symbolic name configured as Close
Limit Switch. If feedback is not a DI, this is read/write.
Figure 7-5 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.OLS operation bits .OPENC
Open Limit determine outputs Open
Switch Input Command
Output
Input, override, and
.CLS operation bits .CLSC
Close Limit determine status
Close
Switch Input Command
Output
Valves (continued)
Motor-Drive/ The VMD device has two positions (open and closed) and is controlled by
Dual-Feedback two discrete signals with two discrete feedback signals.
Valve (VMD)
The two control signals consist of a start signal (.OPENC) and a stop signal
(.CLSC).
If the desired state of the valve is open (.MOPEN=true), the .OPENC bit
is set to true until the open feedback is true or until the alarm time
expires; then .OPENC is set to false.
If the desired state is closed (.MOPEN=false), the .CLSC bit is set to true
until closed feedback is true or until the alarm time expires; then .CLSC
is set to false.
If the valve is stopped in mid-travel, the .TRVL bit remains true with
the open and close alarm times reset.
The two feedback signals consist of an open feedback signal (.OLS) and a
closed feedback signal (.CLS).
The .OLS bit should be true when the valve is open; otherwise, it should
be false.
The .CLS bit should be true when the valve is closed; otherwise, it
should be false.
The VMD valve can be stopped at any point of its travel by setting the .RTS
extension to true.
When you select VMD in the Device Definition Table, this form appears:
Name: unique name that identifies motor-driven valve (12 characters maximum)
Type: VMD (3-letter code for device)
Description: 30 characters maximum (optional)
Open command: symbolic name of discrete output, boolean variable, or
device_name.OPENC that opens motor valve.
Close command: symbolic name of discrete output, boolean variable, or
device_name.CLSC that closes motor valve.
Open limit switch: symbolic name of discrete input, discrete output, digital flag,
boolean variable, APT flag variable, or device_name.OLS that is open feedback
signal.
Close limit switch: symbolic name of discrete input, discrete output, digital flag,
boolean variable, APT flag variable, or device_name.CLS that is close feedback
signal.
Normally open feedback: feedback response is inverted, e.g, open feedback is
false when the valve is opened.
Ignore feedback override: Override feedback bit is ignored.
Open alarm time: real number between 0.1 and 3276.7 that indicates number of
seconds to allow valve to open; also indicates maximum time to keep open signal
true.
Close alarm time: real number between 0.1 and 3276.7 that indicates number of
seconds to allow valve to close; also indicates maximum time to keep close signal
true.
Valves (continued)
Table 7-6 lists the extensions and commands used with a VMD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD open/close command UNLOCK place in manual mode
.OPENC 1 open command OPEN open valve
.CLSC 2 close command CLOSE close valve
.OPND opened RESET clear feedback override
.CLSD closed
.TRVL traveling
.OLS 3 open feedback
.CLS 4 closed feedback
.FTO fail to open
.FTC fail to close
.FAILD failed (both feedback bits are true)
.CLSTO close timeout
.OPNTO open timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MOPEN manual open
.OVRDO override open feedback
.OVRDC override closed feedback
.STATUS device status
.RTS stop travel
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.OPENC is interchangeable with symbolic name configured as Open command.
2 device_name.CLSC is interchangeable with symbolic name configured as Close command.
3 device_name.OLS is interchangeable with symbolic name configured as Open Limit Switch. If feedback is
not a DI, this is read/write.
4 device_name.CLS is interchangeable with symbolic name configured as Close Limit Switch. If feedback is
not a DI, this is read/write.
Figure 7-6 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.OLS operation bits .OPENC
Open Limit determine outputs Open
Switch Input Command
Output
Input, override, and
.CLS operation bits .CLSC
Close Limit determine status
Close
Switch Input Command
Output
Valves (continued)
User-defined Valve The VUD device has two positions (open and closed) and is controlled by two
(VUD) discrete signals with two discrete feedback signals.
The VUD is essentially the shell of a VDD device. The code which defines
the VDD has been reduced to a minimum, and extensions have been
provided to allow you to create your own customized valve and translate it
for OSx (PCS).
The VUD has two alarm timers. When the .ORESET (.CRESET) bit
transitions from false to true, the alarm timer starts. When the timer times
out, the .OPNTO (.CLSTO) bit becomes true, and remains true until the
.ORESET (.CRESET) bit becomes false.
When you select VUD in the Device Definition Table, this form appears:
Table 7-7 lists the extensions and commands used with a VUD device.
Valves (continued)
Extension Commands
Figure 7-7 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.OLS operation bits .OPENC
Open Limit determine outputs Open
Switch Input Command
Output
Input, override, and
.CLS operation bits .CLSC
Close Limit determine status
Close
Switch Input Command
Output
.OPNDA when x = A
.OPNDB when x = B
.OPNDH when x = H
.OPNDL when x = L
Three-Position The BV1 device is a three-position valve (high, low, and closed) and is
Valve/Type 1 (BV1) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a low signal (.SLOW) and a high
signal (.SHIGH). The two signals cannot both be true at the same time.
The valve, when receiving an open signal, starts opening and keeps
opening until the currently energized signal becomes false.
You can change the position of a three-position valve without closing it.
The two feedback signals consist of an open-low feedback signal (.LIO) and
an open-high feedback signal (.HIO).
The .LIO bit should be true when the valve is open at the low position;
otherwise, it should be false.
The .HIO bit should be true when the valve is open at the high position;
otherwise, it should be false.
In auto mode, the OPENL, OPENH, and CLOSE commands set the state of
the output bits. In this mode, the .MHIGH and .MOPEN bits are set to reflect
the last requested state. This is done to provide for a bumpless transfer if
the device changes modes.
When you select BV1 in the Device Definition Table, the form appears as
shown below.
Table 7-8 lists the extensions and commands used with a BV1 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.SLOW 1 open low UNLOCK place in manual mode
.SHIGH 2 open high OPENL open low
.OPND opened OPENH open high
.OPNDL opened low CLOSE close valve
.OPNDH opened high RESET clear feedback overrides
.CLSD closed
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTOL fail to open low
.FTOH fail to open high
.FTO 5 fail to open
.FTC fail to close
.FAILD
failed (both feedback bits
are true)
.OPNTO open timeout
.CLSTO close timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MOPEN manual open
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.SLOW is interchangeable with symbolic name configured as
low command.
2 device_name.SHIGH is interchangeable with symbolic name configured as
high command.
3 device_name.LIO is interchangeable with symbolic name configured as
Run/Verify low feedback signal. If feedback is not a DI, this is read/write.
4 device_name.HIO is interchangeable with symbolic name configured as
Run/Verify high feedback signal. If feedback is not a DI, this is read/write.
5 The .FTO bit is set to true when either the .FTOL or .FTOH bit is true.
Figure 7-8 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
OPENL/OPENH/
RESET CLOSE LOCK/UNLOCK
.OVRDH .MOPEN .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .SLOW
Open/Verify determine outputs Open Low
Low Input Command
Output
Input, override, and
.HIO operation bits .SHIGH
Open/Verify determine status
Open High
High Input Command
Output
Three-Position The BV2 device is a three-position valve (high, low, and closed) and is
Valve/Type 2 (BV2) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of an open/close signal (.DRV) and a
position signal (.POS) that determines whether the valve opens at high or
low position.
If the desired state is closed (.MOPEN=false), the .DRV bit is set to false
to close the valve.
The valve, when receiving an open signal, starts opening and keeps
opening until .DRV becomes false.
You can change the position of a three-position valve without closing it.
The two feedback signals consist of an open low feedback signal (.LIO) and
an open high feedback signal (.HIO).
The .LIO bit should be true when the valve is open at low position;
otherwise, it should be false.
The .HIO should be true when the valve is open at high position;
otherwise it should be false.
In manual mode, the outputs (.DRV/.POS) are set to the appropriate state
based on the status of the .MHIGH and the .MOPEN bits, which you
manipulate from an operator station or from the program.
In auto mode, the OPENL, OPENH, and CLOSE commands set the state of
the output bits. In this mode, the .MHIGH and .MOPEN bits are set to reflect
the last requested state. This is done to provide for a bumpless transfer if
the device changes modes.
When you select BV2 in the Device Definition Table, the form appears as
shown below.
Table 7-9 lists the extensions and commands used with a BV2 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.DRV 1 open/close command UNLOCK place in manual mode
.POS 2 position OPENL open low
.OPND opened OPENH open high
.OPNDL opened low CLOSE close valve
.OPNDH opened high RESET clear feedback overrides
.CLSD closed
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTOL fail to open low
.FTOH fail to open high
.FTO 5 fail to open
.FTC fail to close
.FAILD
failed (both feedback bits
are true)
.OPNTO open timeout
.CLSTO close timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MOPEN manual open
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.OTCP open timer/counter preset
.OTCC open timer/counter current
.CTCP close timer/counter preset
.CTCC close timer/counter current
1 device_name.DRV is interchangeable with symbolic name configured as
open/close command.
2 device_name.POS is interchangeable with symbolic name configured as
position command.
3 device_name.LIO is interchangeable with symbolic name configured as
Open/Verify low feedback signal.
4 device_name.HIO is interchangeable with symbolic name configured as
Open/Verify high feedback signal.
5 The .FTO bit is set to true when either the .FTOL or .FTOH bit is true.
Figure 7-9 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
OPENL/OPENH/
RESET CLOSE LOCK/UNLOCK
.OVRDH .MOPEN .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .DRV
Open/Verify determine outputs Open/Close
Low Input Command
Output
Input, override, and
.HIO operation bits .POS
Open/Verify determine status
Position
High Input Command
Output
7.3 Motor
Single-Drive/ The MSN device is a two-state motor (running and stopped) and is
Null-Feedback controlled by a single discrete signal with no feedback.
Motor (MSN)
If the desired state of the motor is running (.MSTRT=true), the control
signal (.CMMD) is set to true.
When you select MSN in the Device Definition Table, this form appears:
Table 7-10 lists the extensions and commands used with an MSN device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 start/stop command UNLOCK place in manual mode
.RUNNG running START start motor
.STPPD stopped STOP stop motor
.TRVL traveling
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Start/Stop command.
Figure 7-10 shows the operation bits (across the top) affect the status bits
(across the bottom) and/or the output bits (on the right).
Commands and
operation bits
determine outputs
.CMMD
Operation bit determines Start/Stop
status Command
Output
Motor (continued)
Single-Drive/ The MSS device is a two-state motor (running and stopped) and is
Single-Feedback controlled by a single discrete signal with a single discrete feedback signal.
Motor (MSS)
If the desired state of the motor is running (.MSTRT=true), the control
signal (.CMMD) is set to true.
The feedback signal (.RUNIO) should be true when the motor is running
and false when the motor is stopped.
If the Latch the FTR extension option is selected, the .CMMD bit will
change to false when the .FTR bit becomes true. The .CMMD bit remains
false until a RESET command is issued.
When you select MSS in the Device Definition Table, this form appears:
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 start/stop command UNLOCK place in manual mode
.RUNNG running START start motor
.STPPD stopped STOP stop motor
.TRVL traveling
RESET clear feedback override,
override and/or issue
.RUNIO 2 run feedback start/stop
p command after .FTR or .FTS
.FTR fail to run i ttrue.
is
.FTS fail to stop
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.OVRD override feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as Start/Stop command.
2 device_name.RUNIO is interchangeable with symbolic name configured as Run/Verify feedback signal.
If feedback is not a DI, this is read/write.
Figure 7-11 shows how the input bit (left) and the operation bits (top) affect
the status bits (bottom) and/or the output bits (right).
Commands and
operation bits
Input, override, and determine outputs
.RUNIO operation bits .CMMD
Run/Verify determine status
Feedback
Input Start/Stop
Command
Output
.RUNNG .STPPD .FTR .FTS .TRVL
Motors (continued)
Dual-Drive/ The MDN device is a two-state motor (running and stopped) and is
Null-Feedback controlled by two discrete signals with no feedback.
Motor (MDN)
The two discrete control signals consist of a start signal (.STRTC) and a stop
signal (.STOPC).
When you select MDN in the Device Definition Table, this form appears:
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD start/stop command UNLOCK place in manual mode
.STRTC 1 start command START start motor
.STOPC 2 stop command STOP stop motor
.RUNNG running
.STPPD stopped
.TRVL traveling
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.STRTC is interchangeable with symbolic name configured as
Start command.
2 device_name.STOPC is interchangeable with symbolic name configured as
Stop command.
Figure 7-12 shows how the operation bits (across the top) affect the status
bits (across the bottom) and/or the output bits (on the right).
Motor (continued)
Dual-Drive/ The MDS device is a two state motor (running and stopped) and is
Single-Feedback controlled by two discrete signals with a single discrete feedback signal.
Motor (MDS)
The two discrete control signals consist of a start signal (.STRTC) and a stop
signal (.STOPC).
If the desired state of the motor is running (.MSTRT=true), the .STRTC bit
is set to true to start the motor. The .STRTC bit remains true until either
.RUNNG=true or the start alarm time expires; then .STRTC is set to false.
If the desired state of the motor is stopped (.MSTRT=false), the .STOPC bit
is set to true to stop the motor. The .STOPC bit remains true until either
.STPPD=true or the stop alarm time expires; then .STOPC is set to false.
The feedback signal (.RUNIO) should be true when the motor is running and
false when the motor is stopped.
When you select MDS in the Device Definition Table, this form appears:
Motor (continued)
Table 7-13 lists the extensions and commands used with an MDS device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD start/stop command UNLOCK place in manual mode
.STRTC 1 start command START start motor
.STOPC 2 stop command STOP stop motor
.RUNNG running RESET clear feedback override
.STPPD stopped
.TRVL traveling
.RUNIO 3 run feedback
.FTR fail to run
.FTS fail to stop
.STPTO stop timeout
.STRTO start timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.OVRD override feedback
.STATUS device status (505 only)
Read-only Integer
.VFLAGS device status
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.STRTC is interchangeable with symbolic name configured as
Start command.
2 device_name.STOPC is interchangeable with symbolic name configured as
Stop command.
3 device_name.RUNIO is interchangeable with symbolic name configured as
Run/Verify feedback signal. If feedback is not a DI, this is read/write.
Figure 7-13 shows how the input bit (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
operation bits .STRTC
determine outputs Start
Command
Output
.RUNIO Input, override, and
Run Feedback operation bits .STOPC
Input determine status
Stop
Command
Output
Motor (continued)
User-defined Motor The MUD device is a two-state motor (running and stopped) and is
(MUD) controlled by two discrete signals with a single discrete feedback signal.
The MUD is essentially the shell of a MDS device. The code which defines
the MDS has been reduced to a minimum, and extensions have been
provided to allow you to create your own customized motor and translate it
for OSx (PCS).
The MUD has two alarm timers. When the .SRESET (.RRESET) bit transitions
from false to true, the alarm timer starts. When the timer times out, the
.STRTO (.STPTO) bit becomes true, and remains true until the .SRESET (.RRESET)
bit becomes false.
When you select MUD in the Device Definition Table, this form appears:
Motors (continued)
Table 7-14 lists the extensions and commands used with an MUD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD start/stop command UNLOCK place in manual mode
.STRTC 1 start command START start motor
.STOPC 2 stop command STOP stop motor
.RUNNG running RESET clear feedback override
.STPPD stopped
.TRVL traveling
.RUNIO 3 run feedback
.FTR fail to run
.FTS fail to stop
.STRTO start alarm timer time out
.STPTO stop alarm timer time out
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.OVRD override feedback
.RRESET start alarm timer reset
.SRESET stop alarm timer reset
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.STRTC is interchangeable with symbolic name configured as
Start command.
2 device_name.STOPC is interchangeable with symbolic name configured as
Stop command.
3 device_name.RUNIO is interchangeable with symbolic name configured as
Run/Verify feedback signal. If feedback is not a DI, this is read/write.
Figure 7-14 shows how the input bit (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
operation bits .STRTC
determine outputs Start
Command
Output
.RUNIO Input, override, and
Run Feedback operation bits .STOPC
Input determine status
Stop
Command
Output
Reversible Motor/ The RM1 device is a three-state motor (forward, reverse, and stopped) and
Type 1 (RM1) is controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a forward signal (.SFWRD) and a
reverse signal (.SREV). The two signals cannot both be true at the same time.
The motor, when receiving a start signal, starts running and keeps
running until the currently energized signal becomes false.
The .FIO bit should be true when the motor is running in a forward
direction; otherwise it should be false.
The .RIO bit should be true when the motor is running in a reverse
direction; otherwise it should be false.
In manual mode, the forward and reverse signals (.SFWRD/.SREV) are set to
the appropriate state based on the status of the .MREV and the .MSTRT bits,
which you manipulate from an operator station or from the program.
In auto mode, the STARTF, STARTR, and STOP commands set the state of
the output bits. In this mode, the .MREV and .MSTRT bits are set to reflect the
last requested state. This is done to provide for a bumpless transfer if the
device changes modes.
The logic for the reversible motor is shown in Appendix A, “Device RLL
Code.”
When you select RM1 in the Device Definition Table, this form appears:
Table 7-15 lists the extensions and commands used with an RM1 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.DRV forward/reverse command UNLOCK place in manual mode
.SFWRD 1 start forward STARTF start forward
.SREV 2 start reverse STARTR start reverse
.RUNNG running STOP stop motor
.RUNF running forward RESET clear feedback overrides
.RUNR running reverse
.STPPD stopped
.TRVL traveling
.FIO 3 forward feedback
.RIO 4 reverse feedback
.FTRF fail to run forward
.FTRR fail to run reverse
.FTR 5 fail to run
.FTS fail to stop
.FAILD
failed (both feedback bits
are true)
.STRTO start timeout
.STPTO stop timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.MREV manual reverse
.OVRDF override forward feedback
.OVRDR override reverse feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.SFWRD is interchangeable with symbolic name configured as
Forward command.
2 device_name.SREV is interchangeable with symbolic name configured as
Reverse command.
3 device_name.FIO is interchangeable with symbolic name configured as
Run/Verify forward feedback signal. If feedback is not a DI, this is read/write.
4 device_name.RIO is interchangeable with symbolic name configured as
Run/Verify reverse feedback signal. If feedback is not a DI, this is read/write.
5 The .FTR bit is set to true when either the .FTRF or .FTRR bit is true.
Figure 7-15 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
STARTF/STARTR/
RESET STOP LOCK/UNLOCK
.OVRDR .MSTRT .NRDY .LOCKD
.OVRDF .MREV .DSBLD
Commands and
.FIO operation bits .SFWRD
Run/Verify determine outputs Forward
Forward Input Command
Output
Input, override, and
.RIO operation bits .SREV
Run/Verify determine status
Reverse
Reverse Command
Input Output
Reversible Motor/ The RM2 device is a three-state motor (forward, reverse, and stopped) and
Type 2 (RM2) is controlled by two discrete signals with two discrete feedback signals.
The two control signals consist of a start/stop signal (.DRV) and a direction
signal (.DIR) that determines whether the motor runs forward or reverse.
If the desired state is stopped (.MSTRT=false), the .DRV bit is set to false
to stop the motor.
The motor, when receiving a start signal, starts running and keeps
running until .DRV becomes false or .DIR changes state.
The .FIO bit should be true when the motor is running in a forward
direction; otherwise, it should be false.
The .RIO bit should be true when the motor is running in a reverse
direction; otherwise, it should be false.
In manual mode, the control signals (.DRV/.DIR) are set to the appropriate
state based on the status of the .MREV and the .MSTRT bits, which you
manipulate from an operator station or from the program.
In auto mode, the STARTF, STARTR, and STOP commands set the state of
the output bits. In this mode, the .MREV and .MSTRT bits are set to reflect the
last requested state. This is done to provide for a bumpless transfer if the
device changes modes.
When you select RM2 in the Device Definition Table, this form appears:
Table 7-16 lists the extensions and commands used with an RM2 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.DRV 1 start/stop command UNLOCK place in manual mode
.DIR 2 direction STARTF start forward
.RUNNG running STARTR start reverse
.RUNF running forward STOP stop motor
.RUNR running reverse RESET clear feedback overrides
.STPPD stopped
.TRVL traveling
.FIO 3 forward feedback
.RIO 4 reverse feedback
.FTRF fail to run forward
.FTRR fail to run reverse
.FTR 5 fail to run
.FTS fail to stop
.FAILD
failed (both feedback bits
are true)
.STRTO start timeout
.STPTO stop timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MSTRT manual start
.MREV manual reverse
.OVRDF override forward feedback
.OVRDR override reverse feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.DRV is interchangeable with symbolic name configured as
start/stop command.
2 device_name.DRV is interchangeable with symbolic name configured as
direction command.
3 device_name.FIO is interchangeable with symbolic name configured as
Run/Verify forward feedback signal. If feedback is not a DI, this is read/write.
4 device_name.RIO is interchangeable with symbolic name configured as
Run/Verify reverse feedback signal. If feedback is not a DI, this is read/write.
5 The .FTR bit is set to true when either the .FTRF or .FTRR bit is true.
Figure 7-16 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
STARTF/STARTR/
RESET STOP LOCK/UNLOCK
.OVRDR .MSTRT .NRDY .LOCKD
.OVRDF .MREV .DSBLD
Commands and
.FIO operation bits .DRV
Run/Verify determine outputs Start/Stop
Forward Input Command
Output
Input, override, and
.RIO operation bits .DIR
Run/Verify determine status
Direction
Reverse Command
Input Output
Two-Speed Motor/ The TS1 device is a three-state motor (high, low, and stopped) and is
Type 1 (TS1) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a low signal (.SLOW) and a high
signal (.SHIGH). The two signals cannot both be true at the same time.
The motor, when receiving a start signal, starts running and keeps
running until the currently energized signal becomes false.
You can change the speed of a two-speed motor without stopping it.
The two feedback signals consist of a running-low feedback signal (.LIO) and
a running-high feedback signal (.HIO).
The .LIO bit should be true when the motor is running at low speed;
otherwise, it should be false.
The .HIO bit should be true when the motor is running at high speed;
otherwise, it should be false.
In manual mode, the outputs (.SLOW/.SHIGH) are set to the appropriate state
based on the status of the .MHIGH and the .MSTRT bits, which you manipulate
from an operator station or from the program.
In auto mode, the STARTL, STARTH, and STOP commands set the state of
the output bits. In this mode, the .MHIGH and .MSTRT bits are set to reflect the
last requested state. This is done to provide for a bumpless transfer if the
device changes modes.
When you select TS1 in the Device Definition Table, this form appears:
Table 7-17 lists the extensions and commands used with a TS1 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.SLOW 1 start low UNLOCK place in manual mode
.SHIGH 2 start high STARTL start low
.RUNNG running STARTH start high
.RUNL running low STOP stop motor
.RUNH running high RESET clear feedback overrides
.STPPD stopped
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTRL fail to run low
.FTRH fail to run high
.FTR 5 fail to run
.FTS fail to stop
.FAILD
failed (both feedback bits
are true)
.STRTO start timeout
.STPTO stop timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MSTRT manual start
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.SLOW is interchangeable with symbolic name configured as
low command.
2 device_name.SHIGH is interchangeable with symbolic name configured as
high command.
3 device_name.LIO is interchangeable with symbolic name configured as
Run/Verify low feedback signal. If feedback is not a DI, this is read/write.
4 device_name.HIO is interchangeable with symbolic name configured as
Run/Verify high feedback signal. If feedback is not a DI, this is read/write.
5 The .FTR bit is set to true when either the .FTRL or .FTRH bit is true.
Figure 7-17 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
STARTL/STARTH/
RESET STOP LOCK/UNLOCK
.OVRDH .MSTRT .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .SLOW
Run/Verify Low determine outputs Start Low
Input Command
Output
Input, override, and
.HIO operation bits .SHIGH
Run/Verify determine status
Start High
High Input Command
Output
Two-Speed Motor/ The TS2 device is a three-state motor (high, low, and stopped) and is
Type 2 (TS2) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a start/stop signal (.DRV) and a
speed signal (.SPEED) that determines whether the motor runs at high or low
speed.
If the desired state is stopped (.MSTRT=false), the .DRV bit is set to false
to stop the motor.
The motor, when receiving a start signal, starts running and keeps
running until .DRV becomes false.
You can change the speed of a two-speed motor without stopping it.
The two feedback signals consist of a running-low feedback signal (.LIO) and
a running-high feedback signal (.HIO).
The .LIO bit should be true when the motor is running at low speed;
otherwise, it should be false.
The .HIO should be true when the motor is running at high speed;
otherwise it should be false.
In manual mode, the outputs (.DRV/.SPEED) are set to the appropriate state
based on the status of the .MHIGH and the .MSTRT bits, which you manipulate
from an operator station or from the program.
In auto mode, the STARTL, STARTH, and STOP commands set the state of
the output bits. In this mode, the .MHIGH and .MSTRT bits are set to reflect the
last requested state. This is done to provide for a bumpless transfer if the
device changes modes.
When you select TS2 in the Device Definition Table, this form appears:
Table 7-18 lists the extensions and commands used with a TS2 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.DRV 1 start/stop command UNLOCK place in manual mode
.SPEED 2 speed STARTL start low
.RUNNG running STARTH start high
.RUNL running low STOP stop motor
.RUNH running high RESET clear feedback overrides
.STPPD stopped
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTRL fail to run low
.FTRH fail to run high
.FTR 5 fail to run
.FTS fail to stop
.FAILD
failed (both feedback bits
are true)
.STRTO start timeout
.STPTO stop timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MSTRT manual start
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.RTCP run timer/counter preset
.RTCC run timer/counter current
.STCP stop timer/counter preset
.STCC stop timer/counter current
1 device_name.DRV is interchangeable with symbolic name configured as
start/stop command.
2 device_name.SPEED is interchangeable with symbolic name configured as
speed command.
3 device_name.LIO is interchangeable with symbolic name configured as
Run/Verify low feedback signal.
4 device_name.HIO is interchangeable with symbolic name configured as
Run/Verify high feedback signal.
5 The .FTR bit is set to true when either the .FTRL or .FTRH bit is true.
Figure 7-18 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
STARTL/STARTH/
RESET STOP LOCK/UNLOCK
.OVRDH .MSTRT .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .DRV
Run/Verify Low determine outputs Start/Stop
Input Command
Output
Input, override, and
.HIO operation bits .SPEED
Run/Verify determine status
Speed
High Input Command
Output
7.6 Cylinder
Single-Drive/ The CSD device has two positions (extended and retracted) and is controlled
Dual-Feedback by a single discrete signal with two discrete feedback signals. Two types of
Cylinder (CSD) CSD devices are supported: energize-extend (Type E) and energize-retract
(Type R).
For both types of cylinders, the two feedback signals consist of an extended
feedback signal (.ELS) and a retracted feedback signal (.RLS).
The .ELS bit should be true when the piston is extended, and false when
it is retracted.
The .RLS bit should be true when the piston is retracted and false when
it is extended.
When you select CSD in the Device Definition Table, this form appears:
Cylinder (continued)
Table 7-19 lists the extensions and commands used with a CSD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 extend/retract command UNLOCK place in manual mode
.EXTENDED extended EXTEND extend piston
.RETRACTED retracted RETRACT retract piston
.TRVL traveling RESET clear feedback override
.ELS 2 extended feedback (E)
.RLS 3 retracted feedback (R)
.FTE fail to extend
.FTR fail to retract
.FAILD
failed (both feedback bits are
true)
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MEXTEND manual extend
.OVRDE override extend feedback
.OVRDR override retract feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.ETCP extend timer/counter preset
.ETCC extend timer/counter current
.RTCP retract timer/counter preset
.RTCC retract timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Extend/Retract command.
2 device_name.ELS is interchangeable with symbolic name configured as
Extended Limit Switch for energize-extend cylinders. If feedback is not a DI,
this is read/write.
3 device_name.RLS is interchangeable with symbolic name configured as
Retracted Limit Switch for energize-retract cylinders. If feedback is not a DI,
this is read/write.
Figure 7-19 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.ELS operation bits
Extend Limit determine outputs
Switch Input
(Type E)
Input, override, and .CMMD
operation bits Extend/Retract
.RLS determine status Command
Output
Retract Limit
Switch Input
(Type R)
Cylinder (continued)
User-defined The CUD device has two positions (open and closed) and is controlled by two
Cylinder (CUD) discrete signals with two discrete feedback signals.
The CUD is essentially the shell of a CSD device. The code that defines the
CSD has been reduced to a minimum, and extensions are provided to allow
you to create your own customized cylinder and translate it for OSx (PCS).
The CUD has two alarm timers. When the .ERESET (.RRESET) bit transitions
from false to true, the alarm timer starts. When the timer times out, the
.EXTTO (.RETTO) bit becomes true, and remains true until the .ERESET (.RRESET)
bit becomes false.
When you select CUD in the Device Definition Table, this form appears:
Table 7-20 lists the extensions and commands used with a CUD device.
Cylinder (continued)
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD extend/retract command UNLOCK place in manual mode
.EXTC 1 extend command EXTEND extend piston
.RETC 2 retract command RETRACT retract piston
.EXTENDED extended RESET clear feedback override
.RETRACTED retracted
.TRVL traveling
.ELS 3 extended feedback
.RLS 4 retracted feedback
.FTE fail to extend
.FTR fail to retract
.FAILD
failed (both feedback bits are
true)
.EXTTO extend alarm timer time out
.RETTO retract alarm timer time out
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MEXTEND manual extend
.OVRDE override extend feedback
.OVRDR override retract feedback
.ERESET extend alarm timer reset
.RRESET retract alarm timer reset
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.ETCP extend timer/counter preset
.ETCC extend timer/counter current
.RTCP retract timer/counter preset
.RTCC retract timer/counter current
1 device_name.EXTC is interchangeable with symbolic name configured as
Extend command.
2 device_name.RETC is interchangeable with symbolic name configured as
Retract command.
3 device_name.ELS is interchangeable with symbolic name configured as Open
Limit Switch for energize-open valves. If feedback is not DI, this is read/write.
4 device_name.RLS is interchangeable with symbolic name configured as Close
Limit Switch for energize-closed valves. If feedback is not DI, this is
read/write.
Figure 7-20 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.ELS operation bits .EXTC
Extend Limit determine outputs Extend
Switch Input Command
Output
Input, override, and
.RLS operation bits
determine status .RETC
Retract Limit
Switch Input Retract
Command
Output
7.7 Presses
Hand-Operated/ The PND device has two positions (open and closed) and is controlled by
Dual-Feedback two discrete feedback signals.
Press (PND)
The two feedback signals consist of an up feedback signal (.ULS) and a down
feedback signal (.DLS).
The .ULS bit should be true when the press is up and false when it is
down.
The .DLS bit should be true when the press is down and false when it is
up.
If the desired state is down, (.DLS=true), the .MRAISE bit is set to false.
When you select PND in the Device Definition Table, this form appears:
NOTE: The PND does not support the dual feedback logic. Refer to
Appendix A for the logic of a PND.
Table 7-21 lists the extensions and commands used with a PND device.
Extension Commands
Read-only Boolean
.UP press is up
.DOWN press is down
.ULS 1 up feedback
.DLS 2 down feedback There are no commands.
.FAILD
failed (both feedback bits
are true)
.MRAISE up/down status
.STATUS device status
1 device_name.ULS is interchangeable with symbolic name configured as Up
Limit Switch for energize-open presses. If feedback is not a DI, this is
read/write.
2 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch for energize-closed presses. If feedback is not a DI, this is
read/write.
Figure 7-21 shows how the input bits (on the left) affect the status bits
(across the bottom) and/or the output bits (on the right).
Commands and
.ULS operation bits
Up Limit determine outputs
Switch Input
Input, override, and .MRAISE
.DLS operation bits Up/Down
determine status Status
Down Limit
Switch Input
.UP .FAILD
.DOWN
Presses (continued)
Single-Drive/ The PSN device has two positions (up and down) and is controlled by one
Null-Feedback discrete signal with no feedback. Two types of PSN devices are available:
Press (PSN) energize-raise (Type R) and energize-lower (Type L).
If the desired state is down (.MRAISE=false), the .CMMD bit is set to false.
If the desired state is down (.MRAISE=false), the .CMMD bit is set to true.
When you select PSN in the Device Definition Table, the form below
appears.
Table 7-22 lists the extensions and commands used with a PSN device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 raise/lower command UNLOCK place in manual mode
.UP up RAISE raise press
.DOWN down LOWER lower press
.TRVL traveling
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Raise/Lower command.
Figure 7-22 shows how the operation bits (across the top) affect the status
bits (across the bottom and/or the output bits (on the right).
RAISE/LOWER LOCK/UNLOCK
.MRAISE .NRDY .LOCKD
.DSBLD
Commands and
operation bits
determine outputs
.CMMD
Raise/Lower
Command
Output
Operation bit
determines status
Presses (continued)
Single-Drive/ The PSS device has two positions (up and down) and is controlled by a
Single-Feedback single discrete signal with one discrete feedback signal. Two types of PSS
Press (PSS) devices are available: energize-raise (Type R) and energize-lower (Type L).
The feedback signal for the energize-raise press (.ULS) should be true
when the press is up and false when the press is down.
The feedback signal for the energize-lower press (.DLS) should be false
when the press is up and true when the press is down.
If the Clear CMMD on FTR/FTL option is selected, the .CMMD bit will change
to false when the .FTR bit becomes true. The .CMMD bit will remain false
until a RESET command is issued.
When you select PSS in the Device Definition Table, the form below
appears.
Presses (continued)
Table 7-23 lists the extensions and commands used with a PSS device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 raise/lower command UNLOCK place in manual mode
.UP up RAISE raise press
.DOWN down LOWER lower press
.TRVL traveling RESET clear feedback override
.ULS 2 up feedback (R) and/or
d/ iissues raise/lower
i /l
command after .FTR or .FTL
.DLS 3 down feedback (L) is true.
.FTR fail to raise
.FTL fail to lower
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.OVRD override feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Raise/Lower command.
2 device_name.ULS is interchangeable with symbolic name configured as
Up Limit Switch for energize-raise presses. If feedback is not a DI, this
is read/write.
3 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch for energize-lower presses. If feedback is not a DI, this is
read/write.
Figure 7-23 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Presses (continued)
Single-Drive/ The PSD device has two positions (up and down) and is controlled by a
Dual-Feedback single discrete signal with two discrete feedback signals. Two types of PSD
Press (PSD) devices are supported: energize-raise (Type R) and energize-lower (Type L).
If the desired state is down (.MRAISE=false), the .CMMD bit is set to false.
If the desired state is down (.MRAISE=false), the .CMMD bit is set to true.
If the Clear CMMD on FTR/FTL option is selected, the .CMMD bit will change
to false when the .FTR bit becomes true. The .CMMD bit will remain false
until a RESET command is issued.
For both types of presses, the two feedback signals consist of an up feedback
signal (.ULS) and a down feedback signal (.DLS).
The .ULS bit should be true when the press is up and false when it is
down.
The .DLS bit should be true when the press is down and false when it is
up.
When you select PSD in the Device Definition Table, the form below
appears.
Presses (continued)
Table 7-24 lists the extensions and commands used with a PSD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD 1 up/down command UNLOCK place in manual mode
.UP up RAISE raise press
.DOWN down LOWER lower press
.TRVL traveling RESET clear feedback override
.ULS 2 up feedback (R) and/or
d/ iissues raise/lower
i /l
command after .FTR or .FTL
.DLS 3 down feedback (L) is true.
.FTR fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits
are true)
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.OVRDU override up feedback
.OVRDD override down feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.CMMD is interchangeable with symbolic name configured as
Raise/Lower command.
2 device_name.ULS is interchangeable with symbolic name configured as Up
Limit Switch for energize-raise presses. If feedback is not a DI, this is
read/write.
3 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch for energize-lower presses. If feedback is not a DI, this is
read/write.
Figure 7-24 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Commands and
.ULS operation bits
Up Limit determine outputs
Switch Input
(Type R)
Input, override, and .CMMD
operation bits Raise/Lower
.DLS determine status Command
Down Limit Output
Switch Input
(Type L)
Presses (continued)
Dual-Drive/ The PDD device has two positions (up and down) and is controlled by two
Dual-Feedback discrete signals with two discrete feedback signals.
Press (PDD)
The two control signals consist of an up signal (.UPC) and a down signal
(.DOWNC), which are both normally false.
If the desired state is up (.MRAISE=true), the .UPC bit is set to true. The
.UPC bit remains true until either the up feedback signal is true or the
up alarm time expires; then .UPC is set to false.
If the desired state is down, the .DOWNC bit is set to true to lower the
press. The .DOWNC bit remains true until either the down feedback
signal is true or the down alarm time expires; then .DOWNC is set to
false.
The two feedback signals consist of an up feedback signal (.ULS) and a down
feedback signal (.DLS).
The .ULS bit should be true when the press is up; otherwise, it should be
false.
The .DLS bit should be true when the press is down; otherwise, it should
be false.
When you select PDD in the Device Definition Table, the form below
appears.
Presses (continued)
Table 7-25 lists the extensions and commands used with a PDD device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD raise/lower command UNLOCK place in manual mode
.UPC 1 up command RAISE raise press
.DOWNC 2 lower command LOWER lower press
.UP up RESET clear feedback override
.DOWN down
.TRVL traveling
.ULS 3 up feedback
.DLS 4 down feedback
.FTR fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits
are true)
.UPTO up timeout
.DOWNTO down timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.OVRDU override up feedback
.OVRDD override down feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.UPC is interchangeable with symbolic name configured as
Raise command.
2 device_name.DOWNC is interchangeable with symbolic name configured as
Lower command.
3 device_name.ULS is interchangeable with symbolic name configured as Up
Limit Switch. If feedback is not a DI, this is read/write.
4 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch. If feedback is not a DI, this is read/write.
Figure 7-25 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Presses (continued)
Motor-Drive/ The PMD device has two positions (up and down) and is controlled by two
Dual-Feedback discrete signals with two discrete feedback signals.
Press (PMD)
The two control signals consist of a raise signal (.UPC) and a lower signal
(.DOWNC).
If the desired state of the press is up (.MRAISE=true), the .UPC bit is set to
true until the up feedback is true or until the alarm time expires; then
.UPC is set to false.
If the desired state is down (.MRAISE=false), the .DOWNC bit is set to true
until down feedback is true or until the alarm time expires; then
.DOWNC is set to false.
If the press is stopped in mid-travel, the .TRVL bit remains true with the
up and down alarm times reset.
The two feedback signals consist of an up feedback signal (.ULS) and a down
feedback signal (.DLS).
The .ULS bit should be true when the press is up; otherwise, it should be
false.
The .DLS bit should be true when the press is down; otherwise, it should
be false.
The PMD press can be stopped at any point of its travel by setting the .RTS
extension to true.
When you select PMD in the Device Definition Table, the form appears as
shown below.
Name: unique name that identifies motor-driven press (12 characters maximum)
Type: PMD (3-letter code for device)
Description: 30 characters maximum (optional)
Up command: symbolic name of discrete output, boolean variable, or
device_name.UPC that raises motor press.
Down command: symbolic name of discrete output, boolean variable, or
device_name.DOWNC that lowers motor press.
Up limit switch: symbolic name of discrete input, discrete output, digital flag,
boolean variable, APT flag variable, or device_name.ULS that is up feedback signal.
Down limit switch: symbolic name of discrete input, discrete output, digital flag,
boolean variable, APT flag variable, or device_name.DLS that is down feedback
signal.
Normally open feedback: feedback response is inverted, e.g, up feedback is false
when the press is up.
Ignore feedback override: Override feedback bit is ignored.
Up alarm time: real number between 0.1 and 3276.7 that indicates number of
seconds to allow press to raise; also indicates maximum time to keep up signal true.
Down alarm time: real number between 0.1 and 3276.7 that indicates number of
seconds to allow press to lower; also indicates maximum time to keep down signal
true.
Table 7-26 lists the extensions and commands used with a PMD device.
Presses (continued)
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD raise/lower command UNLOCK place in manual mode
.UPC 1 up command RAISE raise press
.DOWNC 2 lower command LOWER lower press
.UP up RESET clear feedback override
.DOWN down
.TRVL traveling
.ULS 3 up feedback
.DLS 4 down feedback
.FTR fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits
are true)
.UPTO up timeout
.DOWNTO down timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.OVRDU override up feedback
.OVRDD override down feedback
.STATUS device status
.RTS stop travel
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.UPC is interchangeable with symbolic name configured as
Raise command.
2 device_name.DOWNC is interchangeable with symbolic name configured as
Lower command.
3 device_name.ULS is interchangeable with symbolic name configured as Up
Limit Switch. If feedback is not a DI, this is read/write.
4 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch. If feedback is not a DI, this is read/write.
Figure 7-26 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Presses (continued)
User-defined Press The PUD device has two positions (up and down) and is controlled by two
(PUD) discrete signals with two discrete feedback signals.
The PUD is essentially the shell of a PDD device. The code which defines
the PDD has been reduced to a minimum, and extensions have been
provided to allow you to create your own customized press and translate it
for OSx (PCS).
The PUD has two alarm timers. When the .URESET (.DRESET) bit transitions
from false to true, the alarm timer starts. When the timer times out, the
.UPTO (.DOWNTO) bit becomes true, and remains true until the .URESET (.DRESET)
bit becomes false.
When you select PUD in the Device Definition Table, the form below
appears.
Table 7-27 lists the extensions and commands used with a PUD device.
Presses (continued)
Extension Commands
Read-only Boolean LOCK place in auto mode
.CMMD raise/lower command UNLOCK place in manual mode
.UPx 1 raise command RAISE raise press
.DOWNC 2 lower command LOWER lower press
.UP up RESET clear feedback override
.DOWN down RAISEA raise with option A
.TRVL traveling RAISEB raise with option B
.ULS 3 up feedback RAISEH raise high
.DLS 4 down feedback RAISEL raise low
.FTR fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits
are true)
.UPTO up alarm timer time out
.DOWNTO down alarm timer time out
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MRAISE manual raise
.OVRDU override up feedback
.OVRDD override down feedback
.URESET up alarm timer reset
.DRESET down alarm timer reset
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.UPx is interchangeable with symbolic name configured as
Raise command. The extension is .UPA when x = A, .UPB when x = B, etc.
2 device_name.DOWNC is interchangeable with symbolic name configured as
Lower command.
3 device_name.ULS is interchangeable with symbolic name configured as Up
Limit Switch. If feedback is not a DI, this is read/write.
4 device_name.DLS is interchangeable with symbolic name configured as Down
Limit Switch. If feedback is not a DI, this is read/write.
Figure 7-27 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
Three-Position The PS1 device is a three-position press (high, low, and down) and is
Press/Type 1 (PS1) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a low signal (.SLOW) and a high
signal (.SHIGH). The two signals cannot both be true at the same time.
The two feedback signals consist of an raise-low feedback signal (.LIO) and
an raise-high feedback signal (.HIO).
The .LIO bit should be true when the press is up at the low position;
otherwise, it should be false.
The .HIO bit should be true when the press is up at the high position;
otherwise, it should be false.
In manual mode, the outputs (.SLOW/.SHIGH) are set to the appropriate state
based on the status of the .MHIGH and the .MRAISE bits, which you manipulate
from an operator station or from the program.
In auto mode, the RAISEL, RAISEH, and LOWER commands set the state
of the output bits. In this mode, the .MHIGH and .MRAISE are set to reflect the
last requested state. This is done to provide for a bumpless transfer if the
device changes modes.
When you select PS1 in the Device Definition Table, the form below
appears.
Table 7-28 lists the extensions and commands used with a PS1 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.SLOW 1 raise low UNLOCK place in manual mode
.SHIGH 2 raise high RAISEL raise low
.UP up RAISEH raise high
.UPL up low LOWER lower press
.UPH up high RESET clear feedback overrides
.DOWN down
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTRL fail to raise low
.FTRH fail to raise high
.FTR 5 fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits
are true)
.UPTO up timeout
.DOWNTO down timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MRAISE manual raise
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.SLOW is interchangeable with symbolic name configured as
low command.
2 device_name.SHIGH is interchangeable with symbolic name configured as
high command.
3 device_name.LIO is interchangeable with symbolic name configured as
Raised/Verify low feedback signal. If feedback is not a DI, this is read/write.
4 device_name.HIO is interchangeable with symbolic name configured as
Raised/Verify high feedback signal. If feedback is not a DI, this is read/write.
5 The .FTR bit is set to true when either the .FTRL or .FTRH bit is true.
Figure 7-28 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
RAISEL/RAISEH/
RESET LOWER LOCK/UNLOCK
.OVRDH .MRAISE .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .SLOW
Raised/Verify determine outputs Raise Low
Low Input Command
Output
Input, override, and
.HIO operation bits .SHIGH
Raised/Verify determine status
Raise High
High Input Command
Output
Three-Position The PS2 device is a three-position press (high, low, and down) and is
Press/Type 2 (PS2) controlled by two discrete signals with two discrete feedback signals.
The two discrete control signals consist of a raise/lower signal (.DRV) and a
position signal (.POS) that determines whether the press raises at high or
low position.
If the desired state is down (.MRAISE=false), the .DRV bit is set to false to
lower the press.
The press, when receiving a raise signal, starts raising and keeps
raising until .DRV becomes false.
The two feedback signals consist of an raise-low feedback signal (.LIO) and a
raise-high feedback signal (.HIO).
The .LIO bit should be true when the press is up at low position;
otherwise, it should be false.
The .HIO should be true when the press is up at high position; otherwise
it should be false.
In manual mode, the outputs (.DRV/.POS) are set to the appropriate state
based on the status of the .MHIGH and the .MRAISE bits, which you manipulate
from an operator station or from the program.
In auto mode, the RAISEL, RAISEH, and LOWER commands set the state
of the output bits. In this mode, the .MHIGH and .MRAISE bits are set to reflect
the last requested state. This is done to provide for a bumpless transfer if
the device changes modes.
When you select PS2 in the Device Definition Table, the form below
appears.
Table 7-29 lists the extensions and commands used with a PS2 device.
Extension Commands
Read-only Boolean LOCK place in auto mode
.DRV 1 raise/lower command UNLOCK place in manual mode
.POS 2 position RAISEL raise low
.UP up RAISEH raise high
.UPL raised low LOWER lower press
.UPH raised high RESET clear feedback overrides
.DOWN down
.TRVL traveling
.LIO 3 low feedback
.HIO 4 high feedback
.FTRL fail to raise low
.FTRH fail to raise high
.FTR 5 fail to raise
.FTL fail to lower
.FAILD
failed (both feedback bits are
true)
.UPTO up timeout
.DOWNTO down timeout
Read/Write Boolean
.DSBLD forced to manual mode
.LOCKD locked (auto mode)
.NRDY not ready
.MHIGH manual high
.MRAISE manual raise
.OVRDL override low feedback
.OVRDH override high feedback
.STATUS device status
Read-only Integer
.VFLAGS device status (505 only)
Read/Write Integer
.UTCP up timer/counter preset
.UTCC up timer/counter current
.DTCP down timer/counter preset
.DTCC down timer/counter current
1 device_name.DRV is interchangeable with symbolic name configured as
up/down command.
2 device_name.POS is interchangeable with symbolic name configured as
position command.
3 device_name.LIO is interchangeable with symbolic name configured as
Raised/Verify low feedback signal.
4 device_name.HIO is interchangeable with symbolic name configured as
Raised/Verify high feedback signal.
5 The .FTR bit is set to true when either the .FTRL or .FTRH bit is true.
Figure 7-29 shows how the input bits (on the left) and the operation bits
(across the top) affect the status bits (across the bottom) and/or the output
bits (on the right).
RAISEL/RAISEH/
RESET LOWER LOCK/UNLOCK
.OVRDH .MRAISE .NRDY .LOCKD
.OVRDL .MHIGH .DSBLD
Commands and
.LIO operation bits .DRV
Raised/Verify determine outputs Raise/Lower
Low Input Command
Output
Input, override, and
.HIO operation bits .POS
Raised/Verify determine status
Position
High Input Command
Output
7.9 Stopwatch
Using the Device The TMR device is a three-state device (running, stopped, and hold). The
Timer timer can be controlled by commands in an SFC step or math statement or
by assigning values in math statements.
Five commands allow you to manipulate the timer device from an SFC step
or math block that generates RLL code.
The START command starts the timer by setting the current value
(.CUR) to 0 and the .RUNNG bit to true.
Each time the tick-rate value elapses, the .CUR value is increased by 1.
The STOP command stops the timer by setting the .RUNNG bit to false.
The .TOUT extension also becomes false. The STOP command has no
effect on the current value.
The HOLD command sets the .HOLD bit to true to stop the timer
temporarily. This command freezes the current value and the current
tick-rate position. The .HOLD bit is automatically set to true if there is a
controller power failure, and the Uninterruptible Power Supply option
has not been selected in the compile control file.
The CONTINUE command sets the .HOLD bit to false and continues
timing from the point at which it was frozen by the HOLD command.
The RESET command sets the .CUR value to 0. If the timer is frozen
with a HOLD command, the RESET command unfreezes it by setting
the .HOLD bit to false.
NOTE: Because the TMR device stores data temporarily by using internal
memory locations, avoid using timers in user-defined subroutines.
NOTE: If you write to the current value (.CUR) while the timer is running,
the timer continues to count from the new current value.
The tick rate of the timer can be changed by writing to the integer variable,
device_name.RATE.
If the timer is a slow timer (Type S), the value should be the number of
tenths of seconds in each tick.
If the timer is a fast timer (Type F), the value should be the number of
milliseconds in each tick.
If you change the tick rate while the timer is running, the change does
not take effect until the current tick is completed.
Timer (TMR) When you select TMR in the Device Definition Table, this form appears:
Stopwatch (continued)
Table 7-30 lists the extensions and commands used with a TMR device.
Extension Commands
Read-only Boolean START start timer
.TOUT time out (.CUR ∫ .PSET) STOP stop timer
.GT time when .CUR > .PSET HOLD hold current time
.EQ 1 value when .CUR = .PSET CONT continue counting
.MAXC maximum value (32767) reached RESET clear current count
.HOLD holding
Read/Write Boolean
.RUNNG running
Read/Write Integer
.PSET preset
.RATE 2 tick rate of timer
.CUR current timer count
1 device_name.EQ may never come true for timers with very small tick rates
(less than 100 milliseconds). The program cannot access the timer fast enough
to catch the current value equal to the preset; the current value may appear
to jump from less than .PSET to greater than .PSET.
2 For a slow timer, device_name.RATE = 10 ⌠ tick rate that you enter in the form.
For a fast timer, device_name.RATE = 1000 ⌠ tick rate that you enter in the
form.
Overview To use constants and variables in your APT program, you must specify the
names for these values in the Declaration Table. The Declaration Table
Editor allows you to define constants and variables that can be used
throughout the program. Constants have an unchanging assigned value.
Variables can be assigned an initial value that can change during the
execution of the program.
You can declare these constants and variables in the Declaration Definition
Table at either the Program Content Level or the Unit Content Level. A
constant or variable defined at the Program Content Level can be used in
that program and in any unit within that program; a constant or variable
defined at the Unit Content Level can be used only from in that unit.
Availability The Declaration Table is available for both Series 505 and S5 controllers.
Integer I
Real R
Boolean B
Flag F
Text T
Declaration Table Editor PTs ESC
Scaled Integer SI F3
Integer Array IA
Name: Type: S Real Array RA
Boolean Array BA
DI10 Array IX
DO10 Array DX
Sequence Array SA
Shift Register Array SR
Text Array TA
Counter CT
Fast Timer FT
Slow Timer ST
Entering Constants When you declare constants and variables, you enter information in the
and Variables following fields, which can vary for declaration types.
Type: The code represents the type of value that you are declaring.
Value: The numeric value must agree with the specified type. The default is
zero. If you are defining a constant, the entry in this field represents an
unchanging value and is a read-only value. If you are defining a variable,
the entry in this field is the initial value, which can be overwritten in an
assignment statement.
You can enter the name of a constant declaration for the initial value of a
variable that can be overwritten in an assignment statement.
Reserved Address: Enter the controller address in this field if you choose
to assign the declaration address yourself. For Series 505 controllers, specify
the address in standard direct controller addressing, using this format:
%Annnn. The % indicates that this is a direct address, A is a memory type (C
for boolean, V for real or integer numbers), and nnnn is the address location.
For S5 controllers, use the format %Annn.n for booleans, %AWnnn for
integers, and %ADnnn for real numbers. The % indicates that this is a direct
address, A is a memory type (F for flag memory, DBnn:D for data memory),
and nnn.n or nnn is the address location. Do not use a “ . ” character for real
numbers. For an array, define only the first element in the array.
If you use this option, the address must be in the reserved memory area,
which you specify in the Compiler Control File. For Series 505 controllers,
G, VMM, and VME memory types cannot be reserved. For more information
about using reserved memory, see the appendix on Direct Memory
Addressing in the SIMATIC APT Programming Reference (Graphics/Math)
Manual.
You cannot edit certain fields if you have already marked a declaration for
OSx (PCS) tag translation. These fields are listed in Table 8-1 on page 8-6.
When you mark objects for translation for S5 controllers, you cannot assign
the S5 memory types FW, FD, S, SW, SD, or RS to objects that must be
translated.
Table 8-1 OSx (PCS) Translation and Declaration Fields That Do Not Change
Declaration Fields
Declaration Type
(Cannot be edited after marked for translation)
Integer (I) Name, Type, Constant, Unique Status, PLC Address
Real (R) Name, Type, Constant, Unique Status, PLC Address
Boolean (B) Name, Type, Retentive, Unique Status, PLC Address
Flag (F) Name, Type, Retentive, PLC Address
Text (T) Name, Type, Number of Text Fields, Constant, PLC Address
Scaled Integer (SI) Name, Type, Low Range, High Range, Unique Status, PLC Address
Integer Array (IA) Name, Type, Constant, Number in Array, PLC Address
Real Array (RA) Name, Type, Constant, Number in Array, PLC Address
Boolean Array (BA) Name, Type, Retentive, Number in Array, PLC Address
DI10 (IX) Name, Type, Retentive, PLC Address
DO10 Array (DX) Name, Type, Retentive, PLC Address
Sequence Array (SA) Name, Type, Number in Array, PLC Address
Shift Register Array(SR) Name, Type, Number in Array, PLC Address
Text Array (TA) Name, Type, Constant, Number in Array, PLC Address
Counter (CT) Name, Type, PLC Address
Fast Timer (FT) Name, Type, PLC Address
Slow Timer (ST) Name, Type, PLC Address
Integer (I) An integer value is a positive or negative number and cannot contain a
decimal point. When you select I as the declaration type, this form appears:
Reserved address: controller address you specify for the declaration, e.g.,
%V19 or %K19 (if constant) for a Series 505 controller, or %FW19 or
%DBn:DW19 for S5. The types of Series 505 memory available for variable
declarations are %V, %VMM, %VMS, %G, %Gx (where x is the application
ID), %G; for constant declarations: %K, and %STW. The types of S5 memory
available for variable declarations are %FW, %SW, %DBn:DW, and
%DXn:DW; for constant declarations: %FW, %SW, %DBn:DW, %DXn:DW
(where n is the block number), and %RSW.
Table 8-2 lists the extensions and commands for an integer declaration. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL code for Series 505 controllers, or STL code for S5
controllers. Integer declarations and extensions can be used in a transition,
in the Math section of an SFC step, or in Math Language statements in a
CFB.
Extensions Command
INCREMENT
(INC)* Adds 1 to the current
Integer value that will be translated to an OSx value of the variable.
.STATUS (PCS) status attribute. You must also write code in a DECREMENT
Math block that changes the value of this extension. (DEC)* Subtracts 1 from the
current value of the
variable.
* These integer commands execute only once each time that the program enters the step. These commands
work only on variables defined as an integer in the Declaration Table. For Series 505 controllers, note that
the INCREMENT and DECREMENT commands use less memory and execute faster than a math
statement (i=i+1 or i=i--1). For S5 controllers, execution time and memory used are the same. However,
for Series 505, the math step or CFB must be RLL code only.
Figure 8-2 illustrates the use of variables (int_1, int_2, int_3) in an SFC
step and transition.
int_1 := 10;
INCREMENT int_3;
MATH
BEGIN
INIT
int_2 := int_3;
S1 BODY
int_2 := int_2 * 6;
T1 int_3 >0
Scaled Integer (SI) A scaled integer value has the same properties as a normal integer with one
exception: when marked for translation, a scaled integer is translated to an
OSx (PCS) analog output. The high and low range, and engineering units
are sent to OSx. In OSx, the value is converted to a real number. In APT, it
stays an integer.
(Series 505)
B (Bipolar): --32000 to +32000
T (Twenty-percent offset): +6400 to +32000
Z (Zero bias): 0 to +32000
(S5)
B (Bipolar): --1024 to +1024
Z (Zero bias): 0 to 1024
Engineering Units: optional documentation field to describe the
measurement units, such as kg, liter, or psi (8 characters maximum).
Low Range: real number that indicates low range of output in engineering
units. Value must be less than high range.
High Range: real number that indicates high range of output in
engineering units. Value must be greater than low range.
Value: integer between --32768 and +32767; specifies initial value of
variable.
Create unique status: X indicates that a separate integer will be
translated for an OSx (PCS) status attribute.
PLC Address: there are three controller addressing choices: Automatic,
User Assigned, and None. Automatic addressing is the default.
Automatic: APT automatically assigns the controller address.
User Assigned: Allows the user to specify a controller address.
None: No controller address is assigned. (This is primarily
intended for support of OSx non-networked tags.)
Reserved address: controller address you specify for the declaration, e.g.,
%V19 or %K19 (if constant) for a Series 505 controller, and %FW19 or
%DBn:DW19 for S5. The types of Series 505 memory available for this
declaration are %V, %VMM, %VMS, %G, or %Gx (where x is the application
ID). The types of S5 memory available for this declaration are %FW, %SW,
%DBn:DW, and %DXn:DW (where n is the block number).
Table 8-3 lists the extensions and commands for the scaled integer. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL code for Series 505 controllers, or STL code for S5
controllers. The scaled integer and extensions can be used in a transition, in
the Math section of an SFC step, or in Math Language statements in a CFB.
Extensions Command
INCREMENT
Integer value that will be (INC)* Adds 1 to the current
translated to an OSx (PCS) value of the variable.
status attribute
attribute. You must
.STATUS DECREMENT
also write code in a Math
(DEC)* Subtracts 1 from the
block that changes the value
current value of the
of this extension.
variable.
* These integer commands execute only once each time that the program enters
the step. These commands work only on variables defined as an integer in the
Declaration Table. Note that the INCREMENT and DECREMENT commands use
less memory and execute faster than a math statement (i=i+1 or i=i--1). However,
for Series 505, the math step or CFB must be RLL code only.
Figure 8-3 illustrates the use of variables (int_1, int_2, int_3) in an SFC
step and transition.
int_1 := 10;
INCREMENT int_3;
MATH
S1 BEGIN
INIT
int_2 := int_3;
BODY
T1 int_3 >0 int_2 := int_2 * 6;
Boolean (B) A boolean value is either true (1) or false (0). When you select B as the
declaration type, this form appears:
Reserved address: controller address you specify for the declaration, e.g.,
%C100 for a Series 505 controller, and %F100.1 or %DBn:D100.1 for S5. The
type of Series 505 memory available for this declaration is %C. The types of
S5 memory available for this declaration are %F, %S, %DBn:D, and
%DXn:D (where n is the block number).
For Series 505 controllers, the retentive range is in the upper quarter of
each 1024 bits of C-Memory. All S5 boolean memory is retentive.
Table 8-4 lists the extension for boolean variables. There are no commands
associated with boolean variables. A boolean variable and its extension can
be used in a transition, in the Math section of an SFC step, or in Math
Language statements in a CFB.
Extensions Command
Integer value that will be translated
to an OSx (PCS) status attribute. You
.STATUS must also write code in a Math block There are no commands.
that changes the value of this
extension.
Figure 8-4 illustrates the use of variables (bool_1, bool_2, and bool_3) in an
SFC step and transition.
bool_1 := true;
bool_2 := false;
S1 bool_3:= bool_1 OR bool_2;
T1 bool_3
Real (R) A real value is a floating point number that can contain a decimal point
(3.0) or that can be expressed in scientific notation (1E12 or 1.0E12). When
you select R as the declaration type, this form appears:
Reserved address: controller address you specify for the declaration, e.g.,
%V19 or %K19 (if constant) for a Series 505 controller, and %FW19 or
%DBn:DW19 for S5. The types of Series 505 memory available for this
declaration are %V, %VMM, %VMS, %G, and %Gx (where x is the
application ID), and %K. The types of S5 memory available for this
declaration are %FD, %SD, %DBn:DD, and %DXn:DD (where n is the block
number).
NOTE: Do not enter the “.” after the %V19 for Series 505 controllers, even
though real numbers are expressed that way in the controller. %V19
automatically reserves %V19 and %V20. Be sure to reserve two V-Memory
locations in the Compiler Control File for each real number.
Do not enter the “.” after the %FD19 for S5 controllers since the “D”
indicates that the number is real. If you are using flag memory, reserve four
flag bytes for each real number. If you are using data word memory, reserve
two data words for each real number.
Table 8-5 lists the extensions for real declarations. There are no commands
for a real declaration. Real declarations and extensions can be used in a
transition, in the Math section of an SFC step, or in Math Language
statements in a CFB.
Extensions Command
Integer value that will be translated
to a OSx (PCS) status attribute. You
.STATUS must also write code in a Math block There are no commands.
that changes the value of this
extension.
Figure 8-5 illustrates the use of variables (real_1, real_2, and real_3) in an
SFC step.
real_1 := 10.0;
MATH
BEGIN
INIT
real_2 := real_3;
BODY
S1 real_3 := real_3 *10.0;
bool_1 := real_3 > 250.0;
T1 bool_1
APT Flag (F) An APT flag value is either on (1 or true) or off (0 or false). When you select
F as the declaration type, the form below appears.
APT flags differ from boolean variables. All references to an APT flag are
logically connected, and the APT flag state is set in one place in the
compiled program. References to a boolean variable can appear any number
of places in the compiled code.
Reserved address: controller address you specify for the declaration, e.g.,
%C100 for a Series 505 controller, and %F100.1 or %DBn:D100.0 for S5. The
type of Series 505 memory available for this declaration is %C. The types of
S5 memory available for this declaration are %F, %S, %DBn:D, and
%DXn:D (where n is the block number).
For Series 505 controllers, the retentive range is in the upper quarter of
each 1024 bits of C-Memory. All S5 boolean memory is retentive.
Table 8-6 lists the commands for the APT declaration flags. These
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL or STL code. APT flags can be used in a
transition, in the Math section of an SFC step, or in Math Language
statements in a CFB. When used in an assignment statement, APT flags
can only be used on the right side of the assignment.
Command Action
Sets APT flag value to on (true) when the SFC step is active
LATCH or the CFB is enabled. Flag remains on, even if the step or
CFB is disabled, until a CLEAR sets it to off (false).
Sets APT flag value to on (true) only as long as the SFC step
is active or the CFB is enabled; flag value is off (false) when
ON
the step or CFB is disabled. ON should not be used in
Sampled or Event CFBs.
Sets APT flag value to off (false) when the SFC step or CFB
is enabled. Flag remains off, even if the step or CFB is
CLEAR
disabled, until a LATCH or ON sets it to on. CLEAR takes
precedence over ON or LATCH.
The APT flag commands are identical to the Math procedures LATCH, ON,
and CLEAR.
For Series 505 controllers, APT flag procedures are RLL-only and cannot be
used in the associated math text for CFBs such as the PID or Analog Alarm.
S5 controllers can use APT flag procedures in associated math.
Do not assign an initial value to an APT flag when you intend to use
the APT flag only with an ON procedure. The value of the APT flag is
always zero outside the step or CFB in which the ON procedure is
located.
An example of how APT flags are used in a program is shown in Figure 8-6.
Figure 8-6 shows the values and use of APT flag variables (flag_1 and
flag_2) in SFC steps and transitions.
T1 flag_1
{flag_1 is false}
S2 {flag_2 is true}
T2 flag_2
T3 flag_1
{flag_1 is true}
S4 {flag_2 is true}
T4 flag_2
Text (T) A text variable is a string variable that can contain characters. The text
variable can be 1, 2, or 3 fields long. Each field can handle up to 30
characters: the longest text variable can contain 90 characters. Each field
requires 15 memory locations.
The text variable exists primarily for OSx (PCS), so that APT can have a
match with the OSx text tags. When you select text as the declaration type,
the following form appears:
Reserved address: controller address you specify for the declaration, e.g.,
%V19 or %K19 (if constant) for a Series 505 controller, or %DBn:DW19 for
S5. For each text field, you must allocate 15 memory locations in the
Compiler Control File if Series 505 V- or K-Memory is used. You must
allocate 30 memory locations for each text field if S5 flag memory is used.
The types of Series 505 memory available for this declaration are %V,
%VMM, %VMS, %G, %Gx (where x is the application ID), and %K. The
types of S5 memory available for this declarations are %DBn:DW, and
%DXn:DW(where n is the block number).
Table 8-7 lists the extensions available for the text declaration. The text
declaration and its extensions can be used in the Math section of an SFC
step or in Math language statements in a CFB, but not in a transition.
Extensions Command
.TEXT1 30 characters of text
.TEXT2 30 characters of text There are no commands.
.TEXT3 30 characters of text
Note: The .status extension is not available for text tags.
The text variable exists in APT so that you can configure an OSx (PCS) text
tag. Only simple assignments can be done with text variables.
You can assign character strings to text variables only by using the
declaration table.
You can reassign one text variable to another text variable if they have
the same number of text fields. A statement such as alarm_1 := alarm_2;
is permitted, as long as alarm_1 and alarm_2 have the same number of
text fields assigned to them.
alarm_1[1] := alarm_2[2];
or
alarm_1.text1 := alarm_2.text2;
NOTE: You cannot use expressions as indices for text fields. To specify a
text field, use either the appropriate integer value, enclosed in brackets, or
else the correct extension, as shown above.
Figure 8-7 illustrates the use of text variables (alarm_1, alarm_2, alarm_3)
in an SFC step. Notice that you can either assign the entire text variable to
another text variable, or else assign individual fields selectively.
T1 high_alarm
alarm_2 := alarm_1;
alarm_3.text1 := alarm_2.text2;
S1 alarm_3[2] := alarm_1[3];
8.3 Arrays
Using Arrays An array is an indexed collection of values that you can reference as a whole
or as individual elements.
For Series 505 controllers, the index in a boolean array can be either a
literal value or an integer variable. For S5 controllers, the index in a
boolean array can only be a literal value. Some Series 505 controllers
support indexing arrays with expressions. S5 controllers do not support
indexing boolean arrays with expressions. For Series 505 controllers, you
can index a boolean element with an expression or an integer variable, such
as [I42], only in SFPGM and only if the controller release supports this
SFPGM operation. Refer to Table 1-9, in Chapter 1, for features specific to
the controller release.
For both Series 505 and S5 controllers, the index in a real or integer array
can be a literal value, an expression or an integer variable. For Series 505
controllers, if you use an expression or integer variable for the index of a
real or integer array, then calculations on the array are done in SFPGM or
RLL, based on the firmware of the controller. Refer to Table 1-9, in
Chapter 1, for features specific to the controller release.
The index in a text array must be a literal value (1,2,3, etc.). A text array
cannot use an integer variable or an expression as an index.
When you create user-defined subroutines, do not use an expression for the
index of an array as a parameter; use a variable instead. For Series 505
controllers, you can store the intermediate results of an expression in a
controller T-Memory location before calling the subroutine (%Tx, where
x = 10--16). For S5 controllers, you can store the intermediate result of an
expression in a temporary variable before calling the subroutine.
Figure 8-8 illustrates the use of an array (iarr_1) in an SFC step and
transition.
Integer array
iarr_1[1] = 0
T1 iarr_1[1] = 10
! WARNING
Programs generated by APT do not check the upper/lower limits of an array. It is
possible to index an array out of its configured boundaries.
Indexing outside the boundaries of an array may cause your application to
execute in an unpredictable manner that could result in death or serious injury
and/or property damage.
Take care to design your APT program in a manner that makes it impossible to
index outside of array boundaries.
Arrays (continued)
Integer Array (IA) An integer array is an indexed collection of integers. When you select IA as
the declaration type, the form below appears:
To specify values in the array, press F10 . If you specify 7 as the number of
elements in the array, the dialogue window below appears:
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
7 0
Arrays (continued)
Boolean Array (BA) A boolean array is an indexed collection of boolean values that are either
true or false. When you select BA as the declaration type, the form below
appears:
For instance, if you have a boolean array of 1024 elements, you need to
reserve (768*8) + 1024 = 7168 for the 545, 555, and the 575. For the 560T
and the 565P, you need to reserve (768*(number of RCC cards*2)) + 1024. In
this case, your reserved C-Memory address would be %C10241.
On the 560 and 565, non-retentive boolean arrays larger than 768 cannot be
given a reserved address, but an automatic address can be assigned, which
will be given an overflow C-Memory address.
To specify values in the array, press F10 . If you specified 6 as the number
of elements in the array, the dialogue window below would appear:
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
Arrays (continued)
DI10 Array (IX) A DI10 array is a boolean array with a length of ten that is translated to
OSx (PCS) as a DI10 tag type.
To specify values in the array, press F10 and the dialogue window below
appears:
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
Arrays (continued)
DO10 Array (DX) A DO10 array is a boolean array with a length of ten that is translated to
OSx (PCS) as a DO10 tag type.
To specify values in the array, press F10 and the dialogue window below
appears:
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
Arrays (continued)
Real Array (RA) A real array is an indexed collection of real, or floating point, values. When
you select RA as the declaration type, the form below appears:
NOTE: For Series 505 controllers, do not enter the “.” after the %V19, even
though real numbers are expressed that way in the controller. %V19 will
reserve %V19 and %V20. Be sure to reserve two V locations in the Compiler
Control File for each real number.
Do not enter the “.” after the %DD19 (although MAITT and Debug require it
when you use these utilities). %DBn:DD19 reserves %DW19 and %DW20.
Be sure to reserve two data words in the Compiler Control File for each real
number.
To specify values in the array, press F10 . If you specify 7 as the number of
elements in the array, the dialogue window below appears:
Index Value
1 0.0
2 0.0
3 0.0
4 0.0
5 0.0
6 0.0
7 0.0
Arrays (continued)
Sequence Array A sequence array is a special array of integers that you can use for sequence
(SA) control. When you select SA as the declaration type, the form below
appears:
To specify values in the array, press F10 . If you specify 7 as the number of
elements in the array, the dialogue window below appears:
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
7 0
NOTE: For Series 505 controllers, ensure that the end of your sequence
array does not exceed memory location V32767, whether the address is
automatic or user-assigned. The controller generates an error with the RLL
MWFT instruction when you use V-memory locations greater than 32767. If
you are using automatic addressing, switch to user-assigned addressing and
reserve enough V-memory to store the sequence array. If you are using
user-assigned addressing, put your sequence array in lower V-memory.
Arrays (continued)
Table 8-8 lists the extensions and commands for the sequence array. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL or STL code. Elements can be used in a transition,
in the Math section of an SFC step, or in Math Language statements in a
CFB.
Extensions Command
Integer value that indicates current RESET1 Sets pointer to
.PTR
position in the array. zero.
Integer value that indicates one ADVANCE1 Moves pointer to
.PNTR greater than the current position in next element and
the array. puts value in .IOUT.
.IOUT Integer value advanced from array.
Boolean that indicates that the
.EMPTY pointer has reached last element in
the array.
1 These sequence array commands execute only once each time that the
program enters the step. These commands work only on variables defined as
a sequence array in the Declaration Table.
After a reset, the .PNTR extension contains the value of the starting address
of the array. After each advance of the array, this variable is incremented by
one. You can change the value of the .PNTR extension as long as the value
remains inside the correct range of addresses allocated for the array. The
value of the .PNTR extension is one greater than the value of the .PTR
extension.
Figure 8-9 illustrates the use of a sequence array (sarr_1) in SFC steps and
transitions. Only one ADVANCE command should be placed in any one step,
and ADVANCE commands should not appear in consecutive steps. In order
to advance in subsequent steps, you must put steps between each advance
step.
Sequence array
sarr_1[1] = 20
sarr_1[2] = 14
sarr_1[3] = 6
RESET sarr_1; {sarr_1.ptr = 0}
S1 {sarr_1.empty = false}
T1 sarr_1.ptr = 0
S3
T3 true
ADVANCE sarr_1; {sarr_1.ptr = 2}
S4 {sarr_1.iout = 14}
T4 true
S5
T5 true
ADVANCE sarr_1; {sarr_1.ptr = 3}
S6 {sarr_1.iout = 6}
{sarr_1.empty = true}
T6 true
S7
T7 sarr_1.empty = true
Arrays (continued)
Shift Register Array A shift register array is a special array of integers that you can use to shift
(SR) the values in the array down 1 element and insert a value into the first
element. When you select SR as the declaration type, the form below
appears.
To specify values in the array, press F10 . If you specify 7 as the number of
elements in the array, the dialogue window below appears.
Index Value
1 0
2 0
3 0
4 0
5 0
6 0
7 0
Arrays (continued)
Table 8-9 lists the extensions and commands for the shift register array. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL or STL code. Elements can be used in a transition,
in the Math section of an SFC step, or in Math Language statements in a
CFB. An example of how to use a shift register array in an SFC is shown in
Figure 8-10.
Extensions Command
SHIFT1 Shift the values in the
Integer value that gets inserted in the first
array down 1 element and
.PV element in the array after a SHIFT (read-only
insert the .PV value into
integer).
the first element.
Becomes false to clear the shift register data.
The .RESET extension becomes true to indicate SET_RESET1 Ready the shift register.
.RESET 2 that the shift register array can be activated if CLEAR_RESET1 Clear the shift register
the .ENABL extension is set to true. (read/write data.
boolean).
Indicates the shift register array has been ENABLE1 Enable the shift register.
.ENABL
ENABL
activated (read/write boolean). DISABLE1 Disable the shift register.
1 These shift register array commands execute only once each time that the program enters the step.
These commands work only on variables defined as a shift register array in the Declaration Table.
2 The shift register needs to be set and enabled before it can shift data, i.e., .RESET extension and .ENABL
extension must be set to true with the SET_RESET and ENABLE commands.
Figure 8-10 illustrates the use of a shift register array (sarr_1) in SFC steps
and transitions. Only one SHIFT command should be placed in any one
step, and SHIFT commands should not appear in consecutive steps.
When you are finished with the shift register, you can clear it, using the
CLEAR_RESET shift_register_name command. This sets all values in the
shift register array to zero.
S2 SHIFT sarr_1;
T2 sarr_1[1] = 10
S3
T3 true
SHIFT sarr_1;
S4 sarr_1.PV := 5;
T4 sarr_1[3] = 20
S5
Shift register array
sarr_1[1] = 5
sarr_1[2] = 10
sarr_1[3] = 20
Arrays (continued)
Text Array (TA) A text array is an array of text variables. Text variables contain up to 30
characters. Each element in the text array is 30 characters long and
requires 15 integer memory locations.
Text arrays are primarily for OSx (PCS) tag translate. When you select TA
as the declaration type, the form below appears.
To specify values in the array, press F10 . If you specify 6 as the number of
elements in the array, the dialogue window below appears.
Index Value
1
2
3
4
5
6
The text array is primarily used to configure OSx (PCS) text tags. Several
rules apply when you use text arrays in APT:
You can assign the character string to the text variable either on the
declaration form or through an assignment statement in a Math
section.
NOTE: You cannot assign an element in the text array to a string that is
enclosed in quotes, as in alarm [1] := ”High Alarm”. You must assign the string
either in the declaration table or in an assignment statement to another
text array.
You can reassign a text array to another text array if they have the
same number of array elements. A statement such as alarm_1:=alarm_2;
is allowed as long as alarm_1 and alarm_2 have the same number of
array elements.
You can only index an element in a text array by using a literal value,
such as:
alarm_1[1] := alarm_2[4];
8.4 Counters
Using Counters You can use a counter inside an SFC step or in the Math section of an SFC
(CT) step or CFB. The counter counts up from 0 to a preset value every time the
input boolean goes from false to true. The preset value can be assigned from
the program or when you define the counter in the Declaration Table.
A counter can be controlled with the .INPUT and .ENABL extensions from
Math assignment statements in an SFC step or in a Math or interlock CFB.
When the .INPUT bit transitions from false to true, the current counter
count (.TCC) is incremented by one.
When the .TCC count equals the .TCP count, the .COUT becomes true.
To reset the counter, set the .ENABL bit to false. The .COUT becomes
false, and the .TCC resets to zero.
When you select CT as the declaration type, the form below appears.
Reserved address: (Series 505 only) starting controller address you specify
for the declaration, e.g., %TC2. The type of Series 505 memory available for
this declaration is %TC.
Counters (continued)
Table 8-10 lists the extensions for the counter. Extensions can be used in a
transition, in the Math section of an SFC step, or in Math Language
statements in a CFB.
Extensions Command
.TCC Current counter count (read-only integer).
.TCP Preset counter count (read/write integer).
.ENABL Indicates counter has been activated (read/write boolean).
.INPUT
Variable that increments the current counter count every There are no commands.
time the value goes from false to true (read/write boolean).
Becomes true when the current count equals the preset.
.COUT The .COUT extension is false when the current count does
not equal the preset (read-only boolean).
Figure 8-11 shows examples that illustrate how to use counter commands
and extensions.
SFC
T1 true
S2 counter.ENABL := true;
counter.INPUT := pulse_input;
T2 counter.COUT
ALARM_TIMER
8.5 Timers
Using Timers The fast and slow timers allow you to set up a delay time inside an SFC step
or in the Math section of an SFC step or CFB. The timers count down to 0
from a preset value. The preset value can be assigned from the program or
when you define the timer in the Declaration Table.
The DELAY command causes the timer to begin counting down as soon
as the SFC step becomes active. The timer automatically resets the
current value to the preset value and sets .TOUT to false when the
program exits that step, or the Math section stops executing.
The DELAY command can also be used in a CFB that is RLL only.
A timer can also be controlled with the .RESET and .ENABL extensions from
Math assignment statements in an SFC step or in a Math or interlock CFB
To start or restart the timer, set both the .RESET and .ENABL bits to
true.
To pause the timer, keep the .RESET bit true and change the .ENABL bit
to false. To resume timing, set the .ENABL bit back to true.
To reset the timer, set the .RESET bit to false. It does not matter which
state the .ENABL bit is in.
NOTE: For S5 controllers, APT uses the S5 timers T0--T255. They operate
as On Delay timers.
Figure 8-12 shows examples that illustrate how to use timer commands and
extensions.
SFC
T1 true
S2 DELAY timer_1;
timer_2.TCP := 2000;
T2 timer_1.TOUT
S3 timer_2.ENABL := true;
timer_2.RESET := NOT(timer_2.TOUT);
T3 timer_2.TOUT
if (alarm_cond4)then
delay timer4;
endif;
alarm4 := timer4.TOUT;
ALARM_TIMER
NOTE: Be consistent when you access a timer; that is, do not use the
DELAY command and write to .ENABL and .RESET for the same timer.
Timers (continued)
Fast Timer (FT) The fast timer counts down from the preset to 0 at a rate of .001 seconds.
When you select FT as the declaration type, the form below appears:
Table 8-11 lists the extensions and commands for the fast timer. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL or STL code. Extensions can be used in a
transition, in the Math section of an SFC step, or in Math Language
statements in a CFB.
Extensions Command
.TCC Current timer count (read-only integer). DELAY* Starts timer.
.TCP Preset counter time: 0.001 ⌠ value (read/write integer).
.ENABL Indicates timer has been activated (read/write boolean).
Becomes false to indicate that the current count has been
.RESET
reset to the preset value. The .RESET extension becomes
true to indicate that the timer can be activated if the
.ENABL extension is set to true (read/write boolean).
Becomes true when the current count equals zero. The
.TOUT .TOUT extension is false when the current count does not
equal zero (read-only boolean).
* This timer command executes only once each time that the program enters the step. This command
works only on variables defined as a timer in the Declaration Table.
Timers (continued)
Slow Timer (ST) The slow timer counts down from the preset to 0 at a rate of .1 seconds.
When you select ST as the declaration type, the form below appears:
Table 8-12 lists the extensions and commands for the slow timer. The
commands can be used in the parallel section of an SFC step or a Math
block that generates RLL or STL code. Extensions can be used in a
transition, in the Math section of an SFC step, or in Math Language
statements in a CFB.
Extensions Command
.TCC Current timer count (read-only integer). DELAY* Starts timer.
.TCP Preset counter time: 0.1 ⌠ value (read/write integer).
.ENABL Indicates timer has been activated (read/write boolean).
Becomes false to indicate that the current count has been
.RESET
reset to the preset value. The .RESET extension becomes
true to indicate that the timer can be activated if the
.ENABL extension is set to true. (read/write boolean).
Becomes true when the current count equals zero. The
.TOUT .TOUT extension is false when the current count does not
equal zero (read-only boolean).
* This timer command executes only once each time that the program enters the step. This command
works only on variables defined as a timer in the Declaration Table.
Overview An APT recipe serves as a storage place for a set of related values that have
different data types. You develop an APT recipe in two basic steps:
Recipe Template The recipe template contains the master list of all ingredients and control
information that you need to make a set of similar products. Because a
Recipe Template is a master list, you can include all of the ingredients for
making variations of a similar product in one template.
Recipe Usage Table A recipe that you name in the Recipe Usage Table automatically contains
the same elements as the template that you specify. The default values of
these elements is zero. You can edit the recipe and assign initial values to
each element; elements can be assigned a value of zero.
For example, the recipe for a normal wash cycle shown in Figure 9-1 assigns
a value of warm for temperature setpoint, 1.5 minutes for wash time,
1 minute for rinse time, etc. The recipe for the P_Press wash cycle assigns a
value of cold for temperature setpoint, 0.75 minutes for wash time, and
1.0 minutes for rinse time.
Program Level
OP_PARMS Recipe Template
Template Editor
NUM_RUNS I Number of load to wash
FILL_SP I fill cycle setpoint high/low
TEMP_SETPT I wash/rinse cycle temp setpoint hot/cold
WASH_TIME1 R agitator wash time period min
RINSE_TIME1 R agitator rinse time period min
W_SPIN_TIME1 R wash cycle spin time min
R_SPIN_TIME1 R rinse cycle spin time min
W_SOAK_TIME1 R wash cycle soak time min
Program Level
Recipe Usage Table
Recipe Editor
D D_DICT data definitions
BR OP_PARMS parameters for wash
P_PRESS OP_PARMS permanent press recipe
NORM_CYCLE OP_PARMS normal wash cycle
You can define recipe elements at the Program Level, reserve a space
for the recipe at the Unit Level, and then use a command in an SFC
step to move the values defined at the Program Level into the unit
recipe.
You can edit a recipe at the Unit Level and access the recipe elements
with no additional steps. This allows you to store a set of values for use
in a process that does not change.
Downloading from The UNLOCK or CLEAR command makes the recipe available for data. The
OSx (PCS) SELECT command moves the data into the recipe. Figure 9-2 shows how to
use the handshaking bits in APT. First, use the CLEAR command to clear
the recipe; this sets the extensions to zero. Then, use the SELECT command
to select a recipe and download it to the controller. When the download is
complete, the .INUSE extension automatically goes to true, indicating that
the recipe is in the controller and is ready to process.
APT provides the following extensions that are specifically designed to work
with the OSx (PCS) recipe package to enable the handshaking and allow
recipes to be downloaded from OSx to APT.
The .INUSE extension indicates when the recipe is available. OSx can
only download a recipe when the recipe is not in use, and
.INUSE = false.
The recipe data is ready when the .DRDY extension is true. The .INUSE
extension must also equal true, indicating that the recipe is in use, and
.DSTBL must be true, indicating that the data is stable. See Figure 9-2.
.DSTBL
.DRDY Processing
recipe
OSx can Recipe data is
download downloading to
recipe controller from
OSx
Clear Recipe Clear Recipe Second download
.DRDY is true when is complete
download is complete
Select Recipe Select new recipe
OSx processing OSx initiates new
initiates recipe recipe
download
APT also provides the ability to scale recipes from OSx (PCS), select a
specific recipe from OSx, and to put a recipe on hold indefinitely from OSx.
APT recipes can be used as recipes or data structures. APT recipes can
handle different data types with a common name. Data structures can be
marked for tag translate, but they do not get the recipe extensions for OSx
handshaking.
Selecting a Recipe APT allows you to move recipes from one area of the hierarchy to another.
For example, you can copy a Program Level recipe to the Unit Level, from
one Program Level recipe to another, or from a Unit Level recipe to the
Program Level.
The destination_recipe is the name of the recipe that you want to use in
your program. The source_recipe is the name of the recipe that you want to
copy.
recipe1 := recipe2;
Using Recipe You can reference the elements of the recipe in an assignment statement in
Elements either the parallel or math section of an SFC step, or in the math section of
a CFB. You can also use a recipe element as the input to a CFB.
To access values of elements in the recipe, you use the recipe name with the
element as an extension. For example, if the unit recipe name is WR (for
Working Recipe) and the elements are Num_runs, Fill_sp, and Wash_time1,
you reference these elements by: WR.num_runs, WR.fill_sp, and
WR.wash_time1.
You can assign values to recipe elements, or assign these elements to other
variables, or to extensions of other objects that you defined in the
Declaration Table:
WR.num_runs := 5;
Timer_Set := WR.wash_time1;
NOTE: For more efficient code assignments, use integers or real numbers
instead of boolean values in recipes.
Extensions
Command
(Read/Write Boolean)
.RTU Request to unlock. (F)1 UNLOCK/CLEAR Makes the recipe available for data.
SELECT Makes data from one recipe available to
.INUSE Data is in use.
another.
.DSTBL Data is stable.
.DRDY Data is ready for use.
.STATUS Recipe status.2
1 This boolean is an APT flag that is manipulated by the Math Procedures Latch, Clear, and On.
2 The boolean extension .INUSE and element 1 of the status boolean array .STATUS[1] are equivalent. The
boolean extension .DSTBL and element 2 of the status boolean array .STATUS[2] are also equivalent. For
example, you achieve the same results by changing the state of the .INUSE extension, or by writing to
.STATUS[1].
Example Figure 9-3 illustrates how recipes can be handled within an SFC. In this
example, you are waiting for the master recipe to receive the recipe data
from the operator station. When the recipe data is received, it sets the
master recipe .DRDY to true. APT then moves the master recipe into the
slave recipe and clears the master recipe (which sets master recipe .DRDY
to false, as is shown in Figure 9-2).
.. mster_recipe.DRDY
. {mster_recipe.INUSE and mster_recipe.DSTBL are set true by the
S5 operator station. APT sets mster_recipe.DRDY to true.}
Creating a Recipe Recipe Templates reside at the Program Content level of the hierarchy.
Template Each APT program can have more than one Recipe Template, as is shown in
Figure 9-4.
A Recipe Template is the source for all Program Content and Unit Content
recipes because it contains the master list of all elements necessary for
making a specific product. The list can include the names of ingredients as
well as other processing information such as time, temperature, etc.
Program Directory
RECIPE TEMPLATES
SEQUENCE [ ] Sequence recipe step define
OP_PARMS [ ] Operational parameters
1. Add template to
Program Directory.
2. Edit template and
define elements.
2
Program Level
SEQUENCE Recipe Template
Template Editor
STEP1 I first step
STEP2 I second step
STEP3 I
2
STEP4 I
STEP5 I Program Level
OP_PARMS Recipe Template
Template Editor
NUM_RUNS I Number of load to wash
FILL_SP I fill cycle setpoint high/low
TEMP_SETPT I wash/rinse cycle temp setpoint hot/cold
WASH_TIME1 R agitator wash time period min
RINSE_TIME1 R agitator rinse time period min
Element Name: symbolic name that identifies the element (12 characters
maximum). Do not use the following extension names, which are created by APT for
recipe control: .INUSE, .STATUS, .DRDY, .RTU, and .DSTBL.
Type: code that represents one of the following: B (boolean), R (real), I (integer), BA
(boolean array), IA (integer array), or RA (real array).
Description: optional description of the template element (30 characters
maximum).
Engineering units: unit of measurement associated with the element (optional, for
description only in APT).
Creating a Program A Recipe Usage Table is available at both the Program Content Level and
or Unit Recipe the Unit Content Level of the hierarchy. The Recipe Usage Tables contain
names of recipes and values for the elements defined in the template.
Recipes in the Recipe Usage Table can have the same or different template
names, e.g., OP_PARMS, shown in Figure 9-5, and OP_PARMS and
SEQUENCE in Figure 9-6. Each recipe in the Unit Content Recipe Usage
Table can have either the same or a different recipe name, e.g., WR and SR,
shown in Figure 9-6. The same names are possible because they are in
different units.
Program Level
Recipe Usage Table
Recipe Editor
D D_DICT data definitions
BR OP_PARMS parameters for wash
P_PRESS OP_PARMS permanent press recipe
NORM_CYCLE OP_PARMS normal wash cycle
Unit Level
WSIM Directory
TABLES
IO [ ] I/O symbolic name table
DEVICE [ ] Device definition table
DECLARE [ ] Declaration table
RECIPE [ ] Recipe usage table
SFCs
CFCs
SAVED REPORTS
Editing Recipe You must define a Recipe Template before you define a recipe in the Recipe
Elements Usage Table. When you edit the Recipe Usage Table, specify the name of a
recipe and the name of a template, and choose whether the recipe is
constant or a data structure only. The scaling parameters, scale factor, hold
request, and the controller request are primarily for OSx (PCS) use.
Then, edit the recipe elements in order to assign initial values in the Recipe
Usage Table. You can also assign values to recipe elements with math
blocks, as is described on page 9-6.
Name: Template: S
Description:
Constant: [ ]
Data Structure Only: [ ]
Scale Factor: 1.0
Scale Low: 0.0
Scale High: 100.0
Create Unique Scale Factor: [ ]
Create Unique Hold Request: [ ]
Create Unique PLC Request: [ ]
PLC Address: Automatic User Assigned
Reserved Address:
When you edit the recipe elements, the table appears as shown in
Figure 9-7. All the information that you specified in the template is
automatically placed in the recipe, and you can specify the appropriate
values for each element. Note that you can only change the initial value in
the Value field if you have already marked the recipe for OSx (PCS) tag
translation.
The value that you assign must correspond to the engineering units, value
type, and range for each element. If the value is a boolean value, you must
specify a 1 for true or a 0 for false.
Recipes are first loaded with their values, and then implemented in APT to
produce the desired product.
Values can be loaded into the recipe by either downloading the recipes from
an operator station, such as OSx (PCS), or by loading the values directly
from APT. Loading the values directly from APT can be done in math blocks
in CFCs or SFCs, or by filling in the values in the recipe usage table.
Downloading from OSx is accomplished by manipulating the handshaking
bits, as is shown in Figure 9-2.
Once the recipes are in place, they are implemented in the controller by
using either SFCs or sequence arrays. To use an SFC or a sequence array,
you invoke the recipe step-by-step. First, you load the recipe_elements into
the appropriate places (that is, in setpoints, timer and counter presets, etc.)
using math statements. Then, you wait for a condition to come true before
you move to the next step. You continue to sequence through the steps until
your process is complete. These techniques are discussed in the SIMATIC
APT Applications Manual.
Availability The user-defined subroutines are available for both controller families; the
system-activated subroutines are only available for S5 controllers.
Prerequisites Before you attempt to write a subroutine, you must be familiar with the
APT Math language rules. If you have a Series 505 controller, you must
know the differences between RLL- and SF program-generated code. If you
have an S5 controller, read the STL syntax information provided in the
appendix on “Inline Assembly Code for S5,” located in the SIMATIC APT
Programming Reference (Graphics/Math) Manual.
System-activated If you have an S5 controller, you can create a subroutine, using the
Subroutine Subroutine Table Editor, that programs an OB between OB1--OB39. You can
only program one OB per subroutine, and the subroutine must contain the
complete code for the OB; you cannot access one OB from several
subroutines. To write the code for your interrupt OB, you can use either the
Math language or STL. If you use STL, you are only permitted to issue a
jump command to an FB that is written in STL and downloaded with
STEP 5.
Using the When you create a user-defined subroutine, use the form shown in
Subroutine Form Figure 10-1. The parameters for a user-defined subroutine are optional. You
can pass parameters as input-only, output-only, or input/output.
SUBROUTINE
? CTLs OPTs ESC
F1 F2 F3
PLC Address: There are two controller addressing choices: Automatic and User
Assigned. Automatic addressing is the default.
Parameter Type: Type of parameter: Integer (I), Real (R), Boolean (B), APT Flag
(F), Integer Array (IA), Real Array (RA), Boolean Array (BA).
Math in a After entering the optional parameters, you are ready to write the math for
User-defined your user-defined subroutine. The math text is comprised of three sections:
Subroutine the optional code specifier (PRAGMA); declarations; and Math statements.
Figure 10-2 shows these three sections.
The structure of the user-defined subroutine is the same as for any math
block, except that there can be no Init or Body sections. PRAGMA, the
optional code specifier section, is only available for Series 505 controllers.
The rules for Math language apply to subroutine math. However, the
subroutine cannot have an Init or Body section.
Do not use any of the APT flag procedures (Latch, On, or Clear). Use
APT flags only on the right of an assignment statement or within an IF
expression.
The local declarations for your subroutine follow the same rules as local
declarations in the Math language.
Your controller type also influences the way you must design a user-defined
subroutine. See the following pages for some Series 505-specific design
guidelines.
For Series 505 controllers, the code that you enter in your user-defined
subroutine determines whether the subroutine can be called from RLL or
SFPGM math blocks. Code not specific to RLL or SF program blocks can be
called from both types of math blocks. For a discussion of RLL-specific and
SF program-specific math blocks, refer to the Math Language Overview
chapter in the SIMATIC APT Programming Reference (Graphics/Math)
Manual. If you have an S5 controller, the considerations discussed below do
not apply, because APT compiles all of your code in STL.
RLL-only APT generates an RLL-only subroutine if you do any of the following in your
Subroutine (Series code:
505 only)
Use RLL-only functions or procedures, and include the optional code
specifier PRAGMA (“RLL”).
Note that APT generates more overhead code for a subroutine that is RLL
specific. To handle the input/output parameters in an RLL subroutine, APT
generates code to do the following tasks:
Example of a The following example uses a user-defined subroutine to calculate the level
User-defined of liquid in a tank. If you had several tanks whose levels were being
Subroutine determined in a similar manner, then this subroutine would also allow you
to calculate the level of the liquid in each tank.
This example uses two pressure transmitters to calculate the level and the
density of the fluid in the tank.
The first three parameters are inputs: LT_TANK_A and LT_TANK_C are
the two pressures that reflect the level of the fluid in the tank, and
CONSTNTS is an array of three. SPEC_GRAV and LVL_TANK are the
outputs from the subroutine.
The values 50, 1 and 100 are sent in the array called CNSTNTS, because
they are the constants for this tank.
LVL_TANK := 0.0;
IF (SPEC_GRAV > 0.0) THEN
LVL_TANK := (LT_TANK_A / SPEC_GRAV) + CONSTNTS[2];
ENDIF;
All of the variables are declared at the global level. A math block calls the
subroutine when it is enabled. The math block is as follows:
begin
TANK_LVL(LT_TANK_A, LT_TANK_C,CONSTNTS, SPEC_GRAV, LVL_TANK);
You can use the subroutine to calculate the density and level in several
tanks, instead of writing CFBs to do the same calculation.
Subroutine Form System-activated subroutines are only available for S5 controllers. The
system-activated subroutine allows you to program the code for OB1--OB39.
You can use either the APT Math language or STL. The code executes when
the OB is called; in other words, when the interrupt or event occurs.
You can program only one OB in each subroutine, and the subroutine must
contain all the code for the given OB. For example, if you have several tasks
for OB13 (100msec interrupt) to perform, you must put all the tasks in the
same subroutine.
Figure 10-4 shows the form you use to program the system-activated
subroutine. To indicate that you wish the subroutine to be system-activated,
rather than user-defined, you select the User Assigned option. You also need
to place the number of the OB that your subroutine accesses in the
Reserved Address field. Since it is a reserved address, be sure to enter the
percent (%) sign before the OB number.
SUBROUTINE
? CTLs OPTs ESC
F1 F2 F3
PLC Address: There are two controller addressing choices: Automatic and User
Assigned. Automatic addressing is the default.
You can program the OB that is used by your subroutine entirely in the APT
Math language; or, if you like, you can jump from the OB to an FB that you
have programmed from STEP 5 using STL code.
Design Guidelines Follow these rules as you design your system-activated subroutine.
The rules for Math language apply to subroutine math. However, the
subroutine cannot have an Init or Body section.
Do not use any of the APT flag procedures (Latch, On, or Clear). Use
APT flags only on the right of an assignment statement or within an IF
expression.
The local declarations for your subroutine follow the same rules as local
declarations in the Math language. However, if you want to use a local
declaration in an IN_ASM statement, you must reference it according
to the following syntax: Subroutine_name.NNL.Declaration_name
! WARNING
System-activated subroutines execute automatically when the interrupt
condition or event occurs.
Trying to call a system-activated subroutine from within your APT program
could cause the controller to behave unpredictably, which could result in death
or serious injury to personnel, and/or damage to equipment.
Do not call system-activated subroutines from within APT.
When the interrupt occurs for the following OBs, the CPU executes the
interrupt and returns to the point in the code where it was before the
interrupt occurred.
CPU928B CPU948
OBs 2 through 19 OBs 2 through 19
OBs 23 through 27 OBs 23 through 34
OBs 29 through 35 OB 37
Using Math When you program your OB exclusively in the APT Math language, the code
Statements in a is more readable, and the code is also automatically checked by the
System-activated compiler. You can program using all of the Math language statements,
Subroutine functions, and procedures with the exception of the procedures noted earlier
in this section, under “Design Guidelines”: INTERPOLATE,
LOOKUP_TABLE, LEAD_LAG, SCALE, and UNSCALE.
INTEGER: INT5;
BEGIN
INT5 := 100;
{Math statements}
.
.
.
IN_ASM [*
{STL statements (L, JU, C, and A are permitted in IN_ASM)}
{This is where your OB invokes the FB you have programmed in STL}
.
.
.
{This STL statement references INT5, the local variable of the subroutine}
L SUB1.NNL.INT5
*];
{More Math statements, including more IN_ASM statements}
.
.
.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-1
A.1 Device Extensions and Table Options
Availability If you have a Series 505 controller, your APT devices generate RLL code. If
you have an S5 controller, your APT devices generate STL code. The RLL
code presented in this appendix is for Series 505 only.
Section A.1 lists the various device extensions in tabular form, according to
the options that can be chosen in the device table. For each device option,
reference is made to the figure in Section A.2 that illustrates the
appropriate RLL code.
Table A-1 lists the options used in the tables of this section. Notice that the
definition is the same as the field label used in the device table. For
example, the code N.O. FDBK [X] means that an X was placed in the brackets
adjacent to the Normally open feedback field for a device.
A-2 Device RLL Code for Series 505 APT Programming Reference (Tables)
VND/VSN
For each example, the Uninterruptible Power Supply (UPS) option was not
selected in the compile control table. When the UPS option is selected, the
.PFAIL contact does not appear. The .PFAIL contact is triggered by the
pgm_name.PWRFL extension.
If the Ignore Feedback Override option is selected, the .OVRDx logic is not
generated.
VND The extensions and options for the VND device are listed in Table A-2 and
illustrated in the figures specified in the table.
VSN The extensions and options for the VSN device are listed in Table A-3 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-3
VSS
VSS The extensions and options for the VSS device are listed in Table A-4 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-4 Device RLL Code for Series 505 APT Programming Reference (Tables)
VSS
APT Programming Reference (Tables) Device RLL Code for Series 505 A-5
VSD
VSD The extensions and options for the VSD device are listed in Table A-5 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-6 Device RLL Code for Series 505 APT Programming Reference (Tables)
VSD
EO Figure A-65
EC Figure A-66
EO, N.O. FDBK [X] Figure A-67
EC, N.O. FDBK [X] Figure A-68
EO, IGN FDBK OVRD [X] Figure A-69
CLSD EC, IGN FDBK OVRD [X] Figure A-70
EC, Clear FTx [X] Figure A-71
EO, N.O. FDBK [X], IGN FDBK OVRD [X] Figure A-72
EC, N.O. FDBK [X], IGN FDBK OVRD [X] Figure A-73
EC, N.O. FDBK [X],
Figure A-74
IGN FDBK OVRD [X], Clear FTx [X]
EO Figure A-46
TRVL
EC Figure A-47
FAILD Figure A-75
Figure A-76
FTO
IGN FDBK OVRD [X] Figure A-77
Figure A-78
FTC
IGN FDBK OVRD [X] Figure A-79
EO/EC Figure A-80
CMMD EO, Clear FTx [X] Figure A-81
EC,Clear FTx [X] Figure A-82
Move image to
NO UPS Figure A-16
V-Memory
APT Programming Reference (Tables) Device RLL Code for Series 505 A-7
VDD
VDD The extensions and options for the VDD device are listed in Table A-6 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-8 Device RLL Code for Series 505 APT Programming Reference (Tables)
VMD
VMD The extensions and options for the VMD device are listed in Table A-7 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-9
BV1
BV1 The extensions and options for the BV1 device are listed in Table A-8 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-10 Device RLL Code for Series 505 APT Programming Reference (Tables)
BV2
BV2 The extensions and options for the BV2 device are listed in Table A-9 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-11
VUD/MSN
VUD The extensions and options for the VUD device are listed in Table A-10 and
illustrated in the figures specified in the table.
MSN The extensions and options for the MSN device are listed in Table A-11 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-12 Device RLL Code for Series 505 APT Programming Reference (Tables)
MSS
MSS The extensions and options for the MSS device are listed in Table A-12 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-13
MDN
MDN The extensions and options for the MDN device are listed in Table A-13 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-14 Device RLL Code for Series 505 APT Programming Reference (Tables)
MDS/MUD
MDS The extensions and options for the MDS device are listed in Table A-14 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
MUD The extensions and options for the MUD device are listed in Table A-15 and
illustrated in the figures specified in the table.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-15
RM1
RM1 The extensions and options for the RM1 device are listed in Table A-16 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-16 Device RLL Code for Series 505 APT Programming Reference (Tables)
RM2
RM2 The extensions and options for the RM2 device are listed in Table A-17 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-17
TS1
TS1 The extensions and options for the TS1 device are listed in Table A-18 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-18 Device RLL Code for Series 505 APT Programming Reference (Tables)
TS2
TS2 The extensions and options for the TS2 device are listed in Table A-19 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
APT Programming Reference (Tables) Device RLL Code for Series 505 A-19
CSD
CSD The extensions and options for the CSD device are listed in Table A-20 and
illustrated in the figures specified in the table. See Table A-1 for definitions
of the options.
A-20 Device RLL Code for Series 505 APT Programming Reference (Tables)
CSD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-21
CUD/Press
CUD The extensions and options for the CUD device are listed in Table A-21 and
illustrated in the figures specified in the table.
Press The extensions and options for the Press devices are exactly like the Valve
devices with different extensions. Refer to the Valve section for examples on
how the RLL looks for Presses.
A-22 Device RLL Code for Series 505 APT Programming Reference (Tables)
A.2 RLL for Devices
.OLS .OPND
.CLS .CLSD
.OLS .MOPEN
APT Programming Reference (Tables) Device RLL Code for Series 505 A-23
RLL for Devices (continued)
UNIT
.RTL .DSBLD .RTU .ENABL1 .LOCKD
.LOCKD
.RTO
A-24 Device RLL Code for Series 505 APT Programming Reference (Tables)
.CMMD .PFAIL .RTO .LOCKD .NRDY .CMMD
.RTC
.LOCKD JMP
.NRDY
.PFAIL
.CMMD .MOPEN
JMPE
APT Programming Reference (Tables) Device RLL Code for Series 505 A-25
RLL for Devices (continued)
.LOCKD JMP
.NRDY
.PFAIL
.CMMD .MOPEN
JMPE
TRUE .OPND
TMR
P= .OTCP
VALUE
.CMMD .RESET .PFAIL
A-26 Device RLL Code for Series 505 APT Programming Reference (Tables)
TRUE .OPND
TMR
P= .OTCP
VALUE
.CMMD .RESET .PFAIL
TRUE .CLSD
TMR
P= .CTCP
VALUE
.CMMD .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-27
RLL for Devices (continued)
TRUE .CLSD
TMR
P= .CTCP
VALUE
.CMMD .RESET .PFAIL
A-28 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OVRD .RESET .OVRD
.RTO
.RTC
APT Programming Reference (Tables) Device RLL Code for Series 505 A-29
RLL for Devices (continued)
.LOCKD JMP
.NRDY
.PFAIL
.OPENC .MOPEN
JMPE
.LOCKD JMP
.NRDY
.PFAIL
.OPENC .MOPEN
JMPE
A-30 Device RLL Code for Series 505 APT Programming Reference (Tables)
Open Time
expired
TRUE (O.T.E.)
TMR
P= .OTCP
VALUE
.OPENC .RESET .PFAIL
Open Time
expired
TRUE (O.T.E.)
TMR
P= .OTCP
VALUE
.OPENC .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-31
RLL for Devices (continued)
Closed Time
Expired
TRUE (C.T.E.)
TMR
P= .CTCP
VALUE
.OPENC .RESET .PFAIL
Closed Time
Expired
TRUE (C.T.E.)
TMR
P= .CTCP
VALUE
.OPENC .RESET .PFAIL
A-32 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OLS .OVRD .OPENC .OPND
Open Time
Expired
(O.T.E.) .OVRD
Open Time
Expired
(O.T.E.) .OVRD
Open Time
Expired
(O.T.E.) .OVRD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-33
RLL for Devices (continued)
Open Time
Expired
(O.T.E.) .OVRD
Open Time
Expired
(O.T.E.) .OVRD
A-34 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OLS .OPENC .OPND
Figure A-33 VSS: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
Figure A-34 VSS: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
(CLEAR CMMD ON FTO/FTC)
Figure A-35 VSS: OPND (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
Closed Time
Expired
(C.T.E.) .OVRD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-35
RLL for Devices (continued)
Closed Time
Expired
(C.T.E.) .OVRD
Close Time
Expired
(C.T.E.) .OVRD
Closed Time
Expired
(C.T.E.) .OVRD
A-36 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OLS .OPENC .CLSD
Closed Time
Expired
(C.T.E.) .OVRD
Figure A-43 VSS: CLSD (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
APT Programming Reference (Tables) Device RLL Code for Series 505 A-37
RLL for Devices (continued)
Figure A-44 VSS: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
Figure A-45 VSS: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
(CLEAR CMMD OF FTO/FTC)
Open Time
Expired
.OPENC .OPND (O.T.E.) .TRVL
Closed Time
Expired
.OPENC .CLSD (C.T.E.)
A-38 Device RLL Code for Series 505 APT Programming Reference (Tables)
Open Time
Expired
.OPENC .OPND (O.T.E.) .TRVL
Closed time
expired
.OPENC .CLSD (C.T.E.)
Open Time
Expired
(O.T.E.) .OPND .FTO
Closed Time
Expired
(C.T.E.) .CLSD .FTC
.OPENC .CMMD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-39
RLL for Devices (continued)
A-40 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OLS .OVRDO .CLS .OPENC .OPND
Open Time
Expired
(O.T.E.) .OVRDO .OVRDC
Open Time
Expired
(O.T.E.) .OVRDO .OVRDC
Open Time
Expired
(O.T.E.) .OVRDO .OVRDC
APT Programming Reference (Tables) Device RLL Code for Series 505 A-41
RLL for Devices (continued)
Open Time
Expired
(O.T.E.) .OVRDO .OVRDC
Open Time
Expired
(O.T.E.) .OVRDO .OVRDC
A-42 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OLS .CLS .OPENC .OPND
Figure A-62 VSD: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
Figure A-63 VSD: OPND (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
(CLEAR CMMD ON FTO/FTC)
Figure A-64 VSD: OPND (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
Closed Time
Expired
(C.T.E.) .OVRDC .OVRDO
APT Programming Reference (Tables) Device RLL Code for Series 505 A-43
RLL for Devices (continued)
Closed Time
Expired
(C.T.E.) .OVRDC .OVRDO
Closed Time
Expired
(C.T.E.) .OVRDC .OVRDO
Closed Time
Expired
(C.T.E.) .OVRDC .OVRDO
A-44 Device RLL Code for Series 505 APT Programming Reference (Tables)
.CLS .OLS .OPENC .CLSD
Closed Time
Expired
(C.T.E.) .OVRDC .OVRDO
Figure A-72 VSD: CLSD (EO) (N.O. FDBK) (IGNORE FDBK OVRD)
APT Programming Reference (Tables) Device RLL Code for Series 505 A-45
RLL for Devices (continued)
Figure A-73 VSD: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
Figure A-74 VSD: CLSD (EC) (N.O. FDBK) (IGNORE FDBK OVRD)
(CLEAR CMMD ON FTO/FTC)
Open Time
Expired
(O.T.E.) .OPND .OVRDO .FAILD .FTO
A-46 Device RLL Code for Series 505 APT Programming Reference (Tables)
Open Time
Expired
(O.T.E.) .OPND .FAILD .FTO
Closed Time
Expired
(C.T.E.) .CLSD .OVRDC .FAILD .FTC
Closed Time
Expired
(C.T.E.) .CLSD .FAILD .FTC
.OPENC .CMMD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-47
RLL for Devices (continued)
.RTO
A-48 Device RLL Code for Series 505 APT Programming Reference (Tables)
.CMMD .CLSD .CLSTO .CLSC
TRUE .OPNTO
TMR
P= .OTCP
VALUE
.CMMD .RESET .PFAIL
TRUE .CLSTO
TMR
P= .CTCP
VALUE
.CMMD .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-49
RLL for Devices (continued)
A-50 Device RLL Code for Series 505 APT Programming Reference (Tables)
.CLS .OVRDC .OLS .CMMD .CLSD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-51
RLL for Devices (continued)
A-52 Device RLL Code for Series 505 APT Programming Reference (Tables)
.STOP .RTO .RTC .LOCKD .NRDY .STOP
.RTS
APT Programming Reference (Tables) Device RLL Code for Series 505 A-53
RLL for Devices (continued)
.TRUE .OPNTO
TMR
P= .OTCP
VALUE
.$SCRATCH
.TRUE .CLSTO
TMR
P= .CTCP
VALUE
.$SCRATCH
A-54 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OVRDL .RESET .OVRDL
.RLOW
APT Programming Reference (Tables) Device RLL Code for Series 505 A-55
RLL for Devices (continued)
.RHIGH
.LOCKD JMP
.NRDY
.PFAIL
.SLOW .MOPEN
.SHIGH
JMPE
A-56 Device RLL Code for Series 505 APT Programming Reference (Tables)
.LOCKD .MHIGH .SLOW .HIPOS
.PFAIL .MHIGH
.HIPOS .LOCKD
.SHIGH
.SLOW .$SCRATCH
:O:
.SHIGH
:O:
.MOPEN
.MOPEN .OPNTO
TMR
P= .OTCP
VALUE
.$SCRATCH .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-57
RLL for Devices (continued)
.MOPEN .CLSTO
TMR
P= .CTCP
VALUE
.MOPEN .RESET .PFAIL
A-58 Device RLL Code for Series 505 APT Programming Reference (Tables)
.OPNDL .OPND
.OPNDH
.CLSTO .OVRDL
.NOPNDL
.CLSTO .OVRDH
.NOPNDH
APT Programming Reference (Tables) Device RLL Code for Series 505 A-59
RLL for Devices (continued)
.FTOL .FTO
.FTOH
A-60 Device RLL Code for Series 505 APT Programming Reference (Tables)
.LIO .CLSTO .CLSD .FTC
.OVRDL
.HIO
.OVRDH
.SLOW .DRV
.SHIGH
.POS
APT Programming Reference (Tables) Device RLL Code for Series 505 A-61
RLL for Devices (continued)
.LOCKD JMP
.NRDY
.PFAIL
.DRV .MOPEN
JMPE
A-62 Device RLL Code for Series 505 APT Programming Reference (Tables)
.SLOW .$SCRATCH
:O:
.SHIGH
:O:
.DRV
.DRV .OPNTO
TMR
P= .OTCP
VALUE
.$SCRATCH .RESET .PFAIL
.DRV .CLSTO
TMR
P= .CTCP
VALUE
.DRV .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-63
RLL for Devices (continued)
TRUE .OPNTO
TMR
P= .OTCP
VALUE
.RESET
TRUE .CLSTO
TMR
P= .CTCP
VALUE
.RESET
A-64 Device RLL Code for Series 505 APT Programming Reference (Tables)
TRUE MIRW Bit Bucket
IR: .RUNNG
A: .VFLAGS
N= X
.RTR
APT Programming Reference (Tables) Device RLL Code for Series 505 A-65
RLL for Devices (continued)
.LOCKD JMP
.NRDY
.PFAIL
.CMMD .MSTRT
JMPE
TRUE .RUNNG
TMR
P= .RTCP
VALUE
.CMMD .RESET .PFAIL
A-66 Device RLL Code for Series 505 APT Programming Reference (Tables)
TRUE .STPPD
TMR
P= .STCP
VALUE
.CMMD .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-67
RLL for Devices (continued)
.RTR
.LOCKD JMP
.NRDY
.PFAIL
.STRTC .MSTRT
JMPE
A-68 Device RLL Code for Series 505 APT Programming Reference (Tables)
Running Time
Expired
TRUE (R.T.E.)
TMR
P= .RTCP
VALUE
.STRTC .RESET .PFAIL
Stopped Time
Expired
TRUE (S.T.E.)
TMR
P= .STCP
VALUE
.STRTC .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-69
RLL for Devices (continued)
Running Time
Expired
(R.T.E.) .OVRD
Running Time
Expired
(R.T.E.) .OVRD
A-70 Device RLL Code for Series 505 APT Programming Reference (Tables)
.RUNIO .STRTC .FTR .RUNNG
Stopped Time
Expired
(S.T.E.) .OVRD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-71
RLL for Devices (continued)
Running Time
Expired
.STRTC .RUNNG (R.T.E.) .TRVL
Stopped Time
Expired
.STRTC .STPPD (S.T.E.)
Running Time
Expired
(R.T.E.) .RUNNG .FTR
Stopped Time
Expired
(S.T.E.) .STPPD .FTS
.STRTC .CMMD
A-72 Device RLL Code for Series 505 APT Programming Reference (Tables)
.STRTC .FTR .CMMD
.RTR
APT Programming Reference (Tables) Device RLL Code for Series 505 A-73
RLL for Devices (continued)
TRUE .STRTO
TMR
P= .RTCP
VALUE
.CMMD .RESET .PFAIL
A-74 Device RLL Code for Series 505 APT Programming Reference (Tables)
TRUE .STPTO
TMR
P= .STCP
VALUE
.CMMD .RESET .PFAIL
.STRTO .OVRD
APT Programming Reference (Tables) Device RLL Code for Series 505 A-75
RLL for Devices (continued)
.STPTO .OVRD
A-76 Device RLL Code for Series 505 APT Programming Reference (Tables)
.STPTO .STPPD .FTS
TRUE .STRTO
TMR
P= .RTCP
VALUE
.RESET
TRUE .STPTO
TMR
P= .STCP
VALUE
.RESET
APT Programming Reference (Tables) Device RLL Code for Series 505 A-77
RLL for Devices (continued)
.RFWRD
.SFWRD
A-78 Device RLL Code for Series 505 APT Programming Reference (Tables)
.REV .RFWRD .RSTOP .LOCKD .NRDY .REV
.RREV
.SREV
APT Programming Reference (Tables) Device RLL Code for Series 505 A-79
RLL for Devices (continued)
.SFWRD .DRV
.SREV
.LOCKD JMP
.NRDY
.PFAIL
.DRV .MSTRT
JMPE
.PFAIL .MREV
.DIR .LOCKD
.SREV
A-80 Device RLL Code for Series 505 APT Programming Reference (Tables)
TRUE .STRTO
TMR
P= .RTCP
VALUE
.DRV .RESET
TRUE .STPTO
TMR
P= .STCP
VALUE
.DRV .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-81
RLL for Devices (continued)
.RUNF .RUNNG
.RUNR
.OVRDF .OVRDR
A-82 Device RLL Code for Series 505 APT Programming Reference (Tables)
.DRV .RUNNG .STRTO .TRVL
.DRV .STPTO
.FTRF .FTR
.FTRR
APT Programming Reference (Tables) Device RLL Code for Series 505 A-83
RLL for Devices (continued)
.OVRDF
.RIO
.OVRDR
.SFWRD .DRV
.SREV
A-84 Device RLL Code for Series 505 APT Programming Reference (Tables)
.SREV .SFWRD .DIR
.DIR
.LOCKD JMP
.NRDY
.PFAIL
.DRV .MSTRT
JMPE
APT Programming Reference (Tables) Device RLL Code for Series 505 A-85
RLL for Devices (continued)
.PFAIL .MREV
.DIRSP .LOCKD
.SREV
A-86 Device RLL Code for Series 505 APT Programming Reference (Tables)
.SLOW .PFAIL .RHIGH .RSTOP .LOCKD .NRDY .SLOW
.RLOW
.RHIGH
APT Programming Reference (Tables) Device RLL Code for Series 505 A-87
RLL for Devices (continued)
.LOCKD JMP
.NRDY
.PFAIL
.SLOW .MSTRT
.SHIGH
JMPE
.PFAIL .MHIGH
.HISPD .LOCKD
.SHIGH
A-88 Device RLL Code for Series 505 APT Programming Reference (Tables)
.SLOW .$SCRATCH
:O:
.SHIGH
:O:
.MSTRT
.MSTRT .STRTO
TMR
P= .RTCP
VALUE
.$SCRATCH .RESET .PFAIL
.MSTRT .STPTO
TMR
P= .STCP
VALUE
.MSTRT .RESET .PFAIL
APT Programming Reference (Tables) Device RLL Code for Series 505 A-89
RLL for Devices (continued)
.RUNL .RUNNG
.RUNH
A-90 Device RLL Code for Series 505 APT Programming Reference (Tables)
.LIO .OVRDL .SLOW .NRUNL
.STPTO .OVRDL
.NRUNL
.STPTO .OVRDH
.NRUNH
APT Programming Reference (Tables) Device RLL Code for Series 505 A-91
RLL for Devices (continued)
.FTRL .FTR
.FTRH
A-92 Device RLL Code for Series 505 APT Programming Reference (Tables)
.LIO .STPTO .STPPD .FTS
.OVRDL
.HIO
.OVRDH
.SLOW .DRV
.SHIGH
.SPEED
APT Programming Reference (Tables) Device RLL Code for Series 505 A-93
RLL for Devices (continued)
.SLOW .$SCRATCH
:O:
.SHIGH
:O:
.DRV
.DRV .STRTO
TMR
P= .RTCP
VALUE
.$SCRATCH .RESET .PFAIL
.DRV .STPTO
TMR
P= .STCP
VALUE
.DRV .RESET .PFAIL
A-94 Device RLL Code for Series 505 APT Programming Reference (Tables)
.DRV .RUNNG .STRTO .TRVL
X = 12: CYLINDERS
APT Programming Reference (Tables) Device RLL Code for Series 505 A-95
RLL for Devices (continued)
.RTE
.RTR
A-96 Device RLL Code for Series 505 APT Programming Reference (Tables)
.LOCKD JMP
.NRDY
.PFAIL
.EXTENDC .MEXTEND
JMPE
.LOCKD JMP
.NRDY
.PFAIL
.EXTENDC .MEXTEND
JMPE
APT Programming Reference (Tables) Device RLL Code for Series 505 A-97
RLL for Devices (continued)
Extend Time
Expired
TRUE (E.T.E.)
TMR
P= .ETCP
VALUE
.EXTENDC .RESET .PFAIL
Extend Time
Expired
.TRUE (E.T.E.)
TMR
P= .ETCP
VALUE
.EXTENDC .RESET .PFAIL
Retract Time
Expired
TRUE (R.T.E.)
TMR
P= .RTCP
VALUE
.EXTENDC .RESET .PFAIL
A-98 Device RLL Code for Series 505 APT Programming Reference (Tables)
Retract Time
Expired
.TRUE (R.T.E.)
TMR
P= .RTCP
VALUE
.EXTENDC .RESET .PFAIL
Extend Time
Expired
(E.T.E.) .OVRDE .OVRDR
Extend Time
Expired
(E.T.E.) .OVRDE .OVRDR
APT Programming Reference (Tables) Device RLL Code for Series 505 A-99
RLL for Devices (continued)
Extend Time
Expired
(E.T.E.) .OVRDE .OVRDR
Extend Time
Expired
(E.T.E.) .OVRDE .OVRDR
A-100 Device RLL Code for Series 505 APT Programming Reference (Tables)
.ELS .RLS .EXTENDC .EXTENDED
Figure A-231 CSD: EXTENDED (EE) (N.O. FDBK) (IGNORE FDBK OVRD)
Figure A-232 CSD: EXTENDED (ER) (N.O. FDBK) (IGNORE FDBK OVRD)
Retract Time
Expired
(R.T.E.) .OVRDR .OVRDE
Retract Time
Expired
(R.T.E.) .OVRDR .OVRDE
APT Programming Reference (Tables) Device RLL Code for Series 505 A-101
RLL for Devices (continued)
Retract Time
Expired
(R.T.E.) .OVRDR .OVRDE
Retract Time
Expired
(R.T.E.) .OVRDR .OVRDE
A-102 Device RLL Code for Series 505 APT Programming Reference (Tables)
.RLS .ELS .EXTENDC .RETRACTED
Extend Time
Expired
.CMMD .EXTENDED (E.T.E.) .TRVL
Retract Time
Expired
.CMMD .RETRACTED (R.T.E.)
APT Programming Reference (Tables) Device RLL Code for Series 505 A-103
RLL for Devices (continued)
Extend Time
Expired
.CMMD .EXTENDED (E.T.E.) .TRVL
Retract Time
Expired
.CMMD .RETRACTED (R.T.E.)
Extend Time
Expired
(E.T.E.) .ELS .OVRDE .FTE
Extend Time
Expired
(E.T.E.) .ELS .FTE
Retract Time
Expired
(R.T.E.) .RLS .OVRDR .FTR
A-104 Device RLL Code for Series 505 APT Programming Reference (Tables)
Retract Time
Expired
(R.T.E.) .RLS .FTR
Extend Time
Expired
(E.T.E.) .EXTENDED .FTE .FAILD
Retract Time
Expired
(R.T.E.) .RETRACTED .FTR
X = 12: CYLINDERS
APT Programming Reference (Tables) Device RLL Code for Series 505 A-105
RLL for Devices (continued)
TRUE .EXTTO
TMR
P= .ETCP
VALUE
.ERESET
TRUE .RETTO
TMR
P= .RTCP
VALUE
.RRESET
A-106 Device RLL Code for Series 505 APT Programming Reference (Tables)
Index
Numbers Analog input (continued)
scaling, 5-10
110 VAC rapid response module, 4-72 symbolic name extensions, 5-7, 5-11, 5-18,
5-19
110 VAC redundant output module, 4-71
Analog output
120 VDC rapid response module, 4-73 defining, 5-12
16-channel discrete input module, 4-32 I/O type, 5-3, 5-11
scaling, 5-13
16-channel discrete output module, 4-33
APT
16AF module, high density advanced function, controller models supported, 1-22
4-85 features
16-channel analog input module, 4-31 S5, 1-25
Series 505, 1-26
16-RTD module, 4-61
tools
2-channel analog output module, 4-9 S5, 1-24
20-channel AI/4-channel AO module, 4-34 Series 505, 1-24
24 VDC rapid response module, 4-74 APT flag. See Flag, APT
Index-1
Bipolar, scaling, 5-10, 5-13 Cylinder
commands, 6-8
Booleans
device type, 6-6
declaration table, 8-12
extensions, 6-18
extensions, 8-13
RLL code, A-20, A-95
in arrays, 8-26
single-drive, dual-feedback, 7-64
BV1 user-defined, 7-68
commands, 7-28
extensions, 7-28
three-position/dual-feedback valve, 7-26
D
BV2
commands, 7-32 Date extensions, 2-6
extensions, 7-32 Declaration table
three-position/dual-feedback valve, 7-30 declaration types, 8-3
entering constants and variables, 8-4
PCS tag translation, 8-6
C Declaration types
APT flag, 8-16
CFC, language, 1-20
boolean, 8-12
Commands, symbolic name, DF, 5-14 boolean array, 8-26
Communications processor (CP1434TF), 4-84 counter presets, 8-44
DI10 array, 8-28
Configuration, APT objects, 1-14 DO10 array, 8-30
Constants integer, 8-7
declaration types, 8-3 integer array, 8-24
entering in declaration table, 8-4 real, 8-14
PCS tag translation, 8-6 real array, 8-32
scaled integer, 8-9
Controller, models supported by APT, 1-22 sequence array, 8-34
Counter shift register array, 8-38
extensions, 8-46 text, 8-19
presets, in declaration table, 8-44 text array, 8-42
timer (fast) presets, 8-50
Counter modules
timer (slow) presets, 8-52
HSC, 4-54
timer presets, 8-48
HSCE, 4-88
HSPI, 4-52 Device
auto mode, 6-2, 6-24
CP1434TF, H1 communications processor, 4-84
changing mode, 6-26
CSD changing state, 6-27
commands, 7-66 commands
extensions, 7-66 cylinder, 6-8
single-drive/dual-feedback cylinder, 7-64 motor, 6-8
CUD press, 6-8
commands, 7-70 stopwatch, 6-8
extensions, 7-70 timer, 6-8
user-defined cylinder, 7-68 valve, 6-8
Index-2
Device (continued) Device (continued)
cylinder types, 6-6
RLL code, A-20, A-95 valve
single-drive/dual-feedback (CSD), 7-64 dual-drive/dual-feedback (VDD), 7-14
user-defined (CUD), 7-68 hand-operated dual feedback (VND), 7-2,
defined, 6-2 7-72
dual feedback, 6-32 motor-drive/dual-feedback (VMD), 7-18
extensions, 6-10 RLL code, A-3, A-23
.VFLAGS (S5), 6-35 single-drive single feedback (VSS), 7-6
.VFLAGS (Series 505), 6-34 single-drive/dual-feedback (VSD), 7-10
cylinder, 6-18 single-drive/null-feedback (VSN), 7-4
motor, 6-16 three-position/dual-feedback (BV1), 7-26
press, 6-20 three-position/dual-feedback (BV2), 7-30
stopwatch, 6-17, 6-22 user-defined (VUD), 7-22
timer, 6-17, 6-22 DI10, in arrays, 8-28
valve, 6-13
fail bit, 6-31, 6-33 Digital flag
feedback override, 6-28 defining, 5-15
manual mode, 6-2, 6-23 I/O type, 5-4, 5-14
motor symbolic name commands, 5-14
dual-drive/null-feedback (MDN), 7-38 Digital input
dual-drive/single-feedback (MDS), 7-40 defining, 5-16
reversible type 1 (RM1), 7-48 I/O type, 5-4, 5-16
reversible type 2 (RM2), 7-52
RLL code, A-12, A-65 Digital output
single-drive/null-feedback (MSN), 7-34 defining, 5-17
single-drive/single-feedback (MSS), 7-36 I/O type, 5-4, 5-17
two-speed type 1 (TS1), 7-56 Direct controller addresses, defined, 3-2
two-speed type 2 (TS2), 7-60
DO10, in arrays, 8-30
user-defined (MUD), 7-44
null feedback, 6-29 Dot extensions, defined, 1-15
position bit, 6-31 Dual comm port module, 4-50
power fail recovery, 6-34
press
dual-drive/dual-feedback (PDD), 7-84
motor-drive/dual-feedback (PMD), 7-88 E
single-drive/dual-feedback (PSD), 7-80
ENET module, ethernet TCP/IP adapter, 4-87
single-drive/null-feedback (PSN), 7-74
single-drive/single-feedback (PSS), 7-76 Error codes, program extensions, 2-5
three-position/dual-feedback (PS1), 7-96 Ethernet TCP/IP adapter module, 4-87
three-position/dual-feedback (PS2), 7-100
user-defined (PUD), 7-92 Expert solutions processor (ESP) module, 4-67
reset command, 6-28 Extensions
single feedback, 6-30 date, 2-6
state bit, 6-31 defined, 1-15
status, 6-36
stopwatch, three-state (TMR), 7-104
timer, three-state (TMR), 7-104
Index-3
Extensions (continued) High speed counter encoder module, 4-54, 4-88
device, 6-10
High speed PID controller module, 4-70
cylinder, 6-18
motor, 6-16 High speed pulse input module, 4-52
press, 6-20 HSCE module, high speed counter encoder, 4-88
stopwatch, 6-17, 6-22
timer, 6-17, 6-22
valve, 6-13
error codes, 2-5 I
program, 2-3, 2-6
I/O
symbolic name
input modules (Series 505)
AI, 5-7, 5-11, 5-18, 5-19
16-channel discrete, 4-32
BI, 5-20
16-channel analog, 4-31
BO, 5-22
20-ch AI/4-ch AO, 4-34
RT, 5-24
32-channel discrete, 4-35
TC, 5-27
4-ch analog in/4-ch analog out, 4-13
time of day, 2-6
4-channel analog, 4-11
unit, 2-6
6-ch analog in/2-ch analog out, 4-14
8-ch analog in/4-ch analog out, 4-15
8-channel analog, 4-16, 4-17
F 8-channel discrete, 4-27
parallel word, 4-20
Fail bit for devices, 6-31, 6-33 smartslice, 4-39
Feedback for devices output modules (Series 505)
dual, 6-32 16-channel discrete, 4-33
null, 6-29 2-channel analog, 4-9
override, 6-28 20-ch AI/4-ch AO, 4-34
single, 6-30 32-channel discrete, 4-37
4-ch analog in/4-ch analog out, 4-13
FIM module
4-channel analog, 4-12
SIMOREG broadcast mode, 4-78
6-ch analog in/2-ch analog out, 4-14
SIMOREG mode, 4-76
8-ch analog in/4-ch analog out, 4-15
SIMOVERT broadcast mode, 4-82
8-channel analog, 4-18, 4-19
SIMOVERT mode, 4-80
8-channel discrete, 4-29
Firmware support parallel word, 4-23
S5, 1-23 smartslice, 4-39
Series 505, 1-23 referencing
direct address, 3-2
Flag, APT
symbolic name, 3-2
commands, 8-17
special function (SF) modules
declaration table, 8-16
110 VAC rapid response, 4-72
110 VAC redundant output, 4-71
120 VDC rapid response, 4-73
H 16-RTD, 4-61
24 VDC rapid response, 4-74
H1 communications processor, 4-84
386/ATM coprocessor, 4-66
High density advanced function module, 4-85 8-RTD, 4-61
Index-4
I/O Integers
special function (SF) modules (continued) arrays, 8-24
ASCII, 4-46 commands, 8-8
BASIC, 4-48 declaration table, 8-7
dual comm port, 4-50 extensions, 8-8
ESP, 4-67 scaled, declaration table, 8-9
ethernet TCP/IP adapter, 4-87 sequenced, in arrays, 8-34
FIM shift register, in arrays, 8-38
SIMOREG broadcast mode, 4-78
Isolated interrupt input module, 4-44
SIMOREG mode, 4-76
SIMOVERT broadcast mode, 4-82
SIMOVERT mode, 4-80
H1 communications processor, 4-84 K
high density advanced function, 4-85
Key words, 1-13
high speed counter encoder, 4-54, 4-88
high speed input, 4-52
high speed PID controller, 4-70
isolated interrupt input, 4-44 L
NIM, 4-55
Peerlink, 4-57, 4-59 Languages
program port expander, 4-90 CFC, 1-20
RTD, 4-61 math, 1-17
servo axis, 4-63 SFC, 1-18, 1-19
thermocouple, 4-64 state control, 1-17
turbomold, 4-68
user defined, 4-40, 4-42
symbolic name M
assigning, 4-7
defining, 3-9 Math, language, 1-17
table, 3-5 Math language, subroutines, 10-2
symbolic name types
analog input (AI), 5-3, 5-6 MDN
analog output (AO), 5-3, 5-11 commands, 7-39
BCD input (BI), 5-5, 5-20 dual-drive/null-feedback motor, 7-38
BCD output (BO), 5-5, 5-22 extensions, 7-39
defining, 5-2 MDS
digital flag (DF), 5-4, 5-14 commands, 7-42
digital input (DI), 5-4, 5-16 dual-drive/single-feedback motor, 7-40
digital output (DO), 5-4, 5-17 extensions, 7-42
resistance temperature input (RT), 5-5, 5-24
Modes, devices
thermocouple input (TC), 5-5, 5-27
auto, 6-24
word input (WI), 5-5, 5-18
changing, 6-26
word output (WO), 5-5, 5-19
manual, 6-23
Image register, 5-5
Module table (Series 505 only), defined, 3-5
Index-5
Modules (S5) Modules (Series 505)
and I/O symbolic name table, 3-5 special function (SF) (continued)
assigning addresses, 3-5 ethernet TCP/IP adapter, 4-87
FIM
Modules (Series 505)
SIMOREG broadcast mode, 4-78
assigning addresses, 4-4
defining, 3-11, 4-3 SIMOREG mode, 4-76
input SIMOVERT broadcast mode, 4-82
16-channel discrete, 4-32 SIMOVERT mode, 4-80
16-channel analog, 4-31 H1 communications processor, 4-84
20-ch AI/4-ch AO, 4-34 high density advanced function, 4-85
32-channel, 4-35 high speed counter encoder, 4-54, 4-88
4-ch analog in/4-ch analog out, 4-13 high speed PID controller, 4-70
4-channel analog, 4-11 high speed pulse input, 4-52
6-ch analog in/2-ch analog out, 4-14 isolated interrupt input, 4-44
8-ch analog in/4-ch analog out, 4-15 NIM, 4-55
8-channel analog, 4-16, 4-17 parallel word output, 4-26
8-channel discrete, 4-27 Peerlink, 4-57, 4-59
parallel word, 4-20 program port expander, 4-90
smartslice, 4-39 programmable BASIC, 4-48
output RTD, 4-61
16-channel discrete, 4-33 servo axis, 4-63
2-channel analog, 4-9 thermocouple, 4-64
20-ch AI/4-ch AO, 4-34 turbomold, 4-68
32-channel discrete, 4-37 user defined, 4-40, 4-42
4-ch analog in/4-ch analog out, 4-13 Motor
4-channel analog, 4-12 commands, 6-8
6-ch analog in/2-ch analog out, 4-14 device type, 6-6
8-ch analog in/4-ch analog out, 4-15 dual-drive, single-feedback, 7-40
8-channel analog, 4-18, 4-19 extensions, 6-16
8-channel discrete, 4-29 null-feedback, 7-38
parallel word, 4-23 reversible
smartslice, 4-39 type 1, 7-48
special function (SF) type 2, 7-52
110 VAC rapid response, 4-72 RLL code, A-12, A-65
110 VAC redundant output, 4-71 single-drive
120 VDC rapid response, 4-73 null-feedback, 7-34
16-RTD, 4-61 single-feedback, 7-36
24 VDC rapid response, 4-74 two-speed
386/ATM coprocessor, 4-66 type 1, 7-56
8-RTD, 4-61 type 2, 7-60
ASCII, 4-46 user-defined, 7-44
dual comm port, 4-50
ESP, 4-67
Index-6
MSN PMD
commands, 7-35 commands, 7-90
extensions, 7-35 extensions, 7-90
single-drive/null-feedback motor, 7-34 motor-drive/dual-feedback press, 7-88
MSS Position bit for devices, 6-31
commands, 7-37
Power failure
extensions, 7-37
devices, 6-34
single-drive/single-feedback motor, 7-36
recovery logic
MUD S5 controllers, 6-35
commands, 7-46 Series 505 controllers, 6-34
extensions, 7-46
Power supply, UPS option, 6-34
user-defined motor, 7-44
PPEXP module, program port expander, 4-90
Press
N commands, 6-8
device type, 6-6
Network interface module (NIM), 4-55 dual-drive, dual-feedback, 7-84
extensions, 6-20
motor-drive/dual-feedback, 7-88
O single-drive
dual-feedback, 7-80
Objects null-feedback, 7-74
and recipes, 1-15 single-feedback, 7-76
avoiding key words, 1-13 three-position/dual-feedback (PS1), 7-96
configuring, 1-14 three-position/dual-feedback (PS2), 7-100
definitions, 1-12 user-defined, 7-92
dot extensions, 1-15
Process control
naming, 1-13
emergency conditions, 1-7
scope, 1-15
event sequence, 1-6
Override device feedback, 6-28
Product design, ingredients, 1-4
bits, 6-32
Program
content level, 1-10
P definition, 2-2
design, equipment, 1-4
Parallel word input module, 4-20 directory, 1-9
extensions, 2-3, 2-6
Parallel word output module, 4-23 structure, APT hierarchy, 1-8
Parallel word output SF module, 4-26 program content, 1-10
program directory, 1-9
PDD
unit content, 1-11
commands, 7-86
dual-drive/dual-feedback press, 7-84 Program port expander module, 4-90
extensions, 7-86 Programmable BASIC module, 4-48
Peerlink module, 4-57, 4-59
Index-7
PS1 Recipe (continued)
commands, 7-98 template, 9-2
extensions, 7-98 creating, 9-8
three-position/dual-feedback press, 7-96 editing, 9-9
unit level, creating, 9-10
PS2
usage table, 9-2, 9-10
commands, 7-102
editing, 9-12
extensions, 7-102
using, 9-4
three-position/dual-feedback press, 7-100
Redundant output module, 110 VAC, 4-71
PSD
commands, 7-82 Resistance temperature detector, I/O type, 5-24
extensions, 7-82
Resistance temperature detector (RTD) input,
single-drive/dual-feedback press, 7-80 I/O type, 5-5
PSN Resistance temperature detector (RTD) module,
commands, 7-75 4-61
extensions, 7-75
single-drive/null-feedback press, 7-74 Reversible motor
type 1, 7-48
PSS type 2, 7-52
commands, 7-78
extensions, 7-78 RLL code
single-drive/single-feedback press, 7-76 cylinder, A-20, A-95
motor, A-12, A-65
PUD valve, A-3, A-23
commands, 7-94
extensions, 7-94 RM1
user-defined press, 7-92 commands, 7-50
extensions, 7-50
reversible/dual-feedback motor, 7-48
R RM2
commands, 7-54
Rapid response module extensions, 7-54
110 VAC, 4-72 reversible/dual-feedback motor, 7-52
120 VDC, 4-73
RT input, symbolic name extensions, 5-24
24 VDC, 4-74
RTD input, defining, 5-25, 5-26
Real numbers
declaration table, 8-14
extensions, 8-15
in arrays, 8-32 S
Recipe S5
commands, 9-7 APT features, 1-25
defined, 1-15 APT tools, 1-24
elements, 9-6 firmware support, 1-23
editing, 9-12 I/O symbolic names, 3-10
extensions, 9-4, 9-7
program level, creating, 9-10 Scaled integer
commands, 8-11
extensions, 8-11
Index-8
Scaling, analog values, 5-10, 5-13 Symbolic name
assigning I/O, 4-7
Sequence array
defined, 3-2
commands, 8-36
defining I/O, 3-9
extensions, 8-36
Series 505
APT features, 1-26
APT tools, 1-24
T
firmware support, 1-23 TC input, symbolic name extensions, 5-27
I/O symbolic names, 3-9
Testing I/O, image register option, 5-5
Servo axis module, 4-63
Text
SFC declaration table, 8-19
language, 1-18, 1-19 extensions, 8-20
safe-state, overview, 1-21 in arrays, 8-42
Shift register array Thermocouple (TC) input, I/O type, 5-5
commands, 8-40
extensions, 8-40 Thermocouple input
defining, 5-28, 5-29
Smartslice module, 4-39 I/O type, 5-27
State, device, changing, 6-27 Thermocouple module, 4-64
State bit for devices, 6-31 Time of day extensions, 2-6
State control language, 1-17 Timer
device commands, 6-8 commands, 6-8
Status, device, 6-36 extensions, 6-17, 6-22
fast
Stopwatch commands, 8-51
commands, 6-8 extensions, 8-51
device type, 6-6 in declaration table, 8-50
extensions, 6-17, 6-22 presets, in declaration table, 8-48
three-state, 7-104 slow
Subroutine commands, 8-53
system-activated, 10-2 extensions, 8-53
accessing FBs, 10-16 in declaration table, 8-52
creating, 10-12 three-state, 7-104
design guidelines, 10-14 TMR
math language, 10-13, 10-16 commands, 7-106
user-defined, 10-2 extensions, 7-106
creating, 10-4 three-state timer, 7-104
design constraints, arrays, 10-9
design guidelines, 10-7 TS1
example, 10-10 commands, 7-58
math language, 10-6 extensions, 7-58
parameters, 10-5 two-speed/dual-feedback motor, 7-56
RLL, 10-8
SFPGM, 10-8
Index-9
TS2 Variables (continued)
commands, 7-62 scaled integer, 8-9
extensions, 7-62 text, 8-19
two-speed/dual-feedback motor, 7-60
VDD
Turbomold module, 4-68 commands, 7-16
dual-drive/dual-feedback valve, 7-14
Twenty percent offset, scaling, 5-10, 5-13
extensions, 7-16
Two-speed motor
VMD
type 1, 7-56
commands, 7-20
type 2, 7-60
extensions, 7-20
motor-drive/dual-feedback valve, 7-18
U VND
commands, 7-3, 7-73
Unit extensions, 7-3, 7-73
content level, 1-11 hand-operated/dual-feedback valve, 7-2, 7-72
definition, 2-2 VSD
extensions, 2-6 commands, 7-12
User-defined module, 4-40, 4-42 extensions, 7-12
single-drive/dual-feedback valve, 7-10
VSN
V commands, 7-5
extensions, 7-5
Valve single-drive/null-feedback valve, 7-4
commands, 6-8
device type, 6-6 VSS
dual-drive, dual-feedback, 7-14 commands, 7-8
extensions, 6-13 extensions, 7-8
hand-operated, dual-feedback, 7-2, 7-72 single-drive/single-feedback valve, 7-6
motor-drive/dual-feedback, 7-18 VUD
RLL code, A-3, A-23 commands, 7-24
single-drive extensions, 7-24
dual-feedback, 7-10 user-defined valve, 7-22
null-feedback, 7-4
single-feedback, 7-6
three-position/dual-feedback (BV1), 7-26
three-position/dual-feedback (BV2), 7-30
W
user-defined, 7-22 Word input
Variables defining, 5-18
boolean, 8-12 I/O type, 5-5, 5-18
declaration types, 8-3 Word input module, 4-20
entering in declaration table, 8-4
integer, 8-7 Word output
PCS tag translation, 8-6 defining, 5-19
real, 8-14 I/O type, 5-5, 5-19
Index-10
Word output module, 4-23
special function (SF), 4-26
Z
Zero bias, scaling, 5-10, 5-13
Index-11
Customer Response
We would like to know what you think about our user manuals so that we can serve you better.
How would you rate the quality of our manuals?
Would you be interested in giving us more detailed comments about our manuals?
Your Name:
Title:
Telephone Number: ( )
Company Name:
Company Address:
Manual Name: SIMATIC APT Programming Reference (Tables) Manual Edition: Tenth
Manual Assembly Number: 2801048--0007 Date: 4/01
Order Number: PPX:APT--8102--10
FOLD
FOLD