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/01DEFINITION 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
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
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 PMCB-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).
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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-64513EN/01
Example:
A subprogram is called from two places. (When the WINDR instruction is used)
Main programSubprogram 1Subprogram 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/011.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 PMCB-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/011.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 PMCB-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/011.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 PMCB-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/011.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.
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 PMCB-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/011.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
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 PMC2nd 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/011.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 CNCF/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 PMCB-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 PMC2nd 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/011.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.
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 PMCB-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/011.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]
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
channelPMCgroupslot
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/011.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 PMCB-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 0Group 1Group 2Group n
Channel 2
~~
Group 0Group n
1st Block 2nd Block
Group 0Group n
- 46 -
Page 69
B-64513EN/012.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
• 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 SPECIFICATIONSB-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/012.PMC SPECIFICATIONS
Table 2.1.1 (b) Basic specifications of each PMC Memory Type
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 SPECIFICATIONSB-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/012.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 SPECIFICATIONSB-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/012.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 SPECIFICATIONSB-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
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 SPECIFICATIONSB-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)
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 SPECIFICATIONSB-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/012.PMC SPECIFICATIONS
Table 2.1.8 (c) Functional instruction list (arranged in sequence of instruction group) (3)
({: 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 SPECIFICATIONSB-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.)
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
({: Usable. ●: The Extended PMC Ladder Instruction Function Δ: Executed as NOP instruction (Note 2).
×: Unusable.)
- 65 -
Page 88
2.PMC SPECIFICATIONSB-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/012.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 SPECIFICATIONSB-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/012.PMC SPECIFICATIONS
Table 2.1.9 (f) Functional instruction list (arranged in sequence of SUB No.) (6)
({: 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 SPECIFICATIONSB-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.
(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.
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 SPECIFICATIONSB-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”.
CNCPMC
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/012.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).
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.
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/012.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 SPECIFICATIONSB-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/012.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 SPECIFICATIONSB-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...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.