Fanuc 30i MODEL B, 31i MODEL B, 35i MODEL B, 32i MODEL B PROGRAMMING MANUAL

Page 1
FANUC Series 30+-MODEL B FANUC Series 31+-MODEL B FANUC Series 32+-MODEL B FANUC Series 35+-MODEL B
PMC
PMC
PROGRAMMING MANUAL
B-64513EN/01
Page 2
No part of this manual may be reproduced in any form.
All specifications and designs are subject to change without notice.
The products in this manual are controlled based on Japan’s “Foreign Exchange and Foreign Trade Law”. The export of Series 30i/300i/300is-MODEL A, Series 31i/310i/310is-MODEL A5 from Japan is subject to an export license by the government of
Japan. Other models in this manual may also be subject to export controls. Further, re-export to another country may be subject to the license of the government of the country from where the product is re-exported. Furthermore, the product may also be controlled by re-export regulations of the United States government. Should you wish to export or re-export these products, please contact FANUC for advice.
In this manual we have tried as much as possible to describe all the various matters. However, we cannot describe all the matters which must not be done, or which cannot be done, because there are so many possibilities. Therefore, matters which are not especially described as possible in this manual should be regarded as ”impossible”.
Page 3
B-64513EN/01 DEFINITION OF WARNING, CAUTION, AND NOTE

DEFINITION OF WARNING, CAUTION, AND NOTE

This manual includes safety precautions for protecting the user and preventing damage to the machine. Precautions are classified into Warning and Caution according to their bearing on safety. Also, supplementary information is described as a Note. Read the Warning, Caution, and Note thoroughly before attempting to use the machine.
WARNING
Applied when there is a danger of the user being injured or when there is a
danger of both the user being injured and the equipment being damaged if the approved procedure is not observed.
CAUTION
Applied when there is a danger of the equipment being damaged, if the
approved procedure is not observed.
NOTE
The Note is used to indicate supplementary information other than Warning and
Caution.
Read this manual carefully, and store it in a safe place.
s-1
Page 4
Page 5
B-64513EN/01 TABLE OF CONTENTS

TABLE OF CONTENTS

DEFINITION OF WARNING, CAUTION, AND NOTE................................. s-1
1 OVERVIEW OF PMC ..............................................................................1
1.1 WHAT IS PMC? .............................................................................................1
1.1.1 Basic Configuration of PMC....................................................................................1
1.1.2 I/O Signals of PMC..................................................................................................1
1.1.3 PMC Signal Addresses.............................................................................................2
1.2 WHAT IS LADDER LANGUAGE? .................................................................5
1.2.1 Ladder Diagram Format...........................................................................................5
1.2.2 Signal Name (Symbol Name)...................................................................................5
1.2.3 Comment..................................................................................................................6
1.2.4 Graphic Symbols of Relays and Coils......................................................................6
1.2.5 Line Number and Net Number.................................................................................6
1.2.6 Difference Between Relay Sequence Circuit and Ladder Sequence Program .........7
1.2.7 Specification of Extended Symbol and Comment....................................................8
1.3 SEQUENCE PROGRAM CREATION PROCEDURE..................................11
1.3.1 Determining Specification......................................................................................11
1.3.2 Creating Ladder Diagram.......................................................................................11
1.3.3 Editing Sequence Program.....................................................................................11
1.3.4 Transferring and Writing Sequence Program to PMC ...........................................12
1.3.5 Checking Sequence Program..................................................................................13
1.3.6 Storage and Management of Sequence Program....................................................13
1.4 EXECUTION OF SEQUENCE PROGRAM .................................................14
1.4.1 Execution Procedure of Sequence Program ...........................................................15
1.4.2 Repetitive Operation...............................................................................................16
1.4.3 Processing Priority (1st Level, 2nd Level, and 3rd Level).....................................16
1.4.4 Structured Sequence Program ................................................................................18
1.4.4.1 Implementation.................................................................................................. 18
1.4.4.2 Subprogramming and nesting............................................................................ 23
1.4.4.3 Notes on using subroutines................................................................................27
1.4.5 Synchronization Processing of I/O Signals............................................................29
1.4.6 Interlock .................................................................................................................34
1.4.7 Notes on I/O Signals Updated by Other Than PMC ..............................................34
1.5 MULTI-PATH PMC FUNCTION...................................................................35
1.5.1 Execution Order and Execution Time Percentage..................................................37
1.5.2 Interface Between CNC and PMC .........................................................................39
1.5.3 Multi-Path PMC Interface......................................................................................40
1.5.4 Common PMC Memory Mode of Multi-Path PMC...............................................41
1.6 Communication Method for External I/O Device..........................................43
1.6.1 I/O Link i and I/O Link ..........................................................................................43
1.6.2 Setting I/O Address for I/O Link i..........................................................................44
1.6.3 Setting I/O Address for I/O Link............................................................................45
2 PMC SPECIFICATIONS........................................................................47
2.1 SPECIFICATIONS.......................................................................................47
2.1.1 Basic Specifications ...............................................................................................47
2.1.2 Total Ladder Steps of Multi-path PMC..................................................................50
2.1.3 Determination of PMC Memory Type...................................................................51
2.1.4 Program Capacity...................................................................................................52
2.1.5 Used Memory Size of Sequence Program..............................................................53
c-1
Page 6
TABLE OF CONTENTS B-64513EN/01
2.1.6 PMC Addresses......................................................................................................54
2.1.7 Basic Instructions ...................................................................................................56
2.1.8 Functional Instructions (Arranged in Sequence of Instruction Group)..................57
2.1.9 Functional Instructions (Arranged in Sequence of SUB No.)................................64
2.2 PMC SIGNAL ADDRESSES........................................................................70
2.2.1 Addresses for Signals Between the PMC and CNC (F, G) ....................................70
2.2.2 Addresses of Signals Between the PMC and Machine (X, Y)...............................71
2.2.3 Internal Relay Addresses (R)..................................................................................73
2.2.4 System Relay Addresses (R9000, Z0)....................................................................74
2.2.5 Extra Relay Addresses (E)......................................................................................79
2.2.6 Message Display Addresses (A).............................................................................84
2.2.7 Timer Addresses (T)...............................................................................................85
2.2.8 Counter Addresses (C) ...........................................................................................86
2.2.9 Keep Relay Addresses (K) .....................................................................................88
2.2.10 Nonvolatile Memory Control Address (K).............................................................89
2.2.11 System Keep Relay Addresses (K).........................................................................90
2.2.12 Data Table Addresses (D) ......................................................................................97
2.2.13 Addresses for Multi-path PMC Interface (M, N).................................................102
2.2.14 Subprogram Number Addresses (P).....................................................................102
2.2.15 Label Number Addresses (L) ...............................................................................102
2.3 PMC PARAMETERS.................................................................................103
2.3.1 Cautions for Reading from/Writing to Nonvolatile Memory...............................104
2.3.2 PMC Parameter Format........................................................................................105
2.4 PARAMETERS FOR THE PMC SYSTEM.................................................113
2.4.1 Setting Parameters................................................................................................113
2.4.2 PMC System Parameters......................................................................................115
2.4.3 CNC Parameters Related to the PMCs.................................................................116
2.5 COMPATIBILITY BETWEEN PMC MEMORY TYPE ................................129
2.5.1 Compatibility between PMC Memory-A and PMC Memory-B ..........................129
2.5.2 Compatibility between PMC Memory-B and PMC Memory-C/D.......................129
2.5.3 Compatibility with PMC Memory-C and PMC Memory-D ................................130
2.6 COMPATIBILITY WITH CONVENTIONAL MODELS................................131
2.6.1 Compatibility with Series 30i/31i/32i-A PMC.....................................................131
2.6.2 Compatibility between 30i/31i/32i-A DCSPMC and 30i/31i/32i/35i-B
DCSPMC..............................................................................................................131
2.6.3 Compatibility with the PMCs for the 16i/18i/21i-B.............................................132
2.6.4 Compatibility with the PMCs for the 15i-A/B.....................................................133
2.6.5 Compatibility with series 0i-D PMC....................................................................134
2.6.6 Compatibility between 0i-D DCSPMC and 30i/31i/32i/35i-B DCSPMC ...........134
2.6.7 Compatibility between 35i-B PMC and PMC-SB5/SB6 for Power Mate i-D .....135
2.6.8 The Convert Method of Source Program Using FANUC LADDER-III.............. 137
2.7 PMC MESSAGE MULTI-LANGUAGE DISPLAY FUNCTION....................139
2.7.1 Usage of PMC Message Multi-Language Display Function................................139
2.7.2 Multi-Language Display.......................................................................................141
2.7.3 Maximum Number of Message............................................................................142
2.7.4 Display of European Characters...........................................................................143
2.7.5 Display of Simplified Chinese and Korean (Hangul Characters).........................144
2.8 BATTERY BACKUP DATA........................................................................146
3 COMMUNICATION WITH I/O DEVICE...............................................148
3.1 I/O Link i and I/O Link................................................................................148
3.2 WHAT IS THE I/O LINK?...........................................................................149
3.2.1 Configuration of an I/O Link................................................................................150
c-2
Page 7
B-64513EN/01 TABLE OF CONTENTS
3.2.2 Numbers of Input Points and of Output Points of the I/O Link ...........................151
3.2.3 Assignment Method .............................................................................................152
3.2.3.1 Assignment Method for I/O Unit-MODEL A ................................................. 157
3.2.3.2 Assignment Method for I/O Unit-MODEL B..................................................159
3.2.3.3 Assignment Method for Distribution I/O Connection Panel I/O Modules and
Distribution I/O Operator's Panel I/O Modules............................................... 161
3.2.3.4 Assignment Method for the Power Mate.........................................................166
3.2.3.5 Assignment Method for I/O Link Connection Units....................................... 167
3.2.3.6 Assignment Method for a Handy Machine Operator's Panel...........................169
3.2.3.7 Assignment Method for an AS-i Converter Unit............................................. 170
3.2.3.8 FS0 Operator's Panel .......................................................................................171
3.2.4 Setting I/O Address For I/O Link Channel...........................................................179
3.2.4.1 Outline.............................................................................................................179
3.2.4.2 Assignment Method......................................................................................... 179
3.2.4.3 Dual Assignment of I/O Link Channel............................................................ 180
3.2.5 Selectable I/O Link Assignment Function ...........................................................184
3.2.5.1 Outline.............................................................................................................184
3.2.5.2 Example........................................................................................................... 186
3.2.5.3 Notes................................................................................................................190
3.3 WHAT IS I/O Link i ? .................................................................................191
3.3.1 Configuration of I/O Link i ..................................................................................192
3.3.2 Input / Output Points ............................................................................................193
3.3.3 Update Cycle of Signals.......................................................................................194
3.3.4 Safety I/O .............................................................................................................196
3.3.5 I/O Link i Selectable Assignment Data Function.................................................197
3.3.6 Assignment Method of I/O Link i ........................................................................199
3.3.7 Directions for Use of I/O Link i in Dual Check Safety Function.........................203
3.4 I/O Link / I/O Link i CONNECTION CHECK FUNCTION...........................205
4 LADDER LANGUAGE ........................................................................206
4.1 BASIC INSTRUCTIONS............................................................................206
4.1.1 Details of the Basic Instructions...........................................................................208
4.1.2 RD Instruction......................................................................................................210
4.1.3 RD.NOT Instruction.............................................................................................211
4.1.4 WRT Instruction...................................................................................................212
4.1.5 WRT.NOT Instruction..........................................................................................213
4.1.6 AND Instruction...................................................................................................214
4.1.7 AND.NOT Instruction..........................................................................................215
4.1.8 OR Instruction......................................................................................................216
4.1.9 OR.NOT Instruction.............................................................................................217
4.1.10 RD.STK Instruction..............................................................................................218
4.1.11 RD.NOT.STK Instruction ....................................................................................219
4.1.12 AND.STK Instruction ..........................................................................................220
4.1.13 OR.STK Instruction..............................................................................................221
4.1.14 SET Instruction.....................................................................................................223
4.1.15 RST Instruction ....................................................................................................224
4.1.16 RDPT Instruction .................................................................................................225
4.1.17 ANDPT Instruction ..............................................................................................227
4.1.18 ORPT Instruction .................................................................................................228
4.1.19 RDPT.STK Instruction.........................................................................................229
4.1.20 RDNT Instruction.................................................................................................230
4.1.21 ANDNT Instruction..............................................................................................232
4.1.22 ORNT Instruction.................................................................................................233
4.1.23 RDNT.STK Instruction ........................................................................................234
4.1.24 PUSH Instruction / POP Instruction.....................................................................235
c-3
Page 8
TABLE OF CONTENTS B-64513EN/01
4.2 FUNCTIONAL INSTRUCTIONS................................................................236
4.2.1 Format of the Functional Instructions ..................................................................236
4.3 TIMER .......................................................................................................241
4.3.1 TMR (On-delay Timer: SUB 3)...........................................................................242
4.3.2 TMRB (Fixed On-delay Timer: SUB 24) ............................................................244
4.3.3 TMRBF (Fixed Off-delay Timer: SUB 77)..........................................................246
4.3.4 TMRC (On-delay Timer: SUB 54).......................................................................248
4.3.5 TMRST (Stop Watch Timer (1ms Accuracy) : SUB 221)
TMRSS (Stop Watch Timer (1sec Accuracy) : SUB 222)...................................251
4.4 COUNTER.................................................................................................255
4.4.1 CTR (Counter: SUB 5).........................................................................................256
4.4.2 CTRB (Fixed Counter: SUB 56)..........................................................................261
4.4.3 CTRC (Counter: SUB 55)....................................................................................263
4.4.4 CTRD (Counter (4 Bytes Length) : SUB 223).....................................................265
4.5 DATA TRANSFER.....................................................................................268
4.5.1 MOVB (Transfer of 1 Byte: SUB 43)..................................................................269
4.5.2 MOVW (Transfer of 2 Bytes: SUB 44) ...............................................................270
4.5.3 MOVD (Transfer of 4 Bytes: SUB 47) ................................................................271
4.5.4 MOVN (Transfer of an Arbitrary Number of Bytes: SUB 45) ............................272
4.5.5 MOVE (Logical Product Transfer: SUB 8)..........................................................273
4.5.6 MOVOR (Data Transfer After Logical Sum: SUB 28)........................................275
4.5.7 XMOVB (Binary Index Modifier Data Transfer: SUB 35) .................................276
4.5.8 XMOV (Indexed Data Transfer: SUB 18) ...........................................................284
4.5.9 MOVBT (Bit Transfer: SUB 224)........................................................................286
4.5.10 SETNB (Data Setting (1 Byte Length) : SUB 225) SETNW (Data Setting (2 Bytes Length) : SUB 226)
SETND (Data Setting (4 Bytes Length) : SUB 227)............................................289
4.5.11 XCHGB (Data Exchange (1 Byte Length) : SUB 228) XCHGW (Data Exchange (2 Bytes Length) : SUB 229)
XCHGD (Data Exchange (4 Bytes Length) : SUB 230)......................................291
4.5.12 SWAPW (Data Swap (2 Bytes Length) : SUB 231)
SWAPD (Data Swap (4 Bytes Length) : SUB 232).............................................293
4.5.13 DSCHB (Binary Data Search: SUB 34)...............................................................296
4.5.14 DSCH (Data Search: SUB 17) .............................................................................299
4.6 TABLE DATA.............................................................................................301
4.6.1 TBLRB (Reading Data from Table (1 Byte Length) : SUB 233) TBLRW (Reading Data from Table (2 Bytes Length) : SUB 234)
TBLRD (Reading Data from Table (4 Bytes Length) : SUB 235).......................302
4.6.2 TBLRN (Reading Data from Table (Arbitrary Bytes Length) : SUB 236)..........305
4.6.3 TBLWB (Writing Data to Table (1 Byte Length) : SUB 237)
TBLWW (Writing Data to Table (2 Bytes Length) : SUB 238)
TBLWD (Writing Data to Table (4 Bytes Length) : SUB 239)...........................308
4.6.4 TBLWN (Writing Data to Table (Arbitrary Bytes Length) : SUB 240) ..............311
c-4
Page 9
B-64513EN/01 TABLE OF CONTENTS
4.6.5 DSEQB (Searching Data from Table(=)(1 Byte Length):SUB 241)
DSEQW (Searching Data from Table(=)(2 Bytes Length):SUB 242) DSEQD (Searching Data from Table(=)(4 Bytes Length):SUB 243) DSNEB (Searching Data from Table()(1 Byte Length):SUB 244)
DSNEW (Searching Data from Table()(2 Bytes Length):SUB 245)
DSNED (Searching Data from Table()(4 Bytes Length):SUB 246) DSGTB (Searching Data from Table(>)(1 Byte Length):SUB 247) DSGTW (Searching Data from Table(>)(2 Bytes Length):SUB 248) DSGTD (Searching Data from Table(>)(4 Bytes Length):SUB 249) DSLTB (Searching Data from Table(<)(1 Byte Length):SUB 250) DSLTW (Searching Data from Table(<)(2 Bytes Length):SUB 251) DSLTD (Searching Data from Table(<)(4 Bytes Length):SUB 252) DSGEB (Searching Data from Table()(1 Byte Length):SUB 253) DSGEW (Searching Data from Table()(2 Bytes Length):SUB 254) DSGED (Searching Data from Table()(4 Bytes Length) :SUB 255) DSLEB (Searching Data from Table()(1 Byte Length) :SUB 256) DSLEW (Searching Data from Table()(2 Bytes Length) :SUB 257)
DSLED (Searching Data from Table()(4 Bytes Length) :SUB 258)................ 314
4.6.6 DMAXB (Maximum Data (1 Byte Length): SUB 259)
DMAXW (Maximum Data (2 Bytes Length) : SUB 260)
DMAXD (Maximum Data (4 Bytes Length) : SUB 261)....................................318
4.6.7 DMINB (Minimum Data (1 Byte Length): SUB 262)
DMINW (Minimum Data (2 Bytes Length): SUB 263)
DMIND (Minimum Data (4 Bytes Length): SUB 264) .......................................321
4.7 COMPARISON..........................................................................................324
4.7.1 Signed Binary Comparison (=) EQB (1 Byte Length: SUB 200) EQW (2 Bytes Length: SUB 201)
EQD (4 Bytes Length: SUB 202).........................................................................325
4.7.2 Signed Binary Comparison (≠) NEB (1 Byte Length: SUB 203) NEW (2 Bytes Length: SUB 204)
NED (4 Bytes Length: SUB 205).........................................................................327
4.7.3 Signed Binary Comparison (>) GTB (1 Byte Length: SUB 206) GTW (2 Bytes Length: SUB 207)
GTD (4 Bytes Length: SUB 208).........................................................................329
4.7.4 Signed Binary Comparison (<) LTB (1 Byte Length: SUB 209) LTW (2 Bytes Length: SUB 210)
LTD (4 Bytes Length: SUB 211) .........................................................................331
4.7.5 Signed Binary Comparison (≧) GEB (1 Byte Length: SUB 212) GEW (2 Bytes Length: SUB 213)
GED (4 Bytes Length: SUB 214).........................................................................333
4.7.6 Signed Binary Comparison (≦) LEB (1 Byte Length: SUB 215) LEW (2 Bytes Length: SUB 216)
LED (4 Bytes Length: SUB 217) .........................................................................335
4.7.7 Signed Binary Comparison (Range) RNGB (1 Byte Length: SUB 218) RNGW (2 Bytes Length: SUB 219)
RNGD (4 Bytes Length: SUB 220)......................................................................337
c-5
Page 10
TABLE OF CONTENTS B-64513EN/01
4.7.8 COMPB (Comparison Between Binary Data: SUB 32).......................................339
4.7.9 COMP (Comparison: SUB 15).............................................................................342
4.7.10 COIN (Coincidence Check: SUB 16)...................................................................344
4.8 BIT OPERATION.......................................................................................346
4.8.1 DIFU (Rising Edge Detection: SUB 57).............................................................348
4.8.2 DIFD (Falling Edge Detection: SUB 58)............................................................349
4.8.3 EOR (Exclusive OR: SUB 59)............................................................................350
4.8.4 AND (Logical AND: SUB 60)............................................................................352
4.8.5 OR (Logical OR: SUB 61)..................................................................................354
4.8.6 NOT (Logical NOT: SUB 62).............................................................................356
4.8.7 PARI (Parity Check: SUB 11)............................................................................. 358
4.8.8 SFT (Shift Register: SUB 33) .............................................................................360
4.8.9 EORB (Exclusive OR (1 Byte Length) : SUB 265) EORW (Exclusive OR (2 Bytes Length) : SUB 266)
EORD (Exclusive OR (4 Bytes Length) : SUB 267) ...........................................362
4.8.10 ANDB (Logical AND (1 Byte Length) : SUB 268) ANDW (Logical AND (2 Bytes Length) : SUB 269)
ANDD (Logical AND (4 Bytes Length) : SUB 270)...........................................365
4.8.11 ORB (Logical OR (1 Byte Length) : SUB 271) ORW (Logical OR (2 Bytes Length) : SUB 272)
ORD (Logical OR (4 Bytes Length) : SUB 273) .................................................368
4.8.12 NOTB (Logical NOT (1 Byte Length) : SUB 274) NOTW (Logical NOT (2 Bytes Length) : SUB 275)
NOTD (Logical NOT (4 Bytes Length) : SUB 276)............................................371
4.8.13 SHLB (Bit Shift Left (1 Byte Length) : SUB 277) SHLW (Bit Shift Left (2 Bytes Length) : SUB 278)
SHLD (Bit Shift Left (4 Bytes Length) : SUB 279).............................................373
4.8.14 SHLN (Bit Shift Left (Arbitrary Bytes Length) : SUB 280)................................376
4.8.15 SHRB (Bit Shift Right (1 Byte Length) : SUB 281) SHRW (Bit Shift Right (2 Bytes Length) : SUB 282)
SHRD (Bit Shift Right (4 Bytes Length) : SUB 283)..........................................379
4.8.16 SHRN (Bit Shift Right (Arbitrary Bytes Length) : SUB 284) .............................382
4.8.17 ROLB (Bit Rotation Left (1 Byte Length) : SUB 285) ROLW (Bit Rotation Left (2 Bytes Length) : SUB 286)
ROLD (Bit Rotation Left (4 Bytes Length) : SUB 287) ......................................385
4.8.18 ROLN (Bit Rotation Left (Arbitrary Bytes Length) : SUB 288) .........................388
4.8.19 RORB (Bit Rotation Right (1 Byte Length) : SUB 289) RORW (Bit Rotation Right (2 Bytes Length) : SUB 290)
RORD (Bit Rotation Right (4 Bytes Length) : SUB 291)....................................391
4.8.20 RORN (Bit Rotation Right (Arbitrary Bytes Length) : SUB 292).......................394
4.8.21 BSETB (Bit Set (1 Byte Length) : SUB 293) BSETW (Bit Set (2 Bytes Length) : SUB 294)
BSETD (Bit Set (4 Bytes Length) : SUB 295).....................................................397
4.8.22 BSETN (Bit Set (Arbitrary Bytes Length) : SUB 296)........................................399
4.8.23 BRSTB (Bit Reset (1 Byte Length) : SUB 297) BRSTW (Bit Reset (2 Bytes Length) : SUB 298)
BRSTD (Bit Reset (4 Bytes Length) : SUB 299).................................................402
4.8.24 BRSTN (Bit Reset (Arbitrary Bytes Length) : SUB 300)....................................404
4.8.25 BTSTB (Bit Test (1 Byte Length) : SUB 301) BTSTW (Bit Test (2 Bytes Length) : SUB 302)
BTSTD (Bit Test (4 Bytes Length) : SUB 303)...................................................407
4.8.26 BTSTN (Bit Test (Arbitrary Bytes Length) : SUB 304)......................................409
4.8.27 BPOSB (Bit Search (1 Byte Length) : SUB 305) BPOSW (Bit Search (2 Bytes Length) : SUB 306)
BPOSD (Bit Search (4 Bytes Length) : SUB 307)...............................................412
c-6
Page 11
B-64513EN/01 TABLE OF CONTENTS
4.8.28 BPOSN (Bit Search (Arbitrary Bytes Length) : SUB 308)..................................414
4.8.29 BCNTB (Bit Count (1 Byte Length) : SUB 309) BCNTW (Bit Count (2 Bytes Length) : SUB 310)
BCNTD (Bit Count (4 Bytes Length) : SUB 311)...............................................416
4.8.30 BCNTN (Bit Count (Arbitrary Bytes Length) : SUB 312) ..................................418
4.9 CODE CONVERSION...............................................................................420
4.9.1 COD (Code Conversion: SUB 7)........................................................................421
4.9.2 CODB (Binary Code Conversion: SUB 27)........................................................424
4.9.3 DCNV (Data Conversion: SUB 14)....................................................................427
4.9.4 DCNVB (Extended Data Conversion: SUB 31)..................................................429
4.9.5 DEC (Decode: SUB 4) ........................................................................................431
4.9.6 DECB (Binary Decoding: SUB 25) ....................................................................433
4.9.7 TBCDB (Binary to BCD Conversion (1 Byte Length) : SUB 313) TBCDW (Binary to BCD Conversion (2 Bytes Length) : SUB 314)
TBCDD (Binary to BCD Conversion (4 Bytes Length) : SUB 315) ...................436
4.9.8 FBCDB (BCD to Binary Conversion (1 Byte Length) : SUB 313) FBCDW (BCD to Binary Conversion (2 Bytes Length) : SUB 314)
FBCDD (BCD to Binary Conversion (4 Bytes Length) : SUB 315)....................438
4.10 OPERATION INSTRUCTION....................................................................440
4.10.1 ADDB (Binary Addition: SUB 36).....................................................................441
4.10.2 SUBB (Binary Subtraction: SUB 37)..................................................................443
4.10.3 MULB (Binary Multiplication: SUB 38)............................................................445
4.10.4 DIVB (Binary Division: SUB 39).......................................................................447
4.10.5 ADD (BCD Addition: SUB 19) ..........................................................................449
4.10.6 SUB (BCD Subtraction: SUB 20).......................................................................451
4.10.7 MUL (BCD Multiplication: SUB 21)..................................................................453
4.10.8 DIV (BCD Division: SUB 22) ............................................................................455
4.10.9 NUMEB (Definition of Binary Constants: SUB 40)...........................................457
4.10.10 NUME (BCD Definition of Constant: SUB 23)..................................................459
4.10.11 ADDSB (Addition (1 Byte Length) : SUB 319) ADDSW (Addition (2 Bytes Length) : SUB 320)
ADDSD (Addition (4 Bytes Length) : SUB 321) ................................................460
4.10.12 SUBSB (Subtraction (1 Byte Length) : SUB 322) SUBSW (Subtraction (2 Bytes Length) : SUB 323)
SUBSD (Subtraction (4 Bytes Length) : SUB 324).............................................462
4.10.13 MULSB (Multiplication (1 Byte Length) : SUB 325) MULSW (Multiplication (2 Bytes Length) : SUB 326)
MULSD (Multiplication (4 Bytes Length) : SUB 327)........................................464
4.10.14 DIVSB (Division (1 Byte Length) : SUB 328)
DIVSW (Division (2 Bytes Length) : SUB 329)
DIVSD (Division (4 Bytes Length) : SUB 330) ..................................................466
4.10.15 MODSB (Remainder (1 Byte Length) : SUB 331) MODSW (Remainder (2 Bytes Length) : SUB 332)
MODSD (Remainder (4 Bytes Length) : SUB 333).............................................468
4.10.16 INCSB (Increment (1 Byte Length) : SUB 334)
INCSW (Increment (2 Bytes Length) : SUB 335)
INCSD (Increment (4 Bytes Length) : SUB 336) ................................................470
4.10.17 DECSB (Decrement (1 Byte Length) : SUB 337) DECSW (Decrement (2 Bytes Length) : SUB 338)
DECSD (Decrement (4 Bytes Length) : SUB 339)..............................................472
4.10.18 ABSSB (Absolute Value (1 Byte Length) : SUB 340) ABSSW (Absolute Value (2 Bytes Length) : SUB 341)
ABSSD (Absolute Value (4 Bytes Length) : SUB 342)....................................... 474
c-7
Page 12
TABLE OF CONTENTS B-64513EN/01
4.10.19 NEGSB (Sign Inversion (1 Byte Length) : SUB 343) NEGSW (Sign Inversion (2 Bytes Length) : SUB 344)
NEGSD (Sign Inversion (4 Bytes Length) : SUB 345)........................................476
4.11 INSTRUCTIONS RELATED TO CNC FUNCTIONS..................................478
4.11.1 DISPB (Display Message: SUB 41)....................................................................479
4.11.2 EXIN (External Data Input: SUB 42) .................................................................494
4.11.3 WINDR (Reading CNC Window Data: SUB 51)...............................................499
4.11.4 WINDW (Writing CNC Window Data: SUB 52)...............................................501
4.11.5 AXCTL (Axis Control by PMC: SUB 53)..........................................................503
4.11.6 PSGN2 (Position Signal: SUB 63).......................................................................509
4.11.7 PSGNL (Position Signal: SUB 50) ......................................................................512
4.12 PROGRAM CONTROL..............................................................................516
4.12.1 COM (Common Line Control: SUB 9)...............................................................517
4.12.2 COME (Common Line Control End: SUB 29)...................................................520
4.12.3 JMP (Jump: SUB 10) ..........................................................................................521
4.12.4 JMPE (Jump End: SUB 30).................................................................................523
4.12.5 JMPB (Label Jump 1: SUB 68)...........................................................................524
4.12.6 JMPC (Label Jump 2: SUB 73)...........................................................................526
4.12.7 LBL (Label: SUB 69)..........................................................................................528
4.12.8 CALL (Conditional Subprogram Call: SUB 65).................................................529
4.12.9 CALLU (Unconditional Subprogram Call: SUB 66).......................................... 530
4.12.10 SP (Subprogram: SUB 71)..................................................................................531
4.12.11 SPE (End of a Subprogram: SUB 72) .................................................................532
4.12.12 END1 (1st Level Sequence Program End: SUB 1).............................................532
4.12.13 END2 (2nd Level Sequence Program End: SUB 2)............................................533
4.12.14 END3 (3rd Level Sequence Program End: SUB 48) ..........................................533
4.12.15 END (End of a Ladder Program: SUB 64)..........................................................534
4.12.16 NOP (No Operation: SUB 70).............................................................................534
4.12.17 CS (Case Call: SUB 74).......................................................................................535
4.12.18 CM (Sub Program Call in Case Call: SUB 75)....................................................538
4.12.19 CE (End of Case Call: SUB 76)...........................................................................539
4.13 ROTATION CONTROL..............................................................................540
4.13.1 ROT (Rotation Control: SUB 6) .........................................................................541
4.13.2 ROTB (Binary Rotation Control: SUB 26).........................................................544
4.14 INVALID INSTRUCTIONS.........................................................................547
4.15 NOTE ON PROGRAMMING .....................................................................548
5 WINDOW FUNCTIONS.......................................................................549
5.1 FORMATS OF CONTROL DATA..............................................................550
5.2 LOW-SPEED RESPONSE AND HIGH-SPEED RESPONSE....................551
5.2.1 Note on the Programming of a Low-speed Response Window Instruction .........552
5.3 LIST OF WINDOW FUNCTIONS...............................................................553
5.3.1 List of Window Functions (Function Group Order).............................................553
5.3.2 List of Window Functions (Function Code Order) ..............................................557
5.3.3 Compatibility with Conventional Models............................................................560
5.4 CNC INFORMATION.................................................................................562
5.4.1 Reading CNC System Information (High-speed Response) ................................562
5.4.2 Reading a Tool Offset (High-speed Response)....................................................564
5.4.3 Writing a Tool Offset (Low-speed Response)......................................................566
5.4.4 Reading a Workpiece Origin Offset Value (High-speed Response)....................568
5.4.5 Writing a Workpiece Origin Offset Value (Low-speed Response)......................570
5.4.6 Reading a Parameter (High-speed Response) ......................................................572
5.4.7 Writing a Parameter (Low-speed Response)........................................................574
c-8
Page 13
B-64513EN/01 TABLE OF CONTENTS
5.4.8 Reading a Real Type Parameter (High-speed Response).....................................576
5.4.9 Writing a Real Type Parameter (Low-speed Response).......................................580
5.4.10 Reading Setting Data (High-speed Response)......................................................584
5.4.11 Writing Setting Data (Low-speed Response).......................................................586
5.4.12 Reading a Custom Macro Variable (High-speed Response)................................587
5.4.13 Writing a Custom Macro Variable (Low-speed Response)..................................589
5.4.14 Reading a Custom Macro Variable (Variable Number Extension) (Low-speed
Response) .............................................................................................................591
5.4.15 Writing a Custom Macro Variable (Variable Number Extension) (Low-speed
Response) .............................................................................................................593
5.4.16 Reading the CNC Alarm Status (High-speed Response) .....................................595
5.4.17 Reading the Current Program Number (High-speed Response)...........................597
5.4.18 Reading the Current Sequence Number (High-speed Response).........................599
5.4.19 Reading Modal Data (High-speed Response) ......................................................600
5.4.20 Reading Diagnosis Data (Low-speed Response)..................................................610
5.4.21 Reading Diagnosis Data (High-speed Response).................................................612
5.4.22 Reading a P-CODE Macro Variable (High-speed Response)..............................614
5.4.23 Writing a P-CODE Macro Variable (Low-speed Response)................................617
5.4.24 Reading CNC Status Information (High-speed Response) ..................................620
5.4.25 Reading the Current Program Number (8-digit Program Numbers) (High-speed
Response) .............................................................................................................622
5.4.26 Entering Data on the Program Check Screen (Low-speed Response) .................624
5.4.27 Reading Clock Data (Date and Time) (High-speed Response)............................625
5.4.28 Writing Clock Data (Date and Time) (Low-speed Response)..............................627
5.4.29 Reading the Pitch Error Compensation Value (High-speed Response) ...............631
5.4.30 Writing the Pitch Error Compensation Value (Low-speed Response).................632
5.4.31 Tool Figure Making Instruction for 3D Interference Check Function (Low-speed
Response) .............................................................................................................633
5.4.32 Reading Detailed Information of CNC Alarm .....................................................635
5.4.33 Command for Changing the Interference Object for 3D Interference Check
Function (Low-speed Response)..........................................................................640
5.5 AXIS INFORMATION ................................................................................642
5.5.1 Reading the Actual Velocity of Controlled Axes (High-speed Response)...........642
5.5.2 Reading the Absolute Position (Absolute Coordinates) of Controlled Axes
(High-speed Response).........................................................................................643
5.5.3 Reading the Machine Position (Machine Coordinates) of Controlled Axes
(High-speed Response).........................................................................................645
5.5.4 Reading a Skip Position (Stop Coordinates of Skip Operation (G31)) of
Controlled Axes (High-speed Response) .............................................................647
5.5.5 Reading the Servo Delay for Controlled Axes (High-speed Response) ...............649
5.5.6 Reading the Acceleration/Deceleration Delay on Controlled Axes (High-speed
Response) .............................................................................................................651
5.5.7 Reading the Feed Motor Load Current Value (A/D Conversion Data)
(High-speed Response).........................................................................................653
5.5.8 Reading the Actual Spindle Speed (High-speed Response).................................655
5.5.9 Reading the Relative Position on a Controlled Axis (High-speed Response)......656
5.5.10 Reading the Remaining Travel (High-speed Response).......................................658
5.5.11 Reading the Actual Velocity of each Controlled Axis (High-speed Response)... 660
5.5.12 Reading Actual Spindle Speeds (High-speed Response)..................................... 662
5.5.13 Entering Torque Limit Data for the Digital Servo Motor (Low-speed Response)665
5.5.14 Reading Load Information of the Spindle Motor (Serial Interface) (High-speed
Response) .............................................................................................................667
5.5.15 Reading a Chopping Data (Low-speed Response)...............................................669
5.5.16 Reading the Actual Speed of Servo Motor (High-speed Response) ....................672
5.5.17 Reading the Estimate Disturbance Torque Data (High-speed Response)............677
c-9
Page 14
TABLE OF CONTENTS B-64513EN/01
5.5.18 Reading a Fine Torque Sensing Data (Statistical Calculation Results)
(High-speed Response).........................................................................................682
5.5.19 Reading a Fine Torque Sensing Data (Store Data) (High-speed Response)........685
5.5.20 Presetting the Relative Coordinate (Low-speed Response) .................................690
5.5.21 Reading the Three-Dimensional Error Compensation Data (Low-Speed
Response) .............................................................................................................692
5.5.22 Writing the Three-Dimensional Error Compensation Data (Low-Speed
Response) .............................................................................................................694
5.5.23 Reading the Actual Machine Position of Controlled Axes...................................697
5.6 TOOL LIFE MANAGEMENT FUNCTION..................................................700
5.6.1 Reading The Tool Life Management Data (Tool Group Number) (High-speed
Response) .............................................................................................................700
5.6.2 Reading Tool Life Management Data (Number of Tool Groups) (High-speed
Response) .............................................................................................................702
5.6.3 Reading Tool Life Management Data (Number of Tools) (High-speed
Response) .............................................................................................................704
5.6.4 Reading Tool Life Management Data (Tool Life) (High-speed Response).........706
5.6.5 Reading Tool Life Management Data (Tool Life Counter) (High-speed
Response) .............................................................................................................708
5.6.6 Reading Tool Life Management Data (Tool Length Compensation Number (1):
Tool Number) (High-speed Response).................................................................710
5.6.7 Reading Tool Life Management Data (Tool Length Compensation Number (2):
Tool Order Number) (High-speed Response) ......................................................712
5.6.8 Reading Tool Life Management Data (Cutter Radius Compensation Number (1):
Tool Number) (High-speed Response).................................................................714
5.6.9 Reading Tool Life Management Data (Cutter Radius Compensation Number (2):
Tool Order Number) (High-speed Response) ......................................................716
5.6.10 Reading Tool Life Management Data (Tool Information (1): Tool Number)
(High-speed Response).........................................................................................718
5.6.11 Reading Tool Life Management Data (Tool Information (2): Tool Order
Number) (High-speed Response).........................................................................720
5.6.12 Reading Tool Life Management Data (Tool Number) (High-speed Response)...722
5.6.13 Reading the Tool Life Management Data (Tool Life Counter Type)
(High-speed Response).........................................................................................724
5.6.14 Registering Tool Life Management Data (Tool Group)(Low-speed Response)..726
5.6.15 Writing Tool Life Management Data (Tool Life)(Low-speed Response)............728
5.6.16 Writing Tool Life Management Data (Tool Life Counter)(Low-speed
Response) .............................................................................................................730
5.6.17 Writing Tool Life Management Data (Tool Life Counter Type)(Low-speed
Response) .............................................................................................................732
5.6.18 Writing Tool Life Management Data (Tool Length Compensation Number (1):
Tool Number)(Low-speed Response) ..................................................................733
5.6.19 Writing Tool Life Management Data (Tool Length Compensation Number (2):
Tool Order Number)(Low-speed Response)........................................................734
5.6.20 Writing Tool Life Management Data (Cutter Radius Compensation Number (1):
Tool Number)(Low-speed Response) ..................................................................735
5.6.21 Writing Tool Life Management Data (Cutter Radius Compensation Number (2):
Tool Order Number)(Low-speed Response)........................................................736
5.6.22 Writing the Tool Life Management Data (Tool Information (1): Tool Number)
(Low-speed Response) .........................................................................................737
5.6.23 Writing the Tool Management Data (Tool Information (2): Tool Order Number)
(Low-speed Response) .........................................................................................739
5.6.24 Writing Tool Life Management Data (Tool Number)(Low-speed Response).....741
5.6.25 Reading The Tool Life Management Data (Tool Group Number) (High-speed
Response)(8-digit Tool Number) .........................................................................742
c-10
Page 15
B-64513EN/01 TABLE OF CONTENTS
5.6.26 Reading Tool Life Management Data (Tool Information (1): Tool Number)
(High-speed Response)(8-digit Tool Number).....................................................744
5.6.27 Registering Tool Life Management Data (Tool Group Number) (Low-speed
Response) (8-digit Tool Number) ........................................................................746
5.6.28 Reading Tool Life Management Data (Tool Length Compensation Number (1): Tool
Number) (High-speed Response) (8-digit Tool Number) ....................................748
5.6.29 Reading Tool Life Management Data (Cutter Radius Compensation Number (1):
Tool Number) (High-speed Response) (8-digit Tool Number)............................750
5.6.30 Writing Tool Life Management Data (Tool Length Compensation Number (1):
Tool Number)(Low-speed Response) (8-digit Tool Number) .............................752
5.6.31 Writing Tool Life Management Data (Cutter Radius Compensation Number (1):
Tool Number)(Low-speed Response) (8-digit Tool Number) .............................753
5.6.32 Writing the Tool Life Management Data (Tool Information (1): Tool Number)
(Low-speed Response) (8-digit Tool Number) ....................................................754
5.6.33 Deleting Tool life Management Data (Tool Group)(Low-speed Response)........756
5.6.34 Deleting Tool life Management Data (Tool Data)(Low-speed Response)...........757
5.6.35 Clearing Tool Life Management Data (Tool Life Counter and Tool Information)
(Low-speed Response) .........................................................................................758
5.6.36 Writing Tool Life Management Data (Arbitrary Group Number)(Low-speed
Response) .............................................................................................................759
5.6.37 Writing Tool Life Management Data (Remaining Tool Life)(Low-speed
Response) .............................................................................................................760
5.7 TOOL MANAGEMENT FUNCTIONS ........................................................761
5.7.1 Exchanging Tool Management Data Numbers in a Magazine Management
Table (Low-speed Response)...............................................................................762
5.7.2 Searching for a Free Pot (Low-speed Response)..................................................764
5.7.3 Registering New Tool Management Data (Low-speed Response).......................766
5.7.4 Writing Tool Management Data (Low-speed Response).....................................771
5.7.5 Deleting Tool Management Data (Low-speed Response)....................................776
5.7.6 Reading Tool Management Data (Low-speed Response)....................................778
5.7.7 Writing a Specified Type of Tool Management Data (Low-speed Response).....782
5.7.8 Searching for Tool Management Data (Low-speed Response)............................787
5.7.9 Shifting Tool Management Data (Low-speed Response).....................................789
5.7.10 Searching for a Free Pot (Oversize Tools Supported) (Low-speed Response)....791
5.7.11 Reading the Total Tool Life Data (Low-speed Response)...................................793
5.7.12 Writing Tool Management Data by Specified Data (Low-speed Response) .......795
5.7.13 Deleting Tool Management Data by Specified Data (Low-speed Response)......801
5.7.14 Reading Tool Management Data by Specified Data (Low-speed Response).......803
5.7.15 Writing Each Tool Management Data by Specified Data (Low-speed
Response) .............................................................................................................807
5.7.16 Writing Magazine Property Data (Low-speed Response)....................................812
5.7.17 Reading Magazine Property Data (Low-speed Response)...................................814
5.7.18 Writing Pot Property Data (Low-speed Response)..............................................816
5.7.19 Reading Pot Property Data (Low-speed Response) .............................................818
5.7.20 Searching for a Free Pot by Specified Data (Low-speed Response)....................820
5.7.21 Reading a Tool Geometry Data (Low-speed Response)......................................823
5.7.22 Writing a Tool Geometry Data (Low-speed Response).......................................825
5.7.23 Moving Tool Management Data Numbers in a Magazine Management Table
(Low-speed Response) .........................................................................................827
5.7.24 Reading free number of Multi edge group / Tool offset (High-speed Response) 830
5.7.25 Writing Edge Data (Low-speed Response)..........................................................832
5.7.26 Reading Edge Data (Low-speed Response).........................................................835
5.7.27 Writing Each Edge Data (Low-speed Response).................................................838
5.7.28 Reading the Total Tool Life Data of an Edge (Low-speed Response).................841
c-11
Page 16
TABLE OF CONTENTS B-64513EN/01
6 OPERATING THE PMC SCREEN ......................................................843
6.1 OPERATION SCREENS OF THE PMC AND SOFT KEY
ORGANIZATION .......................................................................................845
6.1.1 Transition of the PMC Screens.............................................................................845
6.1.2 Basic Screen Operations.......................................................................................846
6.2 DISPLAY AND OPERATION CONDITIONS FOR SCREENS...................848
6.2.1 Programmer Protection Function .........................................................................849
6.2.2 PMC Parameter Input/Output Conditions............................................................856
6.2.3 Password Function for Ladder Program ...............................................................858
6.2.4 Partial Protection Function for Ladder Program..................................................860
6.2.5 Password Function for I/O Configuration Data....................................................860
6.2.6 Protection of Data at 8 Levels..............................................................................862
6.3 MULTI-PMC DISPLAY...............................................................................865
6.4 DISPLAYING EXTENDED SYMBOL AND COMMENT.............................867
7 PMC DIAGNOSIS AND MAINTENANCE SCREENS
([PMC MAINTE]).................................................................................869
7.1 MONITORING PMC SIGNAL STATUS ([STATUS] SCREEN)..................870
7.1.1 Forced I/O Function .............................................................................................872
7.1.2 Forced I/O Screen.................................................................................................875
7.2 CHECKING PMC ALARMS ([PMC ALARM] SCREEN).............................878
7.3 SETTING AND DISPLAYING PMC PARAMETERS..................................879
7.3.1 Setting and Displaying Variable Timers ([TIMER] Screen)................................880
7.3.2 Setting and Displaying Counter Values ([COUNTR] Screen).............................883
7.3.3 Setting and Displaying Keep Relays ([KEEP RELAY] Screen)..........................885
7.3.4 Setting and Displaying Data Tables ([DATA] Screen)........................................887
7.4 DATA INPUT/OUTPUT ([I/O] SCREEN)...................................................896
7.4.1 Memory Card and USB Memory.........................................................................900
7.4.2 Setting the Communication Port ([PORT SETING] Screen)...............................901
7.4.3 Displaying a File List ([LIST] Screen).................................................................903
7.4.4 Setting an I/O Target PMC...................................................................................905
7.4.5 Outputting a Sequence Program to the Memory Card or the USB Memory........907
7.4.6 Inputting a Sequence Program from the Memory Card or the USB Memory......908
7.4.7 Comparing Sequence Programs with Memory Card Files or USB Memory Files910
7.4.8 Saving Sequence Programs to the Flash ROM.....................................................911
7.4.9 Inputting Sequence Programs from the Flash ROM ............................................912
7.4.10 Comparing Sequence Programs with Flash ROM Files.......................................914
7.4.11 Outputting a Sequence Program to the FLOPPY.................................................914
7.4.12 Inputting a Sequence Program from the FLOPPY...............................................915
7.4.13 Comparing Sequence Programs with FLOPPY Files...........................................917
7.4.14 Outputting Sequence Programs to Other Devices (via the RS-232C Port)..........918
7.4.15 Inputting Sequence Programs from Other Devices (via the RS-232C Port)........919
7.4.16 Comparing Sequence Programs with Files of Other Devices (via the RS-232C
Port)......................................................................................................................921
7.4.17 Outputting PMC Parameters to the Memory Card or the USB memory..............922
7.4.18 Inputting PMC Parameters from the Memory Card or the USB Memory ...........923
7.4.19 Comparing PMC Parameters with Memory Card Files or USB Memory Files...925
7.4.20 Outputting PMC Parameters to the FLOPPY.......................................................926
7.4.21 Inputting PMC Parameters from the FLOPPY.....................................................927
7.4.22 Comparing PMC Parameters with FLOPPY Files...............................................928
7.4.23 Outputting PMC Parameters to Other Devices
(via the RS-232C Port).........................................................................................929
c-12
Page 17
B-64513EN/01 TABLE OF CONTENTS
7.4.24 Inputting PMC Parameters from Other Devices (via the RS-232C Port).............930
7.4.25 Comparing PMC Parameters with Files of Other Devices (via the RS-232C
Port)......................................................................................................................931
7.4.26 Outputting Message Data for Multi-Language Display to the Memory Card or
the USB memory..................................................................................................932
7.4.27 Inputting Message Data for Multi-Language Display from the Memory Card or
the USB memory..................................................................................................933
7.4.28 Comparing Message Data for Multi-Language Display with Memory Card Files
or USB Memory Files ..........................................................................................935
7.4.29 Saving Message Data for Multi-Language Display to the Flash ROM................936
7.4.30 Inputting Message Data for Multi-Language Display from the Flash ROM........937
7.4.31 Comparing Message Data for Multi-Language Display with Flash ROM Files..938
7.4.32 Outputting Trace setting data to the Memory Card or the USB Memory............939
7.4.33 Inputting Trace Setting Data from the Memory Card or the USB Memory.........940
7.4.34 Outputting I/O Configuration data to the Memory Card or USB Memory..........941
7.4.35 Inputting I/O Configuration data from the Memory Card or USB Memory........942
7.4.36 Comparing I/O Configuration data with Memory Card Files or USB Memory
Files......................................................................................................................943
7.4.37 Saving I/O Configuration data to the Flash ROM................................................944
7.4.38 Inputting I/O Configuration data from the Flash ROM........................................945
7.4.39 Comparing I/O Configuration data with Flash ROM Files..................................945
7.4.40 Deleting Memory Card/USB memory Files or Formatting a Memory Card.......946
7.4.41 Deleting One or All FLOPPY Files......................................................................947
7.5 DISPLAYING I/O DEVICES CONNECTION STATUS ([I/O DEVICE]
SCREEN) ..................................................................................................948
7.5.1 Registration of I/O Devices Configuration...........................................................951
7.5.2 Check of I/O Link Connection.............................................................................952
7.6 TRACING AND DISPLAYING PMC SIGNAL STATUS .............................955
7.6.1 Signal Trace Function ([TRACE] Screen) ...........................................................955
7.6.2 Setting of Trace Parameter ([TRACE SETING] Screen).....................................956
7.6.3 Execution of Trace ...............................................................................................961
7.6.4 Operation after Execution of Trace......................................................................962
7.6.5 Automatic Start of Trace Setting..........................................................................964
7.6.6 Trace Result Output..............................................................................................965
7.7 MONITORING I/O DIAGNOSIS ([I/O DGN] SCREEN)..............................969
7.7.1 I/O DIAGNOSIS Screen ......................................................................................970
7.7.2 SETTING Screen of I/O DIAGNOSIS ................................................................977
8 LADDER DIAGRAM MONITOR AND EDITOR SCREENS
([PMC LADDER])................................................................................980
8.1 DISPLAYING A PROGRAM LIST ([LIST] SCREEN).................................982
8.1.1 Setting the Program List Screen...........................................................................984
8.2 MONITORING LADDER DIAGRAMS ([LADDER] SCREEN)....................985
8.2.1 Operating on the LADDER DIAGRAM MONITOR Screen...............................988
8.2.2 Setting the Display Format of the LADDER DIAGRAM MONITOR Screen....992
8.2.3 Display Format for Parameters.............................................................................999
8.2.4 FUNCTIONAL INSTRUCTION DATA TABLE VIEWER Screen.................1011
8.3 EDITING LADDER PROGRAMS.............................................................1013
8.3.1 Operating on the LADDER DIAGRAM EDITOR Screen.................................1015
8.3.2 Setting the LADDER DIAGRAM EDITOR Screen..........................................1018
8.3.3 NET EDITOR Screen.........................................................................................1024
8.3.4 Structure of Valid Net ........................................................................................1033
8.3.4.1 Structure of standard type net........................................................................ 1033
c-13
Page 18
TABLE OF CONTENTS B-64513EN/01
8.3.4.2 Structure of extended type net.......................................................................1034
8.3.4.3 Ladder that is not programmable................................................................... 1039
8.3.5 Optimization.......................................................................................................1040
8.3.6 FUNCTIONAL INSTRUCTION LIST Screen..................................................1041
8.3.7 FUNCTIONAL INSTRUCTION DATA TABLE EDITOR Screen..................1043
8.3.8 Operating on the FUNCTIONAL INSTRUCTION DATA TABLE EDITOR
Screen.................................................................................................................1044
8.3.9 PROGRAM LIST EDITOR Screen ...................................................................1046
8.3.10 Setting the PROGRAM LIST EDITOR Screen.................................................1048
8.4 SELECTING AND DISPLAYING THE NECESSARY LADDER NET
([SWITCH] SCREEN]).............................................................................1049
8.4.1 Collective Monitor Function..............................................................................1049
8.4.2 Collective Monitor Screen..................................................................................1050
8.5 ADDRESS ALTERATION FUNCTION ....................................................1053
8.5.1 Screen Structures................................................................................................1054
8.5.2 Operating on the Screen .....................................................................................1055
8.6 FUNCTION TO REFERENCE ADDRESSES IN USE.............................1057
8.6.1 Address Map Display Screen .............................................................................1057
8.6.2 Operating on the Screen .....................................................................................1058
8.7 FUNCTION TO AUTOMATICALLY INPUT UNUSED ADDRESSES.......1059
8.8 AUTOMATICALLY INPUTTING UNUSED PARAMETER NUMBERS.....1060
8.9 DETECTION OF DOUBLE COILS...........................................................1061
8.10 CHECKING OF DUPLICATE COIL ([DUP. CHECK] SCREEN)..............1062
8.11 DISPLAYING A SUBPROGRAM LIST ([SPLIST] SCREEN)...................1065
8.11.1 Display history of a Subprogram........................................................................1065
8.11.2 Subprogram List Display Screen........................................................................1067
8.11.3 Setting Subprogram List Screen.........................................................................1068
8.12 OPERATION BY TOUCH PANEL ...........................................................1069
8.12.1 Operation List of the Touch Panel......................................................................1070
8.12.2 Operation of Program List Viewer Screen.........................................................1071
8.12.3 Operation of Ladder Diagram Monitor Screen...................................................1073
8.12.4 Operation of Ladder Diagram Editor Screen......................................................1076
8.12.5 Operation of Net Editor Screen..........................................................................1077
8.12.6 Operation of Program List Editor Screen...........................................................1078
8.12.7 Operation of Collective Monitor Screen ............................................................1080
8.12.8 Operation of Subprogram List Display Screen ..................................................1083
9 PMC CONFIGURATION DATA SETTING SCREENS
([PMC CONFIG])...............................................................................1085
9.1 DISPLAYING AND EDITING TITLE DATA ([TITLE] SCREENS).............1086
9.1.1 Displaying Title Data .........................................................................................1086
9.1.2 Editing Title Data...............................................................................................1088
9.1.3 Displaying Title Data (Message)........................................................................1091
9.2 DISPLAYING AND EDITING SYMBOL AND COMMENT DATA
([SYMBOL] SCREENS)...........................................................................1092
9.2.1 Displaying Symbol and Comment Data.............................................................1092
9.2.2 Editing Symbol and Comment Data...................................................................1094
9.2.3 Partially Changing Symbol and Comment Data.................................................1096
9.2.4 Registering New Symbol and Comment Data....................................................1098
9.2.5 Displaying Extended Symbol and Comment .....................................................1100
9.2.6 Editing Extended Symbol and Comment...........................................................1103
9.2.7 Adding an Extended Symbol and Comment......................................................1107
c-14
Page 19
B-64513EN/01 TABLE OF CONTENTS
9.3 DISPLAYING AND EDITING MESSAGE DATA ([MESAGE] SCREENS)1109
9.3.1 Displaying Message Data...................................................................................1109
9.3.2 Editing Message Data.........................................................................................1111
9.3.3 Editing Desired Message Data ...........................................................................1114
9.4 DISPLAYING AND EDITING I/O MODULE ALLOCATION DATA
([MODULE] SCREENS)...........................................................................1117
9.4.1 Displaying I/O Module Allocation Data ............................................................1117
9.4.2 Editing I/O Module Allocation Data..................................................................1118
9.5 DISPLAYING AND CHANGING PMC SETTINGS ([SETING]
SCREENS)..............................................................................................1121
9.6 DISPLAYING THE STATUS OF PMCS AND CHANGING THE TARGET
PMC ([PMC STATUS] SCREENS)..........................................................1129
9.6.1 Starting and Stopping Sequence Programs.........................................................1130
9.7 DISPLAYING AND SETTING PARAMETERS FOR THE ONLINE
FUNCTION ([ONLINE] SCREEN)............................................................1131
9.7.1 Setting Parameters for the Online Function .......................................................1133
9.7.2 Communication Status........................................................................................1135
9.7.3 About Ethernet Communication Parameters......................................................1136
9.7.4 About Connection Log of Ethernet ....................................................................1138
9.8 DISPLAYING AND SETTING SYSTEM PARAMETERS
([SYSTEM PARAM] SCREENS)..............................................................1140
9.8.1 Displaying and Setting the Counter Data Type..................................................1140
9.8.2 Displaying and Setting Parameters for an FS0 Operator's Panel........................1142
9.8.3 Displaying and Setting Parameters for the Selectable I/O Link Assignment
Function..............................................................................................................1145
9.9 DISPLAYING AND SETTING CONFIGURATION PARAMETERS
([CONFIG PARAM] SCREENS) ..............................................................1148
9.9.1 Menu for Setting Configuration Parameters.......................................................1148
9.9.2 Setting the CNC-PMC Interface.........................................................................1150
9.9.3 Setting the Machine Signal Interface .................................................................1154
9.9.4 Setting the Parameters Related to Ladder Execution .........................................1159
9.9.5 Setting the PMC Memory Type .........................................................................1162
9.10 DISPLAYING AND EDITING OF I/O Link i ASSIGNMENT ([I/O LINK I]
SCREEN) ................................................................................................1164
9.10.1 Displaying of Group Information of I/O Link i Assignment Data.....................1165
9.10.2 Displaying of Slot Information of I/O Link i Assignment Data.........................1168
9.10.3 Displaying of Title Information of I/O Link i Assignment Data........................1169
9.10.4 Setting of Effective Group of I/O Link i Assignment Data (Selectable
Assignment Function) ........................................................................................1170
9.10.5 Editing of Group Information of I/O Link i Assignment Data...........................1171
9.10.6 Changing of Slot Information of I/O Link i Assignment Data...........................1176
9.10.7 Adding of Slot Information of I/O Link i Assignment Data..............................1178
10 STEP SEQUENCE FUNCTION.........................................................1180
10.1 OVERVIEW .............................................................................................1180
10.1.1 Step Sequence Method.......................................................................................1180
10.1.2 Graphical Symbols.............................................................................................1183
10.1.3 Editing and Debugging Step Sequence Programs..............................................1184
10.2 STEP SEQUENCE BASICS....................................................................1185
10.2.1 Terminology.......................................................................................................1185
10.2.2 Execution of Step Sequence...............................................................................1192
c-15
Page 20
TABLE OF CONTENTS B-64513EN/01
10.3 CONFIGURATION AND OPERATION OF STEP–SEQUENCE
PROGRAMS............................................................................................1195
10.3.1 Step.....................................................................................................................1195
10.3.2 Initial Step ..........................................................................................................1197
10.3.3 Transition ...........................................................................................................1198
10.3.4 Divergence of Selective Sequence .....................................................................1198
10.3.5 Convergence of Selective Sequence...................................................................1199
10.3.6 Divergence of Simultaneous Sequence..............................................................1200
10.3.7 Convergence of Simultaneous Sequence............................................................1200
10.3.8 Jump ...................................................................................................................1202
10.3.9 Label...................................................................................................................1203
10.3.10 Block Step ..........................................................................................................1204
10.3.11 Initial Block Step ................................................................................................1205
10.3.12 End Of Block Step..............................................................................................1205
10.4 EXTENDED LADDER INSTRUCTIONS..................................................1206
10.4.1 Functional Instruction TRSET ...........................................................................1206
10.4.2 PMC Address (S Address)..................................................................................1206
10.5 SPECIFICATION OF STEP SEQUENCE................................................1208
10.5.1 Specification.......................................................................................................1208
10.5.2 General Rules.....................................................................................................1208
10.5.3 Exclusive Control for Functional Instructions ...................................................1214
10.6 STEP SEQUENCE SCREEN OPERATION ............................................1217
10.6.1 Displaying a Step Sequence Diagram ................................................................1217
10.6.2 History of Display..............................................................................................1219
10.6.3 Program List Display Screen..............................................................................1219
10.6.4 Step Sequence Display Screen ...........................................................................1220
10.6.5 Setting the Step Sequence Diagram Screen........................................................1222
10.6.6 Subprogram List Display Screen........................................................................1224
10.6.7 Setting Subprogram List Screen.........................................................................1224
10.6.8 Ladder Diagram Monitor Screen........................................................................1224
10.6.9 Collective Monitor Screen..................................................................................1224
10.7 EXECUTION STATE DISPLAY...............................................................1225
10.7.1 Step Sequence State Display Screen (Global)....................................................1225
10.7.2 Step Sequence State Display Screen (Subprogram)...........................................1227
10.8 TIME MONITOR FUNCTION...................................................................1229
10.8.1 Time Monitor Setting Screen.............................................................................1230
11 FUNCTION BLOCK FUNCTION.......................................................1232
11.1 OVERVIEW .............................................................................................1232
11.1.1 Item Names.........................................................................................................1233
11.1.2 Overview of Specifications................................................................................1234
11.1.3 Memory Usage Related to Function Blocks.......................................................1238
11.1.4 Assignment of FB Variable................................................................................1239
11.2 FUNCTION BLOCK DEFINITION............................................................1240
11.2.1 Function Block Name.........................................................................................1240
11.2.2 Variable Information..........................................................................................1241
11.2.3 FB Body Program...............................................................................................1249
11.2.4 Other Information...............................................................................................1251
11.3 FUNCTION BLOCK CALL.......................................................................1253
11.3.1 Function Block Call Positions............................................................................1253
11.3.2 Creating a Function Block Call Section.............................................................1253
11.4 EXECUTING A FUNCTION BLOCK........................................................1256
11.5 DISPLAYING AND EDITING A FUNCTION BLOCK...............................1258
c-16
Page 21
B-64513EN/01 TABLE OF CONTENTS
11.5.1 Program List Display Screen..............................................................................1259
11.5.2 LADDER DIAGRAM MONITOR Screen ........................................................1260
11.5.3 Displaying Internal and External Variables in the Monitor (FB Instance
Monitor Display)................................................................................................1267
11.5.4 Displaying the FB Body Program......................................................................1268
11.5.5 Setting the Display Format of the LADDER DIAGRAM MONITOR Screen..1269
11.5.6 LADDER DIAGRAM EDITOR Screen ............................................................1274
11.5.7 NET EDITOR Screen.........................................................................................1277
11.5.8 Address Alteration Function ..............................................................................1277
11.5.9 Address Map Display Screen .............................................................................1279
11.5.10 Duplicate Coil Check Screen..............................................................................1280
11.5.11 Subprogram List Display Screen........................................................................1281
11.5.12 Title Screen.........................................................................................................1283
11.6 DISPLAYING AND EDITING SYMBOL AND COMMENT.......................1284
11.6.1 Extended Symbol and Comment Screen............................................................1284
11.6.2 Displaying Extended Symbol and Comment .....................................................1285
12 PMC ALARM MESSAGES AND ACTIONS TO TAKE.....................1286
12.1 ALARM MESSAGE LIST.........................................................................1286
12.1.1 Messages That May Be Displayed on the PMC Alarm Screen..........................1286
12.1.2 PMC System Alarm Messages...........................................................................1294
12.1.3 Operation Errors.................................................................................................1299
12.1.4 I/O Communication Error Messages..................................................................1315
12.2 I/O Link COMMUNICATION ERRORS AND ACTIONS TO TAKE ..........1320
12.2.1 Causes of Communication Errors.......................................................................1321
12.2.2 Check Items........................................................................................................1323
12.2.3 Sample Cases......................................................................................................1324
c-17
Page 22
Page 23
B-64513EN/01 1.OVERVIEW OF PMC

1 OVERVIEW OF PMC

1.1 WHAT IS PMC?

The programmable machine controller (PMC) is a programmable controller (PC) built into a CNC to perform sequence control for a machine tool (spindle rotation, tool change, machine operator's panel control, and so on). Sequence control is to perform control steps successively in a predetermined sequence or according to the logic operation. Programs for performing sequence control for machine tools are called sequence programs. Generally, sequence programs coded in the Ladder language are used.

1.1.1 Basic Configuration of PMC

The following is the basic configuration of the PMC:
CNC
Internal
I/O
Fig. 1.1.1 Basic configuration of PMC
The sequence program reads input signals, performs operations, and outputs results in a predetermined sequence.
PMC
Sequence
program
Internal relay
External
I/O
Signal input to PM C
Signal output from PMC
Machine

1.1.2 I/O Signals of PMC

Input signals of the PMC include signals input from the CNC (such as M and T function signals) and signals input from the machine (such as the cycle start button and feed hold signal button). Output signals of the PMC include signals output to the CNC (such as the cycle start command and feed hold signal command) and signals output to the machine (such as turret rotation and spindle stop). The PMC controls these I/O signals by executing a sequence program to control the machine tool.
- 1 -
Page 24
1.OVERVIEW OF PMC B-64513EN/01
A
)

1.1.3 PMC Signal Addresses

PMC signal addresses indicate the locations of I/O signals exchanged with the machine, I/O signals exchanged with the CNC, and signals for internal relays and data (PMC parameters) in nonvolatile memory. PMC addresses are roughly classified as shown in Fig. 1.1.3 (a).
Signals to/from CNC
F
PMC
G
X
Y
Signals
to/from
machine
(MT)
Nonvolatile memory
Internal relay (R)
Extra relay (E)
Fig. 1.1.3 (a) PMC-related addresses
(1) Variable timer (T) (2) Counter (C) (3) Keep relay (K) (4) Data table (D)
(5) Extra relay (E)
(NOTE)
NOTE
Optionally, extra relays (E) may be assigned to nonvolatile memory locations.
The PMC signal address format consists of an address number and bit number (0 to 7) as follows:
Bit number (0 to 7)
ddress number (letter followed by decimal
number
Fig. 1.1.3 (b) PMC address format
The first letter of an address number represents the type of the signal. In sequence programs, an address of a byte may be specified. In the above example, specify X127 to
specify a byte address. In this case, the period "." and bit number are unnecessary.
- 2 -
Page 25
B-64513EN/01 1.OVERVIEW OF PMC
Table 1.1.3 lists the address symbols and corresponding signals.
Table 1.1.3 Address Symbols and signal types
Symbol Signal type
F Input signal from CNC to PMC (CNC PMC) G Output signal from PMC to CNC (PMC CNC) X Input signal from machine to PMC (MT PMC) Y Output signal fr om PMC t o machine (PMC MT) R Internal relay E Extra relay A Message display
T Variable timer C Counter K Keep relay D Data table M Input signal from another PMC path N Output signal to another PMC path
L Label number P Subprogram number
(1) Addresses of signals between the PMC and CNC (F and G) These addresses are assigned to interface signals between the CNC and PMC. The relationships
between the signals and addresses are defined by the CNC. F indicates an input signal from the CNC to PMC. G indicates an output signal from the PMC to CNC.
(2) Addresses of signals between the PMC and machine (X and Y) I/O signals exchanged with an externally connected machine can be assigned to any addresses within
an available range to control the machine. X indicates an input signal from the machine to PMC. Y indicates an output signal from the PMC to machine.
(3) Addresses of internal relays and extra relays (R and E) These addresses are used to temporarily store operation results during sequence program execution
processing. Optionally, E addresses may be assigned to nonvolatile memory locations. The address locations of internal relays also include a reserved area used by the PMC system software.
The signals in the reserved area cannot be written by sequence programs.
(4) Signal addresses for message display (A) Instruction “DISPB” used in sequence programs include instructions to display a message on the CNC
screen. These addresses are used by such instructions.
- 3 -
Page 26
1.OVERVIEW OF PMC B-64513EN/01
(5) Nonvolatile memory addresses The contents of these address locations are not erased even when the power is turned off. These addresses are used for management of the data items listed below. These data items are called
PMC parameters.
(a) Variable timer (T)
(b) Counter (C)
(c) Keep relay (K)
A reserved area used by the PMC system software is partly included.
(d) Data table (D)
(e) Extra relay (E)
Optionally, E addresses may be assigned to nonvolatile memory locations.
These addresses are used to temporarily store operation results during sequence program
execution processing.
(6) Multi-path PMC interface address (M, N) These addresses are used to the Multi-path PMC interface. M indicates an input signal from another PMC path. N indicates an output signal to another PMC path.
(7) Other addresses
(a) Label number (L)
Sequence program instructions include an instruction to cause a jump to a specified position in
the middle of processing. This address indicates the jump destination used by this instruction. The contents of L address cannot be read/written in sequence program.
(b) Subprogram number (P)
In sequence programs, a main program can call subprograms. P addresses indicate the numbers
of these subprograms. The contents of P address cannot be read/written in sequence program.
- 4 -
Page 27
B-64513EN/01 1.OVERVIEW OF PMC

1.2 WHAT IS LADDER LANGUAGE?

The Ladder language is one of sequence programming languages. This programming language, which represents the sequence and logic operations of I/O signals by ladder diagrams, is widely used by sequence control engineers. This language is mainly used for PMCs.

1.2.1 Ladder Diagram Format

Designers develop and see ladder diagrams in the design stage. However, other people (for example, many maintenance engineers) have much more chances to see ladder diagrams than the designers of the ladder diagrams have. Therefore, the designers should create ladder diagrams so that these diagrams are intelligible to any one. The following is the format of ladder diagrams:
Line No.
AddressSignal name (symbol name)
Net No.
The meanings of ladder diagram contents will be described later.
Comment

1.2.2 Signal Name (Symbol Name)

Symbol names representing I/O signal names can be assigned to PMC addresses. It is recommended that signal names (symbol names) suitable for I/O signals be assigned as explained below.
(1) Signal names may consist of any alphanumeric characters and the special symbols. The number of
characters that can be entered varies depending on the PMC model. For the allowable number of
characters, see the table in Subsection 2.1.1. (2) As the names of the signals between the CNC and PMC, use the signal names indicated in the address
table of the PMC without modifications. (3) Some CNC signals are input from the machine or output to the machine. The names of these signals
are distinguished by prefixing X or Y to the names of signals between the CNC and PMC. For example, a single block input signal is represented as XSBK by prefixing X, while a start lamp
output signal is represented as YSTL by prefixing Y.
- 5 -
Page 28
1.OVERVIEW OF PMC B-64513EN/01
The names of some signals between the CNC and PMC, however, exceed the maximum allowable
number of characters as a result of prefixing X or Y to the names. In such a case, delete the last
character of the signal name. (*SECLP → X*SECL)
(4) The same signal name (symbol name) cannot be assigned to more than one signal address.

1.2.3 Comment

A comment can be added to each symbol in the symbol table so that it can be indicated as a comment on a relay or coil in the sequence program. The number of characters that can be entered varies depending on the PMC model. For the number of characters that can be entered, see the table in Subsection 2.1.1. For all relays and coils that are output signals to the machine, add a comment to provide a detailed signal explanation. For other auxiliary relays, provide explanations of the signals if these relays have significant meanings in sequence control. In particular for machine-related input signals, be sure to provide a detailed signal explanation as a comment in the symbol table. Add detailed comments to signals dedicated to the machine so that one can guess the meanings of these signals just from the symbol names.

1.2.4 Graphic Symbols of Relays and Coils

Ladder diagrams use the following relay symbols:
Relays (contacts)
Instruction representation Function
-| |- Normally open contact (contact A)
-|/ |- Normally closed contact (contact B)
Coils
Instruction representation Function
-{- Coil
-{{- Negated coil
-(S)- Set coil
-(R)- Reset coil
These instructions perform a 1-bit operation and are called basic instructions. In addition, there are functional instructions that enable easy programming of complicated operations for processing byte, word, and double-word data, which are difficult to program just using basic instructions. The symbol formats of the functional instructions are slightly different from instruction to instruction. For details, see the description of each functional instruction in Chapter 4.

1.2.5 Line Number and Net Number

A line number is indicated in every line of ladder diagrams. A continuous ladder circuit from a contact to a coil is called a net. A net number is also indicated for each net.
- 6 -
Page 29
B-64513EN/01 1.OVERVIEW OF PMC
A
ABA
A
1.2.6 Difference Between Relay Sequence Circuit and Ladder
Sequence Program
In general relay sequence circuits, because of a limited number of relay contacts, one contact may be shared by several relays to minimize the number of contacts used. Fig. 1.2.6 (a) gives an example.
R1
B
R2
Fig. 1.2.6 (a)
With the PMC, relay contacts are considered to be unlimited, so ladder diagrams are created as shown in Fig.
1.2.6 (b).
R1
R2
Fig. 1.2.6 (b)
In a relay sequence circuit having no contact between a branch point and a coil as shown in Fig. 1.2.6 (c), a similar ladder diagram can be created even for the PMC.
B
R1
R2
Fig. 1.2.6 (c)
NOTE
The extended PMC ladder instruction function allows the sequence circuits like
Fig. 1.2.6(a). For details, see 8.3.4.
- 7 -
Page 30
1.OVERVIEW OF PMC B-64513EN/01
A
A

1.2.7 Specification of Extended Symbol and Comment

Using extended symbol and comment, you can use following functions.
Local symbols effective in sub programs
Extension of maximum character length of symbol and comment
Multi-language support of comment
Multiple definitions of symbol and comment to one signal
Data type definition
Automatic address assignment at compiling on FANUC LADDER-III
(1) Local symbols effective in sub programs You can define local symbols effective only in a sub program. So you can define local symbols having
same string in other sub programs. Local symbols defined in different sub programs do not conflict.
Using local symbols, symbol conflict does not occur. Therefore, it is easy to develop ladder in modular
programming technique. In addition, it is easy to reuse sequence programs. When you have to program
a similar program in some sub programs, copy the logic to another sub program, redefine the local
symbols, and compile on FANUC LADDER-III.
NOTE
1 Same local symbol names are not allowed in the same sub program. 2 Same symbol name of global symbol and local symbol are not allowed. 3 Local symbol cannot be defined to address P. Symbol definition to address P must
be global symbol.
4 You cannot create a sequence program using extended symbol and comment
only with CNC. To create it, you have to use FANUC LADDER-III.
5 When you use the function block function, it becomes extended symbol and
comment form automatically.
(2) Extension of maximum character length of symbol and comment Maximum character length of a symbol and comment is extended as follows. So you can describe in
details.
Kind Extended type Former
symbol 40 characters in maximum 16 characters in maximum
comment 4 set 255 characters in maximum 1 set 30 characters in maximum
P1 (Control_Path1)
Alarm
X*ESP
Lock = X100.0
larm = R1000.0
*ESP = G8.4
Lock
Global Symbol :
*ESP
X*ES P = X8.4
P2 (Control_Path2)
Alarm
X*ESP
Lock = X100.1
larm = R2000.0
*ESP = G1008.4
Lock
*ESP
- 8 -
Page 31
B-64513EN/01 1.OVERVIEW OF PMC
(3) Multi language support One symbol entry has four comments set in maximum. Displaying comment set can automatically selected by display language setting in CNC. By describing
each comment set in different languages, you can display comment in all PMC screens in multi
languages. This is very useful in maintenance.
(4) Multiple definitions of symbol and comment to one signal You can define multiple symbols and comments to the same signal.
NOTE
When multiple symbol and comment are defined to the same signal, you can
search the names by each symbol. On the other hand the symbol on PMC screen is displayed one of these symbol names. So if you search symbols, displayed symbol name on searched position may be different from searched word.
(5) Data type definition You can define symbol and comment with data type definition.
Data type Meaning
BOOL Boolean
BYTE 8 bits integer
WORD 16 bits integer
DWORD 32 bits integer
LABEL Label (Address L)
PROG Sub program (Address P)
NOTE
1 In ladder editing screen, for example, BYTE type symbol can be set to the WORD
type parameter of a function. But it is recommended that data type of the symbol should be consistent with the data type of the parameter that it is assigned to.
2 When two or more symbols are defined with a signal and these symbols have
different data types the symbol name of largest data type is displayed on PMC screens.
(6) Automatic address assignment at compiling on FANUC LADDER-III On FANUC LADDER-III, when programming by symbol names without actual addresses, this
function assigns addresses to them automatically.
CAUTION
The assignment of address may change by modifying symbol / comment data.
NOTE
By setting 1 to K903.5 of system keep relay, the signal state of the symbols whose
addresses are assigned automatically can be initialized when updating sequence program to the one of different symbol / comment data.
In this case, changing the symbol / comment data whose address is not assigned
automatically will also initialize all signal states of the address range for automatic assignment to 0.
- 9 -
Page 32
1.OVERVIEW OF PMC B-64513EN/01
(7) Available characters Those characters can be used.
- Available characters for symbol :
Kind Extended type Former
as the symbol
A to Z, a to z, 0 to 9, _ The character that can be used ! ” # & ’ ( ) * + , - < = > ? @ [ / ] ^ ` { | } ~
(Note)
A to Z, a to z, 0 to 9, _ Space, ! ” # $ % & ’ ( ) * + , . - < = > ? @ [ / ] ^ ` { | } ~ ; :
The character that cannot be used for the first character of the symbol The character that cannot be used for the symbol
% $
Space, ; : .
NOTE
Although it is allowed to use special characters in symbol, using only alphabets,
digits and _(underscore) to comply with the variable name defined in IEC61131-3 is recommended.
- Available characters for comment:
Kind Extended type Former
The character that can be used as the comment
A to Z, a to z, 0 to 9, Space ! ” # & ’ ( ) * + , . - < = > ? @ [ / ] ^ _ ` { | } ~ ; :
A to Z, a to z, 0 to 9, Space, ! ” # $ % & ’ ( ) * + , . - < = > ? @ [ / ] ^ _ ` { | } ~ ; :
- 10 -
Page 33
B-64513EN/01 1.OVERVIEW OF PMC

1.3 SEQUENCE PROGRAM CREATION PROCEDURE

This section briefly explains how to create a program for providing sequence control for a machine tool by using the Ladder language as an example. When creating a sequence program, see the necessary manual for editing after understanding the contents of this chapter thoroughly.

1.3.1 Determining Specification

First, determine the specifications of the control target. Calculate the number of I/O signals, and determine the interfaces of the I/O signals. In this step, creation of interface specifications is recommended.

1.3.2 Creating Ladder Diagram

After determining specifications, represent control operations with a ladder diagram. Timer, counter, and other functions that cannot be represented by relay symbols are called functional instructions. Represent these functional instructions with corresponding symbols. When using offline programmer or built-in edit function explained in "Editing Sequence Program" in the next subsection, you can enter a sequence program in a ladder diagram form. At the time of sequence program editing, you can make entry while creating a ladder diagram on the display screen, so you need not prepare a ladder diagram in advance. If you want to create a sequence program efficiently, however, it is recommended that you should create a ladder diagram in advance. Ladder diagrams are referenced as maintenance drawings by FANUC maintenance engineers, maintenance engineers of machine tool builders, and maintenance engineers of end users not only domestically but also in foreign countries. Therefore, try to create as intelligible ladder diagrams as possible.

1.3.3 Editing Sequence Program

A sequence program in the Ladder language is edited with one of the following two methods:
(1) PC programmer FANUC supplies FANUC LADDER-III as sequence program development software for FANUC
PMC. Use of FANUC LADDER-III allows you to edit a program in the Ladder language on a
personal computer.
(2) Built-in programmer The PMC software built into the CNC has a built-in edit function. With this function, a program in the
Ladder language can be edited.
By using either of these editing methods, a sequence program can be entered in a ladder diagram form from the EDITOR screen. FANUC LADDER-III can also output an entered sequence program to a printer in a ladder diagram form. Furthermore, FANUC LADDER-III provides a function for converting a program in a ladder diagram form to mnemonic form or vice versa. By using this function, you can edit the program in mnemonic form with a text editor. Fig. 1.3.3 shows an example of a ladder diagram, and Table 1.3.3 shows an example of a mnemonic form.
- 11 -
Page 34
1.OVERVIEW OF PMC B-64513EN/01
A
uxiliary function completion signal
Fig. 1.3.3
Table 1.3.3
Step No. Instruction Address No. & bit No. Remarks
1 RD F7.0 MF 2 OR F7.2 SF 3 OR F7.3 TF 4 RD.NOT.STK F7.0 MF 5 OR R211.7 MFIN 6 AND.STK 7 RD.NOT.STK F7.2 SF 8 OR R211.5 SFIN
9 AND.STK 10 RD.NOT.STK F7.3 TF 11 OR R211.6 TFIN 12 AND.STK 13 WRT G4.3 FIN
During sequence program editing, signal names (symbols) and comments can be entered for I/O signals, relays, and coils. Easy-to-understand signal names and comments should be entered to improve program maintainability.

1.3.4 Transferring and Writing Sequence Program to PMC

After completing editing for the sequence program, input (transfer) the program to the PMC. This operation is unnecessary when you have edited the program by using the built-in programmer. When you have edited the sequence program by using the PC programmer, input the sequence program from the editing environment (the personal computer (PC)) to the PMC. The following input methods can be used:
(1) Input from the I/O screen The sequence program on the PC is input to the PMC via a memory card or a USB memory.
(2) Input from the online monitor screen For data input, connect the PC containing the sequence program to the CNC via Ethernet or RS-232C.
After inputting the sequence program, write it in the flash ROM. This operation can be done with the DATA I/O screen of the PMC.
- 12 -
Page 35
B-64513EN/01 1.OVERVIEW OF PMC

1.3.5 Checking Sequence Program

After writing the sequence program in the flash ROM, check the sequence program. The sequence program can be checked in the following two ways:
(1) Checking with a simulator Connect a simulator (consisting of lamps and switches) instead of the machine. Instead of using input
signals from the machine, turn the switches on and off to input signals, and confirm output signals by checking the on/off states of the lamps.
(2) Checking by system operation Connect the machine to make checks. Before starting the operation, take safety measures because
when the sequence program is executed for the first time, an unpredictable motion can occur.

1.3.6 Storage and Management of Sequence Program

When the sequence program is completed after checking, it should be stored and managed by the machine tool builder. The sequence program can be output to the printer in a ladder diagram form by using the PC programmer. The output ladder diagram should be attached as a maintenance drawing to the machine together with other attached materials such as a power magnetic cabinet circuit diagram.
- 13 -
Page 36
1.OVERVIEW OF PMC B-64513EN/01

1.4 EXECUTION OF SEQUENCE PROGRAM

Sequence programs in the Ladder language are executed in the order of instructions coded in the ladder diagrams. Fig. 1.4 shows how a sequence program is executed.
Sequence program
memory
Sequence program input
Control target such as machine tool
Input circui t
Output circuit
Internal relay (RAM)
Fig. 1.4 Sequence program execution by PMC
The RD instruction causes the CPU to read the signal of the input circuit at address X0.0 and set the read data in the operation register. Next, the AND instruction causes the CPU to AND the set data with the internal relay state at address R10.1 and set the result in the operation register. The CPU then executes the subsequent instructions at high speed, and the operation result is output to the output circuit at address Y0.0.
- 14 -
Page 37
B-64513EN/01 1.OVERVIEW OF PMC

1.4.1 Execution Procedure of Sequence Program

In general relay sequence circuits, relays operate at exactly the same time. This means that when relay A operates in the following figure, relays D and E operate at exactly the same time (when contacts B and C are both off).
Fig 1.4.1 (a)
In PMC sequence control, on the other hand, relays in the circuit operate sequentially. When relay A in Fig.
1.4.1 (a) operates, relay D operates, then relay E operates. Therefore, in PMC sequence control, relays operate in the order coded in the ladder diagram (the order of programming). The sequential operations in this sequence are performed at high speed, but some instructions are affected by the execution order. Accordingly, in the ladder diagrams shown in Fig. 1.4.1 (b), there is a distinctive difference in operation between the PMC sequence and the sequence of the relay circuit.
Fig. 1.4.1 (b) Circuit examples
(1) For relay sequence circuit (A) and (B) in Fig. 1.4.1 (b) operate in the same manner. When A (P.B) is turned on, current flows
through coils B and C, turning on B and C simultaneously. After C is turned on (after relay operation time), B is turned off.
(2) For PMC programming In (A) in Fig. 1.4.1 (b), as with the relay sequence circuit, when A (P.B) is turned on, B and C are
turned on, then B is turned off after a certain time elapses (after a time required for one cycle of the PMC sequence). In (B) in Fig. 1.4.1 (b), turning on A (P.B) turns on C but does not turn on B even momentarily.
- 15 -
Page 38
1.OVERVIEW OF PMC B-64513EN/01

1.4.2 Repetitive Operation

A sequence program is executed until the end of the ladder diagram (the end of the program) is reached, then program execution is repeated from the beginning of the ladder diagram (the beginning of the program). The execution time from the beginning to the end of the ladder diagram (the time required for one cycle) is a time for processing the sequence program once and is called a scan. This processing time depends on the sequence control scale (the number of steps) and the size of the 1st level sequence described below. A shorter processing time results in a better signal response in the sequence.

1.4.3 Processing Priority (1st Level, 2nd Level, and 3rd Level)

A sequence program consists of two operation parts: a high-speed sequence part called the 1st level, which is executed every several msec, and a normal sequence part called the 2nd level. When the model used allows use of the 3rd level, the 3rd level sequence part is added. (See Fig. 1.4.3 (a).)
Sequence program
1st level sequence part
2nd level sequence part
3rd level sequence part (only with model that can use 3rd level)
Fig. 1.4.3 (a) Sequence program structure
Specifies end of 3rd level sequence
Specifies end of 1st level sequence
Division 1
Division 2
Division n
Specifies end of 2nd level sequence
The 1st level sequence part is a high-speed sequence part that is executed every ladder execution cycle. The ladder execution cycle is 4 or 8 msec, which is set in a CNC parameter. If the execution of the 1st level program requires a long time, the overall execution time including the 2nd level (sequence processing time) is extended. So, the 1st level sequence part should be created so that it can be processed in a short time where possible. The 2nd level sequence part is executed every (ladder execution cycle × n) msec (where n is the number by which the 2nd level is divided). The 3rd level sequence part is executed when the PMC is idle.
(1) Division of the 2nd level program The 2nd level program must be divided to execute the 1st level program. The order of sequence
program execution is illustrated in Fig. 1.4.3 (b), where the number of divisions is assumed to be n.
After the last division (division n) of the 2nd level program is executed, the sequence program is
executed from the beginning. Therefore, when the number of divisions is n, the execution cycle of the overall sequence program is expressed as the ladder execution cycle × n msec.
- 16 -
Page 39
B-64513EN/01 1.OVERVIEW OF PMC
As the amount of the 1st level sequence part increases, the amount of the 2nd level sequence portion
executed within the ladder execution cycle decreases. As a result, the number of divisions n increases, which increases the overall execution time including the 2nd level (sequence processing time). Therefore, the 1st level sequence program part should be minimized where possible. The division number of 2nd level may be indefinite because of changing of the working condition of functional instructions in 1st level and 2nd level.
1st level
2nd level
3rd level
Divisio n 1
Ladder execution cycle (4 or 8 ms) Ladder execution cycle (4 or 8 ms)
Fig. 1.4.3 (b) Sequence program execution order
Divisio n 2
Last division n
3rd level
processing
Ladder execution cycle(4 or 8 ms)
(2) 1st level sequence part High-speed sequence operation. Only high-speed sequence processing such as processing of a pulse
signal with a short signal width in time is performed.
These signals include emergency stop and feed hold signals.
(3) 3rd level sequence part The 3rd level sequence processing is performed during the remaining time from the end of the last
division (n) of the 2nd level until the 1st level processing restarts (see Fig. 1.4.3 (b)).
It is possible to program the 3rd level, but the execution cycle period of time for processing the 3rd
level sequence part is not guaranteed to maintain program compatibility with conventional models. Therefore, the 1st and 2nd level sequence parts should be programmed without using the 3rd level sequence part.
- 17 -
Page 40
1.OVERVIEW OF PMC B-64513EN/01

1.4.4 Structured Sequence Program

Structured ladder coding has the following advantages:
Programming is easy to understand, therefore programming becomes easier.
Program errors can be found easily.
Troubleshooting can be done easily.
1.4.4.1 Implementation
Three major implementation techniques are supported.
(1) Use of routines Ladder sequence processing units are created so that they can be treated as routines.
Job A
Job B
(2) Nesting Ladder routines created in (1) are connected to configure a ladder sequence.
Job A
Job B
Job A
Job A
1
n
Job A
Job A
11
12
(3) Conditional branch The main program loops and determines conditions. If conditions are satisfied, a subprogram process
is executed. If the conditions are not satisfied, the subprogram process is skipped.
- 18 -
Page 41
B-64513EN/01 1.OVERVIEW OF PMC
A
Application example
(1) Example Suppose that there are four major jobs.
If Y0 is 1, workpiece machining request is assumed to be issued, and processing is performed. (Conditional)
: <1> Pick up workpiece from pallet. (A1)
<2> Machine workpiece. (A2) <3> Return workpiece to pallet. (A3)
B: <4> Move pallet.
(2) Program configuration
(3) Program coding
Machine workpiece.
Machine workpiece.
Move pallet.
- 19 -
Page 42
1.OVERVIEW OF PMC B-64513EN/01
Pick up workpiece from pallet.
Machine workpiece.
Return workpiece to pallet.
Pick up workpiece from pallet.
Ladder representation
Machine workpiece.
Ladder representation
Return workpiece to pallet.
Ladder representation
- 20 -
Page 43
B-64513EN/01 1.OVERVIEW OF PMC
Move pallet.
Ladder representation
Specifications
(1) Main program A ladder program consisting of the 1st ladder level and 2nd ladder level is called a main program. You
can create just one main program. Subprogram calls from the 1st ladder level are not allowed. Any number of subprogram calls from the 2nd ladder level may be made. Functional instructions JMP and COM must be closed within the main program and each subprogram.
(2) Subprogram Programs called from the 2nd ladder level are referred to as subprograms. A subprogram is a program
unit enclosed by functional instructions SP and SPE. Up to 512 or 5000 subprograms can be created for one PMC.
(3) Nesting A subprogram can call another subprogram. Up to eight levels of subprograms can be nested. Recursive calls are not permitted.
- 21 -
Page 44
1.OVERVIEW OF PMC B-64513EN/01
(4) Programming order when subprograms are used
1st level sequence part
2nd level sequence part
3rd level sequence part (only with model that can use 3rd level)
Code subprograms after 2nd and 3rd levels.
Subprograms
End of sequence program
End of entire sequence program is indicated by END instruction.
Fig. 1.4.4.1
- 22 -
Page 45
B-64513EN/01 1.OVERVIEW OF PMC
1.4.4.2 Subprogramming and nesting
Function
A conditional call (or unconditional call) is coded in the main program, and the name of a subprogram to be executed is specified. In the subprogram, the subprogram name and a ladder sequence to be executed are coded. When a conditional call specifying Pn (representing a program name) is made, a subprogram named Pn is called and executed. A subroutine name can be assigned by adding a symbol or comment to Pn. In the example shown in Fig. 1.4.4.2 (a), the main program calls three subprograms. These calls are all conditional calls. Subprogram P1 is named SUBPRO. Subprogram P1 calls subprogram PROCS1 unconditionally.
Fig. 1.4.4.2 (a) Example of subprogramming and nesting
- 23 -
Page 46
1.OVERVIEW OF PMC B-64513EN/01
Execution method
The main program is always active. Subprograms are active only when called by another program. In the following example, subprogram SUBPRO is called by signal A.
Progra m cycle
Signal A
Main program
Subprogram
Management program
Execution flow (1) A subprogram call by functional instruction CALL transfers control to the subprogram. (2) When the execution of the subprogram is completed, control is returned to the main program. (3) When the execution of the main program is completed, the ladder program postprocessing is
performed.
- 24 -
Page 47
B-64513EN/01 1.OVERVIEW OF PMC
Creating a program
After the 1st, 2nd, and 3rd level ladder programs, create subprograms in the similar manner.
Creation example
Be sure to code this.
- 25 -
Page 48
1.OVERVIEW OF PMC B-64513EN/01
Inhibit items
(1) Subprograms are nested.
(2) A subprogram is created within the 1st, 2nd, or 3rd level ladder program.
- 26 -
Page 49
B-64513EN/01 1.OVERVIEW OF PMC
1.4.4.3 Notes on using subroutines
(1) DISPB (2) EXIN (3) WINDR (low-speed type only) (4) WINDW (low-speed type only) (5) AXCTL
For the above functional instructions, ACT = 1 must be held until transfer completion information (coil) is set to 1. When using these functional instructions in subprograms, note the following prohibition:
(1) When one of the above functional instructions is being used within a subprogram and is not yet
completed (processing is in progress), the subprogram call is canceled. (ACT for the CALL instruction is set to 0.)
CAUTION
The subsequent operation of the above functional instruction is not guaranteed.
(2) When one of the above functional instructions is being used within a subprogram and is not yet
completed (processing is in progress), the subroutine is called from another subprogram.
CAUTION
Because the preceding function is being processed, the subsequent operation of
the above functional instruction is not guaranteed.
When a subprogram using the above functional instructions is called from more than one place, exclusive control is required. An example of using the WINDR instruction (low-speed type) is given below.
- 27 -
Page 50
1.OVERVIEW OF PMC B-64513EN/01
Example: A subprogram is called from two places. (When the WINDR instruction is used)
Main program Subprogram 1 Subprogram 2
Set DATA1.
Set DATA2.
Explanation: Subprogram 1 controls ACT (A) and W1 (B) of WINDR (subprogram 2). The main program determines which data (C1 or C2) is to be used according to A controlled by subprogram
1. Upon completion of the WINDR instruction, the next data is set, and the other CALL instruction is executed. In the subsequent operation, these steps are repeated.
- 28 -
Page 51
B-64513EN/01 1.OVERVIEW OF PMC

1.4.5 Synchronization Processing of I/O Signals

Signals input to the PMC include input signals from the CNC (such as M function and T function signals) and input signals from the machine (such as cycle start and feed hold signals). Signals output from the PMC include output signals to the CNC (such as cycle start and feed hold signals) and output signals to the machine (such as turret rotation and spindle stop signals). The relationships between these signals and the PMC are shown in Fig. 1.4.5 (a), in which input signals are input to the input memory of the PMC, and output signals are issued from the PMC. As shown in Fig. 1.4.5 (a), the input signals are synchronized during 1 scan of the 2nd level sequence part.
CNC
Input memory of CNC
Input signal from CNC (F)
Output memory of CNC
Output signal to CNC (G)
PMC
Transferred ev ery 4ms or 8ms
2nd level synchronous input signal memory
Input signal from CNC (F)
Sequence
program
1st level sequence part
2nd level sequence part
Input signal from machine (X)
Input signal from anot her PMC path( M)
3rd level sequence part
Machine Tool
Input signal from machine
Output signal to machine
Transferred via I/O Link or I/O Link i
Input signal memory
Input signal from machine (X)
Output sig n al me mory
Output signal to machine (Y)
Transferred at start of 2nd level
Another PMC pat h
Input signal from anot her PMC path ( M) Output signal to another PMC path (N)
Fig. 1.4.5 (a) I/O signals of PMC
NOTE
The 2nd level synchronous input signal memories are F, X, and M address. Other
addresses are not synchronous input signals.
Input signal processing
(1) Input memory of the CNC Signals input from the CNC to PMC are set in the memory of the CNC and are normally transferred to
the PMC at intervals of 4 or 8 msec. Since the 1st and 3rd level sequence parts directly reference and process these signals, these signals are not synchronized with input signals from the CNC. See the description of following “Notes on programming asynchronous I/O signals”.
- 29 -
Page 52
1.OVERVIEW OF PMC B-64513EN/01
(2) Input signals from the machine (I/O Link or I/O Link i) Signals input from the machine are transferred to the input signal memory via the input circuit (I/O
Link or I/O Link i). The 1st and 3rd level sequence parts read the input signals from the input signal memory and process them.
(3) Input signal memory The input signal memory stores signals transferred from the machine at regular intervals. The 1st and 3rd level sequence parts of the PMC read and process signals stored in this memory. In
this case, the signal set in the input signal memory is not synchronized with the 1st and 3rd level sequence parts. For notes on asynchronous processing, see the description of following “Notes on programming asynchronous I/O signals”.
NOTE
For the transferred at intervals of input signals in the I/O link i channel 1 and 2,
there are 2 ways mode i.e. the normal mode (2msec) and the high speed mode (0.5msec). In the I/O link channel 1 and 2, the input signals are transferred at intervals of 2msec. In the I/O link channel 3 they are transferred at interval of execution of 1st level ladder (4msec or 8msec).
(4) 2nd level synchronous input signal memory The 2nd level synchronous input signal memory stores signals processed by the 2nd level sequence
part of the PMC. Signals synchronized with the 2nd level sequence part are set in this memory.
Input signals in the input signal memory and input signals from the CNC are automatically transferred
to the 2nd level synchronous input signal memory at the beginning of the 2nd level sequence part. Therefore, the status of the 2nd level synchronous input signal memory is kept unchanged during the time from the beginning of the 2nd level sequence part until the end of the sequence part.
The programmer function automatically performs processing so that the 1st and 3rd level sequence
parts use input signals in the input signal memory and input signals from the CNC while the 2nd level sequence part uses the 2nd level synchronous input signal memory. (This need not be considered during programming.)
NOTE
The 2nd level synchronous input signal memories are F, X, and M address. Other
addresses are not synchronous input signals.
Output signal processing
(1) Output memory to the CNC Signals output from the PMC to CNC are set in the output memory of the CNC. Normally, the PMC
transfers signals to the output memory of the CNC at intervals of 4 or 8 msec.
(2) Output signals to the machine (I/O Link or I/O Link i) Signals output to the machine are transferred from the output signal memory of the PMC to the output
circuit (I/O Link or I/O Link i).
(3) Output signal memory The output signal memory is set by the sequence program of the PMC. Signals set in the output signal
memory are transferred to the machine at regular intervals..
- 30 -
Page 53
B-64513EN/01 1.OVERVIEW OF PMC
NOTE
1 The statuses of the input memory of the CNC, input signals from the machine,
output memory of the CNC, and output signals to the machine can be viewed on the SIGNAL STATUS screen of the PMC. For the SIGNAL STATUS screen, see Section 7.1.
2 For the transferred at intervals of I/O signals exchanged with the machine in the
I/O link i channel 1 and 2, there are 2 ways mode i.e. the normal mode (2msec) and the high speed mode (0.5msec). I/O signals exchanged with the machine are normally transferred at intervals of 2 msec when the I/O Link is used. Depending on the channel setting of the I/O Link, however, the transfer interval varies. For details, see Section 3.1.
Notes on programming asynchronous I/O signals
Normal input signals from the CNC are transferred to the PMC at intervals of 4 or 8 msec. Normal output signals to the CNC are transferred from the PMC at intervals of 4 or 8 msec. Therefore, I/O signals exchanged with the CNC are usually transferred at intervals of 4 or 8 msec. When creating a sequence program, note that the input signals from the CNC are not synchronized with the 1st and 3rd level sequence program parts. Because the input signals from the CNC are asynchronous, the status of an input signal from the CNC may change during execution of the 1st level sequence program part, which can lead to a problem as shown in Fig. 1.4.5 (b). To prevent such a problem, write the TF signal to an internal relay at the beginning of the 1st level sequence part so that the subsequent operation of the 1st level sequence program part references the internal relay. Then, the TF signal can be treated as a synchronous signal. See Fig. 1.4.5 (c). Signals input from the machine via the I/O Link and signals input from other control units over a network are also asynchronous, so these signals should be treated in a similar manner.
If the TF status changes to 1 after TF=0 is read first, W1 and W2 may be set to 1 momentarily.
Fig. 1.4.5 (b)
- 31 -
Page 54
1.OVERVIEW OF PMC B-64513EN/01
When the TF signal is made synchronized, neither W1 nor W2 is set to 1.
Fig. 1.4.5 (c)
- 32 -
Page 55
B-64513EN/01 1.OVERVIEW OF PMC
Difference in signal status between 1st level and 2nd level sequence parts
The status of the same input signal may become different between the 1st and 2nd level sequence parts. The 1st level sequence part uses the input signal memory for signal processing while the 2nd level sequence part uses the 2nd level synchronous input signal memory. Therefore, it is possible that an input signal for the 2nd level sequence part lags behind the input signal for the 1st level sequence part by a cycle of the 2nd level sequence execution at the worst. When creating a sequence program, note the following: Signal status
A.M On (pulse signal with short pulse width in time) B Off C On
When the 1st level is executed, the following difference can occur between Fig. 1.4.5 (d) and Fig. 1.4.5 (e):
(1) For Fig. 1.4.5 (d) Even when W1 = 1, W2 may not be 1. (This is because the A.M signal may differ between the 1st level
and 2nd level.)
(2) For Fig. 1.4.5 (e) If W1 = 1, W2 is always 1. When performing the sequence shown in Fig. 1.4.5 (d), do the following: At the 1st level, perform the high-speed sequence processing applied when the A.M signal status
changes (operating).
At the 2nd level, perform the sequence processing applied when the A.M signal status does not change
(stopped).
NOTE
In the middle of 1st level processing, a signal status change may occur
asynchronously with the sequence program processing. For details, see Subsection 1.4.7.
1st level
2nd level
Fig. 1.4.5 (d) Fig. 1.4.5 (e)
- 33 -
Page 56
1.OVERVIEW OF PMC B-64513EN/01

1.4.6 Interlock

In sequence control, considering how to provide an interlock is a key design issue from the safety point of view. Of course, an interlock must be provided by sequence programs. Furthermore, an interlock must also be provided at the end of the electrical circuit in the power magnetic cabinet of the machine. Even when an interlock is provided logically by a sequence program (software), the interlock by the sequence program will not work if the hardware for executing the sequence program fails for a certain cause. Therefore, be sure to provide an interlock within the power magnetic cabinet of the machine to ensure safety of the operator and prevent machine damage.

1.4.7 Notes on I/O Signals Updated by Other Than PMC

I/O signals transmitted over networks (such as an Ethernet, I/O Link-II, PROFIBUS, DeviceNet, and FL-net) (signals assigned to addresses R, D, and E) are updated asynchronously with PMC sequence program execution. Similarly, other applications (FOCAS2, C executor, real-time custom macros, etc.) update I/O signals asynchronously with PMC sequence program execution. Therefore, when a signal updated via a network or by another application is to be used by a PMC sequence program, the following should be noted:
(1) Note on input signals When an input signal transmitted via a network or another application is referenced at more than one
place in the PMC sequence program, the same value is not guaranteed to be referenced within the same cycle of the sequence program.
To reference the same input signal value within the same cycle, store the input signal status in an area
such as an internal relay.
(2) Note on output signals When an output signal is transmitted via a network or another application, it may be transmitted to a
slave unit in the middle of the PMC sequence program execution cycle. Care should be exercised when the slave unit references more than one signal.
(3) Note on multiple-byte data When multiple-byte data is input or output via a network or another application, concurrence of the
data (a condition free from data splitting) is not guaranteed. To ensure data concurrence, perform handshaking, which does not cause data splitting during data I/O.
- 34 -
Page 57
B-64513EN/01 1.OVERVIEW OF PMC
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,

1.5 MULTI-PATH PMC FUNCTION

The multi-path PMC function allows one PMC system to execute multiple sequence programs at the same time.
PMC memory for each sequence program is basically independent, and the same PMC address can be used for different purposes of the individual PMCs. Extra relays (E addresses) can be shared among PMCs as shared memory. All PMCs can read from and write to this area, so the area can be used for the interface between the PMCs. M,N addresses can be also used for the interface between the PMCs.
1st PMC
X0~, Y0~, F0~, G0~, R0~, A0~, T0~, C0~, K0~, D0~, P1~, L1~
M0~, N0~
2nd PMC
X0~, Y0~, F0~, G0~, R0~, A0~, T0~, C0~, K0~, D0~, P1~, L1~
M0~, N0~
Fig. 1.5 (a) PMC memory of multi-path PMC function
3rd PMC
X0~, Y0 F0~, G0 R0~, A0 T0~, C0 K0~, D0 P1~, L1
Shared memory(E0~)
~ ~ ~ ~ ~ ~
M0~, N0
4th PMC
X0~, Y0 F0~, G0 R0~, A0 T0~, C0 K0~, D0 P1~, L1
~ ~ ~ ~ ~ ~
5th PMC
X0~, Y0 F0~, G0 R0~, A0 T0~, C0 K0~, D0 P1~, L1
~ ~ ~ ~ ~ ~
A program for each PMC is saved as an independent file and can be edited, updated, and backed up separately.
The CNC systems and the I/O Link channels to be controlled by PMCs can be changed by CNC parameter setting. In a parameter-set configuration, one PMC may control all CNC systems, or each PMC may control a different CNC system.
Fig. 1.5 (b) shows a configuration example.
- 35 -
Page 58
1.OVERVIEW OF PMC B-64513EN/01
CNC PMC
Machine control group
Loader control group
Fig. 1.5 (b) Multi-path PMC function configuration example
1st PMC
2nd PMC
3rd PMC
Operator's panel for machine control, etc.
Peripheral equipment, etc.
Operator's panel for loader, etc.
If the Series 30i/31i/32i/35i-B system is used to control more than one CNC path, some paths can be grouped to share data within a group and to stop all the paths in the group if an alarm condition occurs in one of the paths. The group is referred to as the machine group. The system supports up to 3 machine groups. Each group has a separate emergency stop signal address. A PMC is basically assigned to each machine group.
- 36 -
Page 59
B-64513EN/01 1.OVERVIEW OF PMC
Oth

1.5.1 Execution Order and Execution Time Percentage

For the multi-path PMC function, the order of PMC execution and execution time percentages of the PMCs can be set with CNC parameters.
Execution order
If parameters related to the execution order are not set (0 is set), the following order sequence is assumed by default:
1st path
PMC
2nd path
PMC
3rd path
PMC
4th path
PMC
5th path
PMC
er processing such as tracing
Fig. 1.5.1 (a) Default execution order of multiple PMCs
Execution time percentage
If parameters related to execution time percentages are not set (0 is set), the following execution time percentages are assumed by default:
Table 1.5.1 (a) Execution time percentages of multiple PMCs
The number of PMC path
1 path 100% 2 paths 85% 15% 3 paths 75% 15% 10% 4 paths 70% 10% 10% 10% 5 paths 60% 10% 10% 10% 10%
PMC path
of the 1st order
of execution
PMC path
of the 2nd order
of execution
PMC path
of the 3rd order
of execution
PMC path
of the 4th order
of execution
PMC path
of the 5th order
of execution
- 37 -
Page 60
1.OVERVIEW OF PMC B-64513EN/01
An example of changing the execution order and execution time percentages by setting CNC parameters is explained below. In the following, sequence programs are executed in the order from the third PMC to the first PMC to the second PMC with the execution time percentage of the third PMC set to 30%, the percentage of the first PMC to 50%, and the percentage of the second PMC to 20%:
3rd PMC 1st PMC 2nd PMC
Other processing such as
tracing
Fig. 1.5.1 (b) Example of setting execution order of multiple PMCs
Level 1
Level 2
Level 3
3rd PMC
(30%)
Ladder execution cycle (4 or 8 msec)
Fig. 1.5.1 (c) Example of setting execution time percentages of multiple PMCs
For details of parameter setting, see Subsection 2.4.3.
1st PMC
(50%)
2nd PMC
(20%)
- 38 -
Page 61
B-64513EN/01 1.OVERVIEW OF PMC

1.5.2 Interface Between CNC and PMC

The PMC to control the interface between the CNC and PMC and PMC addresses (F/G addresses) can be set with CNC parameters. With these parameter settings, a desired interface control system can be built, in which the entire CNC-PMC interface of the CNC may be controlled by a single PMC or the CNC-PMC interface may be controlled by multiple PMCs. For the CNC-PMC interface, a memory area consisting of 10 blocks, each of which is an addressable, 768-byte DI/DO area, is provided. When viewed from the ladder program in each PMC, these addresses begin with 0. If these parameters are not set (0 is set), the initial settings are assumed, where the F/G addresses of the CNC equals the F/G addresses of the first PMC as follows:
CNC
F/G0 to F/G767 of CNC F/G1000 to F/G1767 of CNC F/G2000 to F/G2767 of CNC F/G3000 to F/G3767 of CNC F/G4000 to F/G4767 of CNC F/G5000 to F/G5767 of CNC F/G6000 to F/G6767 of CNC F/G7000 to F/G7767 of CNC F/G8000 to F/G8767 of CNC F/G9000 to F/G9767 of CNC
Fig. 1.5.2 (a) Initial settings for CNC-PMC interface
1st PMC
F/G0 to F/G767 of 1st PMC F/G1000 to F/G1767 of 1st PMC F/G2000 to F/G2767 of 1st PMC F/G3000 to F/G3767 of 1st PMC F/G4000 to F/G4767 of 1st PMC F/G5000 to F/G5767 of 1st PMC F/G6000 to F/G6767 of 1st PMC F/G7000 to F/G7767 of 1st PMC F/G8000 to F/G8767 of 1st PMC F/G9000 to F/G9767 of 1st PMC
In the following example, F/G0 to F/G767 and F/G1000 to F/G1767 of the CNC are assigned to F/G0 to F/G767 and F/G1000 to F/G1767 of the first PMC, and F/G2000 to F/G2767 of the CNC are assigned to F/G0 to F/G767 of the second PMC:
CNC
F/G0 to F/G767 of CNC F/G0 to F/G767 of 1st PMC
1st PMC
F/G2000 to F/G2767 of CNC
Fig. 1.5.2 (b) Setting example for CNC-PMC interface
For details of parameter setting, see Subsection 2.4.3.
- 39 -
F/G1000 to F/G1767 of 1st PMCF/G1000 to F/G1767 of CNC
2nd PMC
F/G0 to F/G767 of 2nd PMC
Page 62
1.OVERVIEW OF PMC B-64513EN/01

1.5.3 Multi-Path PMC Interface

The multi-path PMC interface is the communication means between two PMC paths.
Generally, Each path of multi-path PMC system has individual PMC memory space except E address. And, E address can be used to share data of multi-path PMC system. However, this method has a risk that the memory is over written by other PMC path inappropriately.
NOTE
This interface cannot be used in 4th-path PMC and 5th-path PMC.
When using this function, the input and output signals of each path become definitely. Therefore, you can send or receive the data on between two PMC paths safely. When you output data to N address at one of PMC paths, it can be referenced by M address in other PMC path.
Ex.) When using this function with 1st PMC and 2nd PMC :
1st PMC 2nd PMC
M
N
Moreover, signals of M address are synchronized during 1 scan of 2nd level program. Therefore, you can reference the same signal status on the first step and the last step of level2 program, like as X and F address.
For details of setting for two PMC paths, see Subsection 2.4.3.
M
N
WARNING
E address can be used to share data of multi-path PMC system. However, E
address are not synchronized during 1 scan of 2nd level program. So, the memory may change during execution of 2nd level program. You must take care that the memory is not overwritten by other PMC path in multi-path PMC system.
- 40 -
Page 63
B-64513EN/01 1.OVERVIEW OF PMC

1.5.4 Common PMC Memory Mode of Multi-Path PMC

On the 2nd-path and 3rd-path PMC, the "Common PMC Memory mode" to share all the PMC Memory with 1st-path PMC has become selectable. When using the Common PMC Memory mode, a program that controls a related process can be divided to multi-path Sequence Programs. And, those Sequence Programs can be inputted/outputted, edited and saved independently.
1st PMC
2nd PMC
3rd PMC
Sequence Program
Sequence Program
Sequence Program
L1 -, P1 -
L1 -, P1 -
L1 -, P1 -
X0 -, Y0 -, F0 -, G0 -, R0 -, A0 -, T0 -, C0 -, K0 -, D0 -, M0 -, N0 -, S1 -, E0 -
(Common Memory)
4th PMC
5th PMC
Fig. 1.5.4 (a) Configuration of the Common PMC Memory mode
Sequence Program
Sequence Program
L1 -, P1 -
L1 -, P1 -
See "9.9.5 Setting the PMC Memory Type" to enable the Common PMC Memory mode. There are come differences in the following specifications in the Independent PMC Memory mode and the Common PMC Memory mode.
Table 1.5.4 (a) Comparison of Independent PMC Memory mode and Common PMC Memory mode
Sequence program
Data and Functions
Independent PMC Memory
mode
Ladder each PMC path each PMC path (TMR, CTR, CTRB) each PMC path shared by all PMC paths (DISPB) each PMC path program to 1st-path PMC Title each PMC path each PMC path Symbol & Comment each PMC path each PMC path Message data each PMC path each PMC path I/O Link assignment each PMC path each PMC path System parameter each PMC path each PMC path (Counter data type) each PMC path 1st-path PMC is effective
- Inputting/Outputting each PMC path each PMC path
- Password function each PMC path each PMC path
- Programmer protection each PMC path 1st-path PMC is effective
- Protection of data at 8 levels each PMC path each PMC path
Common PMC Memory mode
- 41 -
Page 64
1.OVERVIEW OF PMC B-64513EN/01
PMC Parameter
Data and Functions
Timer each PMC path shared by all PMC paths Counter each PMC path shared by all PMC paths Keep Relay each PMC path shared by all PMC paths Data Table each PMC path shared by all PMC paths Data Table control data each PMC path shared by all PMC paths Setting Parameter each PMC path shared by all PMC paths
- Inputting/Outputting each PMC path 1st-path PMC is effective
- Programmer protection each PMC path 1st-path PMC is effective
- Protection of data at 8 levels each PMC path 1st-path PMC is effective
Independent PMC Memory
mode
Common PMC Memory mode
WARNING
1 Please separate the range of PMC Memory that will be written by each PMC path.
And, don't write to the same address from other PMC paths because it will often cause a problem. If making such a programs it will be difficult to fix a problem.
2 When using the Common PMC Memory mode, the memory of PMC Parameter is
shared by those PMC paths, too. Therefore, don't set any duplicated number of functional instructions that is used for PMC Parameter in those PMC paths.
<Functional instructions using PMC Parameter>
- TMR (Timer : SUB 3)
- CTR (Counter : SUB 5)
- CTRB (Fixed Counter : SUB 56) But, the instruction number of the following functional instructions can be used for
each PMC path, also in the Common PMC Memory mode.
<Functional instructions numbered each PMC path>
- TMRB (Fixed Timer : SUB 24)
- TMRBF (Off Delay Fixed Timer : SUB 77)
- DIFU (Rising Edge Detection : SUB 57)
- DIFD (Falling Edge Detection : SUB 58)
NOTE
1 To use the Common PMC Memory mode in the 2nd to 5th-path PMC, select the
same PMC type as 1st-path PMC on FANUC LADDER-III.
2 The Data Table Control data is also shared between PMC paths that is used in the
Common PMC Memory mode.
3 L address and P address, that is used for the labels of jump or sub-program call,
can be used for each PMC path independently in the Common PMC Memory mode, too.
- 42 -
Page 65
B-64513EN/01 1.OVERVIEW OF PMC

1.6 Communication Method for External I/O Device

1.6.1 I/O Link i and I/O Link

For the high-speed serial interface which passes input/output signals between the PMC and each I/O device, there are two communication methods, i.e. the FANUC I/O Link i and the FANUC I/O Link. You can use up to three channels for the serial interface. The communication method for channel 1 and channel 2 can be specified by the CNC parameter. The default value “0” of the CNC parameter means that I/O Link is specified. The channel 3 can be used only for I/O Link. For the details of the setting of the CNC parameter, see subsection “2.4.3”.
As for the transferred at intervals of the signals from I/O Link i, there are two modes, i.e. a normal mode (2msec) and a high-speed mode (0.5msec). You can specify the mode for each group of I/O devices. The transferred at intervals of the signals from I/O Link is “2msec” for channel 1 and 2. For channel 3, it is the ladder execution period (4msec/8msec).
CNC
Channel 1
I/O Link i
Select by CNC parameter
I/O Link
I/O Link i
Channel 2
I/O Link
Channel 3
Fig. 1.6.1 (a) Setting of the communication method for each channels
I/O Link
Select by CNC parameter
The maximum I/O points of I/O Link i are 2048 poins/2048 points for each channel. The maximum I/O points of I/O Link are 1024 points/1024 points for each channel. The maximum I/O points for a PMC system are 4096 points/4096 points in total. You can use several channels of I/O Link i and I/O Link but the total points cannot exceed the maximum points of the PMC system.
[The example of the combination of I/O Link i and I/O Link]
Channel 1 Channel 2 Channel 3 Total points (DI / DO)
I/O Link i I/O Link i I/O Link i I/O Link i
I/O Link I/O Link I/O Link 3072 / 3072
I/O Link i
I/O Link I/O Link I/O Link I/O Link
I/O Link I/O Link 4096 / 4096 I/O Link
- -
I/O Link 2048 / 2048
4096 / 4096
3072 / 3072
2048 / 2048 2048 / 2048
1024 / 1024
- 43 -
Page 66
1.OVERVIEW OF PMC B-64513EN/01

1.6.2 Setting I/O Address for I/O Link i

For the I/O addresses assignment of I/O Link i channels, you set the I/O addresses and PMC path to each group and the slot of I/O devices which is connected to channels for I/O Link i. The assignment is operated in FANUC LADDER-III and is programmed independent of the sequence program (.LAD file). For the details, see FANUC LADDER-III Operation’s Manual (B-66234EN). The assignment date of I/O Link i is loaded to CNC as a I/O configuration data. I/O signals of I/O Link i are controlled by the I/O configuration data. For details of I/O Link i, see Subsection 3.3. For details of the setting operation of the I/O configuration data on the CNC screen, see Subsection 9.10.
The following figure is the multi-path PMC system overview using I/O Link i.
1st PMC The sequence program using I/O devices connected to the channel 1(I/O Link i)
2nd PMC The sequence program using I/O devices connected to the channel 1(I/O Link i)
3rd PMC The sequence program using I/O devices connected to the channel 2(I/O Link)
NOTE
Multi-path PMC function is optional function.
FANUC LADDER-
1st path sequence program
2nd path sequence program
3rd path sequence program
I/O module assignment
CNC
1st-path PMC
2nd-path PMC
3rd-path PMC
X/Y0 ~ 127
channel PMCgroup slot
Loading
I/O configuration
data
X/Y0 ~ 127
I/O Link i assignment data (FIL file)
X address
0
1
1
PMC1
X0000
2
PMC2
X0010
1
PMC1 PMC2
X0020 X0030
1 2
Channel 1(I/O Link i)
Slot 1 Slot 2
Group 0
(normal mode)
Slot 1 Slot 2
(high speed mode)
Channel 2 (I/O Link)
Y address
Y0000 Y0010 Y0020 Y0030
Group 1
Transferred
period
Normal
(2msec)
High-speed
(0.5msec)
- 44 -
Group 0
Group 1
Page 67
B-64513EN/01 1.OVERVIEW OF PMC

1.6.3 Setting I/O Address for I/O Link

The I/O addresses of I/O Link channels can be assigned with CNC parameters. Moreover, setting the dual assignment can divide one I/O link channel into two blocks and assign them to different PMC path. For details of setting, see Subsection 9.9.3. For details of parameter setting, see Subsection 2.4.3.
NOTE
This function cannot be used for I/O Link i.
Assign one I/O link channel to one PMC path
The I/O addresses of I/O Link channels can be assigned with CNC parameters. If these parameters are not set (0 is set), all channels are assigned to the first PMC by default as follows:
1st PMC
X/Y0 to X/Y127
Channel 1
X/Y200 to X/Y327
X/Y400 to X/Y527
Fig. 1.6.3 (a) Default I/O addresses of I/O Link channels
Channel 2
Channel 3
In the following example, channel 1 is assigned to X/Y0 to X/Y127 of the first PMC, channel 2 is assigned to X/Y200 to X/Y327 of the first PMC, and channel 3 is assigned to X/Y0 to X/Y127 of the second PMC:
1st PMC
X/Y0 to X/Y127
X/Y200 to X/Y327
2nd PMC
X/Y0 to X/Y127
Fig. 1.6.3 (b) Example of I/O address assignment for I/O Link channels
Channel 1
Channel 2
Channel 3
- 45 -
Page 68
1.OVERVIEW OF PMC B-64513EN/01
Assign one I/O link channel to two PMC paths
When multi-path path PMC function is used, you can use plural channels. However, there is the case of the wasteful assignment in which the number of I/O link channel is lacking and the assigned I/O points are few. The dual assignment of I/O Link channel can assign I/O devices on one I/O link channel to two PMC paths effectively. To do so, the rest parts of one channel can be used in another PMC path and it is not necessary to use more channels than it is needed. The dual assignment of I/O Link channel can be assigned with CNC parameters. In the following example, channel 1 is assigned to X/Y0 to X/Y127 of the first PMC and channel 2 is assigned to X/Y200 to X/Y327 of the first PMC and X/Y0 to X/Y127 of the second PMC. As for the channel 2, the former collection of the groups is referred to as "first block" and the latter is referred to as "second block".
For details of parameter setting, see Subsection 3.3.3.
1st PMC
X/Y0 to 127
X/Y200 to 327
2nd PMC
X/Y0 to 127
Fig. 1.6.3 (c) Example of Dual Assignment of I/O Link Channel
Channel 1
Group 0 Group 1 Group 2 Group n
Channel 2
Group 0 Group n
1st Block 2nd Block
Group 0 Group n
- 46 -
Page 69
B-64513EN/01 2.PMC SPECIFICATIONS

2 PMC SPECIFICATIONS

2.1 SPECIFICATIONS

2.1.1 Basic Specifications

Table 2.1.1 (a) Basic specifications of each PMC path
Function 1st ~ 5th- path PMC
PMC Memory Type(Note2) 1st PMC
PMC Memory-B PMC Memory-C PMC Memory-D
2nd~5th PMC
PMC Memory-A PMC Memory-B PMC Memory-C Common PMC Memory with 1st PMC
Programming language Ladder
Step sequence(Note4)
Function block Number of ladder levels 3 2 (Note5) Level 1 execution period (Note6) 4 or 8 msec 8 msec Processing power
Basic instruction processing speed(transition contact) (Note7)
Basic instruction processing
speed(Positive/Negative transition contact)
Program capacity (Note8)
Ladder Up to about 300,000 steps Up to about 3,000 steps
Symbol & Comment At least 1KB At least 1KB
Message At least 8KB At least 8KB
Instructions
Basic instructions 24 24
Functional instructions (Note9) 218 (230) 207 (230)
Instructions(When the expanded PMC ladder
instruction function is invalid)
Basic instructions 14 14
Functional instructions (Note9) 93 (105) 85 (105)
CNC interface
Inputs (F) 768 bytes × 10(Note10) 768 bytes
Outputs (G) 768 bytes × 10(Note10) 768 bytes
DI/DO
I/O Link (Note 11,12)
I/O Link i (Note 13~16)
Inputs (X) Up to 4,096 points (Note17) Up to 64 points
Outputs (Y) Up to 4,096 points (Note17) Up to 64 points
Symbol & Comment (Note18)
Number of symbol characters 40 40
Number of comment characters (Note19) 255 255
Program storage area (Flash ROM) (Note20) Max. 5MB (total size of sequence
9.1 nsec/step 1 μsec/step
310 nsec/step
program of all PMC paths and PMC
message multi-language data)
(Note3)
Ladder Function block
19.2 μ sec/step
128KB
DCS PMC
(Note1)
- 47 -
Page 70
2.PMC SPECIFICATIONS B-64513EN/01
NOTE
1 This PMC is used for Dual Check Safety (DCS) and handles the safety related
signals. 2 As for the setting the PMC memory type, see subsection 2.1.3. 3 There is no variation of PMC memory type in DCS PMC. 4 The Step Sequence is unavailable in 2nd to 5th PMC. 5 A program can be created on level 3 to maintain source-level compatibility with
programs for other models, but it is not executed. 6 CNC parameter No. 11930 is used to specify a level-1 execution period. See
subsection 2.4.3 for details. Note, however, that it is impossible to specify a level-1
execution period for each PMC separately. 7 It is the processing speed of contact other than Positive/Negative transition contact. 8 The maximum overall program size (including the maximum number of ladder steps,
symbols/ comments, and messages) varies depending on option settings. See
subsection 2.1.4 and 2.1.4 for details. 9 For the number of functional instructions, each parenthesized number indicates the
number of all functional instructions, and each non-parenthesized number, the
number of valid functional instructions. 10 It is possible to specify which program is used to control a specific CNC system.
See "Interface between CNC and PMC" in Subsection 2.4.3 for details. 11 You can use up to three I/O Link channels (3,072 input points and 3,072 output
points). 12 The transferred cycle of the signals from I/O Link depends on the combination with
each PMC and each I/O Link channel. Refer to subsection 3.1 for details.
13 You can use up to two I/O Link i channels (4,096 input points and 4,096 output
points). 14 I/O Link i can assign I/O devices for plural PMC paths in one channel. 15 I/O Link i can be used for the channel 1 and the channel 2. 16 When you use the I/O Link i, you can select either the normal mode (2ms) or the
high-speed mode (0.5ms) of the transfer cycle of signals for every group unit 17 You can use both I/O Link and I/O Link i in a CNC system. In the case of the system,
you can use up to 4,096 input points and 4096 output points. 18 These are the number for extended symbol and comment character. The number of
basic symbol character is 16 and the number of comment character is 30. Refer to
section 1.2.7 "Specification of extended symbol and comment" for details. 19 This number is the number of single-byte characters. When you use double-byte
characters as a comment, the number becomes half. 20 The capacity of the program storage area varies depending on option settings.
See subsection 2.1.4 for details.
- 48 -
Page 71
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.1 (b) Basic specifications of each PMC Memory Type
1st to 5th PMC DCS PMC
Function
PMC Memory
Internal relay (R) 1,500 bytes 8,000 bytes 16,000 bytes 60,000 bytes 1,500 bytes
System Relay
(R9000 or Z)
Extra relay (E) (Note2) 10,000 bytes 10,000 bytes 10,000 bytes 10,000 bytes (Note 3)
Message display (A) Display requests 2,000 points 2,000 points 4,000 points 6,000 points (Note 4) Status displays 2,000 points 2,000 points 4,000 points 6,000 points (Note 4)
Nonvolatile memory
Timer (T) ⋅ Variable timer 80 bytes
Variable timer
precision
Counter (C) Variable counter 80 bytes
Fixed counter 40 bytes
Keep relay (K) User area 20 bytes 100 bytes 200 bytes 300 bytes 20 bytes System area 100 bytes 100 bytes 100 bytes 100 bytes 100 bytes
Data table (D) 3,000 bytes 10,000 bytes 20,000 bytes
Step sequence Step number (S) (None) 2,000 bytes 2,000 bytes 2,000 bytes (None)
Functional instructions
Variable timers (TMR) 40 pieces 250 pieces 500 pieces 500 pieces 40 pieces
Fixed timers
(TMRB/TMRBF)
Variable counters (CTR)
Fixed counters (CTRB) 20 pieces 100 pieces 200 pieces 300 pieces 20 pieces
Rising/Falling edge
detection (DIFU/DIFD)
Labels (LBL) 9,999 pieces 9,999 pieces 9,999 pieces 9,999 pieces 9,999 pieces
Subprograms (SP) 512 pieces 5,000 pieces 5,000 pieces 5,000 pieces 512 pieces
PMC
Memory-A
500 bytes 500 bytes 500 bytes 500 bytes 500 bytes
(40 pieces) 80 bytes (40 pieces)
(20 pieces)
(20 pieces)
100 pieces 500 pieces 1,000 pieces 1,500 pieces 100 pieces
20 pieces 100 pieces 200 pieces 300 pieces 20 pieces
256 pieces 1,000 pieces 2,000 pieces 3,000 pieces 256 pieces
PMC
Memory-B
500 bytes (250 pieces) 500 bytes (250 pieces)
400 bytes (100 pieces) 200 bytes (100 pieces)
PMC
Memory-C
1,000 bytes (500 pieces) 1,000 bytes (500 pieces)
800 bytes (200 pieces) 400 bytes (200 pieces)
(Note 5)
PMC
Memory-D
1,000 bytes (500 pieces) 1,000 bytes (500 pieces)
1200 bytes (300 pieces) 600 bytes (300 pieces)
60,000 bytes (Note 5)
(Note 1)
80 bytes (40 pieces) 80 bytes (40 pieces)
80 bytes (20 pieces) 40 bytes (20 pieces)
3,000 bytes
NOTE
1 This PMC is used for Dual Check Safety function (option). 2 The extra relay is common memory for the multi-PMC function. This means that
its size covers all of PMCs. Moreover, It is possible to use the extra relay as
nonvolatile memory by the option. 3 No extra relay is available for DCS PMC. 4 The message display relay is ineffective in DCS PMC because the message
display function is unavailable in it. 5 Under the configuration having two or more paths of PMC Memory-C or one path
of PMC Memory-D, please specify the "Nonvolatile PMC data table area
expansion 40KB" option. If this option is not added, the expanded data table area
(D10000~) is not kept after rebooting CNC. Refer to subsection 2.1.3 for details.
- 49 -
Page 72
2.PMC SPECIFICATIONS B-64513EN/01

2.1.2 Total Ladder Steps of Multi-path PMC

For the multi-path PMC system, you can specify a ladder step option by the total step of all of PMCs.
Option name Specification
PMC Ladder Function 24,000 Step PMC Ladder Function 32,000 Step PMC Ladder Function 64,000 Step PMC Ladder Function 100,000 Step PMC Ladder Function 300,000 Step
For example, when the 1st PMC requires 48,000 steps, the 2nd PMC requires 32,000 steps and the 3rd PMC requires 16,000 steps on 3-path PMC system, the “PMC ladder faction 100,000 step” option is necessary.
Ladder steps of each PMC path
Ladder steps
1st PMC 48,000 steps
Basic H990#32K H990#64K
H990#100K H990#300K
PMC Ladder 100,000 steps option
1st PMC (48,000 steps)
2nd PMC 32,000 steps
3rd PMC 16,000 steps
Total 96,000 steps
2nd PMC (32,000 steps)
3rd PMC (16,000 steps)
NOTE
1 If the total steps, which is added in PMC path order, exceed the step number of
specified step option, the PMC alarm “ER03 PROGRAM SIZE ERROR(OPTION)” occurs in the path just when the excess of steps is detected. The sequence program of the PMC path, in which the alarm occurs, does not be executed.
The steps of the PMC path, in which the alarm occurs, is eliminated from the total
steps, and the steps of next PMC path are added to the total steps. For example, when the option “PMC ladder 64,000 steps” is specified under above configuration of PMC paths, the sequence program both of the 1st path PMC and 3rd path PMC are executed, the PMC alarm “ER03” occurs in the 2nd path PMC.
2 The total steps does not include the ladder steps of dual check safety PMC.
- 50 -
Page 73
B-64513EN/01 2.PMC SPECIFICATIONS

2.1.3 Determination of PMC Memory Type

PMC memory type
There are four PMC memory types i.e. memory-A, memory-B, memory-C and memory-D. These memory types differ in the size of PMC address. For the 2nd to 5th path PMC, the PMC memory can be also shared with the 1st path PMC. The DCS PMC does not have plural PMC memory types. For the details of the PMC memory type, refer to subsection “2.1.1”. As for the CNC parameter for the PMC memory type, refer to subsection “2.4.3”.
The following is the selectable PMC memory types in each PMC path.
1st path PMC 2nd to 5th path PMC Remark
PMC-memory B (default) PMC-memory C
PMC-memory D Shared with 1st path PMC
PMC-memory A (default) PMC-memory B PMC-memory C Shared with 1st path PMC
Nonvolatile area of the data table in each PMC memory type
The following table is the data table number and basic nonvolatile area of each PMC memory type.
Table 2.1.3 (a) Data table number of each PMC memory type
PMC memory type Data Table Basic nonvolatile area
PMC memory-A 3,000 bytes 3,000 bytes PMC memory-B 10,000 bytes 10,000 bytes PMC memory-C 20,000 bytes 20,000 bytes (In case of using one path of
PMC memory-D 60,000 bytes 10,000 bytes
NOTE
To use two or more paths of PMC memory-C or one path of PMC memory-D,
specify the option “Nonvolatile PMC data table area expansion (40KB)”. If this option is not specified, data at D10000 and subsequent addresses is not saved.
You can specify up to three paths both of PMC-memory B and C in total.
PMC-memory C) 10,000 bytes (In case of using two or more paths of PMC-memory C)
- 51 -
Page 74
2.PMC SPECIFICATIONS B-64513EN/01

2.1.4 Program Capacity

All of the memory size, to which save the sequence program and multi-language PMC message data for all PMC paths, is specified as the combination of the following two options. The size of each data is calculated per 128KB.
(1) PMC Ladder step option
Option name Memory size
PMC Ladder Function 24,000 Steps (Basic) 256 KB PMC Ladder Function 32,000 Steps 384 KB PMC Ladder Function 64,000 Steps 768 KB PMC Ladder Function 100,000 Steps 1 MB (1,024 KB) PMC Ladder Function 300,000 Steps 3 MB (3,072 KB)
(2) PMC Symbol, Comment and Message capacity expansion option
Option name Memory size
PMC Symbol, Comment and Message capacity expansion (512KB) 512KB PMC Symbol, Comment and Message capacity expansion (1MB) 1MB (1,024KB) PMC Symbol, Comment and Message capacity expansion (2MB) 2MB (2,048KB)
Example of configuration
- The sequence program of the 1st PMC: Ladder 48,000 steps, Memory size 640KB
- The sequence program of the 2nd PMC: Ladder 32,000 steps, Memory size 384KB
- The sequence program of the 3rd PMC: Ladder 16,000 steps, Memory size 128KB
- The multi-language message data of the 1st PMC: Memory size 256KB
- The multi-language message data of the 2nd PMC: Memory size 128KB
Total: Ladder 96,000 steps, Memory size 1,536KB
The following options are required to be above configuration.
(1) “Multi-Path PMC Function (3-Path)” Specify the path number according to using PMC path.
(2) “PMC Ladder Function 100,000 Steps” Specify total steps of all PMC paths.
(3) “PMC Symbol, Comment and Message capacity expansion 512KB” Specify the memory capacity to add “PMC Ladder Function Step Option”. The memory size of
“PMC Ladder Function 100,000 steps” is 1,024KB. So, the shortage of 512KB is specified.
NOTE
1 When the total size is exceed specified memory capacity by options, the alarm
“ER02 PROGRAM SIZE OVER” or “WN64 MESSAGE FILE SIZE OVER“ occurs in the PMC path in which detected the error.
2 When plural data are edited, inputted or outputted at the same time using CNC
screen or FANUC LADDER-III, the data may not be updated even if the total size is under the specified memory capacity. In this case, simultaneous operations should be stopped and retry.
3 Above memory size does not include the memory for DCS PMC. The memory size
of DCS PMC is 128KB.
- 52 -
Page 75
B-64513EN/01 2.PMC SPECIFICATIONS

2.1.5 Used Memory Size of Sequence Program

The following table lists the memory capacity used by sequence programs. When creating sequence programs, keep their total size within this memory capacity.
Table 2.1.5 (a) Used memory size for each data
Category Item Required memory size (Note 1)
Ladder (Note 2)
conventional type (Note 2)
Symbol/comment extended type (Note 2)
Message (Note 2) One message character (alphanumeric
Others Area used by the system
NOTE
1 The total sequence program size (including all items such as ladders,
symbols/comments, and messages) cannot exceed the sequence program memory storage capacity. If a ladder, symbol/ comment, or message is large, the size of other categories may be limited.
2 The PMC programmer may adjust arrangement of these items in the sequence
program memory to improve processing efficiency. As a result, up to 1K byte
(1024 bytes) may be added to the sum of the sizes of individual items. 3 Each full-size character takes a memory capacity of 2 bytes. 4 For Japanese and special characters, each character in a character code
notation (including leading and trailing "@" characters) takes a memory capacity
of one byte. See descriptions about the DISPB function instructions for the
character input code notation. 5 One definition of extended symbol and comment takes 16-23 bytes plus the
memory according to the length of symbol and comment. 6 8 bytes are taken for a sub-program when local symbols are defined in the
sub-program. 7 In the PMC Memory-C, the system area is expanded by about 8KB from PMC
Memory-A or B. In the PMC Memory-D, the area is expanded by about 16KB
from PMC Memory-A or B. Therefore, available memory size for Symbol,
Comment and Message data is smaller than PMC Memory-A and B. If the
program overflowed by converting PMC Memory Type, please decrease the
Symbol, Comment or Message data, or upgrade the Ladder step option to larger
size.
Basic instruction Please refer to table 2.1.8. Functional instruction Please refer to table 2.1.9 and table2.1.10. Functional instruction parameter 4 bytes One definition of symbol/comment (Including symbol string) One comment character 1 byte (Note 3) One definition of symbol/comment 16 - 23 bytes (Note 5) One symbol character 1 byte One comment character 1 byte (Note 3) One sub-program 8 bytes (Note 6)
characters)
24 bytes Symbol/comment
1 byte (Note 4)
About 16K bytes (PMC Memory-A, B, DCS PMC) About 24K bytes (Note 7) (PMC Memory-C) About 32K bytes (Note 7) (PMC Memory-D)
- 53 -
Page 76
2.PMC SPECIFICATIONS B-64513EN/01

2.1.6 PMC Addresses

Table 2.1.6 (a) PMC Address list (1)
Signals Symbol
Input signal to the PMC from the machine
X1000 ~ X1127
Output signal from the PMC to the machine
Y1000 ~ Y1127
Input signal to the PMC from the CNC
Output signal from the PMC to the CNC
Input signal from other PMC path Output signal to other PMC path Internal relay R R0 ~ R1499 R0 ~ R7999 R0 ~ R15999 R0 ~ R59999 R0 ~ R1499 System relay R / Z R9000 ~ R9499 R9000 ~ R9499 Z0 ~ Z499 Z0 ~ Z499 R9000 ~ R9499 Extra relay E E0 ~ E9999
Message display
Display request Display status
PMC Memory-A PMC Memory-B PMC Memory-C PMC Memory-D (Note 1)
X X0 ~ X127
X200 ~ X327 X400 ~ X527 X600 ~ X727
(Note 2)
Y Y0 ~ Y127
Y200 ~ Y327 Y400 ~ Y527 Y600 ~ Y727
(Note 2) F0 ~ F767
F
F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767 G0 ~ G767
G
G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
M M0 ~ M767 M0 ~ M767 M0 ~ M767 M0 ~ M767
N N0 ~ N767 N0 ~ N767 N0 ~ N767 N0 ~ N767
(Note 3)
A
A0 ~ A249 A9000 ~ A9249
1st to 5th path PMC DCS PMC
X0 ~ X127 X200 ~ X327 X400 ~ X527 X600 ~ X727 X1000 ~ X1127 (Note 2) Y0 ~ Y127 Y200 ~ Y327 Y400 ~ Y527 Y600 ~ Y727 Y1000 ~ Y1127 (Note 2) F0 ~ F767
F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767 G0 ~ G767 G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
E0 ~ E9999 (Note 3)
A0 ~ A249 A9000 ~ A9249
X0 ~ X127 X200 ~ X327 X400 ~ X527 X600 ~ X727 X1000 ~ X1127 (Note 2) Y0 ~ Y127 Y200 ~ Y327 Y400 ~ Y527 Y600 ~ Y727 Y1000 ~ Y1127 (Note 2) F0 ~ F767
F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767 G0 ~ G767 G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
E0 ~ E9999 (Note 3)
A0 ~ A499 A9000 ~ A9499
X0 ~ X127 X200 ~ X327 X400 ~ X527 X600 ~ X727 X1000 ~ X1127 (Note 2) Y0 ~ Y127 Y200 ~ Y327 Y400 ~ Y527 Y600 ~ Y727 Y1000 ~ Y1127 (Note 2) F0 ~ F767
F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767 G0 ~ G767 G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
E0 ~ E9999 (Note 3)
A0 ~ A749 A9000 ~ A9749
X0 ~ X127
Y0 ~ Y127
F0 ~ F767
G0 ~ G767
(Note 3)
A0 ~ A249 A9000 ~ A9249
- 54 -
Page 77
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.6 (b) PMC Address list (2)
Signals Symbol
Timer T
Variable timer Variable timer
precision (Note 5)
Counter C
Variable counter Fixed counter
Keep relay K
User area System area
Data table D D0 ~ D2999 D0 ~ D9999 D0 ~ D19999
Label L L1 ~ L9999 L1 ~ L9999 L1 ~ L9999 L1 ~ L9999 L1 ~ L9999 Subprogram P P1 ~ P512 P1 ~ P5000 P1 ~ P5000 P1 ~ P5000 P1 ~ P512 Step number (Step sequence)
PMC Memory-A PMC Memory-B PMC Memory-C PMC Memory-D (Note 1)
T0 ~ T79 T9000 ~ T9499
C0 ~ C79 C5000 ~ C5199
K0 ~ K19 K900 ~ K999
S (none) S1 ~ S2000 S1 ~ S2000 S1 ~ S2000 (none)
1st to 5th path PMC DCS PMC
T0 ~ T499 T9000 ~ T9499
C0 ~ C399 C5000 ~ C5199
K0 ~ K99 K900 ~ K999
T0 ~ T999 T9000 ~ T9999
C0 ~ C799 C5000 ~ C5399
K0 ~ K199 K900 ~ K999
(Note6)
T0 ~ T999 T9000 ~ T9999
C0C1199 C5000C5599
K0 ~ K299 K900 ~ K999
D0 ~ D59999 (Note6)
T0 ~ T79 T9000 ~ T9079
C0 ~ C79 C5000 ~ C5039
K0 ~ K19 K900 ~ K999
D0 ~ D2999
NOTE
1 This PMC is used for Dual Check Safety function (option). 2 This area is reserved for PMC management software. Do not use it in user
programs.
3 This area is common memory for the multi-path PMC function. Each program can
write and read the same value in the area. 4 No extra relay is available for the Dual Check Safety PMC. 5 This area is used to specify the precision of a variable timer.
- Don't modify the value of active timer and its precision except for writing same value.
- Don't set the value other than the following range.
- If above rules are violated, the behavior of the timer is not guaranteed.
The value of precision 0: Default (8msec or 48msec) 1: 1msec 2: 10msec 3: 100msec 4: 1sec 5: 1min
6 To save all area of the data table, the “Nonvolatile PMC data table area expansion
(40KB)” option may be necessary.
- 55 -
Page 78
2.PMC SPECIFICATIONS B-64513EN/01

2.1.7 Basic Instructions

Table 2.1.7 Basic instruction list
Instruction name Required memory size 1st to 5th path PMC DCS PMC (Note)
RD 4 bytes RD.NOT 4 bytes WRT 4 bytes WRT.NOT 4 bytes AND 4 bytes AND.NOT 4 bytes OR 4 bytes OR.NOT 4 bytes RD.STK 4 bytes RD.NOT.STK 4 bytes AND.STK 4 bytes OR.STK 4 bytes SET 4 bytes RST 4 bytes RDPT 12 bytes ANDPT 12 bytes ORPT 12 bytes RDPT.STK 12 bytes RDNT 12 bytes ANDNT 12 bytes ORNT 12 bytes RDNT.STK 12 bytes PUSH 4 bytes POP 4 bytes
({: Usable. ●: The Extended PMC Ladder Instruction Function ×: Unusable.)
NOTE
This PMC is used for Dual Check Safety function (option). See "Dual Check
Safety Connection Manual (B-64483JA-2)" for details.
{ { { { { { { { { { { { { { { { { { { { { { { { { { { {
- 56 -
Page 79
B-64513EN/01 2.PMC SPECIFICATIONS
2.1.8 Functional Instructions (Arranged in Sequence of Instruction
Group)
Table 2.1.8 (a) Functional instruction list (arranged in sequence of instruction group) (1)
Required
Instruction
group
Timer 1 TMR 3 On-delay timer 8
2 TMRB 24 Fixed on-delay timer 12 3 TMRBF 77 Fixed off-delay timer 12 4 TMRC 54 On-delay timer 16 5 TMRST 221 Stop watch timer (1 ms accuracy) 20 6 TMRSS 222 Stop watch timer (1 sec accuracy) 20
Counter 1 CTR 5 Counter processing 8
2 CTRB 56 Counter processing 12 3 CTRC 55 Counter processing 12 4 CTRD 223 Counter processing (4 byte length) 12
Data 1 MOVB 43 1-byte transfer 12
transfer 2 MOVW 44 2-byte transfer 12
3 MOVD 47 4-byte transfer 12 4 MOVN 45 Transfer of arbitrary number of bytes 16 5 MOVE 8 Data transfer after logical product 20 6 MOVOR 28 Data transfer after logical sum 16 7 XMOVB 35 Index modification binary data transfer 24 8 XMOV 18 Index modification data transfer 20 9 MOVBT 224 Bit transfer 24 10 SETNB 225 Data setting (1 byte length) 20 11 SETNW 226 Data setting (2 byte length) 20 12 SETND 227 Data setting (4 byte length) 20 13 XCHGB 228 Data exchange (1 byte length) 12 14 XCHGW 229 Data exchange (2 byte length) 12 15 XCHGD 230 Data exchange (4 byte length) 12 16 SWAPW 231 Data swap (2 byte length) 16 17 SWAPD 232 Data swap (4 byte length) 16 18 DSCHB 34 Binary data search 24 19 DSCH 17 Data search 20
Table 1 TBLRB 233 Reading data from table (1 byte length) 24
Data 2 TBLRW 234 Reading data from table (2 byte length) 24
3 TBLRD 235 Reading data from table (4 byte length) 24 4 TBLRN 236 Reading data from table
5 TBLWB 237 Writing data to table (1 byte length) 24 6 TBLWW 238 Writing data to table (2 byte length) 24 7 TBLWD 239 Writing data to table (4 byte length) 24 8 TBLWN 240 Writing data to table (Arbitrary byte length) 28 9 DSEQB 241 Searching data from table (=) (1 byte length) 28 10 DSEQW 242 Searching data from table (=) (2 byte length) 28
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
SUB
No.
(Arbitrary byte length)
Processing
memory
size
(byte)
28
1st to 5th
PMC
{ { { { { { { {
{ { { { { {
{ { { { { { { { { { { { { { { {
{ { { {
DCS PMC
(Note1)
- 57 -
Page 80
2.PMC SPECIFICATIONS B-64513EN/01
Table 2.1.8 (b) Functional instruction list (arranged in sequence of instruction group) (2)
Required
Instruction
group
Table
Data
12 DSNEB 244 Searching data from table () (1 byte length) 28 13 DSNEW 245 Searching data from table () (2 byte length) 28 14 DSNED 246 Searching data from table () (4 byte length) 28 15 DSGTB 247 Searching data from table (>) (1 byte length) 28 16 DSGTW 248 Searching data from table (>) (2 byte length) 28 17 DSGTD 249 Searching data from table (>) (4 byte length) 28 18 DSLTB 250 Searching data from table (<) (1 byte length) 28 19 DSLTW 251 Searching data from table (<) (2 byte length) 28
20 DSLTD 252 Searching data from table (<) (4 byte length) 28
21 DSGEB 253
22 DSGEW 254
23 DSGED 255
24 DSLEB 256
25 DSLEW 257
26 DSLED 258
27 DMAXB 259 Maximum data (1 byte length) 28
28 DMAXW 260 Maximum data (2 byte length) 28
29 DMAXD 261 Maximum data (4 byte length) 28
30 DMINB 262 Minimum data (1 byte length) 28
31 DMINW 263 Minimum data (2 byte length) 28
32 DMIND 264 Minimum data (4 byte length) 28
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
11 DSEQD 243 Searching data from table (=) (4 byte length) 28
SUB
No.
Searching data from table () (1 byte length) Searching data from table () (2 byte length) Searching data from table () (4 byte length) Searching data from table () (1 byte length) Searching data from table () (2 byte length) Searching data from table () (4 byte length)
Processing
memory
size
(byte)
28 28 28 28 28 28
1st to 5th
PMC
DCS PMC
(Note1)
- 58 -
Page 81
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.8 (c) Functional instruction list (arranged in sequence of instruction group) (3)
Required
Instruction
group
Comparison 1 EQB 200 Signed Binary Comparison (=) (1 byte length) 16
2 EQW 201 Signed Binary Comparison (=) (2 byte length) 16
3 EQD 202 Signed Binary Comparison (=) (4 byte length) 16
4 NEB 203 Signed Binary Comparison () (1 byte length) 16
5 NEW 204 Signed Binary Comparison () (2 byte length) 16
6 NED 205 Signed Binary Comparison () (4 byte length) 16
7 GTB 206 Signed Binary Comparison (>) (1 byte length) 16
8 GTW 207 Signed Binary Comparison (>) (2 byte length) 16
9 GTD 208 Signed Binary Comparison (>) (4 byte length) 16
10 LTB 209 Signed Binary Comparison (<) (1 byte length) 16
11 LTW 210 Signed Binary Comparison (<) (2 byte length) 16
12 LTD 211 Signed Binary Comparison (<) (4 byte length) 16
13 GEB 212
14 GEW 213
15 GED 214
16 LEB 215
17 LEW 216
18 LED 217
19 RNGB 218 Signed Binary Comparison (range) (1 byte length) 20
20 RNGW 219 Signed Binary Comparison (range) (2 byte length) 20
21 RNGD 220 Signed Binary Comparison (range) (4 byte length) 20
22 COMPB 32 Comparison between binary data 20
23 COMP 15 Comparison 16
24 COIN 16 Coincidence check 16
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
SUB
No.
Signed Binary Comparison () (1 byte length) Signed Binary Comparison () (2 byte length) Signed Binary Comparison () (4 byte length) Signed Binary Comparison () (1 byte length) Signed Binary Comparison () (2 byte length) Signed Binary Comparison () (4 byte length)
Processing
memory
size
(byte)
16 16 16 16 16 16
1st to 5th
PMC
{ { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { {
DCS PMC
(Note1)
- 59 -
Page 82
2.PMC SPECIFICATIONS B-64513EN/01
Table 2.1.8 (d) Functional instruction list (arranged in sequence of instruction group) (4)
Required
Instruction
group
Bit 1 DIFU 57 Rising-edge detection 8
operation 2 DIFD 58 Falling-edge detection 8
3 EOR 59 Exclusive OR 20 4 AND 60 Logical AND 20 5 OR 61 Logical OR 20 6 NOT 62 Logical NOT 16 7 PARI 11 Parity check 8 8 SFT 33 Shift register 8
9 EORB 265 Exclusive OR (1 byte length) 20
10 EORW 266 Exclusive OR (2 byte length) 20
11 EORD 267 Exclusive OR (4 byte length) 20
12 ANDB 268 Logical AND (1 byte length) 20
13 ANDW 269 Logical AND (2 byte length) 20
14 ANDD 270 Logical AND (4 byte length) 20
15 ORB 271 Logical OR (1 byte length) 20
16 ORW 272 Logical OR (2 byte length) 20
17 ORD 273 Logical OR (4 byte length) 20
18 NOTB 274 Logical NOT (1 byte length) 16
19 NOTW 275 Logical NOT (2 byte length) 16
20 NOTD 276 Logical NOT (4 byte length) 16
21 SHLB 277 Bit shift left (1 byte length) 20
22 SHLW 278 Bit shift left (2 byte length) 20
23 SHLD 279 Bit shift left (4 byte length) 20
24 SHLN 280 Bit shift left (Arbitrary byte length) 24
25 SHRB 281 Bit shift right (1 byte length) 20
26 SHRW 282 Bit shift right (2 byte length) 20
27 SHRD 283 Bit shift right (4 byte length) 20
28 SHRN 284 Bit shift right (Arbitrary byte length) 24
29 ROLB 285 Bit rotation left (1 byte length) 20
30 ROLW 286 Bit rotation left (2 byte length) 20
31 ROLD 287 Bit rotation left (4 byte length) 20
32 ROLN 288 Bit rotation left (Arbitrary byte length) 24
33 RORB 289 Bit rotation right (1 byte length) 20
34 RORW 290 Bit rotation right (2 byte length) 20
35 RORD 291 Bit rotation right (4 byte length) 20
36 RORN 292 Bit rotation right (Arbitrary byte length) 24
37 BSETB 293 Bit set (1 byte length) 16
38 BSETW 294 Bit set (2 byte length) 16
39 BSETD 295 Bit set (4 byte length) 16
40 BSETN 296 Bit set (Arbitrary byte length) 20
41 BRSTB 297 Bit reset (1 byte length) 16
42 BRSTW 298 Bit reset (2 byte length) 16
43 BRSTD 299 Bit reset (4 byte length) 16
44 BRSTN 300 Bit reset (Arbitrary byte length) 20
45 BTSTB 301 Bit test (1 byte length) 16
46 BTSTW 302 Bit test (2 byte length) 16
47 BTSTD 303 Bit test (4 byte length) 16
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
SUB
No.
Processing
memory
size
(byte)
1st to 5th
PMC
{ { { { { { { { { { { {
{ {
{ {
DCS
PMC
(Note1)
- 60 -
Page 83
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.8 (e) Functional instruction list (arranged in sequence of instruction group) (5)
DCS PMC
(Note1)
Instruction
group
Instruction
name
SUB
No.
Processing
Required
memory
size
1st to 5th
PMC
(byte)
Bit 48 BTSTN 304 Bit test (Arbitrary byte length) 20
operation 49 BPOSB 305 Bit search (1 byte length) 12
50 BPOSW 306 Bit search (2 byte length) 12 51 BPOSD 307 Bit search (4 byte length) 12 52 BPOSN 308 Bit search (Arbitrary byte length) 16 53 BCNTB 309 Bit count (1 byte length) 12 54 BCNTW 310 Bit count (2 byte length) 12 55 BCNTD 311 Bit count (4 byte length) 12 56 BCNTN 312 Bit count (Arbitrary byte length) 16
Code
conversion
2 CODB 27 Binary code conversion 20+n
1 COD 7 Code conversion 16+n
(Note5)
{ {
{ {
(Note5)
3 DCNV 14 Data conversion 12 4 DCNVB 31 Extended data conversion 16 5 DEC 4 Decoding 12 6 DECB 25 Binary decoding 20
{ { { { { { { {
7 TBCDB 313 Binary to BCD conversion (1 byte length) 16 8 TBCDW 314 Binary to BCD conversion (2 byte length) 16 9 TBCDD 315 Binary to BCD conversion (4 byte length) 16 10 FBCDB 316 BCD to Binary conversion (1 byte length) 16 11 FBCDW 317 BCD to Binary conversion (2 byte length) 16 12 FBCDD 318 BCD to Binary conversion (4 byte length) 16
Operation 1 ADDB 36 Binary addition 20
2 SUBB 37 Binary subtraction 20
3 MULB 38 Binary multiplication 20
4 DIVB 39 Binary division 20 5 ADD 19 BCD addition 20
6 SUB 20 BCD subtraction 20
7 MUL 21 BCD multiplication 20 8 DIV 22 BCD division 20
9 NUMEB 40 Binary constant definition 16
10 NUME 23 BCD-constant definition 12
{ { { { { { { { { { { { { { { { { { { {
11 ADDSB 319 Addition (1 byte length) 20
12 ADDSW 320 Addition (2 byte length) 20
13 ADDSD 321 Addition (4 byte length) 20
14 SUBSB 322 Subtraction (1 byte length) 20
15 SUBSW 323 Subtraction (2 byte length) 20
16 SUBSD 324 Subtraction (3 byte length) 20
17 MULSB 325 Multiplication (1 byte length) 20
18 MULSW 326 Multiplication (2 byte length) 20
19 MULSD 327 Multiplication (4 byte length) 20
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
- 61 -
Page 84
2.PMC SPECIFICATIONS B-64513EN/01
Table 2.1.8 (f) Functional instruction list (arranged in sequence of instruction group) (6)
Required
Instruction
group
Operation 20 DIVSB 328 Division (1 byte length) 20
21 DIVSW 329 Division (2 byte length) 20 22 DIVSD 330 Division (4 byte length) 20 23 MODSB 331 Remainder (1 byte length) 20 24 MODSW 332 Remainder (2 byte length) 20 25 MODSD 333 Remainder (4 byte length) 20 26 INCSB 334 Increment (1 byte length) 8 27 INCSW 335 Increment (2 byte length) 8 28 INCSD 336 Increment (4 byte length) 8 29 DECSB 337 Decrement (1 byte length) 8 30 DECSW 338 Decrement (2 byte length) 8 31 DECSD 339 Decrement (4 byte length) 8 32 ABSSB 340 Absolute value (1 byte length) 16 33 ABSSW 341 Absolute value (2 byte length) 16 34 ABSSD 342 Absolute value (4 byte length) 16 35 NEGSB 343 Sign inversion (1 byte length) 16 36 NEGSW 344 Sign inversion (2 byte length) 16 37 NEGSD 345 Sign inversion (4 byte length) 16
CNC 1 DISPB 41 Message display 8
Function 2 EXIN 42 External data input 8 3 WINDR 51 CNC window data read 8 4 WINDW 52 CNC window data write 8 5 AXCTL 53 PMC axis control 12 6 PSGN2 63 Position signal 8 { Δ 7 PSGNL 50 Position signal 12 { Δ
Program 1 COM 9 Common line control 8
control 2 COME 29 End of common line control 4
3 JMP 10 Jump 12
4 JMPE 30 End of jump 4 5 JMPB 68 Label jump 1 16 6 JMPC 73 Label jump 2 16 7 LBL 69 Label 12 8 CALL 65 Conditional subprogram call 12 9 CALLU 66 Unconditional subprogram call 12 10 SP 71 Subprogram 8
11 SPE 72 End of subprogram 4 12 END1 1 End of first-level program 4 13 END2 2 End of second-level program 4
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
SUB
No.
Processing
memory
size
(byte)
1st to 5th
PMC
{ { { { {
{ { { { { { { { { { { { { { { { { { { { { { { { { {
DCS PMC
(Note1)
Δ Δ Δ Δ Δ
- 62 -
Page 85
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.8 (g) Functional instruction list (arranged in sequence of instruction group) (7)
Required
Instruction
group
Program
control
15 END 64 End of ladder program 4 16 NOP 70 No operation 8 17 CS 74 Case call 8 18 CM 75 Sub program call in case call 12 19 CE 76 End of case call 4
Rotation 1 ROT 6 Rotation control 20
control 2 ROTB 26 Binary rotation control 24
Invalid 1 SPCNT 46 Spindle control 16 Δ Δ
instruction 2 DISP 49 Message display 16+n
3 MMCWR 98 MMC window data read 12 Δ Δ 4 MMCWW 99 MMC window data write 12 Δ Δ 5 FNC90 90 Arbitrary-function instruction 1 8 Δ Δ 6 FNC91 91 Arbitrary-function instruction 2 8 Δ Δ
7 FNC92 92 Arbitrary-function instruction 3 8 Δ Δ 8 FNC93 93 Arbitrary-function instruction 4 8 Δ Δ 9 FNC94 94 Arbitrary-function instruction 5 8 Δ Δ 10 FNC95 95 Arbitrary-function instruction 6 8 Δ Δ 11 FNC96 96 Arbitrary-function instruction 7 8 Δ Δ 12 FNC97 97 Arbitrary-function instruction 8 8 Δ Δ
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
Instruction
name
14 END3 48 End of third-level program 4
SUB
No.
Processing
memory
size
(byte)
(Note5)
1st to 5th
PMC
{
(Note 3)
{ { { { { { { { { { { { { {
Δ Δ
DCS PMC
(Note1)
Δ
(Note4)
NOTE
1 This term stands for the Dual Check Safety PMC (option). 2 These instructions are intended to maintain source-level compatibility with programs
for conventional models. They are treated as a NOP instruction (instruction that performs no operation).
3 The 3rd level sequence part is available for the compatibility with programs for
conventional models. However, the execution cycle period for processing the 3rd level sequence part is not guaranteed. See Section 1.4.3 "Processing priority".
4 This instruction is intended to maintain source-level compatibility with programs for
other models. A program can be created on level 3, but it is not executed.
5 Memory size increases by the number of data tables to be used. In the COD
instruction, CODB instruction (1byte length), CODB instruction (2byte length), or DISP instruction, 2 bytes are added for each data. And, when the number of data is odd, 2 bytes are added moreover. In the CODB instruction, 4 bytes are added for each data.
- 63 -
Page 86
2.PMC SPECIFICATIONS B-64513EN/01

2.1.9 Functional Instructions (Arranged in Sequence of SUB No.)

Table 2.1.9 (a) Functional instruction list (arranged in sequence of SUB No.) (1)
Required
Instruction
name
END1 1 End of first-level program 4 END2 2 End of second-level program 4 TMR 3 Timer processing 8 DEC 4 Decoding 12 CTR 5 Counter processing 8 ROT 6 Rotation control 20 COD 7 Code conversion 16+n
MOVE 8 Data transfer after logical product 20 COM 9 Common line control 8 JMP 10 Jump 12 PARI 11 Parity check 8 DCNV 14 Data conversion 12 COMP 15 Comparison 16 COIN 16 Coincidence check 16 DSCH 17 Data search 20 XMOV 18 Index modification data transfer 20 ADD 19 Addition 20 SUB 20 Subtraction 20 MUL 21 Multiplication 20 DIV 22 Division 20 NUME 23 Constant definition 12 TMRB 24 Fixed-timer processing 12 DECB 25 Binary decoding 20 ROTB 26 Binary rotation control 24 CODB 27 Binary code conversion 20+n
MOVOR 28 Data transfer after logical sum 16 COME 29 End of common line control 4 JMPE 30 End of jump 4 DCNVB 31 Extended data conversion 16 COMPB 32 Binary comparison 20 SFT 33 Shift register 8 DSCHB 34 Binary data search 24 XMOVB 35 Index modification binary data transfer 24 ADDB 36 Binary addition 20 SUBB 37 Binary subtraction 20 MULB 38 Binary multiplication 20 DIVB 39 Binary division 20 NUMEB 40 Binary constant definition 16 DISPB 41 Message display 8 EXIN 42 External data input 8 MOVB 43 1-byte transfer 12 MOVW 44 2-byte transfer 12 MOVN 45 Transfer of arbitrary number of bytes 16 SPCNT 46 Spindle control 16 Δ Δ
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
SUB No.
Processing
memory
size
(byte)
(Note5)
(Note5)
1st to 5th
PMC
{ { { { { { { { { { { { { {
{ { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { {
{ { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { {
DCS PMC
(Note1)
Δ Δ × ×
- 64 -
Page 87
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.9 (b) Functional instruction list (arranged in sequence of SUB No.) (2)
Required
Instruction
name
SUB No.
Processing
memory
size
1st to 5th
PMC
DCS PMC
(Note1)
(byte)
MOVD 47 4-byte transfer 12 END3 48 End of third-level program 4
{ {
{
(Note3) Δ (Note4)
DISP 49 Message display 16+n
Δ Δ
(Note5) PSGNL 50 Position signal 12 WINDR 51 CNC window data read 8 WINDW 52 CNC window data write 8 AXCTL 53 PMC axis control 12 TMRC 54 Timer processing 16 CTRC 55 Counter processing 12 CTRB 56 Counter processing 12 DIFU 57 Rising-edge detection 8 DIFD 58 Falling-edge detection 8 EOR 59 Exclusive OR 20 AND 60 Logical AND 20 OR 61 Logical OR 20 NOT 62 Logical NOT 16 PSGN2 63 Position signal 8 END 64 End of ladder program 4 CALL 65 Conditional subprogram call 12 CALLU 66 Unconditional subprogram call 12 JMPB 68 Label jump 1 16 LBL 69 Label 12 NOP 70 No operation 8 SP 71 Subprogram 8 SPE 72 End of subprogram 4 JMPC 73 Label jump 2 16 CS 74 Case call 8 CM 75 Sub program call in case call 12 CE 76 End of case call 4 TMRBF 77 Fixed off-delay timer 12
{ { { { { { { { { { { { { { { { { { { { { { { { {
{ {
{ {
{ { { { { {
{ { { {
{ { { { { { { {
{ {
Δ Δ Δ Δ
Δ
FNC90 90 Arbitrary-function instruction 1 8 Δ Δ FNC91 91 Arbitrary-function instruction 2 8 Δ Δ FNC92 92 Arbitrary-function instruction 3 8 Δ Δ FNC93 93 Arbitrary-function instruction 4 8 Δ Δ FNC94 94 Arbitrary-function instruction 5 8 Δ Δ FNC95 95 Arbitrary-function instruction 6 8 Δ Δ FNC96 96 Arbitrary-function instruction 7 8 Δ Δ FNC97 97 Arbitrary-function instruction 8 8 Δ Δ MMCWR 98 MMC window data read 12 Δ Δ MMCWW 99 MMC window data write 12 Δ Δ
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
- 65 -
Page 88
2.PMC SPECIFICATIONS B-64513EN/01
Table 2.1.9 (c) Functional instruction list (arranged in sequence of SUB No.) (3)
Required
Instruction
name
EQB 200 Signed Binary Comparison (=)(1 byte length) 16 EQW 201 Signed Binary Comparison (=)(2 byte length) 16 EQD 202 Signed Binary Comparison (=)(4 byte length) 16 NEB 203 Signed Binary Comparison ()(1 byte length) 16 NEW 204 Signed Binary Comparison ()(2 byte length) 16 NED 205 Signed Binary Comparison ()(4 byte length) 16 GTB 206 Signed Binary Comparison (>)(1 byte length) 16 GTW 207 Signed Binary Comparison (>)(2 byte length) 16 GTD 208 Signed Binary Comparison (>)(4 byte length) 16 LTB 209 Signed Binary Comparison (<)(1 byte length) 16 LTW 210 Signed Binary Comparison (<)(2 byte length) 16 LTD 211 Signed Binary Comparison (<)(4 byte length) 16 GEB 212 GEW 213 GED 214 LEB 215 LEW 216 LED 217 RNGB 218 Signed Binary Comparison (range)(1 byte length) 20 RNGW 219 Signed Binary Comparison (range)(2 byte length) 20 RNGB 220 Signed Binary Comparison (range)(4 byte length) 20 TMRST 221 Stop watch timer (1 ms accuracy) 20 TMRSS 222 Stop watch timer (1 sec accuracy) 20 CTRD 223 Counter processing (4 byte length) 12 MOVBT 224 Bit transfer 24 SETNB 225 Data setting (1 byte length) 20 SETNW 226 Data setting (2 byte length) 20 SETND 227 Data setting (4 byte length) 20 XCHGB 228 Data exchange (1 byte length) 12 XCHGW 229 Data exchange (2 byte length) 12 XCHGD 230 Data exchange (4 byte length) 12 SWAPW 231 Data swap (2 byte length) 16 SWAPD 232 Data swap (4 byte length) 16 TBLRB 233 Reading data from table (1 byte length) 24 TBLRW 234 Reading data from table (2 byte length) 24 TBLRD 235 Reading data from table (4 byte length) 24 TBLRN 236 Reading data from table (Arbitrary byte length) 28 TBLWB 237 Writing data to table (1 byte length) 24 TBLWW 238 Writing data to table (2 byte length) 24 TBLWD 239 Writing data to table (4 byte length) 24
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
SUB No.
Signed Binary Comparison ()(1 byte length) Signed Binary Comparison ()(2 byte length) Signed Binary Comparison ()(4 byte length) Signed Binary Comparison ()(1 byte length) Signed Binary Comparison ()(2 byte length) Signed Binary Comparison ()(4 byte length)
Processing
memory
size
(byte)
16 16 16 16 16 16
1st to 5th
PMC
{ {
{ {
{ { { { { { { {
{ { { { { {
{ { { { { { { { { { { { { { { { { { { {
{ { { {
DCS PMC
(Note1)
- 66 -
Page 89
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.9 (d) Functional instruction list (arranged in sequence of SUB No.) (4)
Required
Instruction
name
SUB No.
Processing
memory
size
1st to 5th
PMC
DCS PMC
(Note1)
(byte)
TBLWN 240 Writing data to table (Arbitrary byte length) 28 DSEQB 241 Searching data from table (=)(1 byte length) 28 DSEQW 242 Searching data from table (=)(2 byte length) 28 DSEQD 243 Searching data from table (=)(4 byte length) 28 DSNEB 244 Searching data from table ()(1 byte length) 28 DSNEW 245 Searching data from table ()(2 byte length) 28 DSNED 246 Searching data from table ()(4 byte length) 28 DSGTB 247 Searching data from table (>)(1 byte length) 28 DSGTW 248 Searching data from table (>)(2 byte length) 28 DSGTD 249 Searching data from table (>)(4 byte length) 28 DSLTB 250 Searching data from table (<)(1 byte length) 28 DSLTW 251 Searching data from table (<)(2 byte length) 28 DSLTD 252 Searching data from table (<)(4 byte length) 28 DSGEB 253 DSGEW 254 DSGED 255 DSLEB 256 DSLEW 257 DSLED 258
Searching data from table ()(1 byte length) Searching data from table ()(2 byte length) Searching data from table ()(4 byte length) Searching data from table ()(1 byte length) Searching data from table ()(2 byte length) Searching data from table ()(4 byte length)
28 28 28 28 28
28 DMAXB 259 Maximum data (1 byte length) 28 DMAXW 260 Maximum data (2 byte length) 28 DMAXD 261 Maximum data (4 byte length) 28 DMINB 262 Minimum data (1 byte length) 28 DMINW 263 Minimum data (2 byte length) 28 DMIND 264 Minimum data (4 byte length) 28 EORB 265 Exclusive OR (1 byte length) 20 EORW 266 Exclusive OR (2 byte length) 20 EORD 267 Exclusive OR (4 byte length) 20 ANDB 268 Logical AND (1 byte length) 20 ANDW 269 Logical AND (2 byte length) 20 ANDD 270 Logical AND (4 byte length) 20 ORB 271 Logical OR (1 byte length) 20 ORW 272 Logical OR (2 byte length) 20 ORD 273 Logical OR (4 byte length) 20 NOTB 274 Logical NOT (1 byte length) 16 NOTW 275 Logical NOT (2 byte length) 16 NOTD 276 Logical NOT (4 byte length) 16 SHLB 277 Bit shift left (1 byte length) 20 SHLW 278 Bit shift left (2 byte length) 20 SHLD 279 Bit shift left (4 byte length) 20
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
- 67 -
Page 90
2.PMC SPECIFICATIONS B-64513EN/01
Table 2.1.9 (e) Functional instruction list (arranged in sequence of SUB No.) (5)
Required
Instruction
name
SHLN 280 Bit shift left (Arbitrary byte length) 24 SHRB 281 Bit shift right (1 byte length) 20 SHRW 282 Bit shift right (2 byte length) 20 SHRD 283 Bit shift right (4 byte length) 20 SHRN 284 Bit shift right (Arbitrary byte length) 24 ROLB 285 Bit rotation left (1 byte length) 20 ROLW 286 Bit rotation left (2 byte length) 20 ROLD 287 Bit rotation left (4 byte length) 20 ROLN 288 Bit rotation left (Arbitrary byte length) 24 RORB 289 Bit rotation right (1 byte length) 20 RORW 290 Bit rotation right (2 byte length) 20 RORD 291 Bit rotation right (4 byte length) 20 RORN 292 Bit rotation right (Arbitrary byte length) 24 BSETB 293 Bit set (1 byte length) 16 BSETW 294 Bit set (2 byte length) 16 BSETD 295 Bit set (4 byte length) 16 BSETN 296 Bit set (Arbitrary byte length) 20 BRSTB 297 Bit reset (1 byte length) 16 BRSTW 298 Bit reset (2 byte length) 16 BRSTD 299 Bit reset (4 byte length) 16 BRSTN 300 Bit reset (Arbitrary byte length) 20 BTSTB 301 Bit test (1 byte length) 16 BTSTW 302 Bit test (2 byte length) 16 BTSTD 303 Bit test (4 byte length) 16 BTSTN 304 Bit test (Arbitrary byte length) 20 BPOSB 305 Bit search (1 byte length) 12 BPOSW 306 Bit search (2 byte length) 12 BPOSD 307 Bit search (4 byte length) 12 BPOSN 308 Bit search (Arbitrary byte length) 16 BCNTB 309 Bit count (1 byte length) 12 BCNTW 310 Bit count (2 byte length) 12 BCNTD 311 Bit count (4 byte length) 12 BCNTN 312 Bit count (Arbitrary byte length) 16 TBCDB 313 Binary to BCD conversion (1 byte length) 16 TBCDW 314 Binary to BCD conversion (2 byte length) 16 TBCDD 315 Binary to BCD conversion (4 byte length) 16 FBCDB 316 BCD to Binary conversion (1 byte length) 16 FBCDW 317 BCD to Binary conversion (2 byte length) 16 FBCDD 318 BCD to Binary conversion (4 byte length) 16 ADDSB 319 Addition (1 byte length) 20
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
SUB No.
Processing
memory
size
(byte)
1st to 5th
PMC
DCS PMC
(Note1)
- 68 -
Page 91
B-64513EN/01 2.PMC SPECIFICATIONS
Table 2.1.9 (f) Functional instruction list (arranged in sequence of SUB No.) (6)
Required
Instruction
name
ADDSW 320 Addition (2 byte length) 20 ADDSD 321 Addition (4 byte length) 20 SUBSB 322 Subtraction (1 byte length) 20 SUBSW 323 Subtraction (2 byte length) 20 SUBSD 324 Subtraction (3 byte length) 20 MULSB 325 Multiplication (1 byte length) 20 MULSW 326 Multiplication (2 byte length) 20 MULSD 327 Multiplication (4 byte length) 20 DIVSB 328 Division (1 byte length) 20 DIVSW 329 Division (2 byte length) 20 DIVSD 330 Division (4 byte length) 20 MODSB 331 Remainder (1 byte length) 20 MODSW 332 Remainder (2 byte length) 20 MODSD 333 Remainder (4 byte length) 20 INCSB 334 Increment (1 byte length) 8 INCSW 335 Increment (2 byte length) 8 INCSD 336 Increment (4 byte length) 8 DECSB 337 Decrement (1 byte length) 8 DECSW 338 Decrement (2 byte length) 8 DECSD 339 Decrement (4 byte length) 8 ABSSB 340 Absolute value (1 byte length) 16 ABSSW 341 Absolute value (2 byte length) 16 ABSSD 342 Absolute value (4 byte length) 16 NEGSB 343 Sign inversion (1 byte length) 16 NEGSW 344 Sign inversion (2 byte length) 16 NEGSD 345 Sign inversion (4 byte length) 16
({: Usable. : The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2). ×: Unusable.)
SUB No.
Processing
memory
size
(byte)
1st to 5th
PMC
DCS PMC
(Note1)
NOTE
1 This term stands for the Dual Check Safety PMC (option). 2 These instructions are intended to maintain source-level compatibility with programs
for conventional models. They are treated as a NOP instruction (instruction that performs no operation).
3 The 3rd level sequence part is available for the compatibility with programs for
conventional models. However, the execution cycle period for processing the 3rd level sequence part is not guaranteed. See Section 1.4.3 "Processing priority".
4 This instruction is intended to maintain source-level compatibility with programs for
other models. A program can be created on level 3, but it is not executed.
5 Memory size increases by the number of data tables to be used. In the COD
instruction, CODB instruction (1byte length), CODB instruction (2byte length), or DISP instruction, 2 bytes are added for each data. And, when the number of data is odd, 2 bytes are added moreover. In the CODB instruction, 4 bytes are added for each data.
- 69 -
Page 92
2.PMC SPECIFICATIONS B-64513EN/01

2.2 PMC SIGNAL ADDRESSES

This section describes the use of each PMC address. See Subsection 2.1.7 for explanations about all address types and ranges.

2.2.1 Addresses for Signals Between the PMC and CNC (F, G)

This subsection briefly describes interface addresses. Refer to the applicable CNC connection manual for details.
(1) Signals from the CNC to the PMC The following table lists the range of addresses for the signals sent from the CNC to the PMC. Refer to address tables in the applicable CNC connection manual for details about the signals.
Data kind 1st path PMC
Input signals from CNC to PMC
F0 ~ F767 F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767
2nd to 5th path PMC
(Option)
F0 ~ F767 F1000 ~ F1767 F2000 ~ F2767 F3000 ~ F3767 F4000 ~ F4767 F5000 ~ F5767 F6000 ~ F6767 F7000 ~ F7767 F8000 ~ F8767 F9000 ~ F9767
F0 ~ F767
(2) Signals from the PMC to the CNC The following table lists the range of addresses for the signals sent from the PMC to the CNC. Refer to address tables in the applicable CNC connection manual for details about the signals.
Data kind 1st path PMC
Output signals to CNC from PMC
G0 ~ G767 G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
2nd to 5th path PMC
(Option)
G0 ~ G767 G1000 ~ G1767 G2000 ~ G2767 G3000 ~ G3767 G4000 ~ G4767 G5000 ~ G5767 G6000 ~ G6767 G7000 ~ G7767 G8000 ~ G8767 G9000 ~ G9767
G0 ~ G767
DCS PMC
(Option)
DCS PMC
(Option)
- 70 -
Page 93
B-64513EN/01 2.PMC SPECIFICATIONS

2.2.2 Addresses of Signals Between the PMC and Machine (X, Y)

(1) Assignment of the FANUC I/O Link / I/O Link i
(a) Signals input from the machine to the PMC
1st to 5th path PMC The addresses for four channels, X0 to X127, X200 to X327, X400 to X527, and X600 to
X727, can be used for the signals input to PMCs. Each address is not fixed at a specific channel. They can be assigned to any channel. See "I/O Link input/output addresses"
in Subsection 2.4.3 for details. As for I/O Link i, see subsection “3.3.6”. Dual-check safety (DCS) The addresses for one channel, X0 to X127, are used for the signals input to the DCS. These addresses can be assigned to channel 3 for I/O Link. As for I/O Link i, see
subsection “3.3.6”.
(b) Signals output from the PMC to the machine
1st to 5th path PMC The addresses for four channels, Y0 to Y127, Y200 to Y327, Y400 to Y527, and Y600 to
Y727, can be used for signals output from PMCs. Each address is not fixed at a specific
channel. They can be assigned to any channel. See "I/O Link input/output addresses"
in Subsection 2.4.3 for details. As for I/O Link i, see subsection “3.3.6”. Dual-check safety (DCS) The addresses for one channel, Y0 to Y127, are used for the signals output from the DCS. These addresses can be assigned to channel 3 for I/O Link. As for I/O Link i, see
subsection “3.3.6”.
(2) Address-fixed CNC signals input from the machine The CNC processes signals input from the machine (listed in Table 2.2.2) by referencing fixed
addresses. Be sure to assign specified addresses.
Table 2.2.2 Address-fixed input signals
Signal name Symbol
Common
to T/M
Common skip signal SKIP X4.7 X13.7 X11.7 Emergency stop signal (machine group 1) *ESP X8.4 (Note 1) Emergency stop signal (machine group 2) *ESP X8.0 (Note 1) Emergency stop signal (machine group 3) *ESP X8.1 (Note 1) Deceleration signal for 1st-axis reference
position return Deceleration signal for 2nd-axis reference
position return Deceleration signal for 3rd-axis reference
position return Deceleration signal for 4th-axis reference
position return Deceleration signal for 5th-axis reference
position return Deceleration signal for 6th-axis reference
position return Deceleration signal for 7th-axis reference
position return Deceleration signal for 8th-axis reference
position return
*DEC1 X9.0 X7.0 X10.0
*DEC2 X9.1 X7.1 X10.1
*DEC3 X9.2 X7.2 X10.2
*DEC4 X9.3 X7.3 X10.3
*DEC5 X9.4 X7.4 X10.4
*DEC6 X9.5 X7.5 X10.5
*DEC7 X9.6 X7.6 X10.6
*DEC8 X9.7 X7.7 X10.7
Path 1 Path 2 Path 3
Address
- 71 -
Page 94
2.PMC SPECIFICATIONS B-64513EN/01
NOTE
1 If the Series 30i/31i/32i/35i-B system is used to control more than one path,
some paths can be grouped to share data within the group and to stop all the paths in the group if an alarm condition occurs in one of the paths. The group is referred to as a machine group. The system supports up to 3 machine groups. Each group has a separate emergency stop signal address.
2 The emergency stop signal address is common signal address in a machine
group. But other signals has individual address with each path. For example, in the following configuration, X11.7 does not mean “the common skip signal” in first PMCs. In second PMCs, it means “the common skip signal”.
CNC PMC
Path 1
Path 2
Path 3
First PMC
Second PMC
3 Path-specific, X address-based input signals are assigned to up to 3 paths. For
additional paths, therefore, bit 2 of CNC parameter No. 3008 must be used to assign such input signals.
4 The X address for an axis-specific deceleration signal (*DECn) for reference
position return is assigned to 8 axes of each of up to 3 paths. For additional paths and axes, therefore, bit 2 of CNC parameter No. 3008, CNC parameter Nos. 3013 and 3014 must be used to assign the X address.
- 72 -
Page 95
B-64513EN/01 2.PMC SPECIFICATIONS

2.2.3 Internal Relay Addresses (R)

The following table lists the number of signals (bytes) that can be used as internal relays. Signals that interface with other control units can be assigned to these bytes over the FA network. It can also be used as the interface with the C language executor and FOCAS2 functions. Turning on the power clears these areas to 0.
NOTE
This address is not synchronized in the 2nd level ladder. A value of a signal in
this address may change during the execution of 2nd level ladder same as 1st and 3rd level ladder when it is written by other program (Ex. Network function, C language executor).
Data kind
Internal Relay Address (Size)
PMC Memory-A PMC Memory-B PMC Memory-C PMC Memory-D
R0 ~ R1499
(1500)
1st to 5th path PMC
R0 ~ R7999
(8000)
R0 ~ R15999
(16000)
R0 ~ R59999
(60000)
DCS PMC
R0 ~ R1499
(1500)
- 73 -
Page 96
2.PMC SPECIFICATIONS B-64513EN/01

2.2.4 System Relay Addresses (R9000, Z0)

The System Relay is used to control a sequence program by PMC System software. And, some addresses such as 'Operation results of functional instructions' are used to condition of a sequence program.
The System Relay uses the following PMC address by each PMC Memory Type.
Table 2.2.4 Address of System Relay
Data kind
System relay (Size)
PMC Memory-A PMC Memory-B PMC Memory-C PMC Memory-D
R9000 ~ R9499
(500)
NOTE
1 The address conversion of the System Relay is necessary when a Sequence
Program is changed between PMC Memory-A/B and PMC Memory-C/D.
Operation results of functional instructions
This area holds information necessary for individual ladder levels, such as the operation results of functional instructions. This information is saved/restored when the task is switched.
(1) R9000, Z0 (operation output register for the ADDB, SUBB, MULB, DIVB, and COMPB functional
instructions)
R9000 Z0
(2) R9000, Z0 (error output for the EXIN, WINDR, and WINDW functional instructions)
R9000 Z0
(3) R9002 to R9005, Z2 to Z5 (operation output registers for the DIVB functional instruction) The remainder of a division performed with the DIVB functional instruction is output to these
addresses.
7 6
7 6
54
54
1st to 5th path PMC
R9000 ~ R9499
(500)
032
1
The result is 0. The result is negative. The result has overflowed.
032
1
The result is erroneous.
Z0 ~ Z499
(500)
Z0 ~ Z499
(500)
DCS PMC
R9000 ~ R9499
(500)
- 74 -
Page 97
B-64513EN/01 2.PMC SPECIFICATIONS
System timers
Four signals can be used as system timers. Their specifications are as follows.
R9000 Z0
R9091.5 Z91.5
104 msec
200 msec
103 25 4 7 6
Constantly OFF signal Constantly ON signal 200 msec cyclic signal
(104 msec ON and 96 msec OFF)
1 sec cyclic signal (504 msec ON and 496 msec OFF)
96 msec
R9091.6 Z91.6
504 msec
1 sec
496 msec
CAUTION
1 Each signal is initially OFF. 2 The signals R9091.0, R9091.1, Z91.0 and Z91.1 are set at the beginning of the
first ladder level on every cycle.
3 Each pulse signal (ON-OFF signal) may have an error of ±8 or 4 msec (ladder
execution period).
- 75 -
Page 98
2.PMC SPECIFICATIONS B-64513EN/01
Ladder execution start signal Ladder stop signal Ladder execution status signal
Using the ladder execution start and stop signals in a ladder program can detect when the ladder program starts and stops. Referencing the ladder execution status signal from an external system or program, such as the network board, C Language executor program, FOCAS2 Ethernet, or HSSB library, can detect the execution status of the ladder program.
R9015 Z15
R9091 Z91
103 25 4 7 6
Ladder execution start signal (can be referenced only from the Ladder program) Ladder stop signal (can be referenced only from the Ladder program)
103 25 4 7 6
1st Ladder execution status signal 0 : Ladder at a stop 1 : Ladder being executed 2nd Ladder execution status signal 0 : Ladder at a stop 1 : Ladder being executed 3rd Ladder execution status signal 0 : Ladder at a stop 1 : Ladder being executed
R9093 Z93
7 6
5 4
03 2
1
4th Ladder execution status signal 0 : Ladder at a stop 1 : Ladder being executed 5th Ladder execution status signal 0 : Ladder at a stop 1 : Ladder being executed
Execution status of Ladder
RUN STOP
Ladder execution start signal (R9015.0, Z15.0)
Ladder stop signal (R9015.1, Z15,1)
Ladder execution status signal (R9091.2 to 4, R9093.0 to 1
Z91.2 to 4, Z93.0 to 1)
1 0
1 0
1 0
One ladder
scan cycle
One ladder
scan cycle
- 76 -
Page 99
B-64513EN/01 2.PMC SPECIFICATIONS
(1) Ladder execution start signal (R9015.0, Z15.0) When directed to start ladder program execution, the system software starts executing the ladder
program, turns on this signal, and keeps it on for the first one scan cycle. Like R9000 and Z0, this signal indicates the status of ladder execution corresponding to each ladder execution level. For this reason, this signal is securely turned on for the first one scan cycle after the start of execution no matter on what execution level the signal is referenced. This signal is turned on when:
(a) Ladder execution begins at power turn-on. (b) The [RUN] soft key on the PMC screen is pressed. (c) FANUC LADDER-III or a ladder editing package directs the ladder to start.
Referring this signal in a ladder program can detect when ladder execution has begun, making it
possible to program preprocessing related to ladder execution.
CAUTION
Refer this signal only from the ladder program. Do not refer it from an external
system or program as it indicates the status of ladder execution separately for each ladder execution level.
(2) Ladder stop signal (R9015.1, Z15.1) When directed to stop ladder program execution, the system software turns off this signal and keeps
it off for the last one scan before stopping ladder program execution. Like R9000 and Z0, this signal indicates the status of ladder execution corresponding to each ladder execution level. For this reason, this signal is securely turned off for the last one scan before the stop of execution no matter on what execution level the signal is referenced. This signal is turned off when:
(a) The [STOP] soft key on the PMC screen is pressed. (b) FANUC LADDER-III or a ladder editing package directs the ladder to stop. (c) On the PMC DATA I/O screen, the ladder program is loaded to the PMC. (d) FANUC LADDER-III or a ladder editing package stores the ladder program to the PMC.
Referencing this signal in a ladder program can detect when ladder execution stops, making it
possible to program post processing related to ladder execution (that is, preprocessing for ladder execution stop). Before the ladder is stopped, for example, it is possible to put signals in a proper state for safety purposes.
CAUTION
1 Refer this signal only from the ladder program. Do not refer it from an external
system or program as it indicates the status of ladder execution separately for each ladder execution level.
2 If the power is turned off or a CNC system alarm occurs, ladder execution and I/O
signal transfer are immediately stopped for safety purposes. In this case, therefore, this signal cannot be used.
(3) Ladder execution status signal (R9091.2 to 4, R9093.0 to 1, Z91.2 to 4, Z93.0 to 1) Referring this signal from an external system or program, such as the network board, C language
executor program, FOCAS2 Ethernet, or HSSB library, can detect the execution status of the ladder program.
- 77 -
Page 100
2.PMC SPECIFICATIONS B-64513EN/01
(4) Example of using the signals
(a) Example of calling a subprogram just before the ladder stops
R9015.1
(Z15.1)
SUB65 CALL
Pxxxx
(b) Example of forcibly turning off an output signal programmed on the first ladder level just
before the ladder stops
Input
R9015.1
(Z15.1)
Output
(c) Example of sending an execution-in-progress signal to the outside Outputting the status of this signal as the DO signal (output address from the PMC) assigned to
the I/O Link causes the CNC unit to be interlocked with an external system.
CNC Unit
R9015.1
(Z15.1)
Y0.0
Y0.0
I/O Link slave
I/O Link
- 78 -
Loading...