61992E
61992E
61992E
DNC 2
Descriptions Manual
GFZ-61992E/02 October 1997
GFL-001
Caution
Caution notices are used where equipment might be damaged if care is not taken.
Note
Notes merely call attention to information that is especially significant to understanding and operating the equipment.
This document is based on information available at the time of its publication. While efforts have been made to be accurate, the information contained herein does not purport to cover all details or variations in hardware or software, nor to provide for every possible contingency in connection with installation, operation, or maintenance. Features may be described herein which are not present in all hardware and software systems. GE Fanuc Automation assumes no obligation of notice to holders of this document with respect to changes subsequently made. GE Fanuc Automation makes no representation or warranty, expressed, implied, or statutory with respect to, and assumes no responsibility for the accuracy, completeness, sufficiency, or usefulness of the information contained herein. No warranties of merchantability or fitness for purpose shall apply.
Copyright 1997 GE Fanuc Automation North America, Inc. All Rights Reserved.
B61992E/02
Table of Contents
3
4 OUTLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I. GENERAL
1. GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1
2. CONFIGURATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
II. PROTOCOL
1. LAYERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. PHYSICAL LAYER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 2.2 2.3 2.4 2.5 2.6 2.7 PHYSICAL INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SYNCHRONOUS METHOD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COMMUNICATION MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COMMUNICATION SPEED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MAXIMUM CABLE LENGTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RS232C INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RS422 INTERFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 12
13 13 13 13 13 14 16
18
19 20 20 21
21 21 22 22
4. APPLICATION LAYER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 4.2 FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATAGRAM SYNTAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.1 4.2.2 4.2.3 Configuration of Datagram Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Service Functions Specified with Datagram Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Notation of the Datagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3.1 Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3.2 4.2.3.3 4.2.3.4 4.2.3.5 4.2.4 Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delimiter in the data section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
24 25
26 27 29 29 29 29 30 30 30 31 31 32 33 34
4.2.3.6 Continuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Details of the Data Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.1 Downloading a part program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.2 4.2.4.3 4.2.4.4 Uploading a part program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting a part program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reading the directory of part programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
c1
Table of Contents
B61992E/02
Free area in program memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reading a tool position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Servo delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Acceleration/deceleration delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Machine interface signals (For Series 15 only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34 35 36 37 38 38 39 40 41 42 43 45 45 46 47 48 49 49 50 51 53 54 55 57 57 58 58
4.2.4.10 Current program number and sequence number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.11 Reading a CNC parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.12 Writing a CNC parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.13 Reading pitch error compensation data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.14 Writing pitch error compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.15 Reading a tool offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.16 Writing a tool offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.17 Reading custom macro variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.18 Writing a custom macro variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.19 Reading tool life management data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.20 Reading modal information for automatic operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.21 Reading an actual feedrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.22 Reading A/D conversion data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.23 Reading alarm information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.24 Reading status information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.25 Operator messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.26 Reading PMC data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.27 Writing PMC data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.28 Selecting a part program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.29 Executing a program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.30 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4.31 Reading a system ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3
DATAGRAM PROTOCOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1.1 Negative acknowledgment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1.2 Interrupt command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interrupt Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.2.1 Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
59 59 59 60 60
4.3.2
63 64 65
66 67 68
c2
B61992E/02
Table of Contents
4. FUNCTION SPECIFICATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 4.2 4.3 4.4 USE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOTES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DETAILS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
70 71 72 73
APPENDIX
A. CONNECTOR SPECIFICATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
A.1 A.2 A.3 FANUC Series 0 (A02B0098J055) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FANUC Series 15A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FANUC Series 15B AND Series 16/18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 113 114
B. PARAMETERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
B.1 B.2 B.3 FANUC Series 0 (UPPER ROW: Series 0TC, LOWER ROW: Series 0MC) . . . . . . . . . . . . . . . . . Series 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FANUC Series 16/18/21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 120 123
C. DATA LINK LAYER MATRIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 D. APPLICATION LAYER MATRIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 E. ALARM MESSAGES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
E.1 E.2 Series 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Series 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 130
134
134 135
SYSTEM ERROR MESSAGES (Series 15A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LED INDICATORS (Series 15B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SYSTEM ERROR MESSAGES (Series 15B) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
c3
Table of Contents
B61992E/02
G.5
TROUBLESHOOTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
G.5.1 MAP Log Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G.5.1.1 Log messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G.5.1.2 Log message format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
139
139 139 139 140
G.5.2
H. MODAL DATA AND CORRESPONDING INTERNAL CODES . . . . . . . . . . . . . . . 141 I. COMMUNICATION PARAMETER STRUCTURE . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 J. ERROR CODES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 K. DEMONSTRATION PROGRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
K.1 K.2 OUTLINE OF FUNCTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PREPARATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
K.2.1 K.2.2 K.2.3 Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compiling and Linking Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Communication Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Starting and Exiting the Demonstration Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Operating Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Machining Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Main Menu Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Command Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Machining Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
146 147
147 147 148
K.3
OVERVIEW OF OPERATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
K.3.1 K.3.2 K.3.3 K.3.4
150
150 150 151 152
K.4
MENU LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
K.4.1 K.4.2 K.4.3
153
153 154 158
L. PMC ADDRESS (Series 15A AND ADDRESS SPECIFICATION TYPE OF Series 15B) . . . . . 159 M. DNC2 TOOL POST SELECTION (Series 15TTB) . . . . . . . . . . . . . . . . . . . . . . . . . 160
M.1 M.2 M.3 M.4 M.5 OUTLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASWITCHING OF TARGET TOOL POST FOR INPUT/ OUTPUT BY THE HOST COMPUTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXAMPLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PARAMETERS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CONNECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 162 163 164 165
c4
I. GENERAL
B61992E/02
I. GENERAL
1. GENERAL
GENERAL
1. GENERAL
I. GENERAL
B61992E/02
1.1
OUTLINE
The FANUC DNC2 is a communication protocol enabling data transmission between the FANUC CNC unit and a personal computer by connecting them via the RS-232-C or RS422 interface. The FANUC DNC2 has the following features: (1) This protocol is based on the communication protocol LSV2 used by some CNC manufacturers in Europe, and has a three-layer structure so that software can easily be established even with a personal computer. The RS-232-C interface is used to connect a personal computer with the FANUC CNC. The RS-422 interface can also be used to improve the transmission rate.
FANUC CNC Personal computer User application program
"
"
Application layer
Application layer
"
"
"
"
Physical layer
Physical layer
RS-232-C/RS-422
NOTE The FANUC DNC2 provides compatibility with the LSV2 protocol for the physical and data link layers. The following table shows the compatibility of the application layer.
Table 1.1 Compatibility of Application Layer between DNC2 and LSV2 Service function
Service functions supported by both DNC2 and LSV2 Service functions supported by DNC2 but not by LSV2 Service functions supported by LSV2 but not by DNC2 Compatible The DNC2 specifications have been extended. DNC2 does not support these functions.
Compatibility
(2) This protocol is used for one-to-one (point-to-point) communication between one FANUC CNC unit and one personal computer. The protocol cannot provide multi-point communication between one personal computer and more than one CNC unit.
B61992E/02
I. GENERAL
1. GENERAL
(3) This protocol provides the various service functions listed in the following table. These functions enable automatic machining with data communication between the FANUC CNC and personal computer.
Service function
Downloading a part program Uploading a part program Deleting a part program Reading the directory of part programs Reading information on a free area Reading Machine position CNC data d t Absolute position Skip position Servo delay Acceleration/deceleration delay Machine interface signal status Current program No. Current sequence No. CNC parameter Pitch error compensation Tool offset Custom macro variable Tool life management data Modal data for automatic operation Actual speed A/D conversion data Alarm information Status information Writing CNC data d t
Service function
CNC parameter Pitch error compensation Tool offset Custom macro variable Displaying an operator message Reading PMC data Writing PMC data Memory operation ti control t l Selecting a program Start
DNC operation control Reset Alarm notification Report on change in the internal status of the CNC Providing information on CNC system identification
1. GENERAL
I. GENERAL
B61992E/02
Abbreviation
Series 0 C 0C Series 0
Series 16 C 16C
Series 16iA 16 A
Series 18 C 18C
Series 18iA 18 A
Series 21iA 21 A
Series 21
For details of the functions supported by the Series 15TTA/TTB, see Section II4.2.2. These functions cannot be used with the 2path control of the Series 16/18.
B61992E/02
I. GENERAL
2. CONFIGURATION
CONFIGURATION
The requirements for the DNC2 function are as follows: D Hardware D DNC2 board D RS232C/RS422 cable D Host computer (supporting MSDOS or PCDOS) D Host computer D DNC2 host software (A08B9001J530) * Library software for the host computer. Specify this software as necessary. D CNC software options
Option DNC2 External data input/output Stored pitch error compensation Custom macro (custom macro B for the Series 0/16/18) Tool life management Background editing I/O unit external control PMC Series 0 f n n Series 15 f n n n Series 16/18/21 f n n Application DNC2 basic function Operator message display Read/write of pitch error compensation Read/write of custom macro variables Read of tool life management data DNC2 basic function DNC2 basic function Read/write of PMC data
n f f n
n
n f f
DNC2 ROM
II. PROTOCOL
B61992E/02
II. PROTOCOL
1. LAYERS
LAYERS
This protocol consists of the following three layers: (1) Physical layer (2) Data link layer (3) Application layer
Host computer or personal computer
FANUC CNC
Application program
Application program
"
"
Application layer
Application layer
Physical layer
Physical layer
RS-232-C/RS-422
11
2. PHYSICAL LAYER
II. PROTOCOL
B61992E/02
PHYSICAL LAYER
12
B61992E/02
II. PROTOCOL
2. PHYSICAL LAYER
2.1
PHYSICAL INTERFACE
2.2
SYNCHRONOUS METHOD
Asynchronous transmission
LSB ST 1 0 b1 b2 b3 b4 b5 b6 b7 MSB b8 P SP
"
0
"
1
: : : :
"
0
"
0
"
1
"
0
"
1
"
0
"
1
ST b1 to b8 P SP
Start bit (one bit) Data bit (seven or eight bits) Parity bit (none or even) Stop bit (one or two bits)
2.3
COMMUNICATION MODE
Half-duplex transmission
2.4
COMMUNICATION SPEED
(1) RS-232-C : 19200 bps max. (2) RS-422 : 86400 bps max. When the communication speed to be used is 38400 bps or more, synchronization with a receive clock is required. Prepare the TT (*TT) and RT (*RT) signals.
2.5
MAXIMUM CABLE LENGTH
(1) RS-232-C : 100m (for 4800 bps or less) 50m (9600 bps or more) (2) RS-422 : 800m (9600 bps or less) 50m (19200 bps or more)
13
2. PHYSICAL LAYER
II. PROTOCOL
B61992E/02
2.6
RS232C INTERFACE
Host computer
When CS is not used, connect it with RS. When DR is not used, connect it with ER. Always connect CD with ER. NOTE When using IBM PCAT, connect RS and CS in the CNC. (IBM PCAT is a registered trademark of IBM Corporation.)
14
B61992E/02
II. PROTOCOL
2. PHYSICAL LAYER
(2) Signals
Name
SD RD RS
Input/ output
Output Input Output Send data Receive data
Description
See Section 2.2 for the bit configuration. fi ti
Request to send This signal is used to report whether the CNC is ready to receive data. When the ER signal and this signal are on, the remote buffer is ready to receive data. Clear to send This signal is used to check whether the host computer is busy. When the DR signal and this signal are on, the host computer is assumed to be ready to receive data. Data set ready When this signal is on, the host computer is assumed to be ready. The signal is generally connected to the ER signal at the host computer. When it is off during data transmission, an alarm is issued. If this signal is not used, be sure to connect it with the ER signal at the CNC unit. CNC ready When this signal is on, the CNC is assumed to be ready to operate. The signal is generally connected to the DR signal at the host computer. When it is off during data transmission, an alarm is issued. If this signal is not used, be sure to connect it with the DR signal at the CNC unit. Signal quality detection Since this signal is not used for connecting the CNC unit with the host computer, connect it with the ER signal at the CNC unit. Signal ground Protective ground
CS
106
Input
DR
107
Input
ER
108.2
Output
CD
109
Input
SG FG
102 101
NOTE The on and off states of each signal conform to the following:
Less than 3V
Function Signal condition Off Marking
+3V or more
On Spacing
15
2. PHYSICAL LAYER
II. PROTOCOL
B61992E/02
2.7
RS422 INTERFACE
Host computer
16
B61992E/02
II. PROTOCOL
2. PHYSICAL LAYER
(2) Signals
Name
SD RD RS
Input/ output
Output Input Output Send data Receive data
Description
See Section 3.2 for the bit configuration. fi ti
Request to send This signal is used to report whether the CNC is ready to receive data. When the TR signal and this signal are on, the remote buffer is ready to receive data. Clear to send This signal is used to check whether the host computer is busy. When the RR signal and this signal are on, the host computer is assumed to be ready to receive data. Terminal ready When this signal is on, the CNC is assumed to be ready to operate. The signal is generally connected to the RR signal at the host computer. When it is off during data transmission, an alarm is issued. If this signal is not used, be sure to connect it with the RR signal at the CNC unit. Receiver ready When this signal is on, the host computer is assumed to be ready. The signal generally indicates that the host computer is ready to send data to the CNC unit. If this signal is not used, be sure to connect it with the TR signal at the CNC unit. Transmission timing Send clock output terminal at the CNC unit. When a baud rate of 38400 or more is used, be sure to connect the terminal with the RT signal at the host computer. Reception timing Send clock input terminal at the CNC unit. When a baud rate of 38400 or more is used, be sure to connect the terminal with the TT signal at the host computer. Signal ground Protective ground
CS
106
Input
TR
108.2
Output
DM
109
Input
TT
113
Output
RT
115
Input
SG FG
102 101
NOTE The on and off states of each signal conform to the following:
A<B
Function Signal condition Off Marking
A>B
On Spacing
17
II. PROTOCOL
B61992E/02
The CNC unit and the host computer can operate on equal terms with each other under this protocol. If a contention occurs, however, the CNC is given priority over the host computer in data transmission.
18
B61992E/02
II. PROTOCOL
3.1
TRANSMISSION CONTROL CHARACTERS
Meaning
Request to send Negative acknowledgment Acknowledgment Acknowledgment Datagram start Datagram end End of transmission
19
II. PROTOCOL
B61992E/02
3.2
MESSAGE FORMAT
DLE STX Datagram DLE ETX BCC
(1) Datagram The datagram consists of command and data sections. The length of the command section is four characters. The length of the data section is variable and can contain up to 256 characters. The maximum length is fixed to 80 characters. The datagram does not contain the communication control characters. The datagram must contain the command section. However, the data section can be omitted. (2) Block check character (BCC) The BCC is obtained by exclusive ORing all characters of the datagram excluding DLE and STX.
3.3
TRANSMISSION CHARACTERS
These characters are usually ASCII code but can also be ISO code.
20
B61992E/02
II. PROTOCOL
3.4
DATA LINK PROTOCOL 3.4.1
Establishing a Data Link
Initial state (A)
The master device that needs to send the datagram establishes the data link.
Datagram transmission
EOT
(A) Error
(Note) The underlined characters indicate the response from the receiving (slave) device.
Fig.3.4.1 Establishing the Data Link
3.4.2
Sending a Datagram
Data link Sending the datagram DLE]STX]Datagram]DLE]ETX]BCC DLE1 NAK/DLE0 Other Timeout ENQ
Termination
EOT
Error
(Note) The underlined characters indicate the response from the receiving (slave) device.
Fig.3.4.2 Sending a Datagram
21
II. PROTOCOL
B61992E/02
3.4.3
Receiving a Datagram
Initial state Data link establishment Datagram reception Termination ENQ Other Timeout DLE0 DLE STX .. DLE ETX BCC DLE1 NAK ENQ Timeout Other Error EOT Error (A)
(Note) The underlined characters indicate the response from the sending (master) device.
Fig.3.4.3 Receiving a Datagram
3.4.4
Termination
22
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
APPLICATION LAYER
This chapter outlines the application layer. For more details, see the description given later.
23
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.1
FUNCTIONS
Function Downloading a part program Uploading a part program Deleting a part program Reading the directory information on a part program Reading CNC data Machine position Absolute position Skip position Servo delay Acceleration/deceleration delay Diagnosis Current program No. Current sequence No. CNC parameter Pitch error compensation data Tool offset Custom macro variable Tool life management data Modal data for automatic operation Actual speed A/D conversion data Alarm information Status information Writing CNC data CNC parameter Pitch error compensation data Tool offset Custom macro variable Operator message PMC data Memory operation control DNC operation control Reset Alarm notification Status notification System ID
24
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2
DATAGRAM SYNTAX
The datagram consists of the command section and the omissible data section. The command section contains four characters. The data section contains variable-length data. The maximum length of the data section is specified by the CNC parameter. Subsections 4.2.1 and 4.2.2 list and explain the datagram commands. Subsection 4.2.4 describes the data section.
25
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.1
Configuration of Datagram Commands
Table 4.2.1 Configuration of datagram commands Fist entry
A B C D E F G H Listing catalog Catalog request Clear Operation mode Receive Transmit Prepare to send Prepare to receive DI LI MC M R T PT PR A AD AE AF AL BD CC CS DI ER FD FR ID MD MI MP MV NB NP NR OK PA PD PE PM PN RR RT SE SL SN SP ST TL TO WP h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c * * * h/c h/c h/c h/c h/ h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c * * * * h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c * * * * * h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c h/c * * * * * B h/c h/c h/c h/c h/c h/c h/c h/c h/c C h/c h/c h/c h/c D E F G H * * * *
Second entry
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 A/D Conversion data Acc./Dec error Actual feedrate Alarm status Abort (Break down) Clear control (Reset) NC Start Operator message Command error End of message Free memory System Identifier Modal data Machine I/F signal Machine position Macro variable Next block Not position Incorrect number Function ready Parameter PMC data Pitch error Part program Part program number Ready to receive Ready to transmit Servo following error Select part program Sequence number Skip position Status Tool life data Tool offset Absolute position
NOTE h/ /c Blank *
: : : :
Command from the host to the CNC Command from the CNC to the host Space character in ASCII or ISO code Command modified or added by FANUC
26
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.2
Service Functions Specified with Datagram Commands
(1) Commands from the host
Service function
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Downloading Uploading Deleting a program Directory information Free area size Reading a tool position Reading servo delay Reading acceleration/deceleration delay Reading a machine interface signal Reading a program or sequence number Reading a CNC parameter Writing a CNC parameter Reading pitch error compensation Writing pitch error compensation Reading a tool offset Writing a tool offset Reading a macro variable Writing a macro variable Reading tool life management data Reading modal information for automatic operation Reading an actual speed Reading A/D conversion data Reading alarm information Reading status information Displaying an operator message Reading PMC data Writing PMC data Selecting a program Executing a program Resetting the CNC Reading a system ID <PR><PM><nn> <PT><PM><nn> <MC><PM><nn> <LI><PM> [<nn>] <T ><FR> <T ><WP | MP | SP> [<0Xmm>] <T ><SE> [<0Xmm>] <T ><AE> [<0Xmm>] <T ><MI><nn>[<:><mm> ] <T ><PN | SN> <PT><PA><nn> [<,><0Xmm> ] <PR><PA> <PT><PE><mm> [<:><nn> ] <PR><PE> <PT><TO><mm> [<:><n>] <,><0Xkk> <PR><TO> <PT><MV><mm> [<:><nn> ] <PR><MV> <PT><TL><mm> [<:><nn> ] <T ><MD><mm>
Datagram command
21 22 23 24 25 26 27 28 29 30 31
<T ><AF><0Xmm> <T ><AD><nn> [ [<,><0Xmm> ] <,><nn> [<,><0Xmm> ] ] <T ><AL> <T ><ST> | <M ><ST> [<0Xmm>] <M ><DI><nn><,><display message text> <PT><PD><0Xaa | mm><,><nn> <PR><PD> <M ><SL><nn> <M ><CS> [<nn>] <M ><CC> <T ><ID>
NOTE With the Series 15TTA/TTB, nineteen functions are supported; none of these are related to the head. These functions are functions 1 to 9, 11 to 14, 22, 25 to 27, 30, and 31.
27
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
Datagram command
<PT><PM><nn> <PR><PM><nn>
* * * * * * * * * * * * * * * * * * * * *
NOTE The service functions marked with an asterisk (*) are not supported.
28
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.3
Notation of the Datagram
4.2.3.1
Symbols
: Datagram entry : Brackets for a datagram entry (A datagram entry enclosed in these brackets can be omitted.) {} : Braces for a datagram entry (A datagram entry enclosed in these braces must not be omitted.) | : Delimiter for datagram entries 0X : Prefix of hexadecimal data Blank : Space character in ASCII or ISO code
<> []
4.2.3.2
Format
Command section 2 bytes 2 bytes Data section Variable length
1st entry
2nd entry
The length of the data section is variable. The maximum length is specified by the CNC parameter. The parameter can specify the length from 80 to 256 characters.
4.2.3.3
Data type
The data type used in Subsection 4.2.4 is shown below. (1) First entry UI : Unsigned integer SI : Signed integer CH : Character UR : Unsigned real number SR : Signed real number HX : Hexadecimal number Hexadecimal data must begin with 0X. Data of UI and UR types can contain no sign. The positive sign of a positive value is omitted.
29
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
(2) Second entry The second entry indicates the maximum number of digits or characters for each data type. The digits and characters do not contain a sign or a decimal point, however. Example) (Correct) (Incorrect)
SI:4 SR:9 HX:4 CH:8 9999 to 9999 99999999. to 99999999. 0X19A5 ABCDEFGH or ABC EF 12345 123.4567895 0XFF1234 ABCDEFGHI
(3) Third entry When the value is clearly determined, this entry indicates the range and limit values. Example) UI : 2/1 to 15 Unsigned integer : First entry Maximum of two digits : Second entry Range from 1 to 15 : Third entry
4.2.3.4
Delimiter in the data section
Only a comma (,) and colon (:) can be used as a delimiter. A space is ignored except when it is used for charactertype data. The end of the data section is assumed to be a delimiter.
4.2.3.5
Code
ASCII or ISO code is available. The code to be used in the datagram is specified by the CNC parameter.
4.2.3.6
Continuation
The data section can be continued only for the datagram of the response to the <PR> or <PT> command. If the length of the data section exceeds the maximum length, the data is divided into more than one datagram when it is transmitted. Continuation in the data section is not limited except for group data that consists of multiple data items. (The group data cannot be divided when it is transmitted.) Example) Correct)
<R ><PM><G01X100.Y1> ! <R ><PM><23.4Z50.0F200;> G01X100.Y123.4Z50.0F200;
Incorrect)
<R ><TO><N10D15H5N11D16> ! <R ><TO><H6N12D17H7> N11D16H6 cannot be divided when it is transmitted. N D H is a group data item.
30
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4
Details of the Data Section
4.2.4.1
Downloading a part program
(1) Function 1) This command transfers a part program to the CNC according to the commands issued by the host computer. 2) This command transfers a part program to the CNC according to the commands issued by the CNC. (2) Datagram transmission 1) Commands issued by the host computer
Host
<PR><PM><nn> <M ><RR> <R ><PM><program> <T ><NB> <R ><PM><program> <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) nn : Program number (UI: 4) Only a program can be uploaded using this parameter. 2) program: Program statement (CH: 256) This statement is in the tape output format. The program consists of the following:
%; 0nn; Part program ; M30; %
NOTE The above program number nn must be the same as nn in command <PT | PR> <PM> <nn>. The semicolon (;) functions as end of block. Actually, the semicolon is a EOB code defined in the CNC such as an LF code (0AH).
31
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
(4) Negative acknowledgment 1) M_NR [0XF61F]: The program with the same number has already been found. 2) M_NP [0XF62D]: The program is writeprotected. 3) M_NP [0XFDFB]: An alarm is raised in the CNC. (For Series 0/16/18/21) 4) T_BD [0XF61E]: Insufficient free area in memory 5) Note Release background edit mode and simultaneous edit mode (Series 15 only) in advance.
4.2.4.2
Uploading a part program
(1) Function 1) This command transfers a part program from the CNC according to the commands issued by the host computer. 2) This command transfers a part program from the CNC according to the commands issued by the CNC. (2) Datagram transmission 1) Commands issued by the host computer
Host
<PT><PM><nn> <M ><RT> <T ><NB> <R ><PM><program> <T ><NB> <R ><PM><program> <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) nn : Program number (UI: 4) Only a program can be downloaded using this parameter. 2) program: Program statement (CH: 256) This statement is in the tape output format. See 2) in (3) of Subsection 4.2.4.1.
32
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
(5) Note Release background edit mode and simultaneous edit mode (Series 15 only) in advance.
4.2.4.3
Deleting a part program
(1) Function This command deletes a part program from memory. (2) Datagram transmission
Host
<MC><PM><nn> <M ><OK>
CNC
(3) Parameter nn : Program number (SI: 4) If nn is 9999, all programs are deleted. (4) Negative acknowledgment 1) M_NR [0XFB9D]: The program with nn is not found, or no programs are found. 2) M_NP [0XFB98]: The program is protected by a parameter or key switch. 3) M_NP [0XFB93]: The program is being used (selected or executed). If the program is being selected in the edit mode, it can be deleted. 4) M_NP [0XFBA7]: Alarm state (for Series 0) nn is no 9999, and the system is not in the edit mode. (for Series 15/16/18/21) (5) Notes 1) In Series 15, the currently selected program cannot be deleted if the command for deleting all programs is issued in the memory mode. 2) Release background edit mode and simultaneous edit mode (Series 15 only) in advance.
33
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.4
Reading the directory of part programs
(1) Function This command reads the directory of part programs in memory. (2) Datagram transmission
Host
<LI><PM> [<nn>] <M ><RT> <T ><NB> <DI><PM><nn> [<<,><nn>>. . .] <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameter nn: Program number (UI: 4) If the program number is omitted, all program numbers are reported. If the program number is specified, the host computer checks whether the program is found in program memory. (4) Negative acknowledgment 1) T_NP [0XFC02]: The specified program is not found. (For Series 0/16/18/21) 2) T_NP [0XFC03]: The specified program is not found. (For Series 15) 3) T_NP [0XFC02]: No program is found. (When no program)
4.2.4.5
Free area in program memory
(1) Function This command issues a request from the host computer to the CNC for sending data on the size of the free area in program memory in bytes. (2) Datagram transmission
Host
<T ><FR> <R ><FR><nn> <M ><OK>
CNC
(3) Parameter nn : Size of the free area in program memory (UI: 9) (4) Negative acknowledgment None
34
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.6
Reading a tool position
(1) Function This command reads the current tool position. 1) Absolute coordinate position 2) Machine coordinate position 3) Skip position (2) Datagram transmission
Host
<T ><WP | MP | SP> [<0Xmm>] <R ><WP | MP | SP><PP> [<,><pp>].. <M ><OK>
CNC
Absolute coordinate position Machine coordinate position Skip signal detection position
(3) Parameters 1) mm: Axis request flag (HX: 4) If mm is omitted, all axis positions are transferred. 0X indicates that mm must be specified in hexadecimal.
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis Not used
If 0X3F is specified, the 1st to 6th axis positions are transferred. 2) pp : Tool position data (SR: 9) a) pp is repeated in ascending order of axis numbers. b) The number in pp varies according to the axis request flag. (4) Negative acknowledgment M_NR [0XFFCC]: No specified axis is found. (5) Note When the tool position read function is being used with the Series 15, bit 1 (POS) of parameter 2204 must be set to 1. With the Series 15, when absolute coordinates and machine coordinates are to be read, POS of parameter 2204 must be set to 1.
35
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.7
Servo delay
(1) Function This command reads the current servo delay. (2) Datagram transmission
Host
<T ><SE> [<0Xmm>] <R ><SE><ee> [<,><ee>].. <M ><OK>
CNC
(3) Parameters 1) mm: Axis request flag (HX: 4) If mm is omitted, all axis positions are transferred. 0X indicates that mm must be specified in hexadecimal.
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis Not used
If 0X3F is specified, the 1st to 6th axis positions are transferred. 2) ee : Tool position data (SR: 9) a) ee is repeated in ascending order of axis numbers. b) The number in ee varies according to the axis request flag. (4) Negative acknowledgment M_NR [0XFFCC]: No specified axis is found.
36
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.8
Acceleration/ deceleration delay
(1) Function This command reads the current acceleration/deceleration delay. (2) Datagram transmission
Host
<T ><AE> [<0Xmm>] <R ><AE><ee> [<,><ee>].. <M ><OK>
CNC
(3) Parameters 1) mm: Axis request flag (HX: 4) If mm is omitted, all axis positions are transferred. 0X indicates that mm must be specified in hexadecimal.
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis Not used
If 0X3F is specified, the 1st to 6th axis positions are transferred. 2) ee : Current acceleration/deceleration delay (SR: 9) a) ee is repeated in ascending order of axis numbers. b) The number in ee varies according to the axis request flag. (4) Negative acknowledgment M_NR [0XFFCC]: No specified axis is found.
37
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.9
Machine interface signals (For Series 15 only)
(1) Function This command reads the machine interface signals (DI/DO) specified with diagnosis numbers. (2) Datagram transmission
Host
<T ><MI><mm> [<:><nn> ] <R ><MI><0Xdd> [<,><0Xdd>].. <M ><OK>
CNC
(3) Parameters 1) mm: First diagnosis number to be read (UI: 3) 2) nn : Last diagnosis number to be read (UI: 3/mm < nn) The DI/DO signal data items from mm to nn are transmitted. If nn is omitted, one signal data item is transmitted. 3) dd : DI/DO signal data (HX: 2) The data is transmitted in hexadecimal. (4) Negative acknowledgment M_NR [0XFFCA]: The diagnosis number is incorrect. (5) Note The maximum number of DI/DO data items are limited to L/5 by the length of the datagram. (L is the length of the datagram.)
4.2.4.10
Current program number and sequence number
(1) Function This command reads the current program number and sequence number. (2) Datagram transmission
Host
<T ><PN | SN> <R ><PN | SN> <nn> <M ><OK>
CNC
NOTE <M><PN>: Reads the program number. <M><SN>: Reads the sequence number. (3) Parameter nn : Current program number (UI: 4) or the latest sequence number specified in the program (UI: 4 for Series 0/16/18/21 or UI: 5 for Series 15) (4) Negative acknowledgment None
38
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.11
Reading a CNC parameter
(1) Function This command reads a CNC parameter. (2) Datagram transmission
Host
<PT><PA><nn> [<,><OXmm>] <M ><RT> <T ><NB> <R ><PA><Nnn>< <Pvv> | <Ax><Pvv> [<Ax><Pvv> ].. <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) nn : Number of the parameter to be read (UI: 4) 2) mm : Axis request flag (HX: 4) mm must be specified when the parameter is of axis type. 3) Nnn : nn is the parameter number. (UI:4) 4) Pvv : vv is the parameter value. (SI:10) 5) Ax : x is the axis exponent. (UI: 2/1 to 15) If nn is of axis type, Ax is transmitted. (4) Negative acknowledgment 1) M_NR [0XFBA5]: The parameter number is incorrect.(For Series 0 only) 2) M_NR [0XFBA4]: The parameter number is incorrect.(For Series 15 only) 3) M_NR [0XFBA3]: The axis exponent parameter (0Xmm) is invalid. (For Series 15 only)
39
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.12
Writing a CNC parameter
(1) Function This command writes a CNC parameter. (2) Datagram transmission
Host
<PR><PA> <M ><PR> <R ><PA><Nnn> <Pvv> |<Ax><Pvv> [<Ax><Pvv> ]..> <T ><NB> <R ><PA><Nnn>< <Pvv> |<Ax><Pvv> [<Ax><Pvv> ]..> <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) Nnn : nn is the parameter number. (UI: 4) 2) Pvv : nn is the parameter value. (SI: 10) 3) Ax : x is the axis exponent. (UI: 2/1 to 15) If nn is of axis type, Ax is transmitted. (4) Negative acknowledgment 1) M_NP [0XFB98]: The parameter is writeprotected or locked. (For Series 15/16/18/21) 2) M_NR [0XFBA45]: The parameter is invalid. (For Series 0/16/18/21) 3) M_NR [0XFBA4]: The parameter is invalid. (For Series 15/16/18/21)
40
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.13
Reading pitch error compensation data
(1) Function This command reads pitch error compensation data. (2) Datagram transmission
Host
<PT><PE><mm> [<:><nn> ] <M ><RT> <T ><NB> <R ><PE><Nnn><Pvv> [<Nnn><Pvv> ].. <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) mm : First pitch error compensation number to be read (UI: 4) With the Series 15/16/18/21, the number starts with 0. With the Series 0, the number starts with 1000. (This number is the same as the parameter number.) 2) nn : Last pitch error compensation number to be read (UI: 4 / 1xmm < nnx9999) 3) Nnn : nn is the pitch error compensation number. (UI: 4) 4) Pvv : vv is the compensation corresponding to the specified pitch error compensation number. (SI: 1 / 7xvvx7) (4) Negative acknowledgment M_NR [0XFFCA]: The parameter value is invalid, or no option is found (for Series 0 only). (5) Note This command can read only the pitch error compensation from the CNC. To read other parameters, use the <PT><PA> command.
41
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.14
Writing pitch error compensation
(1) Function This command writes pitch error compensation. (2) Datagram transmission
Host
<PR><PE> <M ><RR> <R ><PE><Nnn><Pvv>[<Nnn><Pvv>].. <T ><NB> <R ><PE><Nnn><Pvv>[<Nnn><Pvv>].. <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) Nnn : nn is the pitch error compensation number. (UI: 4) 2) Pvv : Compensation corresponding to the specified pitch error compensation number (SI: 1 / 7xvvx7) (4) Negative acknowledgment 1) M_NR [0XFBA5]: The parameter is invalid. (For Series 0/16/18/21) 2) M_NR [0XFBA4]: The parameter is invalid. (For Series 15) 3) M_NP [0XFB9E]: No option is found. (For Series 0/16/18/21) (5) Note This command can write only the pitch error compensation into the CNC. To write other parameters, use the <PR> <PA> command.
42
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.15
Reading a tool offset
(1) Function This command reads a tool offset. (2) Datagram transmission
Host
<PT><TO><mm> [<:><nn> ] <M ><RT> <T ><NB> <R ><TO> {<Nnn> <Dvv> [<Kvv> [<Hvv><Lvv]] (3) |<Xvv><Zvv><Rvv><Yvv><Qvv> (3) [<Uvv><Wvv><Pvv><Vvv>]>}.. (3) <T > <NB> <T ><FD> <M > <OK>
CNC
(3) Parameters 1) mm: First tool offset number to be read (UI: 4) 2) nn : Last tool offset number to be read (UI: 4 / 1xmm <nnx9999) 3) kk : Offset request flag (HX: 4) bit
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 :Wear offset :Geometry offset :Wear offset :Wear offset :Wear offset :Wear offset :Virtual tool tip direction :Not used :Wear offset :Geometry offset :Geometry offset :Geometry offset :Geometry offset :Geometry offset :Not used :Not used D: K: X: Z: R: Y: : H: L: U: W: P: V: Cutter compensation Cutter compensation Offset along the X axis Offset along the Z axis Tool tip radius compensation Offset along the Y axis Q Tool length offset Tool length offset Offset along the X axis Offset along the Z axis Tool tip radius compensation Offset along the Y axis
NOTE (D, K, H, L) : Offsets for the milling machine (X, Z, R, Y, Q, U, W, P, V) : Offsets for the lathe Both the offset request flags must be mutually exclusive when they are set. Example) 0X3F00 : Incorrect 0X3C7C: Correct
43
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4) Nnn : 5) Dvv : Kvv : Hvv : Lvv : Xvv : Zvv : Rvv : Yvv : Qvv : Uvv : Wvv : Pvv : Vvv :
Tool offset number (UI: 4) Cutter wear offset for the milling machine (SR: 9) Cutter geometry offset for the milling machine (SR: 9) Tool length wear offset for the milling machine (SR: 9) Tool length geometry offset for the milling machine (SR:9) Wear offset along the X axis for the lathe (SR: 9) Wear offset along the Z axis for the lathe (SR: 9) Tool tip radius wear offset for the lathe (SR: 9) Wear offset along the Y axis for the lathe (SR:9) Virtual tool tip direction for the lathe (UI: 1 / 0xvvx7) Geometry offset along the X axis for the lathe (SR: 9) Geometry offset along the Z axis for the lathe (SR: 9) Tool tip radius geometry offset for the lathe (SR: 9) Geometry offset along the Y axis for the lathe (SR: 9)
(4) Negative acknowledgment 1) M_NR [0XFFCA]: The offset number is incorrect. (mm, nn, or 0Xkk) 2) M_NR [0XFFC9]: Combination of offsets in incorrect. (5) Note Table 4.2.4.15 describes how the tool compensation memory type and request flag are specified.
Table 4.2.4.15 Relationships between Tool Compensation Memory Type and Request Flag
Request flag 15 b o b o A B A M B C T Series 16/18/21 M b o b o 14 f f f f f f f f f f f f 12 V 12 P T 11 W 10 U 9 L M : Ignored f : Specifiable : Not specifiable f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f 8 H 7 6 Q 5 Y 4 R T f f f f f f f f 3 Z 2 X 1 K M 0 D
Model
Memory type T
Series0 M T Series15
b : Standard o : Option
44
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.16
Writing a tool offset
(1) Function This command writes a tool offset. (2) Datagram transmission
Host
<PR><TO> <M ><RR> <R ><TO>{<Nnn><Dvv>[<Kvv> [<Hnn><Lvv>]] | <Xvv><Zvv><Rvv><Yvv><Qvv> [<Uvv><Wvv><Pvv><Vvv>]>}.. <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters See 3) and 4) in item (3) of Subsection 4.2.4.15. (4) Negative acknowledgment 1) M_NR [0XFBA3] : The compensation number is incorrect. (For Series 0 only) 2) M_NR [0XFBA4] : The compensation number is incorrect. (For Series 15 only)
4.2.4.17
Reading custom macro variables
(1) Function This command reads custom macro variables. (2) Datagram transmission
Host
<PT><MV><mm> [<:><nn>] <M ><RT> <T ><NB> <R ><MV><Nnn><Pvv> [<Nnn><Pvv>] .. <T ><NB> <T ><FD> <M ><OK>
CNC
(3) Parameters 1) mm : First custom macro variable number to be read (UI:5) 2) nn : Last custom macro variable number to be read (UI:5 / mm < nn) 3) Nnn : nn is the custom macro variable number. (UI:5) 4) Pvv : Value of custom macro variable nn (SR:9) (4) Negative acknowledgment M_NR[0XFFCA] : The custom macro variable number is incorrect, or no option is found.
45
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.18
Writing a custom macro variable
(1) Function This command writes a value in the specified custom macro variable. (2) Datagram transmission
Host
<PR><MV> <M ><RR> <R ><MV><Nnn><Pvv> [<Nnn><Pvv>] .. <T ><NB> <R ><MV><Nnn><Pvv> [<Nnn><Pvv>] .. <T ><NB> <T ><FD> <M ><OK> <M ><OK>
CNC
(3) Parameters 1) Nnn : nn is the custom macro variable number. (UI:5) 2) Pvv : Value of custom macro variable nn (SR:9) (4) Negative acknowledgment 1) M_NR [0XFBA5] : The custom macro variable number is incorrect. (For Series 0/16/18/21) 2) M_NR [0XFFA4] : The custom macro variable number is incorrect. (For Series 15) 3) M_NR [0XFB9E] : No option is found. (5) Note With the Series 0, the custom macro variables in which data can be written are #100 to #149 and #500 to #531 of custom macro A (integer data). Data cannot be written into the extended area.
46
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.19
Reading tool life management data
(1) Function This command reads tool life management data with the specified group number. (2) Datagram transmission
Host
<PT><TL><mm> [<:><nn>] <M ><RT> <T ><NB> <R ><TL> {<Pnn><Lvv>[<Qnn>] [<Ttt><Hhh><Ddd><Ccc>]..} .. <T ><NB> <T ><FD> <M ><OK>
CNC
6) 7) 8) 9)
: : : :
First tool group number to be read (UI:4) Last tool group number to be read (UI:4 / mm < nn) nn is the tool group number. (UI:4) Tool life value (minutes or times) (UI:10) Qnn: nn is the life count value of the tool currently being used. (UI: 5) The unit is the number of times the tool has been used or the total usage time (in minutes), one of which is specified with a parameter of the CNC. Tool number (UI:4) H code (UI:4) D code (UI:4) Tool information (UI:1/0 to 3) 0 : Currently selected tool 1 : The tool is already registered. 2 : The tool is already exhausted. 3 : The tool was skipped.
(4) Negative acknowledgment M_NR [0XFFCA] : Group number nn is not yet defined, or no option is found. (5) Note If the tool life management data cannot be transmitted with one datagram, the datagram is divided into multiple parts. The data is then transmitted using multiple datagrams having the same group number P, the same tool life L, and the same tool life count type Q.
<T ><NB> <R ><TL>{<Pnn><<Lvv>[<Qnn>][<Ttt><Hhh><Ddd><Ccc>]..}.. <T ><NB> <R ><TL>{<Pnn><<Lvv>[<Qnn>][<Ttt><Hhh><Ddd><Ccc>]..}..
. .
47
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.20
Reading modal information for automatic operation
(1) Function This command reads the previous, current, or next modal data. (2) Datagram transmission
Host
<T ><MD><mm> <R ><MD> [<Ggg.vv>] [<Ggg.vv>].. [<Ddd>] [<Eee>] [<Hhh>] [<Lll>] [<Mmm>] [<Nnn>] [<Ooo>] [<Sss>] [<Ttt>] [<Fff>] <M ><OK>
CNC
(3) Parameters 1) mm : Block selection (UI:1, any of 0, 1, and 2) 0 : Previous block 1 : Current block 2 : Next block 2) Ggg.vv : Modal data of G code gg : G code group number (UI:2) vv : Internal G code (UI:2) VV must be specified using two digits. 3) Ddd to Fff : Modal data required in the selected block
Ddd | Hhh | Lll : Mmm : Nnn : Ooo | Sss | Ttt : Eee | Fff : UI:4 UI:3 UI:5 UI:4 UR:9
(4) Negative acknowledgment None (5) Note D If no modal data is specified, only the <R ><MD > command is transmitted, and the data section is omitted. D For internal G code values, see the table in Appendix H.
48
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.21
Reading an actual feedrate
(1) Function This command reads the feedrate of each axis or the composite feedrate of all axes. (2) Datagram transmission
Host
<T ><AF> [<0Xmm>] <R ><AF><vv> [ <,><vv>..] <M ><OK>
CNC
(3) Parameters 1) mm: Axis request flag (hexadecimal) (HX:4) This parameter is available for Series 15 only. For the function of the parameter, see item (3) in Subsection 4.2.4.8. If mm is omitted, the composite feedrate of all axes is transmitted. 2) vv : Feedrate of each axis (UR:9) vv is transmitted in ascending order of axis numbers. (1_>2_>3_>...) (4) Negative acknowledgment M_NR [0XFFCC] : The axis parameter is invalid.
4.2.4.22
Reading A/D conversion data
(1) Function This command reads A/D conversion data. (2) Datagram transmission
Host
<T ><AD><nn> [<,><0Xmm>] [<,><nn>[<,><0Xmm>]].. <R ><AD><vv> [<,><vv>] .. <M ><OK>
CNC
(3) Parameters 1) nn : A/D conversion data selection (UI:3) 0 to 1 : General-purpose analog input (Series 15) 0 to 3 : General-purpose analog input (Series 0) 100 : Voltage to which the analog input value of the load current for the 1st spindle is onverted 101 : Voltage to which the analog input value of the load current for the 2nd spindle is converted 200 : Voltage to which the load current for an NC control axis is converted. The 2nd parameter, 0Xmm, is required for this case. 2) mm: Axis request flag (HX:4) For the function of this parameter, see item (3) in Subsection 4.2.4.8. 3) vv : Read voltage obtained by conversion (SI:10) 10 * (voltage ] 128)/128 volts (4) Negative acknowledgment 1) M_NR [0XFFC9] : The axis request flag is omitted. 2) M_NP [0XFB94] : Alarm status (for Series 0/16/18/21)
49
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.23
Reading alarm information
(1) Function This command reads alarm information. (2) Datagram transmission
Host
<T ><AL> <R ><AL><0Xaa> [<,><cc>] .. <M ><OK>
CNC
(3) Parameters aa : Alarm information (HX:4) Bit 0 : Background PS alarm (PS alarm stands for program setting alarm.) 1 : Foreground PS alarm 2 : Overheat alarm 3 : Not determined 4 : Not determined 5 : SW alarm (parameter input enable) 6 : OT alarm (overheat label/spindle alarm) 7 : PMC error 8 : External alarm 9 : Not determined 10 : Fatal PS alarm 11 : Not determined 12 : Servo alarm 13 : I/O alarm 14 : PW alarm (Power off request) 15 : Not determined (4) Negative acknowledgment None
50
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.24
Reading status information
(1) Function This command reads status information. (2) Datagram transmission 1) Request from the host computer
Host
<T ><ST> <R ><ST><0Xss> [<,><0Xaa>] <M ><OK>
CNC
CNC
(3) Parameters 1) mm: Mask bit for information to be transmitted (HX:4) Each bit corresponds to the ss bit. 1 : Masked (not transmitted) 0 : Not masked (transmitted) The initial value is 0XFFFF. If mm is omitted, all the bits are enabled (transmitted). 2) ss : CNC status (HX:4) Bit 0 : Rewind (RWD) 1 : Alarm (AL) 2 : Rest (RST) 3 : Automatic operation currently stopped (SPL) 4 : Automatic operation currently started (STL) 5 : Automatic operation in process (OP) 6 : Servo ready (SA) 7 : CNC ready (MA) 8 : Not used 9 : Not used 10 : Not used 11 : Not used 12 : M00 output (M00) 13 : M01 output (M01) 14 : M02 output (M02) 15 : M30 output (M30) 3) aa : Alarm information (HX:4) For the alarm information, see the parameter described in Subsection 4.2.4.23. When AL of code ss is 1, alarm status code aa is transmitted after the code ss.
51
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4) dd : Alarm information (HX:4) Value 0 : Background PS alarm 1 : Foreground PS alarm 2 : Overheat alarm 3 : Not determined 4 : Not determined 5 : SW alarm (parameter input enable) 6 : OT alarm (overheat label/spindle alarm) 7 : PMC error 8 : External alarm 9 : Not determined A : Fatal PS alarm B : Not determined C : Servo alarm D : I/O alarm E : PW alarm (Power off request) F : Not determined 10 : Battery alarm (4) Negative acknowledgment None (5) Notes 1) In automatic notification mode, <R ><ST> or <R ><AL> is automatically transmitted from the CNC. <R ><AL> is transmitted only when an alarm is issued. 2) In automatic notification mode, no commands other than <M><ST> can be transmitted from the host. 3) When the status is updated while the host is issuing another request (such as a request to download a program), information about the first status change is posted to the host by automatic notification from the CNC after the termination of the preceding request. This is because the DNC2 protocol cannot handle more than one request at any one time. So, automatic notification processing is held during processing of the preceding request.
Example Start End
Download
Automatic notification Status change Information of this status change is not posted. Notification processing is held during this time. (Creation of notification data) Time
Reading status command can be transmitted from the host when accurate notification of status change is needed.
52
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.25
Operator messages
(1) Function This command displays the operator messages on the Screen of the CNC. (2) Datagram transmission
Host
<M ><DI><nn><,><message> <M ><OK>
CNC
(3) Parameters 1) nn : Message number (SI:1 / 1 to 5 or 1 to 5) Five different messages can be displayed at a time because the CNC has five message areas. If nn is negative, the old message on the Screen is cleared, and a new message stored in the first area is displayed first. If nn is positive, a new message is added and displayed after the old message on the Screen. Each message area can contain up to 128 characters. 2) message : Message in ASCII code to be displayed on the Screen (CH:32) Up to 32 characters of the message can be displayed at a time. (4) Negative acknowledgment M_NR [0XFFC9] : The message number is incorrect.
53
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.26
Reading PMC data
(1) Function Data in the PMC area is read. (2) Datagram transmission a) Type A
Host
<PT><PD><0Xaa |mm|ammmm> <, ><nn> <M ><RT> <T ><NB> <R ><PD> {<N0Xaa |Nmm| Nammmm><P0Xvv> [<P0Xvv>]..}.. <T ><NB> <R ><PD> {<N0Xaa |Nmm| Nammmm><P0Xvv> [<P0Xvv>]..}.. <T ><NB> <T ><FD> <N ><OK>
CNC
b) Type B
Host
<T ><PD><0Xaa|mm|ammmm> <R ><PD> <N0Xaa|Nmm|Nammmm><P0Xvv> <M ><OK>
CNC
(3) Parameters 1) aa
: PMC address (HX: 8) (applicable to the Series 15 PMCNA only (address specification type)) The address is specified with eight hexadecimal characters by prefixing 0X41 to the 6digit physical address, given in the list of relationships between PMC addresses and physical addresses in Section 3.3.2 of the FANUC PMCMODEL N Programming Manual (B61013E2). Example: For F000, specify 0X41FFE200. mm : PMC data number (UI:4) (applicable to the Series 0 only (data number specification type)) Refer to FANUC Series 0MC Connection Manual(B61393E) and FANUC PMC MODEL K/L/M Programming Manual(B55193E). Specify the numeric part of the PMC address, which is the PMC address less the initial alphabetic character. Example: For F148, specify 148. For R700, specify 700. ammmm : PMC data number (<a> <mmmm>) (Series 16/18, and PMCNA, NB, NB2 of Series 15 (data number specification type)) a : PMC data address (UI: 1) 0!A 3!F 6!R 9!Y 1!C 4!G 7!T 2!D 5!K 8!X mmmm : PMC data number (UI: 4) Example: For D500, specify 20500.
54
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
NOTE The PMC data number must consist of five numeric characters if address <a> is a nonzero value.
2) nn : Number of bytes to be read from address aa (UI:2/1 nn 32) 3) NOXaa : Starting address of read data (POXvv) (HX: 8) 4) POXvv : PMC data value (HX: 2) The value is posted for each byte. (4) Negative acknowledgment M_NR [0XFFCA]: The PMC address or PMC data number is invalid.
4.2.4.27
Writing PMC data
(1) Function Data is written into the PMC area. The host computer communicates with the PMC application software. FANUC does not define the meanings of the addresses in RAM. These depend on the settings made between the host computer and CNC. (2) Datagram transmission a) Type A
Host
<PR><PD> <M ><RR> <R ><PD> {<N0Xaa|Nmm|Nammmm> <P0Xvv> [<P0Xvv>]..}.. <T ><NB> <R ><PD> {<N0Xaa|Nmm|Nammmm> <P0Xvv> [<P0Xvv>]..}.. <T ><NB> <T ><FD> <M ><OK>
CNC
b) Type B
Host
<R ><PD> {<N0Xaa|Nmm|Nammmm> <P0Xvv> [<P0Xvv>]..}.. <M ><OK>
CNC
(3) Parameters 1) aa
: PMC address (HX: 8) (applicable to the Series 15 PMCNA only (address specification type)) The address is specified with eight hexadecimal characters by prefixing 0X41 to the 6digit physical address, given in the list of relationships between PMC addresses and physical addresses in Section 3.3.2 of the FANUC PMCMODEL N Programming Manual (B61013E2). Example: For F000, specify 0X41FFE200.
55
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
: PMC data number (UI: 4) (applicable to the Series 0 only (data number specification type)) Refer to FANUC Series 0MC Connection Manual (B61393E) and FANUC PMC MODELK/L/M Programming Manual (B55193E). Specify the numeric part of the PMC address, which is the PMC address less the initial alphabetic character. Example: For F148, specify 148. For R700, specify 700. ammmm : PMC data number (<a> <mmmm>) (Series 16/18, and PMCNA, NB, NB2 of Series 15 (data number specification type)) a : PMC data address (UI: 1) 0!A 3!F 6!R 9!Y 1!C 4!G 7!T 2!D 5!K 8!X mmmm : PMC data number (UI: 4) Example: For D500, specify 20500. NOTE The PMC data number must consist of five numeric characters if address <a> is a nonzero value. 2) POXvv: Byte written in the PMC RAM (HX: 2) (4) Negative acknowledgment 1) M_NR [0XFFCA]: The PMC address or PMC data number is invalid. 2) M_NR [0XFBA3]: The PMC address or PMC data number is beyond the allowable range. (5) Note It is recommended that the data access direction for each PMC RAM be determined explicitly between the host computer and PMC. Otherwise, when the host computer and PMC attempt to write data to the same RAM address at the same time, a contention occurs (if two units attempt to write the same address at the same time, the write processing being performed by one of the two units will fail).
mm
56
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.2.4.28
Selecting a part program
(1) Function This command selects a part program on tape storage. (2) Datagram transmission
Host
<M ><SL><nn> <M ><OK>
CNC
(3) Parameter nn : Part program number (UI:4) (4) Negative acknowledgment 1) M_NR [0XFC0C] : Program nn is not found. 2) M_NR [0XFC08] : Alarm status (for Series 0 only), or the program is running. 3) M_NR [0XFC09] : The system is not in the AUTO mode. (For Series 0 only) (5) Note With the Series 15, only memory mode (MEM) and edit mode (EDIT) are valid. In other modes, the sequence terminates normally, but program selection is not performed.
4.2.4.29
Executing a program
(1) Function This command selects and executes a program. (2) Datagram transmission
Host
<M ><CS> [<nn>] <M ><OK>
CNC
(3) Parameter nn : Part program number (UI:4) If this parameter is specified, the CNC selects part program nn and executes it. If it is omitted, the CNC executes the currently selected part program. (4) Negative acknowledgment 1) M_NR [0XFC0C] : Program nn is not found. 2) M_NR [0XFC09] : The mode is incorrect. (Neither AUTO mode nor MEM mode) 3) M_NR [0XFC0A] : Program nn is already being executed, or the CNC is in the alarm status. 4) M_NR [0XFC08] : Selecting the program was rejected. The command for selecting program nn is issued again during automatic operation.
57
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.2.4.30
Reset
(1) Function This command resets the CNC. It functions in the same way as the external reset (ERS) signal of the machine interface. (2) Datagram transmission
Host
<M ><CC> <M ><OK>
CNC
4.2.4.31
Reading a system ID
(1) Function This command reads information on the system ID. (2) Datagram transmission
Host
<T ><ID> <R ><ID><model name><,><revision> <M ><OK>
CNC
(3) Parameters 1) model name : CNC model name F15M9A/F15M14/F15T9A/F15T14 (Series 15) FS0MC/FS0TC (Series 0) F16MA/F16TA/F18MA/F18TA (Series 16/18A) F16MB/F16TB/F18MB/F18TB (Series 16/18B) F16MC/F16TC/F18MC/F18TC (Series 16/18C) F16iMA/F16iTA/F18iMA/F18iTA/ F21iMA/F21iTA (Series 16i/18i/21iA) 2) revision : CNC DNC2 software revision 1.0 (Series 15) 1.1 (Series 0/16/18/21) (4) Negative acknowledgment None
58
B61992E/02
II. PROTOCOL
4. APPLICATION LAYER
4.3
DATAGRAM PROTOCOL 4.3.1
Error Handling
This section describes the datagram protocol between the FANUC CNC and the host computer.
The DNC2 has six negative acknowledgments and one interrupt command for handling errors.
4.3.1.1
Negative acknowledgment
(1) Syntax
<T_BD | M_ER | M_NR | M_NP | T_NP | M_IL> [<0Xeeee>]
(2) Functions T_BD: Sent if the datagram protocol is incorrect. See Appendix D. M_ER: Sent if a syntax error is detected in the datagram. M_NR: Sent if the number given in the data section of the preceding datagram is incorrect. M_NP: Sent if executing commands in the preceding datagram is rejected. T_NP: Sent if the CNC cannot access the requested data. M_IL: Sent if errors other than the above occur. (3) Error code eeee : This four-digit hexadecimal code indicates the cause of the error. The parameter specifies whether the code is output. See Appendixes B and F. (4) Protocol The receiving device sends a negative acknowledgment to the sending device. The negative acknowledgment indicates that an error occurred in the receiving terminal. The device that sent the negative acknowledgment and the device that received it must interrupt transmission immediately and return to the initial state.
4.3.1.2
Interrupt command
(1) Syntax <T_BD> (2) Function The interrupt command forcibly terminates processing currently being transmitted. Either the CNC unit or the host computer can send this command at any time. (3) Protocol As soon as the terminal receives the interrupt command, it interrupts transmission and returns to the initial state. When the terminal is in the initial state, it ignores the interrupt command. This command is used to forcibly return the application layer to the initial state.
59
4. APPLICATION LAYER
II. PROTOCOL
B61992E/02
4.3.2
Interrupt Procedure
4.3.2.1
Interrupt
The datagram transmission procedure can generally be started in the idle state. Unless both the CNC and the host terminate the current datagram transmission procedure, they cannot start a new transmission procedure. In other words, they cannot interrupt the datagram transmission procedure as shown in Fig. 4.3.2.1.
Sending device
CASE : A Command A11 Response A11 Command B11 Response B11 Command B12 Response B12 Command A12 Response A12 CASE : B Command A21 Response A21 Response B21 Command B21 Response B22 Command B22 Command A22 Response A22 Interrupt by the y receiving device de ice Interrupt by the sending device
Receiving device
60
B61992E/02
1. OUTLINE
OUTLINE
This manual explains the use and installation of the communication program library for a personal computer. They are specified in the DNC2 protocol developed for DNC communication between a FANUC CNC and personal computer (PC), or between a CNC and host computer. This library cannot be used on its own. Be sure to create application programs and link them with this library. For creating and linking application programs, see Section 3.3. The demonstration program (sample application program) supplied with this system permits simple control of the CNC. For use of the demonstration program, see Appendix K.
63
2. CONFIGURATION
B61992E/02
CONFIGURATION
IBM PC series Model : OS : Compiler: Memory : Others PC, AT, PS/2 PCDOS Ver. 3.1 or later MSC compiler Ver. 5.0 or later The communication package library alone uses 134K bytes of memory. : Use of the demonstration program requires the CGA interface.
NEC PC98 series Model : Model VM and all subsequent models (except the highresolution mode) OS : MSDOS Ver. 3.1 or later Compiler: MSC compiler Ver. 5.0 or later Memory : The MSDOS 3.1 system alone uses 60K bytes of memory. The MSDOS 3.3B system alone uses 89K bytes of memory. The communication package library alone uses 134K bytes of memory. Others : Only the RS232C standard port is supported. Fujitsu FMR series Model : OS : Compiler: Memory : Others FMR50/60/70 MSDOS Ver. 3.1 or later MSC compiler Ver. 5.0 or later The communication package library alone uses 134K bytes of memory. : The demonstration program is designed for high resolution
NOTE Memory requirements vary somewhat depending on whether the config.sys file contains the specifications of files and buffers. Memory requirements are also increased by the size of device drivers such as print.sys, if included.
64
B61992E/02
3. INSTALLATION
INSTALLATION
65
3. INSTALLATION
B61992E/02
3.1
SUPPLIED PROGRAMS
\ LIB DNC2DFF.H DNC2NECL.LIB DNC2IBML.LIB DNC2FMRL.LIB DEMO SRC D2_DEMO.H D2_GLB.H D2_PRT.H D2DTEXT.H DEMO_MAN.C D2_DEMO.C D2DTGLB.C D2_UTNEC.C D2_UTIBM.C D2_UTFMR. C IBM_DEMO.MAK 98_DEMO.MAK FMR_DEMO.MAK DEMOIBM. EXE DNC2SYS.CFG LOG LOG.EXE SRC LOG.C : : :
The FANUC DNC2 communication program library is stored in one volume of floppy disk shown below. The contents of the floppy disk are shown in the figure below. The libraries are all created for large models.
DNC2 communication program library directory Header file NEC PC9801 library IBM PC/AT library Fujitsu FMR library Demonstration program directory Source program directory
IBM PC series makefile NEC PC98 series makefile Fujitsu FMR series makefile Executable file of IBM PC/AT demonstration program
Error log directory Executable file of DNC2 communication program library error log inspection program
The programs stored in the DEMO directory are designed with the Series 0MC specified as the CNC, to make the user familiar with DNC2. These programs do not run normally even when compiled and linked. Use these programs merely for reference to understand the use of the DNC2 communication library.
66
B61992E/02
3. INSTALLATION
3.2
INSTALLATION PROCEDURE
This section explains the procedure for installing the library. Copy the header file and the library for the model to be used to the directory (the directory to be compiled) in which application files exist. The following shows the method for copying files from the floppy disk in drive A to the DNC2 directory in the hard disk in drive C.
C>CD \DNC2 C>COPY A: \LIB \DNC2DEF. H C: C>COPY A: \LIB \DNC2IBML. LIB C:
NOTE For IBM PC/AT, replace the yen signs with backslashes.
67
3. INSTALLATION
B61992E/02
3.3
COMPILATION AND LINKING
(1) Compiler The object compiler is version 5.0 or a later version of the MSC compiler produced by Microsoft. (2) Application program setup This library only executes single functions (commands). It requires a main program which executes different types of functions in combination. The main program is called an application program. When creating an application program, be sure to include the header file DNC2DEF. H at the beginning. (Insert the following line at the beginning of each file.)
#include dnc2def. h
If the header file is not included, functions in this library cannot be called correctly. (3) Setting environment variables The following three environment variables must be set for compilation to start normally. (For environment variables, refer to the PCDOS or MSDOS manual.) D PATH : Directory in which the compiler exists D LIB : Directory in which the standard library of the compiler exists D INCLUDE : Directory in which the include file of the compiler exists Check that these environment variables are set correctly. Set environment variables as follows if the directory structure is as shown below.
C:\ MSC \ BINR \ LIB \ INCLUDE \ : : : Compiler Standard library Include file
C>SET PATH = C: \MSC \BINR C>SET LIB = C: \MSC \LIB C>SET INCLUDE = C: \MSC \INCLUDE
(4) Compilation and linking For large models, an application program is compiled as follows, where the name of the file containing the application program is <APLI. C>.
C>CL AL APLI. C DNC2IBML. LIB
After compilation, the application program is automatically linked and an executable file <APLI. EXE> is generated. For details of compiler options and compilation, refer to the MSC compiler manual.
68
B61992E/02
4. FUNCTION SPECIFICATIONS
FUNCTION SPECIFICATIONS
69
4. FUNCTION SPECIFICATIONS
B61992E/02
4.1
USE
Call functions in the calling format shown in Section 4.4. If the types of arguments agree, it does not matter whether the variable names differ. The return values of functions are always of the short type. As required, convert them to a proper type (cast) for use. Example) test( )
{ short ans; char ch; short ax; bouble dt [15]; : : ch = 0; bit = 0x01; : : if (( ans = D_servo (ch, bit, &dt [0])) << 0) { /* Error handling */ if (ans == 1) { : } else if (ans == 2) { : : } } : : }
70
B61992E/02
4. FUNCTION SPECIFICATIONS
4.2
NOTES
(1) These functions do not return until communication with the NC unit terminates completely. Note that downloading/uploading or other timeconsuming processes disable other processes. (2) Specify in uppercase a program number or any other character string used as an argument to call a function. Message output can be input in both uppercase and lowercase. (3) Specify the name of an inputoutput file with an absolute path or a path relative to a current directory. (4) Since the functions that output results to files open files in the overwrite mode, the contents of existing files are deleted. (5) Before calling functions that output results to memory, allocate a free space large enough to store results. The functions assume that an area for storing results is allocated. (6) Arguments selected by numbers (mode of D_tool_pos()) can be specified directly by numeric values, or by defined names. (The latter is recommended.) When specifying arguments by defined names, be sure to include dnc2def.h. Example) #include dnc2def.h
... D_tool_pos(0,MACHINE_POS,0x13,&tooldat [0 ] );
(7) The types of variables used in the function specifications are described below. char : Onebyte signed integer or 7bit character uchar : Onebyte unsigned integer or 8bit character short : Twobyte signed integer ushort : Twobyte unsigned integer long : Fourbyte signed integer double : Eightbyte signed real number
71
4. FUNCTION SPECIFICATIONS
B61992E/02
4.3
FUNCTIONS
Description Part program download Waits for download request and starts downloading a part program. Part program upload Deletes part programs. Reads part program directory information for one program. Reads part program directory information for all programs (file type). Reads part program directory information for all programs (memory type). Reads the size of the free area Reads the tool position.
Send command PRPM PTPM wait PTPM MCPM LIPM LIPM LIPM T FR T MP T WP T SP T SE T AE T MI T PN T SN PTPA PRPA PRPA PTPE PTPE PRPE PRPE PTTO PTTO PRTO PRTO PTMV PTMV PRMV PRMV PTTL PTTL T MD T MD T AF T AD T AL T ST T DI PTPD T PD PRPD R PD M SL M CS M CC T ID
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
D_servo D_AccDec D_diagnose D_exec_num D_parameter_r D_parameter_w D_parameter_w_mem D_pitch_r D_pitch_r_mem D_pitch_w D_pitch_w_mem D_offset_r D_offset_r_mem D_offset_w D_offset_w_mem D_variable_r D_variable_r_mem D_variable_w D_variable_w_mem D_toollife D_toollife_mem D_modal D_modal_mem D_actualspeed D_ADconcert D_alarm D_status
Reads the servo delay. Reads the acceleration/deceleration delay. Reads the machine interface signal. Reads the numbers of the program and block being executed. Reads CNC parameters. Writes CNC parameters (file type). Writes CNC parameters (memory type). Reads pitch error data (file type). Reads pitch error data (memory type). Writes pitch error data (file type). Writes pitch error data (memory type). Reads the tool offset (file type). Reads the tool offset (memory type). Writes the tool offset (file type). Writes the tool offset (memory type). Reads custom macro variables (file type). Reads custom macro variables (memory type). Writes custom macro variables (file type). Writes custom macro variables (memory type). Reads the tool life management data (file type). Reads the tool life management data (memory type). Reads automatic operation continuousstate information (file type). Reads automatic operation continuousstate information (memory type). Reads the actual speed. Reads A/D conversion data. Reads alarm information. Reads status information. Message output Reads PMC data. Writes PMC data. Searches for a program number. Cycle start Reset Reads system ID. Initializes the communication port.
D_message
D_PMCdata_r D_PMCdata_w D_select D_start D_reset D_systemID
D_initial
72
B61992E/02
4. FUNCTION SPECIFICATIONS
4.4
DETAILS
This section explains the functions in detail. For an explanation of the return value (negative acknowledgment) specific to each function, see Appendix J. The functions correspond to the service functions explained in Section 4.2.4 of II4 almost on a onetoone basis. Therefore, see Section 4.2.4. 1) Function : D_download Part program download Calling format : short D_download (char ch_no, uchar
*file_name, char *prg_no)
Arguments
Program number (o0001 to o9999) <character string> Return value : = 0 Normal = FFFF Communication error = FFFE File open error = FFFD File read error = FFF0 Sequence error Others See Appendix F. Outline : Transfers part programs from a host computer to the CNC. * Release background edit mode and simultaneous edit mode (Series 15 only) in advance. 2) Function : D_download_wait Waits for download request and starts download of part program. Calling format : short D_download_wait (char ch_no) Arguments : char ch_no Channel number (0 to 3) <numeric value> Normal Return value : = 0 = FFFF Communication error = FFFE File open error = FFFD File read error = FFF0 Sequence error Others See Appendix F. Outline : Waits for a download request from the CNC. On receiving a download request, determines the file name as <0xxxx.PRG> from the requesting program number and starts download. (For example, if the program number is 1, the file name is <O0001.PRG>.) This function terminates after downloading one file. This function is used to start downloading when a CNC cycle is started as in DNC operation. The general procedures for DNC operation are explained below. (1) Put the system in the tape mode (for Series 15 only) (2) Use the PMC data read function to check that the CNC has become ready.
73
4. FUNCTION SPECIFICATIONS
B61992E/02
(3) Select the program to perform DNC operation using D_select. (Series 15) For Series 0, set the number of the program to perform DNC operation by the MAP parameter screen DNC FILE SELECTION in advance. (4) Issue the instructions for starting the cycle to the CNC by the PMC data write function. The PMC ladder program monitors the directions and starts the CNC cycle. (Although the cycle can also be started by D_start, this method is better as it is possible to check whether the machine has been set up.) (5) Call this function. Control is returned from the function when DNC operation terminates normally or abnormally. Perform 5 as soon as possible after 4. Otherwise, a timeout will occur. 3) Function : D_upload Part program upload Calling format : short D_upload (char ch_no, uchar Arguments
*file_name, char *prg_no) : char ch_no
Program number (o0001 to o9999) <character string> Return value : = 0 Normal = FFFF Communication error = FFFE File open error = FFFC File write error = FFF0 Sequence error Others See Appendix F. Outline : Transfers part programs from a host computer to the CNC. Release background edit mode and simultaneous edit mode (Series 15 only) in advance. 4) Function : D_delete Deletes part programs. Calling format : short D_delete
(char ch_no, char *prg_no)
Arguments
Return value
Outline
Program number (o0001 to o9999) <character string> [o**** for all programs] : =0 Normal =1 No program (for Series 15 only) = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Directs the CNC to delete part programs. (The specified programs or all programs are deleted.)
74
B61992E/02
4. FUNCTION SPECIFICATIONS
Note
: If all programs are deleted when the CNC is FANUC Series 15, the selected programs are not deleted unless the system is in the edit mode. A return value indicating abnormal termination is returned. The recommended method for deleting all part programs is to change to the edit mode using the PMC data write function, delete the part programs, then return to the original mode, or to select a small dummy program for deletion. Release background edit mode and simultaneous edit mode (Series 15 only) in advance. : D_fdir Reads part program directory information for one program.
5) Function
Arguments
Return value
Outline 6) Function
Program number (o0001 to o9999) <character string> : =0 The specified program exists. = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Reads a part program from the CNC and checks that the program exists. : D_alldir Reads part program directory information for all programs.
Arguments
Program number
char [6]
Return value
Outline
The specified program exists. Communication error File open error File write error Sequence error Others See Appendix F. : Reads all part programs from the CNC and writes the program numbers to a file.
= = = = FFFF FFFE FFFC FFF0
: =0
75
4. FUNCTION SPECIFICATIONS
B61992E/02
7) Function
: D_alldir_mem
Arguments
: char ch_no Channel number (0 to 3) <numeric value> long size Buffer size <numeric value> char *data Directory storage buffer
long <numeric value>
Program number
char [6]
Program exists. Communication error Sequence error Others See Appendix F. Outline : Reads all part programs from the CNC and stores the program numbers in the buffer. 8) Function : D_freemem Reads the size of the free area. Calling format : short D_freemem
= FFFF = FFF0 (char ch_no, long *size)
Return value
: =0
Arguments
Area for storing free area size <numeric value> Return value : = 0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. Outline : Directs the CNC to read the size of the free area and returns the size. 9) Function : D_tool_pos Reads the tool position. Calling format : short D_tool_pos (char ch_no, char
mode, short axis, double *data)
Arguments
1 [WORK_POS] <numeric value> Reading of absolute position 2 [MACHINE_POS] Reading of machine position 3 [SKIP_POS] Reading of skip position
short axis
Axis specification <numeric value> (Turns on the bits corresponding to axes. Bits 0 to 14.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis
76
B61992E/02
4. FUNCTION SPECIFICATIONS
double *data
15th-axis data
double
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Reads either the absolute position, machine position, or skip position, and stores the data for the specified axes in the corresponding positions. Data of axes that are not specified is undefined.
= FFFF = FFF0 short
: =0
10)Function : D_servo Reads the servo delay. Calling format : short D_servo (char ch_no, Arguments
axis, double *data) : char ch_no
Axis specification <numeric value> (Turns on the bits corresponding to axes. Bits 0 to 14.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis
double *data
First-axis data Second-axis data
15th-axis data
double
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Reads the servo delay and stores the data of the specified axes in the corresponding positions. Data of axes that are not specified is undefined.
= FFFF = FFF0
: =0
77
4. FUNCTION SPECIFICATIONS
B61992E/02
11)Function
: D_AccDec
Arguments
Axis specification <numeric value> (Turns on the bits corresponding to axes. Bits 0 to 14.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis
double *data
First-axis data Second-axis data
15th-axis data
double
Normal Communication error Sequence error Others See Appendix F. Outline : Reads the acceleration/deceleration delay and stores the data of the specified axes in the corresponding positions. Data of axes that are not specified is undefined. 12)Function : D_diagnose Reads machine interface signal. Calling format : short D_diagnose
= FFFF = FFF0
Return value
: =0
Arguments
(char ch_no, short start_no, short stop_no, uchar *data) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
Stop diagnose number <numeric value> (0 to 999. When 0, omit this argument.) uchar *data DI/DO signal data buffer
DI/DO data DI/DO data uchar z Start diagnose number uchar
DI/DO data
Return value
: =0
= FFFF = FFFB = FFF0
Others
78
Normal Communication error Diagnose number error (M_NR) Sequence error See Appendix F.
B61992E/02
4. FUNCTION SPECIFICATIONS
: Reads the machine interface signal data and returns data from the start of operation until it stops. If a stop diagnose number is omitted, only the data corresponding to the start diagnose number if returned. 13)Function : D_exec_num Reads the number of the program or block being executed. Calling format : long D_exec_num (char ch_no, char Arguments
type, long *number) : char ch_no
Outline
Channel number (0 to 3)
char type
<numeric value>
Program/sequence number storage buffer <numeric value> Return value : = 0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. Outline : Reads the number of the program or block being executed by the CNC and returns it. If no program number or sequence number is defined or no program or block is being executed, zero is returned. 14)Function : D_parameter_r Reads CNC parameters. Calling format : short D_parameter_r Arguments
(char ch_no, short p_no, short axis, long *data) : char ch_no
Channel number (0 to 3)
short p_no
Parameter number
short axis
=0 Without axis specification <numeric value> 00 With axis specification (Turns on the bits corresponding to axies. Bits 0 to 14.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis
long *data
With axis specification First-axis data Second-axis data long long
15th-axis data
long
79
4. FUNCTION SPECIFICATIONS
B61992E/02
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Directs the CNC to read CNC parameters and returns the parameter or the parameters corresponding to the specified axes. Data of axes that are not specified is undefined.
= FFFF = FFF0
: =0
Arguments
<numeric value>
CNCPARAM
long
15th-axis data
Free long_14
Axis specification
Bit 14 13 12 11 10 9
8 7
Return value
Outline Note
Normal Communication error File open error File read error Sequence error Others See Appendix F. : Writes the parameters stored in the file or the parameters corresponding to the specified axes to the CNC. Data of axes not specified is ignored. : For the effective timing of updating parameters, refer to the CNC operators manual.
= = = = FFFF FFFE FFFD FFF0
: =0
80
B61992E/02
4. FUNCTION SPECIFICATIONS
16)Function : D_parameter_w_mem Writes CNC parameters. Calling format : short D_parameter_w_mem (char ch_no,
short cout, CNCPARAM *data)
Arguments
CNCPARAM
15th-axis data
Free long_14
Axis specification
Bit 14 13 12 11 10 9
8 7
Normal Communication error Sequence error Others See Appendix F. Outline : Writes the parameter stored in the buffer or the parameters corresponding to axes to the CNC. Data of axes not specified is ignored. Note : For the effective timing of updating parameters, refer to the CNC operators manual. 17)Function : D_pitch_r Reads pitch error data Calling format : short D_pitch_r
= FFFF = FFF0
Return value
: =0
Arguments
(char ch_no, short start_no, short stop_no, uchar *file_name) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
Stop correction position number <numeric value> (0 to 9999. When 0, omit this argument.)
uchar *file_name
4. FUNCTION SPECIFICATIONS
B61992E/02
Return value
Outline
Normal Communication error File open error File wite error Sequence error Others See Appendix F. : Directs the CNC to read pitch error data and sends the data from the start number to the stop number stored in the file. If the stop correction position number is omitted, only the data corresponding to the start correction position number is returned.
= = = = FFFF FFFE FFFC FFF0
: =0
18)Function : D_pitch_r_mem Reads pitch error data. Calling format : short D_pitch_r_mem Arguments
(char ch_no, short start_no, short stop_no, long size, char *data) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
Stop correction position number <numeric value> (0 to 9999. When 0, omit this argument.) long size Buffer size <numeric value> char *data Pitch error data buffer
Pitch error data Pitch error data char z Start correction position number char
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Directs the CNC to read pitch error data and stores the data from the start number to the stop number in the buffer. If the stop correction position number is omitted, only the data corresponding to the start correction position number is returned.
= FFFF = FFF0
: =0
82
B61992E/02
4. FUNCTION SPECIFICATIONS
19)Function : D_pitch_w Writes pitch error data Calling format : short D_pitch_w Arguments
(char ch_no, short start_no, short stop_no, uchar *file_name) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
Return value
Outline
Normal Communication error File open error File read error Sequence error Others See Appendix F. : Writes the pitch error data stored in the file from the start number to stop number to the CNC.
= = = = FFFF FFFE FFFD FFF0
: =0
20)Function : D_pitch_w_mem Writes pitch error data. Calling format : short D_pitch_w_mem Arguments
(char ch_no, short start_no, short stop_no, char *data) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
83
4. FUNCTION SPECIFICATIONS
B61992E/02
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Writes the pitch error data stored in the buffer from the start number to stop number to the CNC.
= FFFF = FFF0
: =0
21)Function : D_offset_r Reads tool offset. Calling format : short D_offset_r (char ch_no, short
start_no, short stop_no, type, uchar *file_name) ushort
Arguments
<numeric value>
Stop offset number <numeric value> (0 to 9999. When 0, omit this argument.)
ushort type
Offset type specification <numeric value> (Detailed information will be described later. Millingtype and lathetype offsets cannot be specified together.) For the setting conditions, see Table 4.2.4.15 in Section I4.2.4.15 (5).
uchar *file_name
Data Data
Data
(Milling offset)
struct { double x; double z; double r; double y; double u; double w; double p; double v; double q; } TRUN_OFFSET;
U W P V Q
(Lathe offset)
84
B61992E/02
4. FUNCTION SPECIFICATIONS
Return value
: =0
= = = = FFFF FFFE FFFC FFF0
Others Outline
Normal Communication error File open error File write error Sequence error See Appendix F.
: Directs the CNC to read tool offsets on a milling machine or lathe and stores the data from the start number to stop number in a file. If a stop number is omitted, only the data corresponding to the start number is returned. Details of offset type Bit
0 = Wear compensation 1 = Geometric compensation 2 = Wear compensation 3 = Wear compensation 4 = Wear compensation 5 = Wear compensation 6 = Virtual tool tipQ 7 = Not used 8 = Wear compensation 9 = Geomertic compensation 10 = Geomertic compensation 11 = Geomertic compensation 12 = Geomertic compensation 13 = Geomertic compensation 14 = Not used 15 = Not used D: K: X: Z: R: Y: Cutter compensation Cutter compensation X-axis offset quantity Z-axis offset quantity Tool tip R offset Y-axis offset quantity
H: L: U: W: P : V:
Tool length offset Tool length offset X-axis offset quantity Z-axis offset quantity Tool tip R offset Y-axis offset quantity
22)Function
: D_offset_r_mem
Arguments
<numeric value>
Stop offset number <numeric value> (0 to 9999. When 0, omit this argument.) ushort type Offset type <numeric value> (Milling type and lathe type cannot be specified at the same time.) For the bit structure, see the tool offset read file. long size Buffer size char *data Data storage buffer. (Memory size (in bytes) usable for the receive data storage buffer) For the data structure, see the tool offset read file. Return value : =0
= FFFF = FFF0
Others
85
4. FUNCTION SPECIFICATIONS
B61992E/02
Outline
: Directs the CNC to read tool offsets on a milling machine or lathe and stores the data from the start number to stop number in a file. If a stop number is omitted, only the data corresponding to the start number is returned.
23)Function : D_offset_w Writes tool offset. Calling format : short D_offset_w (char ch_no, short Arguments
start_no, short stop_no, type, uchar *file_name) : char ch_no ushort
Channel number (0 to 3)
short start_no
<numeric value>
Offset type specification <numeric value> (Milling type and lathe type cannot be specified at the same time.) For the bit structure, see the tool offset read file.
uchar *file_name
Write data storage file name. Only items specified in the offset type are written. For the data structure, see the tool offset read file. NOTE The offset type is specified for all write data. Be sure to input the data specified in type. Return value Normal Communication error File open error File read error Sequence error Others See Appendix F. : Writes the offsets on milling machines or lathes stored in a file from the start number to stop number to the CNC.
= = = = FFFF FFFE FFFD FFF0
: =0
Outline
86
B61992E/02
4. FUNCTION SPECIFICATIONS
24)Function : D_offset_w_mem Writes tool offset. Calling format : short D_offset_w_mem Arguments
(char ch_no, short start_no, short stop_no, ushort type, char *data) : char ch_no
Channel number (0 to 3)
short start_no
<numeric value>
Offset type specification <numeric value> (Milling type and lathe type cannot be specified at the same time.) For the bit structure, see the tool offset read file. char *data Write data buffer. Only items specified in the offset type are written. For the data structure, see the tool offset read file. NOTE The offset type is specified for all write data. Be sure to input the data specified in type.
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Writes offsets on milling machines or lathes stored in a file from the start number to stop number to the CNC.
= FFFF = FFF0
: =0
25)Function
: D_variable_r
macro
Channel number (0 to 3)
long start_no
<numeric value>
Variable data
87
4. FUNCTION SPECIFICATIONS
B61992E/02
Return value
Outline
Normal Communication error File open error File write error Sequence error Others See Appendix F. : Directs the CNC to read macro variables and stores the data from the start number to stop number in a file to return the data. If the stop number is omitted, only the data corresponding to the start number is returned.
= = = = FFFF FFFE FFFD FFF0
: =0
26)Function
: D_variable_r_mem
Channel number (0 to 3)
long start_no
<numeric value>
Stop macro variable number<numeric value> (When 0, omit this operand.) long size Buffer size <numeric value> double *data Macro variable data buffer
Variable data Variable data double z Start macro variable number double
Variable data
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. In the case of empty, 0 is returned. : Directs the CNC to read macro variables and stores the data from the start number to stop number in buffer to return the data. If the stop number is omitted, only the data corresponding to the start number is returned.
= FFFF = FFF0
: =0
88
B61992E/02
4. FUNCTION SPECIFICATIONS
27)Function
: D_variable_w
macro
long
Channel number (0 to 3)
long start_no
<numeric value>
Variable data
Return value
: =0
= = = =
Normal
FFFF Communication error FFFE File open error FFFD File read error FFF0 Sequence error
Others See Appendix F. : Writes the macro variable data from the start number to stop number stored in a file to the CNC. 28)Function : D_variable_w_mem Writes custom macro variables. Calling format : short D_variable_w_mem (char ch_no, Outline Arguments
long start_no, long stop_no, double *data) : char ch_no
Channel number (0 to 3)
long start_no
<numeric value>
Variable data
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Writes the macro variable data from the start number to stop number stored in the buffer to the CNC.
= FFFF = FFF0
: =0
89
4. FUNCTION SPECIFICATIONS
B61992E/02
29)Function : D_toollife Reads tool life management data. Calling format : short D_toollife Arguments
(char ch_no, short start_no, short stop_no, uchar *file_name) : char ch_no
Channel number (0 to 3)
short start_no
TOOLLIFE
TOOLCODE typedef struct{ typedef short g_no; short type; long life; short d_cnt; } TOOLLIFE; struct { short no; short hcode; short dcode; short ccode; } TOOLCODE;
Return value
Outline
Normal Communication error File open error File write error Sequence error Others See Appendix F. : Directs the CNC to read tool life management data and stores the data from the start number to stop number in a file. If the stop number is omitted, only the data corresponding to the start number is returned.
= = = = FFFF FFFE FFFC FFF0
: =0
90
B61992E/02
4. FUNCTION SPECIFICATIONS
30)Function
: D_toollife_mem Reads tool life management data. Calling format : short D_toollife_mem (char ch_no, Arguments
short start_no, short stop_no, long size, long *count, TOOLLIFE *data) : char ch_no
Channel number (0 to 3)
short start_no
Stop group number <numeric value> (When 0, omit this operand.) long size Buffer size <numeric value>
long *count
TOOLLIFE
TOOLCODE
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Directs the CNC to read tool life management data, stores the data from the start number to stop number in buffer, and returns the data along with the number of group data items stored in the buffer. If the stop number is omitted, only the data corresponding to the start number is returned.
= FFFF = FFF0
: =0
91
4. FUNCTION SPECIFICATIONS
B61992E/02
31)Function : D_modal Reads automatic information. Calling format : short D_modal Arguments
(char ch_no, *file_name) : char ch_no short select short
operation
select,
modal
uchar
Channel number (0 to 3)
<numeric value>
0 [LAST_BLOCK] Preceding block <numeric value> 1 [ACTIVE_BLOCK] Current block 2 [BUFF_BLOCK] Next block
uchar *file_name
short long
0,1,2 Address char G,D,E,H,L,M,N,O,S,T,F (character) 1: 2: 3: 4: char <numeric>X2 short long double G (G gg. vv) D/H/L/M/O/S/T N E/F gg: G group code vv: Group internal code
file_name
Data
Data MODALHEAD
0
MODALDATA
Type 1
Numeric (gg) Numeric (vv)
Type 2
Type 3
Type 4
short
long
double
2
typedef struct { short sel; long d_cnt; } MODALHEAD; struct { char addr; char type; union { MODLCHAR MODALSHORT MODALLONG MODALDOUBLE } dat; } MODALDAT; typedef Empty MODALDOUBLE
2
Empty
4
MODALSHORT MODALLONG Note) For an explanation of gg and vv, see Appendix A.8.
8
MODALDOUBLE
typedef
c; s; l; d;
typedef
struct { char dt1; char dt2; short rsv1; long rsv2; } MODALCHAR; struct { short dt; short rsv1; long rsv2; } MODALSHORT;
typedef
typedef
Return value
Outline
Normal Communication error File open error File write error Sequence error Others See Appendix F. : Reads modal data and writes the read data to a file.
= = = = FFFF FFFE FFFC FFF0
: =0
92
B61992E/02
4. FUNCTION SPECIFICATIONS
32)Function
: D_modal_mem Reads automatic operation modal information. Calling format : short D_modal_mem
(char ch_no, short select, long size,long *count, MODALDATA *data) : char ch_no
Arguments
Channel number (0 to 3)
short select
<numeric value>
0 [LAST_BLOCK] Preceding block <numeric value> 1 [ACTIVE_BLOCK] Current block 2 [BUFF_BLOCK] Next block long size Buffer size <numeric value> long *count Read data count storage address MODALDATA *data Modal data buffer
0,1,2 Address Data char G,D,E,H,L,M,N,O,S,T,F (character) 1: 2: 3: 4: char <numeric>X2 short long double G (G gg. vv) D/H/L/M/O/S/T N E/F gg: G group code vv: Group internal code
Data MODALHEAD
0
MODALDATA
Type 1
Numeric (gg) Numeric (vv)
Type 2
Type 3
Type 4
long
double
2
Empty
4
MODALDOUBLE MODALSHORT MODALLONG Note) For gg and vv, see Appendix A.8.
8
MODALDOUBLE
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Reads modal data, stores the read data in the buffer, and returns the data along with the number of data items stored.
= FFFF = FFF0
: =0
33)Function : D_actualspeed Reads actual speed. Calling format : short D_actualspeed (char ch_no, Arguments
short axis, double *data) : char ch_no
Channel number (0 to 3)
short axis
<numeric value>
Axis specification <numeric value> (Turns on the bits corresponding to axes. Bits 0 to 14.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 1st axis 2nd axis 15th axis
93
4. FUNCTION SPECIFICATIONS
B61992E/02
double *data
First-axis data Second-axis data
15th-axis data
double
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Directs the CNC to read the actual speed and stores data of specified axes in buffer. Data of axes that are not specified is undefined.
= FFFF = FFF0
: =0
34)Function : D_ADconvert Reads A/D conversion data. Calling format : short D_ADconvert (char ch_no, short Arguments
select, short axis,double *data) : char ch_no
Channel number (0 to 3)
short select
<numeric value>
0 [G_PURPOSE] General input (Axis is required: Bit 0 to 5) 100 [SPINDLE_1] Spindle 1 <numeric value> 101 [SPINDLE_2) Spindle 2 200 [AXIS_VOLTS] Axis data (Axis is required: Bit 0 to 14)
short axis
Axis specification <numeric value> (Turns on bits corresponding to axes or general input.)
Bit 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Fiest axis/general input 1 Second axis/general input 2 15th axis
double *data
Type 2
Data double
Type 3
First-axis data Second-axis data double double
General input 6
double
15th-axis data
double
Return value
Outline
Normal Communication error Sequence error Others See Appendix F. : Directs the CNC to read general input data, data for spindles 1 and 2, or axis data, and returns the data for each type. General input or axis data that is not specified is undefined.
= FFFF = FFF0
: =0
94
B61992E/02
4. FUNCTION SPECIFICATIONS
35)Function : D_alarm Reads alarm information. Calling format : short D_alarm Arguments
(char ch_no, ushort *alarm) : char ch_no
Channel number (0 to 3)
ushort *alarm
<numeric value>
Return value
Outline
Alarm status storage area <numeric value> Bit 0 Background P.S. alarm 1 Foreground P.S. alarm 2 Overheat alarm 3 Undefined 3 Undefined 4 Undefined 5 SW alarm (parameters can be input) 6 OT alarm (overtravel/spindle alarm) 7 PMC error 8 External alarm 9 Undefined 10 Serious P.S. alarm 11 Undefined 12 Servo alarm 13 I/O alarm 14 PW alarm 15 Undefined : =0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Directs the CNC to read alarm information and returns the information with bit patterns.
36)Function : D_status Reads status information. Calling format : short D_status (char ch_no, ushort Arguments
*status, ushort *alarm) : char ch_no
Channel number (0 to 3)
ushort *status
<numeric value>
CNC status storage area <numeric value> Bit 0 RWD rewind 1 AL alarm 2 RST reset 3 SPL automatic operation stopped 4 STL automatic operation activated 5 OP automatic operation 6 SA servo setup complete 7 MA CNC setup complete 8 Not used 9 Not used 10 Not used 11 Not used 12 M00 : M00 output 13 M01 : M01 output 14 M02 : M02 output 15 M30 : M30 output
ushort *alarm
Alarm status storage area <numeric value> (For details, see the alarm information read function.)
95
4. FUNCTION SPECIFICATIONS
B61992E/02
Normal Communication error Sequence error Others See Appendix F. Outline : Directs the CNC to read status information and returns the status information in the form of a bit pattern. When the alarm bit in the status information is on, returns alarm information at the same time. 37)Function : D_message Message output Calling format : short D_message (char ch_no, char
= FFFF = FFF0
Return value
: =0
Arguments
Channel number (0 to 3)
char buf_no
Output message <character string> (A maximum of 32 characters. Terminate the text with a null code.) Return value : = 0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. Outline : Outputs a message to the CNC. 38)Function : D_PMCdata_r Reads PMC data. Calling format : short D_PMCdata_r Arguments
(char ch_no, long addr, short length, short status, uchar *data) : char ch_no
Channel number (0 to 3)
long addr
<numeric value>
PMC RAM address or data number <numeric value> PMC RAM address (Series 15A and address specification type of Series 15B) The address is specified with eight hexadecimal characters by prefixing 0X41 to the 6digit physical address, given in the list of relationships between PMC addresses and physical addresses in Section 3.3.2 of the FANUC PMCMODEL N Programming Manual (B610132). Example : For F000, specify 0X41FFE200. Data number (Series 0) Refer to the FANUC Series 0 Connection Manual(B-61393) and FANUC PMC MODELK/L/M Programming Manual(B55193). Specify the numeric part of the PMC address, which is the PMC address less the initial alphabetic character. Example : For F148, specify 148. For R700, specify 700. Data number (Data number specification type of Series 15B and Series 16/18/21) See Section 4.2.4.26. Specify the numeric value corresponding to the first alphabetic character of a PMC address, plus a 4digit decimal number. Example : For R123, specify 60123.
96
B61992E/02
4. FUNCTION SPECIFICATIONS
short length
Data length (1 to 32) <numeric value> short status 1 : RAM address, 2 : Data number <numeric value> uchar *data PMC data buffer
PMC data PMC data uchar uchar
PMC data
uchar
max. 32
Return value
: =0
= FFFF = FFF0
Others Outline
: Directs the CNC to read PMC data and returns as much PMC data as specified by the data length, beginning at the specified address. This function is generally used for handshaking with the PMC. The CNC status can be obtained by reading the DO signal of the CNC. : D_PMCdata_w Writes PMC data.
39)Function
Arguments
<numeric value>
PMC RAM address or data number <numeric value> For an explanation of how to specify the RAM address and data number, see the description of the D_PMCdata_r function in 38).
short length
<numeric value>
1 : RAM address, 2 : Data number <numeric value> uchar *data Write PMC data buffer
PMC data PMC data uchar uchar
PMC data
uchar
max. 32
Return value
: =0
= FFFF = FFF0
Others
97
4. FUNCTION SPECIFICATIONS
B61992E/02
Outline
: Writes as much PMC data as specified by the data length beginning at the specified address to the CNC. This function is generally used to give directions to the PMC. This function permits handshaking with the PMC in combination with the PMC data read function.
40)Function : D_select Searches for a program number. Calling format : short D_select Arguments
(char ch_no, char *prg_no) : char ch_no
Channel number (0 to 3)
char *prg_no
<numeric value>
Return value
Outline
Program number searched for <character string> (o0000 to o9999) : =0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Directs the CNC to search for a program number. In the tape mode, this function specifies the program number for performing a DNC operation.
* Release background edit mode and simultaneous edit mode (Series 15 only) in advance. * With the Series 15, the sequence terminates normally in any mode, but the function is made effective only in edit mode and memory mode. 41)Function : D_start Cycle start Calling format : short D_start
(char ch_no, char *prg_no)
Arguments
<numeric value>
Return value
Outline
Program number to be started <character string> (o0000 to o9999) If o0000 or a null code is entered, the program already selected is started. : =0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Specifies a program number for the CNC and starts the program. If the program number is omitted, the CNC starts the executable program specified in the program number search function. If a complex condition check is required at cycle start, avoid starting a program using this function. Use the PMC data write function instead.
98
B61992E/02
4. FUNCTION SPECIFICATIONS
42)Function : D_reset Reset Calling format : short D_reset (char ch_no) Arguments : char ch_no Channel number (0 to 3) <numeric value> Return value : = 0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. Outline : Directs the CNC to reset the system. 43)Function : D_systemID Reads system ID. Calling format : short D_system ID (char ch_no, uchar
*name, uchar *revision)
Arguments
<numeric value>
Return value
Outline
CNC model name <character string> (A maximum of 32 characters. Terminate the model name with a null code.) uchar *revision Version <character string> (A maximum of eight characters. Terminate the version with a null code.) : =0 Normal = FFFF Communication error = FFF0 Sequence error Others See Appendix F. : Directs the CNC to read the system ID. Returns the CNC model name and DNC2 software version. This function indicates the type of CNC connected.
44)Function : D_initial Initializes communication port. Calling format : short D_initial (char ch_no) Arguments : char ch_no Channel number (0 to 3) <numeric value>
(sys_table)
Initialization parameter : =0 Normal = FFFF Initialization error = FFFE Parameter error : Initializes the specified communication port.
99
B61992E/02
This section describes a simple example in which the functions in the communication program library are used, using list 51. (1) Include the required files (5 and 6). D Enclose the include files required in the standard library of the compiler in < > and include files of this library in double quotation marks. (2) Initialize the communication port (14 to 20). D Communication parameters can be reset to values different from the initial values as shown in lines 14 and 15. (For initial values and reset values, see Appendix B.1.) D Call the initialization library and store the result in ans. (Line 16) D When the result of initialization is not normal, output a message (line 18) and terminate the program. (Line 19) (3) Download the NC program (22 to 34). D Call the download library and store the result in ans. (Line 22) Download the program with port number 0, download file name pr_file.dat, and program number 0001. D Display a message according to the result. (Lines 23 to 34)
100
B61992E/02
LIST 51
1 2 3 4 5 6 7 8 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : /****************************************/ /* Example of coding */ /****************************************/ #include<stdio.h> #includednc2def.h main( ); main( ) { short ans; sys_table.port [0].speed = 4; /* systable.port [0].parity = 1; /* ans = D_initial (0); /* if (ans ! = 0) { printf (Initialization error \n) exit(l); } Set communication speed to 9600 bps */ No parity bit is set */ Initialize port 0 */ /* Is initialization successful? */ /* Initialization error */ /* Return to DOS */
ans = D_download (0, pr_file.dat, O0001);/*Download */ if (ans == 0) { /* Check the result */ printf (Download termination \n); /* Normal termination */ } else if (ans == 0xfffe) { printf (No file is found \n) /* File not found */ exit(l); } else if (ans == 0xfffd) { printf (The file cannot be read \n)/* File read error */ exit(l); } else { printf (Download failure \n) /* Communication error, other errors */ exit(l); } return 0; }
101
6. ERROR CODES
B61992E/02
ERROR CODES
102
B61992E/02
6. ERROR CODES
6.1
VALUES RETURNED BY FUNCTIONS
The return values 0FFFFh to 0FFCFh (absolute values of 1 to 49) output from functions in this library indicate errors detected within the library. The return values of 0FFCEh or less (absolute values of 50 or greater) indicate errors output when a negative response is sent from the CNC. For details of the error codes of this library, see Appendix J.
6.2
COMMUNICATION ERROR INFORMATION
If values returned from functions indicate communication error (0FFFFh), the details of the cause are stored in the variable dnc_link_error. Refer to it an necessary. The following values are returned to short dnc link error from the functions:
short dnc_link_error
1 2 3 4 5 11 12 13 14 21
: : : : : : : : : :
Timeout Retry over Busy (during text transmission, a response to ENQ was NAK) Protocol error (when receiving text, other data was received when waiting for ENQ) Warning (when receiving text, a timeout occurred when waiting for EOT. However, text is normally received.) Line disconnected Overrun error Framing error Parity error ISO code parity error
The communication error having code 1 occurs when the receivedisabled state occurs for each retry within the timeout period set for receiving or sending each character. As soon as this error is detected, processing is discontinued. This does not apply while waiting for a download request (D_download_wait) or while waiting for a command from the CNC. In these cases the system keeps waiting for a command even though a timeout occurs. The communication error having code 2 occurs when a retry is made in the data link layer level for any cause other than timeout and the defined number of retries is repeated. As soon as this error is detected, processing is stopped. The communication errors having codes 3 to 9 are data link layer protocol errors. As soon as these errors occur, processing is stopped. The communication errors having codes 10 or more are communication line errors. As soon as these errors are detected, processing is stopped.
103
B61992E/02
When an error occurs in this library, the error, the time it occurred, and other information can be saved in a file. A function called the logging function, is provided for saving this information. There are the following four types of logs depending on the cause of the error:sequence error log, protocol error log, phase trace log, and communication error log. To use the logging function, set the appropriate log ON/OFF switch of system parameter to 1 : ON. This logging function is used to check programs. Normally, do not use it. Since phase trace logs are taken at all times, the file inputoutput time increases, affecting the timeout period. Therefore, use the logging function carefully.
104
B61992E/02
7.1
DETAILS OF THE ERROR LOG FILE
(1) Sequence error log When a command is sent to the NC and a response to the command is not the normal sequence, the sequence data is logged. The log file name is <sequence.log> and its contents are as shown below. When the appropriate log switch of the system parameter table is not ON, logging is not performed. Sequence error log file (file name : sequence.log)
short short Month Day Hours Minutes Seconds Send command character string Error response character string char [ 2] Stored as an ASCII character string. char [ 2] char [ 2] char [ 2] char [ 2] char [ 4] char [ 4]
LOGHD
LOGSEQ
(2) Protocol error log In the data link layer, when protocol does not terminate normally during text send/receive, the error is logged. The log file name is <protocol.log> and its contents are as shown below. When the appropriate log switch of the system parameter table is not ON, logging is not performed. Protocol error log file (file name : protocol.log)
Current pointer Buffer size Log data short short Month Day Hours Minutes Seconds Communication type (*1) char [ 2] char [ 2] char [ 2] char [ 2] char [ 2] char [ 1] char [ 1] char [ 1] char [ 1] char [ 2] *1 Communication type 1: Send 2: Receive 3: Clear
LOGHD
LOGPROTC
105
B61992E/02
(3) Phase trace log Phase transition is traced during text send/receive in the data link layer and the phase number is logged. The log file name is <phtrace.log> and its contents are as shown below. When the appropriate log switch of the system parameter table is not ON, logging is not performed. Phase trace log file (file name : phtrace.log)
Current pointer Buffer size Log data short short Communication type (*1) Transferor phase number Event number Transferee phase number char [ 1] char [ 1] char [ 1] char [ 1]
LOGTRACE
*1 Communication type 1: Send 2: Receive
LOGHD
(4) Communication error log When an error such as an overrun error occurs while sending or receiving one character, or when a send/receive timeout occurs, the error is logged. The log file name is <comerror.log> and its contents are as shown below. When the appropriate log switch of the system parameter table is not ON, logging is not performed. Communication error log file (file name : comerror.log)
Current pointer Buffer size Log data short short Month Day Hours Minutes Seconds Communication type (*1) char [ 2] char [ 2] char [ 2] char [ 2] char [ 2] char [ 1] char [ 1] char [ 2] *2 Error type 1 : Timeout 11 : Line disconnected 12 : Overrun 13 : Framing error 14 : Parity error 21 : ISO code parity error *1 Communication type 1: Send 2: Receive 3: Clear
LOGHD
LOGCOM
106
B61992E/02
7.2
SIMPLE ERROR LOG BROWSING FUNCTION
The command <log.exe> simplifies the browsing of the contents of each log file. A simple help message is displayed by entering C>log ?. The method for browsing each log file is described below. (1) Sequence error log The information shown below is displayed by entering C>log seq, enabling sequence error logs to be browsed.
===== Log file dump [sequence.log] ===== File pointer : 40 [ 3] Data byte length [next number] Log buff size : 2048(bype) File size number mon day [ 1] 04/10 [ 2] 04/10 [ 3] Date Number time 20:24:53 20:26:02 Time send recv <PRPM> <M NR> <PTPA> <T BD> Send command character string Error response character string
(2) Protocol error log The information shown below is displayed by entering C>log pro, enabling protocol error logs to be browsed.
===== Log file dump [protocol.log] ===== File pointer : 68 [ 5] Data byte length [next number] Log buff size : 2048(bype) File size number mon day [ 1] 4/13 [ 2] 4/13 [ 3] 4/19 [ 4] 4/19 [ 5] Date Number time type pha evt err 17:50:24 <2: 5 2> < 5> 17:50:48 <2: 5 2> < 5> 14:54:24 <3: 0 0> < 0> 14:54:31 <1: 1 1> <11> Time Error number Event number Phase number Communication type [1: Send, 2: Receive, 3: Intialization]
107
B61992E/02
(3) Phase trace log The information shown below is displayed by entering C>log pha, enabling phase trace logs to be browsed.
===== Log file dump [Phtrace.log] ===== File pointer : 20 [ 5] Data byte length [next number] Log buff size : 2048(bype) File size number type s__ph event d__ph [ 1] 1: 1 1 > 2 [ 2] 1: 2 8 > 2 [ 3] 1: 2 8 > 2 [ 4] 1: 2 8 > 2 [ 5] Transferee phase number Number Event number Transferrer phase number Communication type [1: Send, 2: Receive]
(4) Communication error log The information shown below is displayed by entering C>log com, enabling communication error logs to be browsed.
===== Log file dump [comerror.log] ===== File pointer : 46 [ 4] Data byte length [next number] Log buff size : 2048(bype) File size number mon day [ 1] 4/10 [ 2] 4/10 [ 3] 4/19 [ 4] Date Number time type error 20:24:53 <1: 11> 20:26:02 <2: 21> 14:54:31 <1: 11> Time Error type (*1) Communication type [1: Send, 2: Receive, 3: Intialization] *1 Error type 1 11 12 13 14 21 : : : : : : Timeout Line disconnected Overrun Framing error Parity error ISO code parity error
108
APPENDIX
B61992E/02
APPENDIX
A. CONNECTOR SPECIFICATIONS
CONNECTOR SPECIFICATIONS
111
A. CONNECTOR SPECIFICATIONS
APPENDIX
B61992E/02
A.1
FANUC Series 0 (A02B0098J055)
If a synchronization reception clock is not necessary, the M77 can also be used for the RS-422 interface. To use the M77 for the RS-422 interface, do not wire TT (*TT) and RT (*RT). (b) M73 (in the CNC cabinet)
MR-20RMD (male) 14 15 16 10 17 11 18 19 20 RT 12 *RT 13 *RR 7 SG RR 6 *RS *RD 5 RS RD 4 *TR CS 8 *CS 9 *TT 3 TR TT 2 *SD H20.F Cable 3 Host computer 1 SD
112
B61992E/02
APPENDIX
A. CONNECTOR SPECIFICATIONS
A.2
FANUC Series 15A
113
A. CONNECTOR SPECIFICATIONS
APPENDIX
B61992E/02
A.3
FANUC Series 15B AND Series 16/18
(DBM25S)
14 15 16 17 18 19 20 ER 21 22 29 24 25
Host computer
SD RD RS CS ER DR CD SG FG
NOTE When CS is not used, connect CS and RS. When the IBM PCAT is used as the host computer, connect CS and RS in the CNC. When DR is not used, connect DR and ER. Always connect CD and ER.
114
B61992E/02
APPENDIX
A. CONNECTOR SPECIFICATIONS
(DBM25S)
20 21 22 *SD 23 24 *RD 25 *RS 26 *RT 27 *CS 28 29 *DM 30 *TR 31 32 33 34 35 *TT 36 37
10 (+24V)
Host computer
SD RD RS CS TR DM TT RT SG FG
115
B. PARAMETERS
APPENDIX
B61992E/02
PARAMETERS
The following parameters are sent to the DNC2 system only when the CNC is turned on. After changing any of the parameters, turn off and on again the power switch of the CNC.
116
B61992E/02
APPENDIX
B. PARAMETERS
B.1
FANUC Series 0
(UPPER ROW: Series 0TC, LOWER ROW: Series 0MC)
#7 0051 #6 #5 ECLK ECLK #4 #3 NCKCD RSASCI NCKCD RSASCI #2 #1 PARTY PARTY #0 STP2 STP2
ECLK : Reception clock source (for RS-422 only) 0 : Internal 1 : External When ECLK is on, the M77 connector is used. NCKCD : Whether to check CD (signal quality detection) in the RS-232-C 0 : Check 1 : No check RSASCI : Transmission code 0 : ISO code 1 : ASCII code NOTE With the Series 0, use ASCII code. PARTY : Parity 0 : No parity check 1 : Even parity STP2 : Number of stop bits 0: 1 1: 2 NOTE The data length (in bits) is determined according to what is set in RSASCI and PARTY. If both RSASCI and PARTY are 1, the data is 7 bits long. Otherwise, it is 8 bits long.
#7 0055
#6
#5
#4
#3 RS42 RS42
#2
#1
#0
RS42 : Interface used between the host and remote buffers 0 : RS-232-C interface 1 : RS-422 interface
117
B. PARAMETERS
APPENDIX
B61992E/02
0251 0251
Baud rate
Range of data : 1 to 12 (RS-232-C) or 5 to 15 (RS-422) If a value out of the valid range is specified, either the maximum or minimum value is assumed. The default value is 10 (4800 bps).
Value
1 2 3 4 5
Baud rate
50 100 110 150 200
Value
6 7 8 9 10
Baud rate
300 600 1200 2400 4800
Value
11 12 13 14 15
Baud rate
9600 19200 38400 76800 86400
0365 0320
Range of data : 1 to 60 (seconds) If a value out of the valid range is specified, either 1 or 60 is assumed. The default value is 5 (seconds).
0366 0321
Range of data : 1 to 60 (seconds) If a value out of the valid range is specified, either 1 or 60 is assumed. The default value is 5 (seconds).
0368 0323
Maximum number of times that a prompt is made regarding an invalid transmission protocol or no-response in the data link layer
Range of data : 1 to 10 (times) If a value out of the valid range is specified, either 1 or 10 is assumed. The default value is 5 (times).
0369 0324
Range of data : 1 to 10 (times) If a value out of the valid range is specified, either 1 or 10 is assumed. The default value is 3 (times).
0370 0325
Maximum number of characters that can be received after transmission has been stopped (CS off)
Range of data : 10 to 256 (characters) If a value out of the valid range is specified, either 10 or 256 is assumed. The default is 256 characters. Since the maximum value that can be set in this parameter is 255, when 256 is to be specified, set 0.
118
B61992E/02
APPENDIX
B. PARAMETERS
#7 0396
#6
#5
#4
#3
ERCODE ERCODE
#2 NCKER NCKER
#1
#0
NCKBCC NCKBCC
NCKBCC : Whether to check the BCC value 0 : Check 1 : No check; the BCC cannot be omitted. NCKER : Whether to check the ER (RS-232-C)/TR (RS-422) signal 0 : Check 1 : No check ERCODE : Error code for negative response 1 : Negative response is indicated by an error code consisting of four hexadecimal digits. 0 : Negative response is not indicated by an error code. When using the FANUC-created DNC2 communication program library in the host computer, set this parameter to 1.
0490 0490 Maximum datagram (data section) length
Range of data : 80 to 256 (characters) If a value out of the valid range is specified, either 80 or 256 is assumed. The default value is 256 (characters). This parameter defines a maximum packet length for DNC2 transmission. The maximum length of a packet is the length specified by parameter 0490 plus nine characters including the first two characters, four command characters, and the last three characters.
Packet length DLF STX Command 4 bytes Data section 80 to 256 bytes DLE ETX 3 bytes BCC
2 bytes
119
B. PARAMETERS
APPENDIX
B61992E/02
B.2
Series 15
0000 #7 #6 #5 #4 #3 #2 ISP #1 #0
(Power must be turned off and on again.) ISP : Transmission code 0 : ISO code 1 : ASCII code
0020 0021 0022 0023 Interface number for the foreground input device Interface number for the foreground output device Interface number for the background input device Interface number for the background output device
(Power must be turned off and on again.) RB422 : Interface used between the host and remote buffers 0 : RS-232-C 1 : RS-422 PARTY : Parity 0 : Even parity 1 : No parity check NCKCD : Whether to check CD (signal quality detection) in the RS-232-C 0 : Check 1 : No check NOTE The data length (in bits) is determined according to what is set in RSASCI and PARTY. If both RSASCI and PARTY are 1, the data is 7 bits long. Otherwise, it is 8 bits long.
5070
Minimum baud rate that causes the reception lock pulse to be supplied from the host
(Power must be turned off and on again.) Range of data : 5 to 15 If the baud rate is grater than or equal to the value specified in this parameter, the reception clock pulse is supplied from the host. The parameter is valid for the RS-422 interface only.
120
B61992E/02
APPENDIX
B. PARAMETERS
5072 5082
(Power must be turned off and on again.) Range of data : 1 to 2 1 : 1 stop bit 2 : 2 stop bits If the value set in the parameter is not 2, 1 is assumed.
5073 5083 RS-422 baud rate RS-232-C baud rate
(Power must be turned off and on again.) Range of data : 1 to 12 (RS-232-C) or 5 to 15 (RS-422) If a value out of the valid range is specified, either the maximum or minimum value is assumed. The default value is 10 (4800 bps).
Value
1 2 3 4 5
Baud rate
50 100 110 150 200
Value
6 7 8 9 10
Baud rate
300 600 1200 2400 4800
Value
11 12 13 14 15
Baud rate
9600 19200 38400 76800 86400
5050
Range of data : 1 to 60 (seconds) If a value out of the valid range is specified, either 1 or 60 is assumed. The default value is 5 (seconds).
5051 Timeout value for the EOT signal timer
Range of data : 1 to 60 (seconds) If a value out of the valid range is specified, either 1 or 60 is assumed. The default value is 5 (seconds).
5052
Maximum number of times that a prompt is made regarding an invalid transmission protocol or no-response in the data link layer
Range of data : 1 to 10 (times) If a value out of the valid range is specified, either 1 or 10 is assumed. The default value is 5 (times).
5053
Range of data : 1 to 10 (times) If a value out of the valid range is specified, either 1 or 10 is assumed. The default value is 3 (times).
121
B. PARAMETERS
APPENDIX
B61992E/02
5054
Maximum number of characters that can be received after transmission has been stopped (CS off)
Range of data : 10 to 256 (characters) If a value out of the valid range is specified, either 10 or 256 is assumed. The default value is 256 (characters).
5055 Maximum datagram (data section) length
Range of data : 80 to 256 (characters) If a value out of the valid range is specified, either 80 or 256 is assumed. The default value is 256 (characters). This parameter defines a maximum packet length for DNC2 transmission. The maximum length of a packet is the length specified by parameter 5055 plus nine characters including the first two characters, four command characters, and the last three characters.
Packet length DLF STX Command 4 bytes Data section 80 to 256 bytes DLE ETX 3 bytes BCC
2 bytes
#7 5056
#6
#5
#4 PCDAT
#3
ERCODE
#2 NCKER
#1
#0
NCKBCC
NCKBCC : Whether to check the BCC value 0 : Check 1 : No check; the BCC cannot be omitted. NCKER : Whether to check the ER (RS-232-C)/TR (RS-422) signal 0 : Check 1 : No check ERCODE : Error code for negative response 0 : Negative response is not indicated by an error code. 1 : Negative response is indicated by an error code consisting of four hexadecimal digits. When using the FANUC-created DNC2 communication program library in the host computer, set this parameter to 1. PCDAT : For PMCNA, PMC data is read and written with: 0 : Address specification type. 1 : Data number specification type. For PMCNB/NB2, the data number specification type is always used regardless of the setting of this parameter.
122
B61992E/02
APPENDIX
B. PARAMETERS
B.3
FANUC Series 16/18/21
The following parameters are transferred to the DNC2 system only when the CNC is turned on. Therefore, when these parameter values have been changed, the power to the CNC must be turned off, then back on.
0020
SB2 : The number of stop bits is: 0 : 1 bit. 1 : 2 bits. ASI : Code used for data input is: 0 : ISO code. 1 : ASCII code. NOTE Use ASCII code.
#7 0134
#6
#5 CLK
#4 NCD
#3
#2
#1 PRY
#0
PRY : The parity bit is: 0 : Not used. 1 : Used (even parity). NCD : The CD (signal quality detection) signal (RS232C only) is: 0 : Checked. 1 : Not checked. CLK : The baud rate clock (RS422 only) is: 0 : The internal clock. 1 : The external clock. NOTE The data bit length is determined depending on the RSASC and PARTY settings. If RSASC and PARTY are both set to 1, the 7bit length is used. In other cases, the 8bit length is used.
#7 0135
#6
#5
#4
#3 R42
#2
#1
#0
R42 : As the interface: 0 : The RS232C interface is used. 1 : The RS422 interface is used.
123
B. PARAMETERS
APPENDIX
B61992E/02
#7 0140
#6
#5
#4
#3 ECD
#2 NCE
#1
#0 BCC
BCC : The BCC value is: 0 : Checked. 1 : Not checked. (BCC itself cannot be omitted.) NCE : The ER (RS232C)/TR (RS422) signal is: 0 : Checked. 1 : Not checked. ECD : Error code for negative acknowledgment 0 : No error code is added to negative acknowledgment. 1 : A 4digit hexadecimal error code is added to negative acknowledgment. When using the DNC2 communication library, developed specifically by FANUC for the host computer, this parameter must always be set to 1.
0133 Baud rate
Valid data range : 1 to 12 (RS232C), 5 to 15 (RS422) If a value that falls outside the valid data range is specified, the maximum or minimum value is set. The default is 10. (4800 bps).
Value
1 2 3 4 5
Baud rate
50 100 110 150 200
Value
6 7 8 9 10
Baud rate
300 600 1200 2400 4800
Value
11 12 13 14 15
Baud rate
9600 19200 38400 76800 86400
0143
Timeout value of the timer used to check for a response from the host
Valid data range : 1 to 60 seconds If a value that falls outside the valid range is specified, 1 or 60 is assumed. The default is 5 seconds.
0144 Timeout value of the timer used to check for the EOT signal from the host
Valid data range : 1 to 60 seconds If a value that falls outside the valid range is specified, 1 or 60 is assumed. The default is 5 seconds.
0146 Maximum allowable number of times a demand is made in the case of invalid protocol or noresponse state in the data link layer
Valid data range : 1 to 10 If a value that falls outside the valid range is specified, 1 or 10 is assumed. The default is 5 times.
0147 Maximum allowable number of times a message is resent in response to NAK
Valid data range : 1 to 10 If a value that falls outside the valid range is specified, 1 or 10 is assumed. The default is 3 times.
124
B61992E/02
APPENDIX
B. PARAMETERS
0148
Maximum number of characters that can be received after send stop processing (CS off)
Valid data range : 10 to 255 characters If a value that falls outside the valid range is specified, 10 or 255 is assumed. The default is 256 characters.
0149 Maximum length of datagram (data section)
Valid data range : 80 to 256 characters If a value that falls outside the valid range is specified, 80 or 255 is assumed. The default is 256 characters. In DNC2 sending, the maximum packet length is defined by this parameter. The maximum packet length is the setting in [No. 0149] plus nine characters (the sum of the first two characters, the four characters in the command section, and the last three characters).
Packet length DLF STX Command 4 bytes Data section 80 to 256 bytes DLE ETX 3 bytes BCC
2 bytes
125
APPENDIX
B61992E/02
C
Event Matrix state
IDLE state 0 wait ENQ state (Host only) 1 wait DLE state (DLE0) T R A N S M I T T I N G wait F0G state 2 3
Trns req. A
send ENQ 2
Trns end B
Received ENQ C
send DLE0 Na, Nb, Nc=0 7
Received DLE D
ignore data 0 retry over Nb Nb 0 to wait 0 3 send ENQ 2 retry over Nb 0
Received 0 E
z same to D
Received 1 F
z same to D
Received NAK G
z same to D
Received ELSE H
z same to D
Time Out I
z same to D
z same to D
z same to D
z same to D 0
send ENQ 2
retry over Na 0
z same to E
to IDLE state 0
z same to E
z same to E
retry over Nb 1
z same to D
z same to D
z same to D
to DLE wait 5
evaluate after transmitting is completed 4 send ENQ 5 retry over 0 retry over 0 Na Na to wait 1 6 z same to C 4 retry over Nc 0 send EOT (normal) 0 z same to C z same to C 4 retry over Nc 0 z same to C
z same to C
send ENQ 5
z same to E
z same to C
z same to C Ta
A n
B m
Trns req. A
Trns end B
Received ENQ C
send DLE0 7 retry over Na 0 retry over Nb 0
Recv. DLE D
to STX wait 8 z same to C
Recv. STX E
z same to C
Recv. ETX F
z same to C
Recv. BCC G
Recv. EOT H
z same to C
Recv. ELSE I
z same to C
Time Out J
z same to C Ta
send DLE0 7
to DLE wait 9
z same to C
z same to C
z same to C
z same to C Ta
Regard as text
R E C E I V I N G
z same to C
z same to C
z same to C
z same to C
send DLE0 7
9 10 Regard as text
z same to C
to BCC wait 11
z same to C
z same to C
send DLE0 7
9 wait BCC state 11 BCC valid : send DLE1 to EOT wait 12 wait EOT state 12 send DLE1 12 retry over 0 z same to C z same to C
send DLE0 7
to IDLE Tb 0
126
B61992E/02
APPENDIX
D
Matrix state
IDLE state 0 3 T NB wait 1 M OK wait 2
1. PT**/LIPM type
Event Receive req. A
PT ** send M RT send 1 T BD send 0 T BD send 0 M RT wait 3 T BD send 0 R ** wait 4 T BD send 0 z same to B
Received PT**/LIPM B
M NR/ T NP send 0
Received T NB C
Recv. M OK E
Recv. M NR F
Recv. T NP G
Recv. T BD H
No operation 0
Recv. M RR I
Recv. M RT J
Recv. T FD K
Recv. else L
CNC reset M
Datalink error N
T BD send 0 R **/ DIPM send 1 T FD send 2 z same to B to IDLE 0 z same to B to IDLE 0 z same to B to IDLE 0 to IDLE 0 z same to B
T BD send 0 z same to B
z same to B T NB send 4
z same to B T NB send 4
z same to B
A n
B m
2. PR** type
Event Matrix state
IDLE state 0
Send req. A
PR ** send 2
PT**/LIPM
T NB C
R ** D
M OK
E
M NR
F
T NP G
T BD H
No operation 0
M RR I
M RT J
T FD K
else 0
CNC reset M
Datalink error N
B
M PR send 1 T BD send 0 M NR M NP send 0
R ** wait
M RR wait
T BD send 0
T NB wait
T BD send 0
z same to B
M OK wait
T BD send 0
z same to B
z same to B
127
APPENDIX
B61992E/02
3. T** type
Event Matrix state
IDLE state 0
Send Req. A
T ** send 2 R ** send 1
T ** B
M NR/ T NP send 0 T BD send 0
R ** C
M OK D
T BD send 0
M NR E
T NP F
T BD G
No operation 0
else H
T BD send 0 z same to B
CNC reset I
Datalink error J
M OK wait
to IDLE 0
to IDLE 0 z same to B
z same to B
to IDLE 0 to IDLE 0
R ** wait
T BD send 0
z same to B
4. M**/R** type
Event Matrix state
IDLE state 0
Send Req. A
R ** / M ** send 1
M ** /MCRM R **
M NR C
M NP D
T BD send
T BD E
No operation 0 to IDLE 0
else F
T BD send 0 z same to B
CNC reset G
Datalink error H
B
M OK send 0 T BD send 0 M NR M NP send 0
T BD send
No operation
0 normal to IDLE 0
0 normal to IDLE 0
0 T BD send 0 to IDLE 0
M OK wait
128
B61992E/02
APPENDIX
E. ALARM MESSAGES
ALARM MESSAGES
129
E. ALARM MESSAGES
APPENDIX
B61992E/02
E.1
Series 0
Code
BP/S 071 BP/S 073 BP/S 086
Description
A program specified to be deleted or uploaded was not found. There is a program with the same name as a program specified to be downloaded. Errors that disable communication (1) Parity error (2) Flaming error (3) Overrun error (4) CD (signal quality detection) low (5) DR/TR signal low
Remark
Note
NOTE Recovery from this error can be done by turning off and on again the ER/TR signal in the host computer or turning off the power to the CNC.
E.2
Series 15
Code
SR 960
Description
A communication error occurred on channel 1. a) The operator or the host computer discontinued transmission. b) Errors that disable communication (1) Parity error (2) Flaming error (3) Overrun error (4) CD (signal quality detection) low (5) DR/TR signal low Same as above
Remark
Note
SR 970
NOTE Recovery from this error can be done by turning off and on again the ER/TR signal in the host computer or turning off the power to the CNC.
130
B61992E/02
APPENDIX
Meaning
Command syntax error Command exchange sequence error Negative program number other than =9999 Program number format error Specified axis has not been mounted. Too many data items were requested. No data item can be read. Invalid axis command A request is being processed. A request is being canceled. The CNC makes an interrupt request. Timeout Channel busy Data remaining Incorrect file name Open request rejected Edit request rejected CNC busy A specified file was not found. A warning occurred during selection of a file. Start request rejected Not in auto mode File selection request rejected File deletion request rejected File protected File deletion request rejected, or warning occurred during file deletion. Editing request rejected Directory not found Directory read request rejected Invalid directory or file name Window library error Command not executable Invalid function code Invalid major data classification Invalid medium data classification Invalid minor data classification Invalid data length Invalid data type Invalid data Miscellaneous command errors No option
Remark
T_ER M_BD M_NR N_NR M_NR M_NR M_NR M_NR T_BD T_BD T_BD M_NP M_NP M_NP T_BD M_NP M_NP M_NP M_NR T_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP T_NP T_NP T_BD M_NP M_NP T_BD M_NR M_NR M_NR T_BD T_BD M_NP M_NP M_NP
131
APPENDIX
B61992E/02
Meaning
Remark
M_NR M_NP M_NP M_NP T_NP M_NP T_BD T_BD M_NP M_NP M_NP T_BD M_NP M_IL M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NR M_NP M_NP M_NP M_NP M_NP M_NR T_BD M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP M_NP
132
B61992E/02
APPENDIX
G. MAINTENANCE
MAINTENANCE
133
G. MAINTENANCE
APPENDIX
B61992E/02
G.1
DESCRIPTIONS OF INDICATION BY LEDS (Series 15A)
The arrangement of the LEDs is as shown on the right (the door open). The following table lists the meanings of the LED indications.
0 1 f f f f 3 2
G.1.1
Blinking LED Indications
When the LEDs are blinking or remain off, they indicate system errors. The system errors can normally be eliminated by turning the power off and on again. In some cases, error recovery requires hardware replacement.
Table G.1.1 Errors Indicated by Blinking LEDs No.
1 2 3 4 5 6 7 8 9
LED indication
f f F f f F F F f f F f f F F F f f f f f f f f f f f F f F f F f F F f
Meaning
An NMI occurred in a module other than the remote buffer. RAM parity error F-BUS error ROM parity error Invalid interrupt An interrupt occurred when should not. Error on the ID of a remote buffer PCB RAM collation error Not used DNC2 software error
Code
F E D C B A 9 8 7
Message
No Yes Yes No Yes No No No
If the LEDs are on or off with one of the patterns listed above, check the information described below using the CNC diagnostic menu and report it to the maintenance personnel: Four words at addresses 46003FEF to 46003FEB (selected from among addresses 46003F80H [46003F00H] and on) displayed on the screen using INP-NO; enclosed in brackets are the addresses that can be displayed on a 14-inch CRT screen.
134
B61992E/02
APPENDIX
G. MAINTENANCE
G.1.2
Nonblinking LED Indications
When the LEDs light steadily or remain off, they indicate the state (not abnormal state) of the remote buffer.
Table G.1.2 LED Indications and Their Meanings No.
1 2 3
LED indication
f f f F F f f f F F f F F f f f f f F F F F F F F f F f F f F f
Meaning
The remote buffer CPU is at halt, immediately after power is applied. CIRR#15=1 wait; Common Resource Irt. request awaited CIRR#15=0 wait after the remote buffer SFT has been initialized CNCs PWN#2=1 wait after the remote buffer module has been initialized; for all modules, completion of MDL setting awaited. CIRR#15=1 wait; completion of IPL awaited CIRR#15=0 wait after remote buffers PWN#3 = 1; for all modules, completion of MDL setting awaited Wait for a request (command) from the CNC DNC2 software is ready.
Code
F 1 2
Message
5 6 7 8
4 5 6 7
135
G. MAINTENANCE
APPENDIX
B61992E/02
G.2
SYSTEM ERROR MESSAGES (Series 15A)
Incase of Series 15A, the following table lists the system error messages related to the remote buffer.
Table G.2 LED Indications and Their Meanings LED Code indication
F f f f
Meaning
Message
RAM parity error occurred. LH ... L : Even address H : Odd address aaaaa Address (next command) detected when the error occurred F-BUS error occurred. aaaaa Address (next command) detected when the error occurred Invalid interrupt occurred. 000n... Type of the interrupt aaaaa Address (next command) detected when the error occurred
f F
f f
f f
f F
136
B61992E/02
APPENDIX
G. MAINTENANCE
G.3
LED INDICATORS (Series 15B)
The Series 15B has LEDs arranged as shown in the figure on the right (as viewed with the door open). LEDs 3 and 4 are used for DNC2. Immediately after the power is turned on, LEDs 3 and 4 both light while the DNC2 CPU is stopped; then, these LEDs normally go off.
OPT1
1 STATUS
The following LED states indicate system errors. Such errors cannot be recovered unless the power is turned off then back on. Some errors require hardware replacement.
No.
1
Meaning
NMI is generated in a module other than DNC2. RAM parity error
Internal code 8F 8E 8D 8C 89 87 88 8A 8B
Message
Not provided Provided
Blink
On
Blink
Blink
Fbus error
Provided
Blink
Off
Provided
Off
Blink
Provided
Blink Off
Off Blink
This state may indicate the following problems. To determine the problem, see the message displayed on the CRT screen. a) DNC2 printed circuit board failure <<Applicable to version B and later printed circuit boards>> b) Invalid interrupt (An illegal interrupt is generated.) c) DNC2 software error
Provided
For details of the messages, see Appendix G.4. If any of the above LED states is observed, record the four words (46800004 to 4680000B) on from the CNC diagnostic screen, and contact FANUC. NOTE DNC2 RAM ranges from 800000H to 8FFFFFH. Do not try to display 46900000 and subsequent memory locations. Otherwise, a system error occurs.
137
G. MAINTENANCE
APPENDIX
B61992E/02
G.4
SYSTEM ERROR MESSAGES (Series 15B)
With the Series 15B, the system error messages related to DNC2 are explained below.
Internal code
8E
Message
RAM PARITY HL (00aaaaaa)
Meaning
RAM parity error occurred. LH... L : Evennumbered address H : Oddnumbered address aaaaaa Execution address when the error occurred (next instruction) Fbus error occurred. aaaaaa...Execution address when the error occurred (next instruction) ROM parity error occurred. Invalid interrupt was generated. 00nn... Interrupt type aaaaaa...Execution address when the error occurred cccc... Error code Problem occurred in DNC2 printed circuit board version B or later. diimage...Status of 7000n4h in com munication space RAM check error occurred. seg... Error segment addr... Error address DNC2 software error occurred. id... Error type ee... Error internal code aaaa... Execution address when the error occurred (next instruc tion)
8D
8C 8B
DNC2 ROM PARITY ERROR UNDEF IRT 00nn (00aaaaaa) ERRCODE : cccc
8A
89
DNC2 RAM TEST ERROR (seg : addr) DNC2 SOFT ERROR (id : ee : aaaa)
88 87
138
B61992E/02
APPENDIX
G. MAINTENANCE
G.5
TROUBLESHOOTING G.5.1
MAP Log Messages
G.5.1.1
Log messages
Datagram communication is always recorded in the log buffer area. The most recent 500 characters recorded in the log area are displayed on the CNC MAP log message screen. Figure G.5.1.1 shows a log message display. This function is supported only by the Series 15.
G.5.1.2
Log message format
There are three log message formats. Each log message is separated by ASCII character | . The meaning of the messages in each format is as follows: 1) <CCCC> : CCCC Command section of datagram 2) <NNNN0Xeeee>: NNNN Negative response (datagram command section) eeee Error code (See Appendix F.) 3) <Ennn0Xssdd>: Ennn Data link layer error code See Table G.3.1.2. ssdd Details of the error ss : Status of the data link layer matrix dd : Error data
Table G.5.1.2 Error codes Error code
E002
Explanation
Communication line disconnection
E009
E00C
Invalid TCC(*1)
Retry limit reached due to reception of invalid character Retry limit reached due to NAK or DLE0 Retry limit reached due to checksum error
E010
E011 E014
B C
Wait for BCC Retry limit reached due to reception of invalid character during wait for EOT
139
G. MAINTENANCE
APPENDIX
B61992E/02
G.5.2
Troubleshooting
No.
1.
Symptom
Commands cannot start operation.
Check procedure
Troubleshoot according to the following procedure. A prerequisite for normal operation is that the following parame- a) Check whether the LED indication pattern is No. 8 described in G.1.2. ters have been set correctly. b) Check the MAP log message. (1) Baud rate If no log message is displayed, check whether: (2) Stop bits (1 or 2) (1) Parameters have been set. (3) External clock baud rate (2) The power was turned off and on again after the parame(4) Parity (no parity or even parity) ters were changed. (5) Transmission code (ASCII/ISO) (3) The communication is in a satisfactory condition. (6) Interface (RS-232-C/RS-422) (7) Maximum datagram length If a log message is displayed, perform the following: (8) Interface number (1) Eliminate the cause of error Ennnn0Xssdd (if displayed). Series 0 : I/O=10 (2) If a command exchange sequence has not been comSeries 15: No. 20, 21, 22, 23=4 pleted, check which device is the requester or the responder. (Note) If a parameter value is out of the valid range, the default value is used. Check the default value for each device. Operation was discontinued halfway through. Alarm SR960/070 (Series 15) or BP/S86 (Series 0/16/18/21) occurred. Perform the same check as No.1 except for checking of parameters. Check the following: a) Communication cable and connectors b) Flaming or overrun error (1) Baud rate mismatch (2) Improper stop bit setting (3) CD (signal quality detection) is off (RS-232-C only).
2. 3.
140
B61992E/02
APPENDIX
H
Group p (gg) 1 2
G code Machining center Lathe (system B) G00 G01 G02 G03 G33 G17 G18 G19 G90 G91 G22 G23 G00 G01 G02 G03 G33 G77 G78 G79 G97 G96 G90 G91 G22 G23 G94 G95 G20 G21 G40 G41 G42 G83.1 G84.1 G86.1 G80 G81 G82 G83 G84 G85 G86 G87 G88 G89
Group p (gg) 10
G code Machining center Lathe (system B) G98 G99 G50 G51 G98 G99 G66 G66.1 G67 G68 G69 G54 G55 G56 G57 G58 G59 G61 G62 G64 G18 G17 G19 G50.1 G51.1
11
12
13
14
15
16 7 0 1 2 17 8 G43 G44 G49 G73 G74 G76 G80 G81 G82 G83 G84 G85 G86 G87 G88 G89 1 2 0 10 11 12 0 1 2 3 4 5 6 7 8 9 Note) )
18
G50.1 G51.1
With lathe machines, the same G code is output f the for corresponding G codes of individual systems. systems
141
APPENDIX
B61992E/02
The following diagram shows the initial values and other valid values for the communication parameters such as communication speed, parity, and timeout in the system parameter table <sys_table>. The initial values are enclosed in braces. The parameter settings described here must coincide with those in the CNC.
COMPARAM
Communication interface Communication speed Data length Parity Stop bits Code [ 1]: RS-232C
SYSTBL sys_table
Retry counter [times] Communication parameters for port 0 Communication parameters for port 1 Communication parameters for port 2 Communication parameters for port 3 Maximum text data length Sequence error log EOT retry counter [times] NAK retry counter [times] Timeout value [seconds] EOT timeout value [seconds] ENQ noresponse time [s]
[256] bytes
LOGDEF
Log on/off switch Log buffer size [ 0]: Off, 1: On [2048] bytes
NOTE In the communication library provided by FANUC, the maximum transmission speed is 9600 bps.
142
B61992E/02
APPENDIX
typedef struct { COMPARAM port[4]; short len; LOGDEF seqlog; LOGDEF prolog; LOGDEF phalog; LOGDEF comlog; } SYSTBL; typedef struct { char type; char speed; char len; char parity; char stop; char code; short retry; short eotrty; short nakrty; short tmout; short eotout; short enqout; } COMPARAM; typedef short short LOGDEF; struct sw; size; {
143
J. ERROR CODES
APPENDIX
B61992E/02
ERROR CODES
Name
Communication error File open error File read error File write error Sequence error Error upon reception of negative acknowledgment Abnormal number
Description
Error related to communication. A specified file was not found. A specified file cannot be read from, for example, because the disk is damaged. A specified file cannot be written to, for example, because there is no free space. A received command has not been defined in the protocol. When M_NR was received from the CNC, there was no error number, or the error number was abnormal. When M_NP was received from the CNC, there was no error number, or the error number was abnormal. When T_NP was received from the CNC, there was no error number, or the error number was abnormal. When T_BD was received from the CNC, there was no error number, or the error number was abnormal. When T_FD was received from the CNC, there was no error number, or the error number was abnormal. When M_ER was received from the CNC, there was no error number, or the error number was abnormal. When M_IL was received from the CNC, there was no error number, or the error number was abnormal. Syntax error of datagram received from the CNC
(2) Error numbers 0FFCFh and on (absolute values 50 and on) See descriptions on error codes for negative response in Appendix F.
144
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
DEMONSTRATION PROGRAM
145
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.1
OUTLINE OF FUNCTIONS
This demonstration program is supplied as a sample program of the communication library. This program uses several communication library functions (the downloading, program deletion, and PMC data read/write functions) to perform simple schedule operation in memory mode. Since the program requires the Series 0MC and a special ladder, merely executing the program on the supplied floppy disk does not allow functions 4, 5, 6, 8, and 9 in the command list to be performed correctly.
146
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
K.2
PREPARATION K.2.1
Files
Copy the following files and the communication program library to the directory where you are going to compile the program.
No.
1 2 3 4 5 6 7 8 9 10 11
File
DEMO_MAN.C D2_DEMO.C D2_UTL98.C D2_UTIBM.C D2DTGLB.C D2DTEXT.H D2_DEMO.H D2_GLB.H D2_PRT.H DNC2DEF.H DNC2SYS.CFG
Outline of function
Main routine of the demonstration program Subfunctions of the demonstration program Machine-dependent utility routines (for NEC PC-9801) in the demonstration program Machine-dependent utility routines (for IBN PC) in the demonstration program Message tables for the demonstration program Header file (external message table declarations) for the demonstration program Header file (constant declarations) for the demonstration program Header file (function prototype declarations) for the demonstration program Header file (external function definitions) for the demonstration program Header file (communication package functions and type declarations) for the demonstration program File containing communication parameter settings
K.2.2
Compiling and Linking Programs
(1) Preparation Set up environment variables while referring to setting of environment variables described in III3.3. (2) Compiling and linking The communication program library contains makefiles for MAKE.EXE supplied together with the MS-C compiler. Compile your program using a makefile designed for your computer. Makefile for IBM PC : IBM_DEMO.MAK Makefile for NEC PC-98 : 98_DEMO.MAK Makefile for Fujitsu FMR : FMR_DEMO.MAK For the IBM PC, enter: C>MAKE IBM_DEMO.MAK An executable file will be generated automatically. The executable file names are: DEMOIBM.EXE for IBM PC DEMO98.EXE for NEC PC-98 DEMOFMR.EXE for Fujitsu FMR
147
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.2.3
Setting the Communication Parameters
When the demonstration program is activated, it automatically sets the communication parameters as defined in DNC2SYS.CFG. The user can change the communication parameter settings in DNC2SYS.CFG using a text editor. Any information other than parameter settings in DNC2SYS.CFG may not be changed, however. Be careful especially on the character strings, such as HspeedI, in the beginning. Changing them may hamper normal operation. The details of the contents of the file are as follows: (1) How to set the DNC2 system communication parameters port=0 : Indicates that the following settings belong to port 0. To generate the parameters for port 1, duplicate all information from Hport = ...I to HEOT timeout timeI. type=1 : Communication interface (RS-232-C) cannot be changed. speed=3 : Specifies communication speed by number. 1 : 1200bps 2 : 2400bps 3 : 4800bps 4 : 9600bps Number 1 means a data signal speed of 1200bps. Select a number from among those listed above that meets your data communication requirements. char=1 : Specifies the length of a data character. 1 : 7 bits 2 : 8 bits Number 1 means the data character is 7 bits long. Select number 1 or 2 whichever meets your requirements. parity=2 : Specifies parity by number. 1 : None 2 : Even Number 1 means no parity bit is used. Number 2 specifies even parity. Select number 1 or 2 whichever meets your requirements. stop bit=1 : Specifies the number of stop bits by number 1 : 1 bit 2 : 2 bits Number 1 means one bit is used to indicate the end of a transmitted character. Select number 1 or 2 whichever meets your requirements. code=1 : Specifies a character coding system used by the NC equipment. 1 : ASCII 2 : ISO Number 1 means ASCII. Select number 1 or 2 whichever meets your requirements. EOT retry count=5 : Specifies the EOT retry count by value. A value of 0 means retry is repeated infinitely. NAK retry count=3 : Specifies the NAK retry count by value. A value of 0 means retry is repeated infinitely. retry count=5 : Specifies the retry count by value. A value of 0 means retry is repeated infinitely.
148
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
: Specifies timeout interval (seconds) by value. A value of 0 means timeout will not occur. : Specifies the EOT timeout (seconds) by value. A value of 0 means timeout will not occur.
(2) How to set the maximum text data length for the data link layer Text max lenth=256 : Specifies the maximum text data length for the data link layer by value (80 to 256). (3) How to set up log conditions To change log conditions, modify values set in the log setting section. log sequence error : Sequence error log See the descriptions below for how to set the parameters. log protocol error : Protocol error log See the descriptions below for how to set the parameters. log phase trace : Phase trace log See the descriptions below for how to set the parameters. log communication error : Communication error log See the descriptions below for how to set the parameters. switch=0 : Specifies by number whether to turn the log switch on or off. 0 : Not logging 1 : Logging Number 0 disables logging. Number 1 enables logging. This is an option for program debugging. It should not be used for other purposes. buff size=2048 : Specifies the maximum log file size in bytes.
149
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.3
OVERVIEW OF OPERATIONS K.3.1
Starting and Exiting the Demonstration Program
After making sure that the executable file containing the demonstration program (DEMOIBM.EXE or DEMO98.EXE) and the communication parameter file (DNC2SYS.CFG) are on the current directory, activate the executable file. Example)
C>DEMOIBM
After a while, the menu appears and command entry is enabled. To exit the demonstration program, select 10 : End on the command entry menu. If machining is in progress, press the ESC key to display the menu, and select 5 : Stop to stop machining. Then, select 10 : End.
K.3.2
Commands
No.
1 2 3 4 5 6 7 8 9 10
Command
Set new program Edit program Delete program Start Stop Continue Upload Read PMC data Write PMC data End
Summary
Registers a program. Makes changes regarding a registered program. Deletes a registered program. Starts machining. Stops machining. Resumes machining Uploads a program. Reads PMC data. Writes PMC data. Ends demonstration.
Remark
Invalid during machining Invalid during machining Invalid during machining
150
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
K.3.3
Operating Procedure
(1) Immediately after the demonstration program is started, the command entry menu appears (see K.4.2). When machining is in progress, pressing the ESC key causes the program to wait for command entry. (2) When the program is in command entry mode, register as many programs as necessary. (3) If a program name or other information you entered is incorrect, correct it using the Edit program command. To delete a registered program, use the Delete program command. (4) After all necessary programs have been registered, select the Start command to trigger machining. This causes the programs to be downloaded in sequence they were registered. (5) When a program ends running (always monitored by the Read PMC data command), it is deleted from the NC memory, and the next program is downloaded to start machining. (6) To discontinue machining, press the ESC key to place the program in command entry mode. Then select the Stop command. (7) To read out the parameters during machining, press the ESC key to place the program in command entry mode. Then, select the Read PMC data command. To resume machining, select the Continue command.
Demonstration program
Register programs
No
No
Yes
151
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.3.4
Machining Procedure
(1) Select the Start command. The lowest-numbered registered program is downloaded to the NCC. (2) After the program is downloaded, start it and wait for it to end. (3) When the end of program execution is detected, the program is restarted and executed as many times as specified (repetition count). (4) After the program is executed a specified number of times, it is deleted from the NC, and the next program is downloaded. (5) Steps 2 to 4 are repeated.
Start of machining
Download program to NC
Start program
No
No
152
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
K.4
MENU LAYOUT K.4.1
Main Menu Format
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
by GE FANUC LTD. 1:
4:
Registered-programs display area : Displays the names of the registered programs; up to four programs can be registered. Current program data display area : Displays the details of the program being currently executed (how many times it has been executed and how long it took to execute it). Command entry/parameter display area : Displays the command and parameters entered.
153
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.4.2
Command Entry
(1) Menu
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
by GE FANUC LTD. 1:
2:
3:
4:
1:Set new program 4:Start 2:Edit program 5:Stop 3:Delete program 6:Continue Select No.9
10:End
D This menu appears, when the demonstration program is started or when the ESC key is pressed during machining. D Entering a number at the right of Select No. causes the next menu to appear. (2) Set program command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
New program file name New program number New program repeat count Sure ?(y/n)y
= aaaaaaaaaaaaaaaaaaaaaaaaaa/aaaaaaaa.aaa = o9999 = 99
D Enter the name of a file containing a program to be registered, the number of the program, and the number of times (repetition count) that the program is to be executed. D After a program has been registered, its name is displayed in the registered-program display area.
154
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
20 21 22 23 24 25
Edit program ? 9
20 21 22 23 24 25
New program file name New program number New program repeat count Sure ?(y/n)y
= aaaaaaaaaaaaaaaaaaaaaaaaaa/aaaaaaaa.aaa = o9999 = 99
D Enter the number (1 to 4) of a program to be changed. D Enter the new file name, program number, and repetition count. If the return key is pressed without entering the information described above, no change occurs. (4) Delete program command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
D A specified program is deleted from the registered-program display area. Any program names displayed below the deleted program name will not be shifted up. (5) Start command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
D Machining is started. Then, data is displayed in the current program data display area. D Changes regarding the registered programs cannot be made during machining.
155
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
20 21 22 23 24 25
D Machining is stopped. Then, changes regarding the registered programs can be made. D When the Start command is selected again, the lowest-numbered program is downloaded. (7) Continue
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
Cutting now
D Machining is resumed. D After the ESC key is pressed to display the command entry menu and interrupt machining, this command is used to resume machining. (8) Upload command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
= aaaaaaaaaaaaaaaaaaaaaaaaaa/aaaaaaaa.aaa = o9999
D Enter the name of a program file and the number of a program to be uploaded. D Entering 0* in place of a program number, all programs are uploaded.
156
B61992E/02
APPENDIX
K. DEMONSTRATION PROGRAM
20 21 22 23 24 25
= 999999 = 99
20 21 22 23 24 25
+3 99 99
+4 99 99
+5 99 99
+6 99 99
+7 99 99
+8 99 99
+9 99 99
+A 99 99
+B 99 99
+C 99 99
+D 99 99
+E 99 99
+F 99 99
D Enter a PMC RAM number and data length, and the PMC data will be displayed. D To resume the command entry menu, press any key. (10)Write PMC data command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
= 999999 = 99
20 21 22 23 24 25
+2 99 99
+3 99 99
+4 99 99
+5 99 99
+6 99 99
+7 99 99
+8 99 99
+9 99 99
+A 99 99
+B 99 99
+C 99 99
+D 99 99
+E 99 99
+F 99 99
D Enter a PMC RAM number and data length, then PMC data. D After all PMC data is entered, it is written to memory. (11) End command
1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
20 21 22 23 24 25
157
K. DEMONSTRATION PROGRAM
APPENDIX
B61992E/02
K.4.3
Machining Menu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 2 3 4 5 6 7 8 12345678901234567890123456789012345678901234567890123456789012345678901234567890
by GE FANUC LTD.
1:o (11)< (12) . > repeat (13) total (14) time (15) 2:
3: 100% 4: (10)
(1) Number of a program being executed (1 to 4) (2) NC control command being executed (executing, downloading, deleting) (3) Registered-program file name (fully qualified) (4) Registered-program number (5) Number of times the program has been executed (execution count) (6) Specified repetition time (7) Total execution count (since beginning of machining) (8) Machining time (single pass) in hh:mm (9) Total machining time in hh:mm (10)Ratio of repeated times to specified repetition count (11) Number of a program with registration number 1 (12)File name (with no path indicated) for a program with registration number 1 (13)Repetition count for a program with registration number 1 (14)Total execution count for a program with registration number 1 (15)Total machining time for a program with registration number 1 (16)Error indication (such as file open error or file read error); if an error occurs, machining is discontinued, and message HPleas hit any keyI is displayed. Pressing any key resumes the command entry menu.
158
B61992E/02
APPENDIX
L. PMC ADDRESS (Series 15A AND ADDRESS SPECIFICATION TYPE OF Series 15B)
PMC ADDRESS (Series 15A AND ADDRESS SPECIFICATION TYPE OF Series 15B)
An address to be accessed is specified with an 8digit hexadecimal number. (Example: For F000, specify 0X41FFE200.) The accessible addresses are as follows:
PMC address C000 G511 F000 F319 Y000 Y127 X000 X127 A000 A024 R000 R499 R500 R999 T000 T079 K000 K018 C000 C079 D000 D883 D0884 D1859 Byte address Specified address PMC ADDRESS G0000.0 G0511.7 F0000.0 F0319.7 Y0000.0 Y0127.7 X0000.0 X0127.7 A000.0 A024.7 R0000.0 R0499.7 R0500.0 R0999.7 T0000.0 T0079.7 K0000.0 K0018.7 C0000.0 C0079.7 D0000.0 D0883.7 D0884.0 D1859.7 BIT ADDRESS 0 4095 4096 6655 8192 9215 9216 10239 15872 16071 16080 20079 20080 24079 24192 24831 24896 25047 25056 25695 25696 32767 32768 40575
0 41FFE000 511 41FFE1FF 512 41FFE200 831 41FFE33F 1024 41FFE400 1151 41FFE47F 1152 41FFE480 1279 41FFE4FF 1984 41FFE7C0 2008 41FFE7D8 2010 41FFE7DA 2509 41FFE9CD 2510 41FFE9CE 3009 41FFEBC1 3024 41FFEBD0 3103 41FFEC1F 3112 41FFEC28 3130 41FFEC3A 3132 41FFEC3C 3211 41FFEC8B 3212 41FFEC8C 4095 41FFEFFF 4096 41FFF000 5071 41FFF3CF
159
APPENDIX
B61992E/02
160
B61992E/02
APPENDIX
M.1
OUTLINE
When toolpostdependent data is input/output with the DNC2 function of the Series 15TTB, the target tool post can be selected. This feature allows CNC data for tool posts 1 and 2 to be read and written.
161
APPENDIX
B61992E/02
M.2
ASWITCHING OF TARGET TOOL POST FOR INPUT/OUTPUT BY THE HOST COMPUTER
HOST (1) R or D area PMC
Ladder
WHEAD
(2)
(3)
CNC
(1) Using the PMC data write function of DNC2, the host computer issues a request for switching to a target tool post for input/output to the R or D area. (2) Using the PMC data read function of DNC2, the host computer confirms that DI signal WHEAD has been changed. (3) Using these DNC2 functions, the host computer reads and writes toolpostdependent data.
162
B61992E/02
APPENDIX
M.3
EXAMPLE
An outlined flow for writing data to tool posts 1 and 2 is shown below.
D_PMCdata_w Issue a request for switching to tool post 1 to the R or D area.
D_PMCdata_r
No
Is DI signal WHEAD low?
D_variable_w_mem
D_PMCdata_w
D_PMCdata_r
No
Is DI signal WHEAD high?
Yes
D_variable_w_mem Write data in a custom macro variable of tool post 2.
END
End
NOTE 1 All the names in the flowchart are function names of the DNC2 communication package. 2 For details of each function, see Section III4.4. 3 Directly changing the status of DI signal WHEAD is not advised. The status of the signal should be changed by a ladder using, for example, an internal relay.
163
APPENDIX
B61992E/02
M.4
PARAMETERS
#7 2004 #6 #5 #4 DIHD #3 #2 #1 #0
Data type : Bit DIHD : When a DNC1 service function (main program selection, data read, or CNC data write) involving tool post specification, or a DNC1 service function (main program start) involving tool post selection is used: 0 : A tool post is specified or selected using a command from the host. 1 : A tool post is specified or selected using a DI signal. When a DNC2 service function involving tool post selection is used: 0 : No tool post is selected. 1 : Tool post 1 or 2 is selected using a DI signal. When using DNC2 with the Series 15TTB, set this bit to 1.
164
B61992E/02
APPENDIX
M.5
CONNECTION
Tool post specification signal for NC window input/output WHEAD [Type] Input signal [Function] When a window function instruction or DNC2 function instruction is executed, this signal selects tool post 1 or 2. [Operation] If this signal is low, executing a window function instruction or DNC2 function instruction causes input/output of the data related to tool post 1. If this signal is high, executing a window function instruction or DNC2 function instruction causes input/output of the data related to tool post 2. It takes at least 8 ms for the WHEAD signal to be accepted by the NC after the signal status is changed.
165
APPENDIX
B61992E/02
166
B61992E/02
APPENDIX
N.1
COMMUNICATION OPERATION SCREEN
When DNC operation is performed with the DNC2 function, the program name set on the communication operation screen is sent to the host. This screen is displayed by using function key <SYSTEM> then the [COPER] soft key.
COMMUNICATION OPERATION DNC FOLE SELECTION O0001. PRG O0001 N00000
12:34:53 ][ ][ (OPRT) ]
: Set the name of a program file to be executed by CNC cycle start in DNC operation mode. When CNC cycle start is performed in DNC operation mode (RMT), the program name set on this screen is sent to the host. DNC file name format : Oxxxx.PRG xxxx : Program number (4 digits) Example : When O0010.PRG is set, then a cycle start is performed, the following instruction is sent from the CNC to host: CNC Host PTPM0010 >
167
APPENDIX
B61992E/02
N.2
COMMUNICATION SERVICE SCREEN
Before automatic notification of status/alarm information to the host can be performed with the DNC2 function, notification of information must be enabled by setting the DNC2 parameters on the communication service screen. This screen is displayed by using function key <SYSTEM> then the *** F.464 *** soft key. The communication service screen consists of the three pages. Use the page keys to switch between the pages described below.
COMMUNICATION PARAMETER NC APPLICATION NAME O0001 N00000
12:34:53 ][ ][ (OPRT) ]
COMMUNICATION PARAMETER O0001 N00000 CNC STATUS (UNSOLICITED STATUS) RISING UPPER word 00000000 11111111 LOWER word 11111111 11111111 FALLING UPPER word 00000000 00000000 LOWER word 01010100 00000010 INFOMATION REPORT MASK UPPER word 00000000 00000000 LOWER word 00000000 00000000 CNC ALARM(INFORMATION REPORT) UPPER word 11110001 00000000 LOWER word 01000001 10000111 >_ MDI STOP *** *** [ COPER ][ CSERV ][
12:34:53 ][ ][ (OPRT) ]
168
B61992E/02
APPENDIX
COMMUNICATION PARAMETER PASCAL STACK ADDRESS UPPER LIMIT LOWER LIMIT SERVICE MODE 1 SERVICE MODE 2
FILE REQUEST TIME OUT 00002000 REMOTE REQUEST TIME OUT 00002000 >_ MDI STOP *** *** [ COPER ][ CSERV ][
12:34:53 ][ ][ (OPRT) ]
The DNC2 function uses only part of the communication parameters. The parameters used are as follows: a) NC application name : Unused b) Host application name : Unused c) Status notification enabled : Used d) Status notification mask : Unused e) Alarm notification : Used f) Pascal stack address : Unused g) Service mode 1 : Unused h) Service mode 2 : Unused i) File request timeout : Used j) Remote request timeout : Used k) Status notification enabled c) Status notification enabled This parameter determines whether the host is notified when the CNC status changes. Notification of changes in signal status (rise and fall) can be enabled or disabled. Bit 0 : Rewind (RWD) 1 : Alarm (AL) 2 : Reset (RST) 3 : Automatic operation stopped (SPL) 4 : Automatic operation being started (STL) 5 : Automatic operation in progress (OP) 6 : Servo ready (SA) 7 : CNC ready (MA) 8 : Unused 9 : Unused 10: Unused 11: Unused 12: M00 output (M00) 13: M01 output (M01) 14: M02 output (M02) 15: M30 output (M30)
169
APPENDIX
B61992E/02
e) Alarm notification This parameter sets whether to notify the host if an alarm is generated in the CNC. Bit 0 : Foreground PS alarm 1 : Background PS alarm 2 : Overheat alarm 3 : Undefined 4 : Undefined 5 : Parameter input enable alarm 6 : Overtravel (OT) alarm 7 : PMC error 8 : External alarm 9 : Undefined 10: Severe PS alarm 11: Undefined 12: Servo alarm 13: I/O alarm 14: Undefined 15: Battery alarm i) File request timeout This parameter sets the timeout value used for the time from when a file request is issued from the host to CNC until the CNC accepts the request. If a timeout occurs, the CNC returns an error (M_NP 0XFDFF) to the host.
NOTE 1 A file request is a request for program downloading or uploading. 2 The parameter value is set as follows: Unit : ms Range : 16 ms to 9999.9984 s (If 0 is set, 26 s is assumed.) j) Remote request timeout This parameter sets the timeout value used for the time from when a remote request is issued from the host to CNC until the CNC accepts the request. If a timeout occurs, the CNC returns an error (M_NP 0XFDFF) to the host.
NOTE 1 A remote request is a request from the host to the CNC except program downloading and uploading requests. 2 The parameter value is set as follows: Unit : ms Range : 16 ms to 9999.9984 s (If 0 is set, 26 s is assumed.)
170
B61992E/02
Index
[A]
Details, 73 Details of the Data Section, 31 Details of the Error Log File, 105 DNC2 screen (Series 16/18), 166 DNC2 Tool Post Selection (Series 15TTB), 160 Downloading a Part Program, 31
Acceleration/Deceleration Delay, 37 Alarm Messages, 129 Application Layer, 23 Application Layer Matrix, 127
[B]
Blinking LED Indications, 134 Error Codes, 102, 144
[E]
Error Codes Detailing Nefative Response, 131 Error Handling, 59 Error Log Information, 104 Establishing a Data Link, 21 Example, 163 Example of Using the Communication Program, 100 Executing a Program, 57
[C]
Code, 30 Command Entry, 154 Commands, 150 Communication Error Information, 103 Communication Mode, 13 Communication Operation Screen, 167 Communication Parameter Structure, 142 Communication Service Screen, 168 Communication Speed, 13 Compilation and Linking, 68 Compiling and Linking Programs, 147 Configuration, 7, 64 Configuration of Datagram Commands, 26 Connection, 165 Connector Specifications, 111 Continuation, 30 Current Program Number and Sequence Number, 38
[F]
FANUC Series 0 (A02B0098J055), 112 FANUC Series 0 (Upper Row: Series 0TC, Lower Row: Series 0MC), 117 FANUC Series 15A, 113 FANUC Series 15B and Series 16/18, 114 FANUC Series 16/18/21, 123 Files, 147 Format, 29 Free Area in Program Memory, 34 Function Specifications, 69 Functions, 24, 72
[D]
Data Link Layer, 18 Data Link Layer Matrix, 126 Data Link Protocol, 21 Data Type, 29 Datagram Protocol, 59 Datagram Syntax, 25 Deleting a Part Program, 33 Delimiter in the Data Section, 30 Demonstration Program, 145 Descriptions of Indication by LEDs (Series 15A), 134 Layers, 11 Installation, 65
[I]
Installation Procedure, 67 Interrupt, 60 Interrupt Command, 59 Interrupt Procedure, 60
[L]
LED Indicators (Series 15B), 137
i1
Index
B61992E/02
Reading a Tool Offset, 43 Reading a Tool Position, 35 Reading A/D Conversion Data, 49 Reading Alarm Information, 50
[M]
Machine Interface Signals (For Series 15 only), 38 Machining Menu, 158 Machining Procedure, 152 Main Menu Format, 153 Maintenance, 133 MAP Log Messages, 139 Maximum Cable Length, 13 Menu Layout, 153 Message Format, 20 Modal Data and Corresponding Internal Codes, 141
Reading an Actual Feedrate, 49 Reading Custom Macro Variables, 45 Reading Modal Information for Automatic Operation, 48 Reading Pitch Error Compensation Data, 41 Reading PMC Data, 54 Reading Status Information, 51 Reading the Directory of Part Programs, 34 Reading Tool Life Management Data, 47 Receiving a Datagram, 22 Reset, 58 RS232C Interface, 14 RS422 Interface, 16
[N]
Negative Acknowledgment, 59 Nonblinking LED Indications, 135 Notation of the Datagram, 29 Notes, 71
[S]
Selecting a Part Program, 57 Sending a Datagram, 21 Series 0, 130 Series 15, 120, 130 Service Functions Specified with Datagram Commands, 27 Servo Delay, 36 Setting the Communication Parameters, 148 Simple Error Log Browsing Function, 107 Starting and Exiting the Demonstration Program, 150 Supplied Programs, 66 Switching of Target Tool Post for Input/Output by the Host Computer, 162 Symbols, 29 Synchronous Method, 13 System Error Messages (Series 15A), 136 System Error Messages (Series 15B), 138
[O]
Operating Procedure, 151 Operator Messages, 53 Outline of Functions, 146 Overview of Operations, 150
[P]
Parameters, 116, 164 Physical Interface, 13 Physical Layer, 12 PMC Address (Series 15A and Address Specification Type of Series 15B), 159 Preparation, 147
[T]
Termination, 22
[R]
Reading a CNC Parameter, 39 Reading a System ID, 58
i2
B61992E/02
Index
[U]
Uploading a Part Program, 32 Use, 70
[W]
Writing a CNC Parameter, 40 Writing a Custom Macro Variable, 46 Writing a Tool Offset, 45
[V]
Values Returned by Functions, 103
i3
02
Oct., 97
01
Nov., 91
Edition
Date
Contents
Edition
Date
Contents
No part of this manual may be reproduced in any form. All specifications and designs are subject to change without notice.