ADTCNC4840 English Manual2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 195

ADT-CNC4840

Milling Controller
User Manual

ADTECH (SHENZHEN) CNC TECHNOLOGY CO., LTD


5th Floor, 27-29th Building, Tianxia IC Industrial Park, Yiyuan road, Nanshan District,
Shenzhen Post code: 518052
Tel:86-755-26722719 Fax: 86-755-26722718
E-mail: [email protected] http://www.adtechen.com
ADT-CNC4840 Milling Controller

Copyright Statement

All property rights of this user manual are reserved by Adtech (Shenzhen) CNC
Technology Co., Ltd (ADTECH for short). No institution or person is allowed to
counterfeit, copy, transcribe or translate this user manual without the permission of
ADTECH. This user manual does not include warranty, standpoint expression, or other
hints in any form. ADTECH does not bear any responsibility for any data outflow, benefit
loss or business termination due to the product info contained or mentioned by this user
manual. All products and data mentioned are for reference only. Contents are subject to
change without prior notice.

All Rights Reserved

ADTECH (SHENZHEN) CNC TECHNOLOGY CO., LTD

-1-
ADT-CNC4840 Milling Controller

Version Upgrading Instruction

Edit Printer
Program NO First update Version Number Total page
engineer engineer

XT20080505B 2012-1-7 A1301 194 Xu Yuwen

calibration records

Date version/page result confirmation

-2-
ADT-CNC4840 Milling Controller

Notice
Transportation and storage:
1.The product packing case piles the repeat not to be possible to surpass six 2.Cannot climb up in the product
packing case, stand or the laying aside heavy
3. cannot use and the product connected electric cable dragging or the transporting product
4. refuses the collision, to scratch the kneading board and the display monitor
5. product packing case should avoid moist, the insolation as well as the rain
drenches
Opens a box and check :
1. after opening the packing, please confirm whether is the product
2. inspection product which you purchase in the transportation whether to have on the way damages
3. comparison detailed list to confirm various parts are whether complete, whether there is appendix or
transportation damage situations and so on to damage
4. like existence product model symbol, not to lack, please promptly relate with Our company
Connection:
1. participates in the wiring and the inspection personnel must be has the corresponding ability specialists
2. product to earth reliably, the earth resistance should be smaller than 4 ohms, cannot use the neutral axis (zero
curve) to replace the grounding
3. wiring to be correct, be reliable, in order to avoid causes the product
breakdown or the unexpected consequence
4. with the product connection surge absorber diode must according to the
stipulation direction connection, otherwise before will damage product
5. to insert pulls out the plug or turns on the product engine case, must shut
off the product power source
Overhaul
1. before the overhaul either replaces the primary device, must the dump
2. have when the short circuit or the overload should the trouble shooting, after the trouble shooting, if only then
starts
3. not to be possible passes the power failure frequently to the product, after the power failure, to electrify, time
interval at least 1 minute
Others
1. without the permission, please arbitrarily do not turn on the cabinet.
2. the long time does not use, please dump.
3. the special attention do not let the dust, the powdered iron enter the controller.
4. outputs the relay, if uses the non-solid state relay, then must in the relay
winding the parallel after flow diode. The inspecting office receives a

-3-
ADT-CNC4840 Milling Controller
telegram the source whether to meet the requirement, ceases burns out the
controller.
5. controller's life and the ambient temperature have the very big relations, if
processes the scene hyperpyrexia, pays respects installs the radiation
ventilator. Controller permission work ambient temperature scope in 0℃-60
℃ between. 6. avoids, in the high temperature, moist, the multi-dust or have
in the caustic gas environment to use. 7. in the vibration intense place,
should add the rubber crash pad to carry on the cushion.
Maintenance
Under general exploitation conditions (environmental condition: The daily average 30℃, the load factor 80%, the
service factor daily 12 hours), please press the following project to carry on the daily inspection and the periodic
inspection.
1.confirmation ambient temperature,
temperature, dust foreign matter
2. whether there is exceptionally to
Daily inspection Daily
vibrate, the sound
3. whether air vent and so on blocked by
the yarn

1. Firm part whether loose


Periodic inspection
one year 2. whether terminal table being damage

-4-
ADT-CNC4840 Milling Controller

CONTENT

Chapter I Definition of System Interface and Wiring Description................................................................... - 7 -


I. System Structure _________________________________________________________________________- 7 -
1. Parts of CNC4840 NCS __________________________________________________________________- 7 -
2. Notice for Installation____________________________________________________________________- 8 -
3.Installing Dimension ____________________________________________________________________- 10 -
II. External Connection ____________________________________________________________________- 11 -
1. External Interface______________________________________________________________________- 11 -
2. Control Interface of Motor Driver _________________________________________________________- 13 -
3. Input Interface of Machine_______________________________________________________________- 14 -
4. Input Expansion Interface _______________________________________________________________- 18 -
5. Output Interface _______________________________________________________________________- 20 -
6. Output Expansion Interface ______________________________________________________________- 22 -
7. Analog Output ________________________________________________________________________- 24 -
8. Handheld box _________________________________________________________________________- 25 -
9. Electrical Connection Diagram ___________________________________________________________- 26 -
10. Legend of connection between CNC4840 and servo/stepper driver ______________________________- 27 -
Chapter II Programming ............................................................................................................................... - 32 -
1.1 Basic knowledge of programming _____________________________________________________- 32 -
1.1.1 M ovi ng di r e c ti on and de fi ni ti on of c ontr ol axi s _______________________________- 32 -
1.1.2 Coor di nate syste m of mac hi ne tool and wor k pi e c e (G 53, G 54~G 599) _________- 33 -
1.1.3 M ode func ti on and mode l e ss func ti on _________________________________________- 34 -
1.1.4 Feed function ____________________________________________________________________- 34 -
1.1.5 Program structure _________________________________________________________________- 35 -
1.2 Preparatory function (G code) ________________________________________________________- 37 -
1.2.1 List of G codes ___________________________________________________________________- 37 -
1.2.2 Interpolation (G00, G01, G02, G03) __________________________________________________- 38 -
1.2.3 Pause instruction (G04) ____________________________________________________________- 41 -
1.2.4 Plane selection (G17, G18, G19) _____________________________________________________- 41 -
1.2.5 Instructions of Coordinate System (G53~G59, G591~G599, G92) ___________________________- 41 -
1.2.6 Reference point related instructions (G27, G28, G29)_____________________________________- 44 -
1.2.7 Tool compensation (G40, G41, G42, G43, G44, G49) ____________________________________- 46 -
1.2.8 Hole processing cycle (G73~G89) ____________________________________________________- 75 -
1.3 Auxiliary function (M, S, T) __________________________________________________________- 87 -
1.3.1 M code _________________________________________________________________________- 87 -
1.3.2 S code __________________________________________________________________________- 89 -
1.3.3 T code __________________________________________________________________________- 89 -
1.4 Macro ____________________________________________________________________________- 90 -
1.4.1 Variable instruction _______________________________________________________________- 90 -
1.4.2 Macro program call _______________________________________________________________- 92 -
1.4.3 Variable_________________________________________________________________________- 96 -
1.4.4 Calculation instruction ____________________________________________________________- 100 -
1.4.5 Control instruction _______________________________________________________________- 104 -
1.4.6 Notice for using macro ____________________________________________________________- 107 -
1 Chapter III Operation ........................................................................................................................ - 108 -
1.1.1 Description of Control Panel _____________________________________________________- 108 -
2.1.1 LCD panel ___________________________________________________________________- 108 -
1.2.1 position display _______________________________________________________________- 110 -
1.2.2 Program display _______________________________________________________________- 113 -
1.2.3 Settings of tool compensation parameters ___________________________________________- 117 -
1.2.4 Setting and modification of system parameters, coordinate parameters, network
parameters, setting parameters and parameter management ___________________________________- 118 -
1.2.5 Diagnosis display setting ________________________________________________________- 123 -

-5-
ADT-CNC4840 Milling Controller
1.2.6 Alarm display_________________________________________________________________- 128 -
1.3 Description of operating mode _______________________________________________________- 129 -
1.2.1 Selection of operating mode ________________________________________________________- 129 -
1.4 Manual operations _________________________________________________________________- 130 -
1.4.2 reset relative position ___________________________________________________________- 130 -
1.4.3 Operations of manual auxiliary functions ____________________________________- 131 -
1.5 Auto operation ____________________________________________________________________- 132 -
1.5.1 start of program _______________________________________________________________- 132 -
1.5.2 stop of auto operation ______________________________________________________- 132 -
1.5.2 There are two ways to stop the auto operation. One is to input stop order in where
it is to stop in advance via the program, and the other way is to use the button on control panel.
- 132 -
1.5.3 feed rate adjustment in auto operation ______________________________________- 133 -
1.2.2 In [Auto] mode, in the interface of display position, you can rotate the auto rate
shift to change the manual rate. The range of the rate is 0~150% (with 10% per shift) . The feed
rate is specified by F instruction or parameters. _________________________________________- 133 -
1.5.4 Single program segment ________________________________________________________- 133 -
1.5.5 Skip the program segment _______________________________________________________- 134 -
1.6 Zero fill __________________________________________________________________________- 134 -
1.6.1 return to reference point manually_________________________________________________- 134 -
1.7 Single-step/Handwheel operation_____________________________________________________- 135 -
1.7.1 Single-step feed _______________________________________________________________- 135 -
1.7.2 Handwheel feed _______________________________________________________________- 135 -
1.8 Edition operation __________________________________________________________________- 136 -
1.8.1 Preparation before program storage and edition ______________________________________- 136 -
1.8.2 Save the program in storage _____________________________________________________- 136 -
1.8.3 Program searching _____________________________________________________________- 137 -
1.8.4 Adding program_______________________________________________________________- 138 -
1.8.5 Deleting program ______________________________________________________________- 138 -
1.8.6 Deleting all programs __________________________________________________________- 138 -
1.8.7 Inserting, modifying, deleting word _______________________________________________- 138 -
1.8.8 Storage capacity _______________________________________________________________- 140 -
1.8.9 Download of program __________________________________________________________- 140 -
1.9 Recording operation _______________________________________________________________- 143 -
1.10 Composite key ____________________________________________________________________- 144 -
1.11 Parameters ______________________________________________________________________- 146 -
1.11.1 GenralParam (P1.) _____________________________________________________________- 146 -
1.11.2 Network parameter(P2.)_________________________________________________________- 164 -
1.11.3 Axis parameter configuration (P3.) ______________________________________________- 166 -
1.11.4 Tool magazine parameter (P4.) ___________________________________________________- 179 -
1.11.6 IO Configuration parameter(P5.)__________________________________________________- 180 -
1.11.7 Manager Parameter (P6.)________________________________________________________- 180 -
1.12 System alarming __________________________________________________________________- 186 -
1.12.1 NC Program executing alarming __________________________________________________- 186 -
1.12.2 system environment alarming __________________________________________________- 188 -
1.2 Annex1 setting of workpiece coordinate and tool setting _________________________________- 190 -
1.3 Annex 2 Table of operating environment ______________________________________________- 190 -
1.4 Annex3 Description of keyboard _____________________________________________________- 191 -

-6-
ADT-CNC4840 Milling Controller
Chapter I Definition of System Interface and Wiring Description

I. System Structure
1. Parts of CNC4840 NCS
CNC4840 NCS is composed by the following main units:
1. CNC control unit (Control device CNC4840)

2. Stepper motor driver (Digita l AC servo driver)

3. Stepper motor (Servo motor)

4. Electric ca binet

+24V switching Electric cabinet


power supply

Stepper driver or digital Stepper motor or servo


AC power supply input AC servo motor driver motor

-7-
ADT-CNC4840 Milling Controller

2. Notice for Installation


Conditions for mounting electric cabinet
 The electric cabinet should be able to prevent the entry of dust, cooling liquid and organic solution
effectively.
 The electric cabinet should be designed in a way that the distance between rear cover and the casing
should not be less than 20CM. Considering the temperature rise inside the electric cabinet, the
difference in temperature between inside and outside should not exceed 10°C.
 Fan should be installed inside the electric cabinet so as to ensure the good air circulation inside.
 Display panel should be installed in a place away from the cooling liquid.
 Try to reduce the external electric interference to prevent it from transmitting to the system.

Methods to prevent the interference


When designing the system, several anti-interference measures such as shielding space
electromagnetic radiation, absorbing impulse current, and filtering power supply noise are adopted,
which to a certain extent prevents the external interference source from affecting the system. To ensure
the stable operation of the system, the following measures should be done when installing:
1: CNC should be away from the devices that generate the interference (such as transducer, AC
contactor, electrostriction generator, high pressure producer, and segment separator of dynamic line). At
the same time, the switching power supply should be connected with individual filter to enhance the
anti-interference capability of CNC. (As picture 1-4)
2: The system should be powered by isolating transformer, and the machine tool on which the
system is installed should be grounded. CNC and driver should connect the individual earth line from the
ground point.
3: Interference suppression: Connect a RC return circuit (0.01μF, 100~200Ω, as picture 1-5) in
parallel at the two ends of AC coil. The RC returning circuit should be as close to the inductive load as
possible when installing. Connect a freewheeling diode in parallel reversely at the two ends of DC coil
(as picture 1-6). Connect surge absorbers in parallel at the winding ends of AC motor (as picture 1-7).

Filter

Switching
power supply

Picture 1-4

Surge absorber

Picture 1-6

Picture 1-7

-8-
ADT-CNC4840 Milling Controller

4: To reduce the interface between the CNC signal cables and the electric cables, the wiring should
follow the rules below:

Group Type of Cable Wiring Requirements

AC supply line
Bind the cable of group A and group B and C separately,
A AC coil reserve the distance of at least 10cm, or electromagnetic
shielding the group A cable
AC contactor

DC coil (24VDC)

DC relay (24VDC)
Bind the cable of group B and group A separately, or shield
B Cable connecting system and electric cabinet the cable of group B. Cables of group B and group C should
be placed as far as better.

Cable connecting system and controller

Cable connecting system and servo driver

Bind the cable of group C and group A separately, or shield


Position feedback cable
the cable of group C. The distance between group C and
C
group B should be at least 10cm, and the cable uses the
Position coder cable
twisted pair.
Handwheel cable

Other cables for the purpose of shielding

-9-
ADT-CNC4840 Milling Controller

3.Installing Dimension
Installing dimension of CNC4840 controller

- 10 -
ADT-CNC4840 Milling Controller

II. External Connection


1. External Interface
CNC4840 control unit is connected to the externa l devices via the rea r a nd front interfa ces.
1. The outer casing of CNC4840 is defined as follows:

XS1 input interface XS5 expansion input

XS2 output interface XS6 handheld box

XS3 expansion output

XS4 additional panel

XS13 analog output

XS14 network
DC 24V

X, Y, Z, A, B, a nd C refer to the connecting signa l of stepper motor driver or digita l AC servo


driver of ea ch a xis. CNC4840 controller uses X, Y, Z, A, B, a nd C a xes a t the moment.

Input interfa ces a nd expa nsion input interfa ces of the ma chine a re limit a nd digita l input signa ls
of ea ch a xis. Output interfa ces a nd expa nsion output interfa ces a re the dig ita l output signa l.

CNC4840 controller uses the 24V DC power supply, a nd the interna l power consumption is
a bout 5W .

- 11 -
ADT-CNC4840 Milling Controller

Driver Driver
Output terminal board Input terminal board

Connect to machine tool Connect to machine tool


Input terminal board
Output terminal board
Connect to machine tool
Connect to machine tool

Motor
Motor Driver Driver

- 12 -
XS2 Output interface of machine XS6 Handheld box XS10 A axis

XS3 Output expansion of machine XS7 X axis XS11 B axis Motor Motor

XS4 Additional panel XS8 Y axis XS12 C axis

XS13 Analog output Motor

Serial port
USB disk
General Wiring Diagram

Driver Driver
XS14
network

Additional panel

Computer
24V DC power
supply
Motor Motor
ADT-CNC4840 Milling Controller

2. Control Interface of Motor Driver


There a re 8 interfa ces for the driver (X, Y, Z, A, B, C a xes), a nd the interfa ce definition
is the sa me. Refer to the following picture:

 Pulse interface of axis 1-6


Pulse Interface of X/Y/Z/A/B/C Axis

Line S/N Name Function


1 nPU+ Pulse signal +
2 nPU- Pulse signal -
3 nDR+ Direction signal +
4 nDR- Direction signal -
General input, can be used as alarm input (X-66
5 IN
Y-67 Z-68 A-69 B-70 C-71)

6 OUT General output (X-48 Y-49 Z-50 A-51 B-52 C-53)

Coder Z-phase input + (X-72 Y-73 Z-74 A-75


7 nECZ+
B-76 C-77)

8 nECZ- Coder Z-phase input -


9 PUCOM Used for driver with single-end input
10 +24V
Provide internal 24V power supply, directly connected
with 24V power supply of controller
11 24VGND

Coder A-phase input + (X-78 Y-80 Z-82 A-84


12 nECA+
B-86 C-88)

13 nECA- Coder A-phase input -


Coder B-phase input + (X-79 Y-81 Z-83 A-85
14 nECB+
B-87 C-89)

15 nECB- Coder B-phase input -

- 13 -
ADT-CNC4840 Milling Controller

3. Input Interface of Machine


1) The digit al input int erfaces include t he zero point s of XYZABC axes, hardware limit
signal of XYZA axes, et c. The definit ion is as follows:

- 14 -
ADT-CNC4840 Milling Controller

Input Interface of Machine

Line S/N Name Function


1 IN0 (X_LMT+) X positive limit
2 IN1 (X_LMT-) X negative limit
3 IN2 (Y_LMT+) Y positive limit
4 IN3 (Y_LMT-) Y negative limit
5 IN4 (Z_LMT+) Z positive limit
6 IN5 (Z_LMT-) Z negative limit
7 IN6 (A_LMT+) A positive limit
8 IN7 (A_LMT-) A negative limit
9 INCOM1 Common input terminal (24v+, 12v+)
10 IN8 (X_STOP0) X axis zero
11 IN9 (Y_STOP0) Y axis zero
12 IN10 (Z_STOP0) Z axis zero
13 IN11 (A_STOP0) A axis zero
14 IN12 (B_STOP0) B axis zero
15 IN13 (C_STOP0) C axis zero
16 IN14 Air pressure alarm input
Spare input (used to detect the material-champing
17 IN15
alarm input signal during the operation)
18 INCOM2 Common input terminal (24v+, 12v+)
19 IN16 B positive limit
20 IN17 B negative limit
21 IN18 C positive limit
22 IN19 C negative limit
23 IN20 Cycle ON
24 IN21 Pause
25 IN22 Emergency stop
26 IN23 Alarm input of main axis
27 INCOM3 Common input terminal (24v+, 12v+)
28 IN24 Input for triggering feeler device
29 IN25 Input for protecting feeler device
30 IN26 Spare input
31 IN27 Spare input
32 IN28 Spare input
33 IN29 Spare input
34 IN30 Spare input
35 IN31 Spare input
36 INCOM4 Common input terminal (24v+, 12v+)
37

- 15 -
ADT-CNC4840 Milling Controller

2) Diagram of wiring bet ween input int erfaces and phot oelect ric swit ch/proximit y
swit ch is as follows:

X positive limit Go Switch

X negative limit Go Switch

Y positive limit Go Switch

Y negative limit Go Switch

Z positive limit Go Switch

XT1
(Input Z negative limit Go Switch
terminal
block of
machine A positive limit Go Switch
tool)
X origin proximity switch

Y origin proximity switch

Z origin proximity switch

A origin proximity switch

B origin proximity switch

C origin proximity switch

- 16 -
ADT-CNC4840 Milling Controller

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input
XT1 (Input
terminal
Cycle ON
block of
machine
Pause
tool)
Emergency stop

Spindle alarm input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

- 17 -
ADT-CNC4840 Milling Controller
4. Input Expansion Interface
1) Digital input interfaces include BC hardware limit, other spare input signals, etc. the definitions
are as follows:

Input Expansion Interface

Line S/N Name Function

1 IN32 Spa r e i n put


2 IN33 Spa r e i n put
3 IN34 Spa r e i n put
4 IN35 Spa r e i n put
5 IN36 Spa r e i n put
6 IN37 Spa r e i n put
7 IN38 Spa r e i n put
8 IN39 Spa r e i n put
9 IN40 Spa r e i n put
10 IN41 Spa r e i n put
11 IN42 Spa r e i n put
12 IN43 Spa r e i n put
13 IN44 Spa r e i n put
14 IN45 Spa r e i n put
15 IN46 Spa r e i n put
16 IN47 Spa r e i n put
17 IN48 Spa r e i n put
18 IN49 Spa r e i n put
19 IN50 Spa r e i n put
20 IN51 Spa r e i n put
21 IN52 Spa r e i n put
22 IN53 Spa r e i n put
23 IN54 Spa r e i n put
24 IN55 Spa r e i n put
25 INCOM5 Com m on i n put t er m i n a l (24v+ , 12v+ )

- 18 -
ADT-CNC4840 Milling Controller

2) The wiring of expansion input int erface and proximit y swit ch is shown as fo llows:

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input

Spare input
Spare input
XT2 (Input Spare input
terminal
block of Spare input
machine
tool) Spare input
Spare input
Spare input
Spare input
Spare input
Spare input
Spare input
Spare input
Spare input

Spare input
Spare input
Spare input

- 19 -
ADT-CNC4840 Milling Controller
5. Output Interface
1) The output interface and the wiring are defined as follows:

Output Interfaces

Line S/N Name Function

1 OUT0 S p i n d l e cl ock wi s e r ot a t i on ( M 0 3 )
2 OUT1 S p i n d l e a n t i -cl ock wi s e r ot a t i on
3 OUT2 Il l u mi n a t i on ( M 6 6 , M 6 7 )
4 OUT3 Cool e r 1 ( M 0 8 , M 0 9 )
5 OUT4 Cool e r 2 ( M 6 8 , M 6 9 )
6 OUT5 Lu b r i ca t i on ( M 3 2 , M 3 3 )
7 OUT6 Ad j u s t i n g t ool ( M 1 0 , M 1 1 )
8 OUT7 Tool ch a n ge ( M 1 2 , M 1 3 )
9 OUT8 Ch a mb e r a i r b l owi n g ( M 1 4 , M 1 5 )
10 OUT9 Cl a mp ma t e r i a l s ( M 1 6 , M 1 7 )
11 OUT1 0 Feeding (M18, M19)
12 OUT1 1 S t a r t l i gh t ( M 4 0 , M 4 1 )
13 OUT1 2 S t op l i gh t ( M 4 2 , M 4 3 )
14 OUT1 3 Wa r n i n g l i gh t ( M 4 4 , M 4 5 )
15 OUT1 4 Du mp i n g ( M 4 6 , M 4 7 )
16 OUT1 5 Di s ch a r gi n g s cr a p s ( M 4 8 , M 4 9 )
17 OUT1 6 Kn i fe wa r e h ou s e + ( M 5 0 , M 5 1 )
18 OUT1 7 Kn i fe wa r e h ou s e - ( M 5 2 , M 5 3 )
19 OUT1 8 S p a r e ou t p u t ( M 5 4 , M 5 5 )
20 OUT1 9 S p a r e ou t p u t ( M 5 6 , M 5 7 )
21 OUT2 0 S p i n d l e ge a r s h i ft con t r ol 1 ( M 5 8 ,
22 OUT2 1 S p i n d l e ge a r s h i ft con t r ol 2 ( M 6 0 ,
23 OUT2 2 S p i n d l e ge a r s h i ft con t r ol 3 ( M 6 2 ,
24 OUT2 3 S p i n d l e ge a r s h i ft con t r ol 4 ( M 6 4 ,
25 OUT_ GND1 Common p owe r s u p p l y of 1 2 v-, 2 4 v-

- 20 -
ADT-CNC4840 Milling Controller
2) Wiring diagram of output interface is as follows:

Spindle clockwise rotation

Spindle anti-clockwise rotation

Illumination

XT3 (Output expansion terminal block of machine tool)


Cooler 1

Cooler 2

Lubrication

Adjusting tool

Tool change

Chamber air blowing

Clamp materials

Feeding

Start light

Stop light

Warning light

Spare output

Spare output

Spindle gear shift control 1

Spindle gear shift control 2

Spindle gear shift control 3

Spindle gear shift control 4

Spindle clockwise rotation

Spindle anti-clockwise rotation

Illumination

- 21 -
ADT-CNC4840 Milling Controller
6. Output Expansion Interface
1) The expansion output interface and the wiring are defined as follows:

Output Expansion Interface

Line S/N Name Function

1 OUT 24 Spa r e out put (M110, M111)F10


2 OUT 25 Spa r e out put (M112, M113)F11
3 OUT 26 Spa r e out put (M114, M115)F12
4 OUT 27 Spa r e out put (M116, M117)F13
5 OUT 28 Spa r e out put (M118, M119)F14
6 OUT 29 Spa r e out put (M120, M121)F15
7 OUT 30 Spa r e out put (M122, M123)F16
8 OUT 31 Spa r e out put (M124, M125)F17
9 OUT 32 Spa r e out put (M126, M127)F18
10 OUT 33 Spa r e out put (M128, M129)F19
11 OUT 34 Spa r e out put (M130, M131)F20
12 OUT 35 Spa r e out put (M132, M133)
13 OUT 36 Spa r e out put (M134, M135)
14 OUT 37 Spa r e out put (M136, M137)
15 OUT 38 Spa r e out put (M138, M139)
16 OUT 39 Spa r e out put (M140, M141)
17 OUT 40 Spa r e out put (M142, M143)
18 OUT 41 Spa r e out put (M144, M145)
19 OUT 42 Spa r e out put (M146, M147)
20 OUT 43 Spa r e out put (M148, M149)
21 OUT 44 Spa r e out put (M150, M151)
22 OUT 45 Spa r e out put (M152, M153)
23 OUT 46 Spa r e out put (M154, M155)
24 OUT 47 Spa r e out put (M156, M157)
25 OUT _GND2 Com m on power suppl y of 12v-, 24v-

- 22 -
ADT-CNC4840 Milling Controller
2) Wiring diagram of expansion output interface is as follows:

Spare output

XT4 (Output expansion terminal block of machine tool)


Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output
Spare output

- 23 -
ADT-CNC4840 Milling Controller
7. Analog Output
1) The analog output interface is defined as follows:
P2
DAOUT1 1
6
DAOUT2 2
7
3
8
4
9
5

24VGND

Analog Output
Line S/N Name Function
1 DAOUT1 Analog voltage output (0V—12V+)

2 DAOUT2 Analog voltage output (0V—12V+)

4 24V- Provide internal24V grounding

5
2) Wiring diagram of analog output is as follows:

Definition of analog
output interface Connection of CNC4840
transducer
CNC4840 (analog output) CWF-S1 transducer
XS13 interface signal interface
1 6

1 DAOUT1
VI1
2 DAOUT2
5 9 CM
3 24V-
4 24V-
Note: Choose either DAOUT1
XS13 interface
5 24V-
or DAOUT2 to connect the
transducer

- 24 -
ADT-CNC4840 Milling Controller
8. Handheld box
Handheld box: Connected with our standard handheld box ADT-CNC4A, multiplexing with manual pulse
generator count and Y-axis coder

High

Medium

Low

Start

Stop
Emergency stop

Coder

Definition of corresponding casing: Handheld box


Line S/N Name Function

1 IN63 0. 1 sh i ft swi t ch -Hi gh


2 IN64 0. 01 sh i ft swi t ch -Medi um
3 IN65 0. 001 sh i ft swi t ch -Low
4 IN60 St a r t -up
5 IN61 St op
6 HA Ha n dl e coder ph a se-A i n put si gn a l
7 24V- In t er n a l -24V power suppl y
8 5V+ In t er n a l + 5V power suppl y
9 IN56 Sel ect X a xi s
10 IN57 Sel ect Y a xi s
11 IN58 Sel ect Z a xi s
12 IN59 Sel ect A a xi s
13 IN62 em er gen cy st op
14 HB Ha n dl e coder ph a se-B i n put si gn a l
15 5V- In t er n a l -5V power suppl y

- 25 -
ADT-CNC4840 Milling Controller

9. Electrical Connection Diagram

Sign Name Chart Sign Name Chart

Breaker Servo motor

Contactor Stepper motor

Transducer Proximity switch

Motor Foot switch

Transformer Thermal relay

filter thermal relay

Fuse Switching power supply

Button Solenoid valve

Air blower compacitor

indicator resistor

Touch switch Go switch

Coder Relay

- 26 -
10. Legend of connection between CNC4840 and servo/stepper driver
QF1 KM1
L11 L12
L1
L21 L22
L2
L31 L32
L3

PE

L12 N1 N2
L22
For power supply QF2 QF5
Use 220V power supply when
of servo driver
using 220V solenoid valve QF3

L11 R S T KA1

Transducer
- 27 -

N M03 QF4 Z
Filter
KA21 FWD
X1 COM
TC
KA22 CM
X2 KA2
KA23 M04
X3 REV PE
KA24
X4
COM CM DAOUT1
FU1 UF VI1
Connect
Multi-segment

60V

15V
to XS13
24V-
SB1(Green) control main
GND ~
SB2(Red)
UC1
U V W ~ UC2
L13
KM1
N3 axis
01

ADT-CNC4840 Milling Controller


02 PE
PE PE

GND1
U V W

+24V

GND
KM1

+24
AC1
AC1
AC2
AC2
Power For stepper driver
indication
HL1
M

GND1
DC+
PE

GND
L13

+24V
N3
Use stepper
3~

transformer when For CNC4840


FM1 Use 24V switching
Frequency-changing using stepper motor controller
power when using
L13 N3 main axis 24V solenoid valve

FM2 Air blower


(Optional)
ADT-CNC4840 Milling Controller

Input of power supply


XS7
interface

Input of signal

X-axis Servo Motor Driver


Output of driver

Driver

X-axis Servo
Coder
motor

Example 1: Connection with JaBao QS5 driver

- 28 -
ADT-CNC4840 Milling Controller

Input of power supply


XS7
interface

Input of signal

X-axis Servo Motor Driver


Output of driver

Driver

X-axis Servo
Coder
motor

Example 2: Connection with SGDM driver

- 29 -
ADT-CNC4840 Milling Controller

XS7
interface

X-axis Stepper Motor Driver

X-axis Stepper Motor

Example 3: Connection with Q2BYG1106M stepper driver

- 30 -
ADT-CNC4840 Milling Controller

XS7
interface

X-axis Stepper Motor Driver

X-axis Stepper Motor

Example 4: Connection with Q2BYG808M stepper driver

- 31 -
ADT-CNC4840 Milling Controller

Chapter II Programming
G code programming
1.1 Basic knowledge of programming

1.1.1 M oving dir e c tion and de finition of c ontr ol axis

+Z
+Y

+X

W o rk p ie c e X
-Y
P e d e s ta l w
or
kb
en
ch

This system can control the quick move of 4 axes, and the feeding can control interpolation of 3 axes.
For the definition of axis direction, Cartesian coordinates is adopted, as follows (facing the machine
tool):
Z: If the tool moves up and down corresponding to the work piece, it is the Z-axis motion. If the tool
moves upward, it is Z-axis positive motion; and if the tool moves downwards, it is the Z-axis negative
motion.
X: If the tool moves left and right corresponding to work piece, it is the X-axis motion. If the tool moves
left, it is the X-axis negative motion; and if the tool moves right, it is the X-axis positive motion.
Y: If the tool moves forward and backward corresponding to work piece, it is the Y-axis motion. If the
tool moves forward, it is the Y-axis positive motion; and if the tool moves backward, it is the Y-axis
negative motion.
Spindle: When downward looking the work piece, clockwise rotation is the positive rotation while the
anti-clockwise is the reverse rotation.

- 32 -
ADT-CNC4840 Milling Controller
A, B, C: The positive direction of rotating coordinate axis is at the positive direction of X, Y, or Z
coordinate axis respectively. Use the forwarding direction of right-hand screw to determine the positive
direction.
Note: Descriptions of X, Y, Z, A, B, or C-axis motions in this user manual always refer to those motions of tool
corresponding to the work piece, meaning that it is supposed the coordinate system of work piece is set.

1.1.2 Coor dinate syste m of mac hine tool and wor k pie c e ( G53, G54~G599)

1) Coordinate system of machine tool


The coordinate system of machine tool is fixed, which is set every time when returning back to
the reference point after electrifying. To choose the coordinate system of machine tool, use the G53
instruction.
2) Coordinate system of work piece
Coordinate system of work piece refers to that used during the programming processing, and
that in which a certain reference center of work piece is set as the origin of coordinates. Usually,
when programmers start to edit the programme, they do not know exactly where the work piece is
located on the machine tool, so the program for work piece is edited taking a certain point on the
work piece as the reference point. Therefore, the coordinate system formed basing on this reference
point is called as coordinate system of work piece. Once the work piece is fixed on the worktable,
first you should move the tool to the appointed reference point of work piece and set the machine
coordinate value of this point as the origin of work piece coordinate system. In this way, when the
system is performing the processing program, the tool will then process according to the program
instructions while taking the work piece coordinate system as the reference. Therefore, the origin
off-set function is very important for CNC machine tool.
In this system, all together 6 work piece coordinate systems can be preset (Nine expansion
coordinate systems G591-G599 are added in new edition). Set the offset of origin of each work piece
coordinate system corresponding to the origin of machine tool coordinate system, and then use G5X
(5X refers to the No. of actual work piece coordinate system, the following is just the same)
instruction to choose. G5X are mode instructions, and are corresponding to 1#~6# preset work piece
coordinate systems respectively.

+Y +Y Work piece +Y Work piece +Y Work piece


coordinate coordinate coordinate
system4 system5 system6
+X +X +X

+Y +Y Work piece +Y Work piece


Work piece
coordinate coordinate coordinate
system1 system2 system3

+X +X +X

+X

Mechanical reference point

- 33 -
ADT-CNC4840 Milling Controller

3) Programming of absolute coordinate and relative coordinate (G90, G91)


Tool motion instructions include: Absolute value instruction and increment value instruction. In
absolute value instruction, the specified value is the coordinate value of end point in the current
coordinate system. In increment value instruction, the specified value is the distance of all coordinate
axes moving corresponding to the starting point.
G90………Absolute value instruction
G91………Increment value instruction
Instance:
Y

E n d p o in t
A b s o lu te v a lu e in s tru ctio n
120.0 p ro g ra m m in g :
G 9 0 X 2 0 . Y 1 2 0 .;

In cre m e n t v a lu e in stru c tio n


p ro g ra m m in g :
G 9 1 X -7 0 . Y 8 0 .;

S ta rtin g p o in t
40.0

20.0 90.0

From the above instance, we can better understand the programming in mode of absolute value and
increment value.

1.1.3 Mode function and modeless function


Mode function refers to that once a code is specified in the current program segment, it will be valid
until another code of the same group appears in the segment, and you need not specify the code if it this
instruction is used again in the next program segment.
Modeless function refers to that a certain code is valid only in the program segment which it belongs
to. If the instruction is used in the next program segment, you should specify the code again.
For example:
N0 G54 G0 X0 Y0; (choose the work piece coordinate system, locate to X0 Y0 quickly)
N1 G01 X150. Y25. F100; (linear interpolation to X150, Y25)
N2 X50. Y75. F120; (linear interpolation to X50, Y75; G01 is the mode instruction, and can be
omitted.)
N3 X0; (linear interpolation to X0, Y75; F120 is the mode instruction, and can be omitted.)

1.1.4 Feed function


The feed of CNC machine tool can generally be divided into two classes, quick locating feed and
cutting feed.
Quick locating feed occurs in the motion between quick feed and location in mode of instruction
G00, manual quick move and fixed cycle, and the speed is determined by machine tool parameters. In
quick locating feed, the motion of each involved axis is not related, which is moved at the set quick
speed. Generally, the track of tool is a polyline or line.
Cutting feed occurs in the processing feed in mode of G01, G02/03, and fixed cycle, and the speed
is specified by address F, unit in mm/minute. In processing program, F is the value of a mode, which
means that the former F value is still valid before specifying a new F value. As the CNC system is
electrified, the value of F is then specified by the system parameter. The involved axes are of the
interpolation relationship, and the combination of their motion is the cutting feed.
The maximum value of F is controlled by system parameters. If the F of programming is larger than
this value, the actual speed of cutting feed will be retained as this value.

- 34 -
ADT-CNC4840 Milling Controller
The speed of cutting feed can also be controlled by the feed rate switch on control panel. The actual
speed is the result of given value of F multiplying the feed rate, and the range of rate is 10%-150%.

1.1.5 Program structure

In processing program, an English letter is defined as an instruction address. In this manual, we call it
“Address” for short. An instruction word is formed if the address is followed with a number. A program
segment is composed by one or more instruction words, and ended with an end mark “;”, and several
program segments will make a process program. Instruction word is the basic unit of program segment.
Each address has different meanings, which as a result that the value that follows would have different
formats and ranges. Refer to the following table:

Function Address Range Meaning

Name of program O 1~9999 Program No.

No. of program segment N 1~9999 Order number

Preparation function G 00~99 Specify CNC function

X, Y, Z ±99999.999mm Coordinate value

Dimension R ±99999.999mm Radius of circular arc or fillet

I, J, K ±9999.9999mm Coordinate value of center

Feeding speed F 1~100,000mm/minute Feeding speed

Spindle rotation speed S 1~4000 cycles per minute Value of spindle rotation speed

Tool selection T 0~99 Tool number

Auxiliary functions M 0~99 Auxiliary function M-code No.

Tool off-set No. H, D 1~200 Specify off-set No. of tool

Pause time P, X 0~65s Pause time (mm)

Specify subprogram No. P 1~9999 For calling subprogram

Cycle times P, L 1~999 For calling subprogram


P: 0~99999.999
Parameter P, Q, R Q: ±99999.999mm Fixed loop parameter
R: ±99999.999

- 35 -
ADT-CNC4840 Milling Controller
In addition, a program segment can have an optional program segment number (N××××) at the
beginning to mark it. It has to be noted that the sequence of program segment executed has something to
do with their positions in program memory, but has nothing to do with their segment numbers, which
means that if N20 program segment appears ahead of N10 program segment, the N20 will be executed
first.
If a program segment is started with “/”, it means the program segment is “if” program segment,
meaning when the jump switch is at up position, this program segment is not executed, and when the
jump switch is at down position, this program segment can still be executed.
1) Main program and subprogram
Processing program is divided into main program and subprogram. Generally, the NC executes the
instructions of main program, but it turns to subprogram when there is a subprogram calling instruction.
It executes the subprogram until it meets the return instruction and get back to main program.
If we need to run the same track for several times, we can edit this segment of track as subprogram
and save it in program memory of machine tool so that every time when you execute this segment of
track in program, you can call this subprogram.
When a main program is calling a subprogram, this subprogram can also call another subprogram;
we call this as double nesting of subprogram. Generally, a machine tool is allowed to have at most
quadruple subprogram nesting. In instruction of calling subprogram, you can execute the called
subprogram repeatedly for as many as 999 times.
One subprogram should be in a format as follows:
O××××; No. of subprogram
…………;
…………; content of subprogram
…………;
M99; Return to main program
At the beginning of program, there should be a subprogram number specified by the address O.
Instruction M99 for returning main program is essential at the end. M99 does not have to be in an
individual program segment, as the end of subprogram, the following program segment also works:
G90 G00 X0 Y100. M99;
In main program, the program segment for calling subprogram should contain the following
content:
M98 P×××××××;
Here, the later four digits of numbers behind P are used to specify the program number of called
subprogram, and the front three digits are used to specify the repetition time of calling.
M98 P51002; Call No. 1002 subprogram for 5 times
M98 P1002; Call No. 1002 subprogram for 1 time
M98 P50004; Call No. 4 subprogram for 5 times
Subprogram call instruction and motion instruction can be in the same program segment:
G90 G00 X75. Y50. Z53. M98 P40035;
This program segment instructs X, Y, and Z axes to move to the specified position at quick locating
feed speed, and then call and execute No. 35 subprogram for 4 times.

Different from other M codes, M98 and M99 do not send signal to machine tool side when they are
executed.
NC will give out alarm if program No. specified by address P is not detected.
The subprogram cannot call M98 in MDI mode. If it’s required to call a subprogram individually,
you can edit the following program in editing mode, and then execute it in auto run mode.
O×××;
M98 P××××;
M30;

- 36 -
ADT-CNC4840 Milling Controller

2) End of program
At the end of program when there are following codes, it means it’s the end of program.
EIA ISO Meaning
M30 M30 LF The program ends and returns to
CR the beginning of program.
M99 M99 LF End of subprogram
CR
If such end code as above is detected when executing the program, the program will be stopped and
changed to reset status. If it is M30 CR or M30 LF, it will return to the beginning of the program (in
auto way). If it is at the end of subprogram, it returns to the program that calls the subprogram.
3) End of file
EIA ISO Meaning
ER % End of program

Note: If there is no M30 at the end of program but ER(EIA) or %(ISO) is executed, CNC will be
changed to reset status.

1.2 Preparatory function (G code)


1.2.1 List of G codes
G code Group Function
G00 01 Positioning (Quick move)
G01 Linear interpolation (Cutting feed)
G02 Circular interpolation CW(Clockwise)
G03 Circular interpolation CCW(Anti-clockwise)
G04 00 Pause, warrant stop
G17 02 XY plane selection
G18 ZX plane selection
G19 YZ plane selection
G20 06 Imperial data input
G21 Metric data input
G28 00 Return to reference point
G29 Return from reference point
*G40 07 Tool radius compensation cancellation
G41 Left tool radius compensation
G42 Right tool radius compensation
G43 08 Positive tool length offset
G44 Negative tool length offset
*G49 Tool length offset cancellation
*G54 05 Work piece coordinate 1
G55 Work piece coordinate 2
G56 Work piece coordinate 3
G57 Work piece coordinate 4
G58 Work piece coordinate 5
G59 Work piece coordinate 6
G591 Expansion work piece coordinate 7
G592 Expansion work piece coordinate 8
G593 Expansion work piece coordinate 9
G594 Expansion work piece coordinate 10
G595 Expansion work piece coordinate 11
G596 Expansion work piece coordinate 12
G597 Expansion work piece coordinate 13
- 37 -
ADT-CNC4840 Milling Controller
G598 Expansion work piece coordinate 14
G599 Expansion work piece coordinate 15
Macro program instruction (4340 is not developed yet,
G65 00
testing edition)
G73 09 Fixed cycle of deep hole drilling
G74 Fixed cycle of reverse-screw tapping
G76 Fixed cycle of precision boring
*G80 Fixed cycle of cancellation
G81 Fixed cycle of drilling
G82 Fixed cycle of drilling
G83 Fixed cycle of deep hole drilling
G84 Fixed cycle of tapping
G85 Fixed cycle of precision boring
G86 Fixed cycle of precision boring
G87 Fixed cycle of reverse precision boring
G88 Fixed cycle of precision boring
G89 Fixed cycle of precision boring
*G90 03 Absolute value programming
G91 Increment value programming
G98 10 Return to original plane from fixed cycle
G99 Return to R point plane from fixed cycle

Note: Item with * is the default mode value of all groups of G codes for the system.

1.2.2 Interpolation (G00, G01, G02, G03)


1) Quick positioning (G00)
Format :
G00 XY_Z_ ;
XY_Z_: coordinate value, determine whether it is absolute position value or increment position
value according to the mode value of G90 or G91
G00 instruction is used to allow each axis to move to the appointed position at the set quick move
speed. The motion of each axis is not related, which means that the track of tool is a line or a polyline.
Under the G00 instruction, the speed of all axes: X, Y, and Z axes are moved at speed set by parameters,
which is not controlled by the current F value. When all motion axes arrive at end point, the CNC will
consider it as the end of program segment and turn to execute the next one.
Example of G00 program:
Starting point is X-50, Y-75. ; instruction G00 X150. Y25.; and the tool will move in track as
follows:

E n d p o in t

S ta rtin g p o in t

- 38 -
ADT-CNC4840 Milling Controller

2) Linear interpolation (G01)


Format:
G01 XY_Z_F_;
XY_Z_ : refer to as the coordinate value, it is absolute value or increment value according to the status of
G90 or G91 at that time
F : Speed

G01 instruction enables the current interpolation mode to be linear interpolation. The tool moves
from the current position to position appointed by IP, and the track is a line. F specifies the speed of tool
moving along the line, unit in mm/min.
Example of G01 program:
Suppose the current tool is at X-50. Y-75., the following program segment will allow the tool to
move in track as the following picture:
N1 G01 X150. Y25. F100 ;
N2 X50. Y75.;

End point of N2 program segment

End point of N1 program segment

Starting point

3) Circular interpolation (G02/G03)

The following instructions can allow the tool to move along the circular track:
In X--Y plane
G17 { G02 / G03 } X__ Y__ { ( I__ J__ ) / R__ } F__ ;
In X--Z plane
G18 { G02 / G03 } X__ Z__ { ( I__ K__ ) / R__ } F__ ;
In Y--Z plane
G19 { G02 / G03 } Y__ Z__ { (J__ K__ ) / R__ } F__ ;

S/N Content Instruction Meaning


G17 Specify the circular interpolation on X--Y plane
1 Plane selection G18 Specify the circular interpolation on Z--X plane
G19 Specify the circular interpolation on Y--Z plane
G02 CW circular interpolation
2 Direction of circular arc
G03 CCW circular interpolation
End point G90 mode Instruction of 2 axes among coordinate value of end point in current work
position X, Y, Z piece coordinate system
3
G91 mode Instruction of 2 axes among Distance from starting point to end point (with
X, Y, Z direction)
Distance between starting Instruction of 2 axes among I, Distance from starting point to center (with
4 point and center J, K direction)
Radius of circular arc R Radius of circular arc
5 Feed rate F the speed moving along the circular arc

Here, the direction of circular arc, for X--Y plane, is that when viewing the plane from positive to
negative of Z axis. Likewise, for X-Z or Y-Z plane, the viewing direction should be from the positive of
Y or X to the negative of Y or X (applicable to right handed coordinate system, as follows).

- 39 -
ADT-CNC4840 Milling Controller

The end point of circular arc is determined by address X, Y, and Z. In G90 mode (absolute value
mode), address X, Y, and Z give the coordinate value of end point of circular arc at the current
coordinate system. In G91 mode (increment value mode), address X, Y, and Z give the distance between
the current point of tool to end point at the direction of each coordinate axis.

In X direction, address I gives the distance from current point of tool to center. In Y and Z directions,
this distance is specified by address J and K. The sign of I, J, and K values is determined by their motion
directions.

To program a segment of circular arc, other than using specified end point and center positions, we
can also use specified radius and end point position, use address R to specify the radius value, replacing
the address to specify center position. Positive R value is used to program a circular arc of less than 180˚,
and a negative R value is to program a circular arc of more than 180˚. To program a circle, you can only
use the method of specified center.

The track in above picture is programmed in absolute value mode and increment value mode
respectively:
(1) Absolute value mode
G00 X200.0 Y40.0 Z0;
G90 G03 X140.0 Y100.0 I-60.0 F300.0;
G02 X120.0 Y60.0 I-50.0;
or
G00 X200.0 Y40.0 Z0 ;
G90 G03 X140.0 Y100.0 R60.0 F300.0 ;
G02 X120.0 Y60.0 R50.0 ;
(2) Incremental mode
G91 G03 X-60.0 Y60.0 I-60.0 F300.0;
G02 X-20.0 Y-40.0 I-50.0 ;
or
G91 G03 X-60.0 Y60.0 R60.0 F300.0 ;
G02 X-20.0 Y-40.0 R50.0;
The feed speed of circular interpolation is specified by F, and it is the speed the tool moves along the
circular arc at tangent direction.

- 40 -
ADT-CNC4840 Milling Controller

1.2.3 Pause instruction (G04)


Purpose: produce a pause between two program segments
Format: G04 P-
G04 X-
Address P specifies the pause time, if there is no decimal, the minimum unit for instruction is 0.001s.
Address X specifies the pause time, if there is no decimal, the minimum unit for instruction is 1s.
For example: G04 P 1000: pause 1000 milliseconds, equal to 1s
G04 X 1: pause 1s

1.2.4 Plane selection (G17, G18, G19)


This group of instructions is to choose the plane on which the circular interpolation and tool radius
compensation are done. The methods are as follows:
G17………select XY plane
G18………select ZX plane
G19………select YZ plane
If G17, G18, and G19 are in program segment without instruction, the plane does not change.
For example:
G18 X_ Z_ ; ZX plane
X_ Y_ ; plane does not change (ZX plane)
In addition, moving instruction is not related to the plane selection. For example, under the
following instruction, Z axis is not on XY plane and Z axis movement has nothing to do with XY
plane.
G17 Z_ ;
For related instructions for plane selection, please refer to the relevant contents of circular
interpolation and tool compensation instructions.

1.2.5 Instructions of Coordinate System (G53~G59, G591~G599, G92)


1) Machine tool coordinates (G53)
Format: G53 XY_Z_;
XY_Z_: the absolute coordinate value or relative position
If the instruction is executed in G90 mode, the tool moves to the coordinate of machine tool
coordinate system specified by IP_ at quick feed speed. If the instruction is executed in G91
mode, the tool is moved at the increment value of selected coordinate system. G53 instruction
is a modeless instruction, which means that it works only in the current program segment.
The distance between origin of machine tool coordinate system and the reference point is
set by the parameters. Without any special explanation, the reference points of all axes and the
origin of machine tool coordinate system are coincided.

2) Preset work piece coordinate system (G54~G59, G591~G599)


According to the clamp position of work piece on machine tool, the system can preset as
many as 6 work piece coordinate systems (9 coordinate systems for new edition). Set the offset
of each origin of work piece coordinate system from that of machine tool coordinate system
via the LCD panel, and then use the G54~G59, G591~G599 instructions to choose them.
G54~G59, G591~G599 instructions are mode instructions, and they are corresponding to
1#~5# preset work piece coordinate systems respectively, as the following shows:

Preset offset of 1# work piece coordinate system: X-150.000 Y-210.000 Z-90.000


- 41 -
ADT-CNC4840 Milling Controller
Preset offset of 4# work piece coordinate system: X-430.000 Y-330.000 Z-120.000
Coordinate value of end
Content of program segmentpoint at the machine tool Explanation
coordinate system
N1 G90 G54 G00 X50. Y50.; X-100, Y-160 Select 1# coordinate system, and quick
positioning
N2 Z-70.; Z-160
N3 G01 Z-72.5 F100; Z-160.5 Linear interpolation, F is 100
N4 X37.4; X-112.6 (Linear interpolation)
N5 G00 Z0; Z-90 Quick positioning
N6 X0 Y0 A0; X-150, Y-210
N7 G53 X0 Y0 Z0; X0, Y0, Z0 Select machine tool coordinate system
N8 G57 X50. Y50. ; X-380, Y-280 Select 4# coordinate system
N9 Z-70.; Z-190
N10 G01 Z-72.5; Z-192.5 Linear interpolation, F is 100
(mode value)
N11 X37.4; X392.6
N12 G00 Z0; Z-120
N13 G00 X0 Y0 ; X-430, Y-330
Seen from the above examples, we got to know that the purpose of G54~G59 instructions
is to move the origin of coordinate system used by NC to the coordinate of preset value in
machine tool coordinate system. For presetting methods, please refer to the operation parts of
this manual.
Switch on the machine and return to the origin of machine tool, the workpiece coordinate
systems 1~6 are then created. G54 is the initial mode when electrified. The absolute position is
the coordinate value of current coordinate system.
In NC programming of machine tool, except otherwise specified, the IP in interpolation
instructions and other instructions related to coordinate value refers to the coordinate position in
current coordinate system (the coordinate system used when the instructions are executed). In most
conditions, the current coordinate system is one of that of G54~G59. It is rare to use the machine tool
coordinate system directly.

- 42 -
ADT-CNC4840 Milling Controller
3) Programmable work piece coordinate system (G92)
Format: (G90) G92 X_Y_Z_ ;

This instruction builds a new work piece coordinate system, in which the coordinate value of
current point where the tool is located is the value of IP_ instruction. G92 instruction is a modeless
instruction, but the work piece coordinate system built by this instruction is of mode type. Actually,
this instruction also gives an offset indirectly, which is the coordinate value of origin of new work
piece coordinate system in original one. Viewed from functions of G92, we know that the offset is
the difference of tool coordinate value in original work piece coordinate system and the IP_
instruction value. If G92 instruction is used for many times, the offset will be added for each using of
G92 instruction. For each preset work piece coordinate system (G54~G59), this added offset is valid.
New coordinate system of parts is set by using the above instructions, for example, the
coordinate value of tool tip is IP_. Once the coordinate is confirmed, the position of absolute value
instruction is the coordinate value of this coordinate system.
Tool

As the picture shows, take the tool tip


as the starting point of program, and
start G92 instruction at the beginning
of program.

Reference point As the picture shows, take a reference point on


tool holder as the tool start point, and start G92
instruction at the beginning of program. If
moved in accordance with absolute value
instruction in program, the reference point will
move to the specified position. Tool length
compensation should be added and the value is
the distance between reference point and tool
tip.

Use G92 X600.0 Z1200.0 instruction to set the coordinate system (take a reference point on tool
holder as the tool start point).

Note: a. If G92 is used in tool offset to set the coordinate system, the tool length compensation is the
coordinate system set by G92 before adding tool offset.
b. For tool radius compensation, tool offset should be cancelled when using G92 instruction.

For example:
Preset offset of 1# work piece coordinate system: X-150.000 Y-210.000 Z-90.000
Preset offset of 4# work piece coordinate system: X-430.000 Y-330.000 Z-120.000

- 43 -
ADT-CNC4840 Milling Controller

Coordinate value of end


Content of program segment point at the machine tool Explanation
coordinate system
Choose 1# coordinate system and position
N1 G90 G54 G00 X0 Y0 Z0; X-150, Y-210, Z-90
quickly to the origin
Tool does not move, build up new
coordinate system, and the coordinate value
N2 G92 X70. Y100. Z50.; X-150, Y-210, Z-90
of current point in new coordinate system is
X70, Y100, Z50
Quick position to the origin of new
N3 G00 X0 Y0 Z0; X-220, Y-310, Z-140
coordinate system
Choose 4# coordinate system and position
N4 G57 X0 Y0 Z0; X-500, Y-430, Z-170
quickly to the origin (offset)

N5 X70. Y100. Z50.; X-430, Y-330, Z-120 Position quickly to the origin

4) Local coordinate system (G52)


G52 can build a local coordinate system, which is equal to sub coordinate system of G54~G59
coordinate systems.
Format: G52 X_Y_Z_ ;

In this instruction, IP_ gives a offset relatively to the current G54~G59 coordinate system, which
means that IP_ specifies the position coordinate of origin of local coordinate system in the current
G54~G59 coordinate system, even when a G52 instruction has created a local coordinate system
before the G52 instruction is executed. It is also very simple to cancel the local coordinate system, just
use the G52 IP0.

1.2.6 Reference point related instructions (G27, G28, G29)

The establishment of machine tool coordinate system is done by operation of returning to reference
point every time when NC is electrified. Reference point is a fixed point on machine tool, and its
position is determined by the mounting position of block switches of all axes and the origin position of
all axes servo motor. After the machine tool returned to reference point, the coordinate value of
reference point in machine tool coordinate system is X0, Y0, Z0.

Return to reference point automatically (G28)

Format: G28 IP_;


This instruction makes the instruction axis return to reference point of machine tool through the
intermediate point specified by IP at quick positioning feed rate. The intermediate point can be
specified in absolute value mode or increment value mode, which is determined by the current mode.
Generally, this instruction is used to move the work piece out of the processing area after the program
with the purpose of offloading the done parts and feeding the parts waiting to be processed.
When executing G28 instruction before returning to reference point manually, the motion from
intermediate point for each axis is the same as that of returning to reference point manually, and the
direction of motion from the intermediate point is positive.

- 44 -
ADT-CNC4840 Milling Controller
The coordinate value in G28 instruction is saved by NC as intermediate point. On the other hand,
if an axis is not included in G28 instruction, the intermediate point coordinate value of this axis saved
by NC will use the previous value specified in G28 instruction.
For example:
N0010 X20.0 Y54.0;
N0020 G28 X-40.0 Y-25.0; Coordinate value of intermediate point (-40.0,-25.0)
N0030 G28 Z31.0; Coordinate value of intermediate point (-40.0,-25.0,31.0)

The coordinate value of intermediate point is mainly used by G29 instruction.

(Reference point)

Note:
In tool offset mode, tool offset is also effective to G27 instruction. For the safety, it is usually to
cancel the tool offset (radius offset and length offset) before executing G28 instruction.

Return from reference point automatically (G29)


Format: G29 IP-;
This instruction makes the instruction axis return from reference point through the intermediate
point to appointed position at quick positioning feed rate. The position of intermediate point is
determined by previous G28 instruction. Generally, this instruction is used after G28 when the
instructed axis is located at reference point or the second reference point.
In increment value mode, the instruction value is the distance between intermediate point and end
point (instruction position).
G28, G29 application examples:

(Reference point)

Change tool in Point R

Intermediate point

- 45 -
ADT-CNC4840 Milling Controller

G28 X1300.0 Y700.0 ; (program of A→B)


………………………
G29 X1800.0 Y300.0 ; (program of B→C)
The above examples clearly show that in program, it is not required to calculate the detailed
movement from the intermediate point to reference point.

Note: when changing the coordinate system of parts after passing through the intermediate point to
reference point via the G28 instruction, the intermediate point is also moved to the new coordinate
system. After that, when execute the G29 instruction, the positioning is done in appointed position via
intermediate point in new coordinate system.

Reference point return check (G27)

Format: G27 IP_;

This instruction makes the instruction axis move to the position specified by IP at quick positioning
feed rate, and then checks whether the point is the reference point. If so, send out complete signal for the
return of reference point of this axis (light the indicator for reference point arrives). If not, send out an
alarm and stop the program.

1.2.7 Tool compensation (G40, G41, G42, G43, G44, G49)


1) Tool radius compensation
The tool has a size (length, diameter). When processing a part of certain shape, the moving track of
tool will be different due to the difference of tool. If the size data of tool is preset in CNC, the tool track
will then be generated by CNC automatically in the same program, even for different tools. The tool size
data are called as compensation amount (or offset).

the first tool

processing shape

the second tool

compensation amount of first tool

compensation amount of second tool

As the following picture, use the tool of radius R to cut work piece A, the central path of tool is B,
and the distance between B and A is R. tool leaves a certain distance away from work piece A, this is
called as compensation. The programmers build work programs with the tool radius compensation
mode. During the processing, they determine the tool radius and set it in CNC, and the tool path will be
changed to compensation path B.

- 46 -
ADT-CNC4840 Milling Controller

Tool compensation central path

Vector

Compensation and
vector
2) Compensation amount (D code)
This system can set as many as 18 D00-D18 compensations. Compensation refers to the two digits
after the D code in program. The compensation should be set in [Tool compensation] menu.
The range of compensation is set as follows:

Input in mm Input in inch


Compensation 0-±999.999mm 0-±999.999inch

3) Compensation vector
The compensation vector is the 2-dimensional vector, equal to the compensation specified by D
code. The calculation of compensation vector is done within the control unit, and in every program
segment its direction is changed according to the tool path. This compensation vector is done in control
unit so that it is convenient to calculate how much compensation should be given for the tool movement.
Compensation path (central track of tool) is the result of programming path adding or subtracting
(determined by compensation direction) the tool radius.
Compensation vector is always related to the tool. During the programming, it is very important to
know the status of vector.

4) Plane selection and vector


Calculation of compensation is done in plane selected by G17, G18, and G19, which is called
compensation plane. For example, when choosing XY plane, the program uses (X, Y) or (I, J) to execute
the compensation calculation and vector calculation. The coordinate value of axis not in compensation
plane is not influenced.
When using controller of three axes at the same time, only the tool path projected to the
compensation plane is compensated.
The change of compensation plane should be done after canceling the compensation mode. If it is
done in compensation mode, the system will give an alarm and the machine will stop at the same time.

G code Compensation plane


G17 X-Y plane
G18 Z-X plane
G19 Y-Z plane

- 47 -
ADT-CNC4840 Milling Controller
5) G40, G41 and G42
Use G40, G41, and G42 instructions to cancel or execute the tool radius compensation vector.
These instructions are combined with G00, G01, G02, and G03 instructions, defining a mode to
determine the value of compensation vector, direction, and the moving direction of tool.

G code Function
G40 Cancel tool radius compensation
G41 Tool radius left compensation
G42 Tool radius right compensation

G41 or G42 allows the system to enter the compensation mode, and the G40 allows the system to
cancel the compensation mode.

the compensation program is as follows:


6
7

5
30

4
40.0 R4
0. Y
0
3 40 20 R20

2 8
10
20

11
9 X
1

O0007 ;
G0G40G49G80G90;
G0 X0 Y0;
N1 G91 G17 G00 G41 Y20.00 D07 ;
N2 G01 Y40.00 F25.00:
N3 X40.00 Y30.00:
N4 G02 X40.00 Y-40.00 R40.00:
N5 X-20.00 Y-20.00 R20.00:
N6 G01 X-60.00:
N7 G40 Y-20.00:
N8 M30
%
Program segment (1) is called as start-up, and the G41 instruction in this segment turns the
compensation cancellation mode to compensation mode. In the end of this segment, the tool center is

- 48 -
ADT-CNC4840 Milling Controller
compensated at the direction of tool radius perpendicular to the next program path. The tool
compensation is specified by D07, which means the compensation number is set as 7, and the G41
represents the tool path left compensation.

6) Details of tool radius compensation C


This section is to describe the tool radius compensation C in details.
a. Cancellation mode
when the system is electrified/reset or the program has executed M02, M30 instructions, the
system is in tool compensation cancellation mode.
Vector in this mode is always 0, and the central path of tool and the programming path are
consistent. In cancellation mode, G40 should be specified before the end of program.
b. Starting compensation
In cancellation mode, the system enters the compensation mode when the program segment
satisfying the following conditions starts to run.
 Contain G41 or G42 instruction, or control to enter the G41 or G42 mode
 Offset number of tool compensation is 0.
 For the movement of any axis (except I, J, K) on compensation plane, the movement should not
be zero.
In program segments at the beginning of compensation, there should be no circular instruction
G02 and G03; otherwise, it will have an alarm (P/S34). In the starting segment of compensation, read
into two program segments, the first one of which is read and executed, and the second one is read into
the tool compensation buffer area.
Read into two program segments in single program segment mode, execute the first one, and then
stop.
In continuous execution, it is usually pre-read into two program segments, so there are three
program segments in CNC. One is the program segment being executed, and the other two as below are
entering into the buffer area.
Note: the definition of following common glossaries “inside” and “outside” is that: when the
inclination at the crossing point of two moving program segments is larger or equal to 180°, it is called as
“inside”, and when the inclination is within 0-180°, it is called as “outside” (see the following picture):
Work piece side
Inside
Program path

Outside Program path

Work piece side

- 49 -
ADT-CNC4840 Milling Controller

Move along the inside of corner (a≥180°)

(i): Line →Line (ii): Line → Circular arc

Program path
r: compensation

L: Tool center path


In the following picture, the
meanings of SL and C are: Tool center path
S: Single block stop point Program path
L: Line
C: Circular arc
(b) Move along the outside of corner at obtuse angle (180°>a≥90°)

- 50 -
ADT-CNC4840 Milling Controller
(i): Line →Line (ii): Line → Circular arc

Program path

L: Tool center path


Tool center path
Program path
(c) Move along the outside of corner at acute angle (a<180°)

(i): Line →Line (ii): Line → Circular arc

Program path

Tool center path Tool center path


Program path

(d) Move along the outside of corner at less than 1°, line →line (a<1°)

Tool center path

Program path

a<1°

c. Compensation mode
In compensation mode, if you do not appoint two or more non-moving instructions (auxiliary
function or pause, etc.) continuously, the compensation will be executed properly; otherwise, there will
be over cutting or short of cutting. Compensation plane cannot be modified when in compensation mode;
otherwise, it will give out alarm and the tool will stop.

- 51 -
ADT-CNC4840 Milling Controller

Move along the inside of corner (a≥180°)

(i) Line →Line (ii) Line →Circular arc

Program path

Crossing point
Tool center path
Crossing point
Program path
Tool center path

(iii) Circular arc →Line (iv) Circular arc →Circular arc

Program path

Tool center path


Crossing point
Crossing point
Program path
Tool center path

(v) processing <1° inside and enlarging compensation vector


(I) Line →Line

Tool tip center path

Compensation vector

Program path

Considering the following conditions with the same method


(II) Circular arc →Line
(III) Line →Circular arc
(Iv) Circular arc →Circular arc

- 52 -
ADT-CNC4840 Milling Controller

(b) Move along the outside of corner at obtuse angle (180°>a≥90°)


(i) Line →Line (ii) Line →Circular arc

Program path

Crossing point
Tool center path Program path
Tool center path
(ii) Circular arc →Line (iv) Circular arc →Circular arc

Program path

Crossing point Program path


Tool center path Tool center path
(c) move along the outside of corner at acute angle (a<90°)
(iii) Line →Line (ii) Line →Circular arc

Program path

Crossing point
Tool center path Program path
Tool center path
(iv) Circular arc →Line (iv) Circular arc →Circular arc

Program path

Crossing point Program path


Tool center path Tool center path

- 53 -
ADT-CNC4840 Milling Controller

(d) special conditions

(i) end point of circular arc is not on circular arc When the circular arc is not on
end point, the extended line is as
shown in the left picture.
Supposed circular arc Suppose a circular arc comes
across the end point, and the
compensation takes the supposed
Program path end point of circular arc circular arc as vector, the tool
center path is different from the
Extended line of circular arc offset path while considering the
extended line of circular arc.

Center Tool center path

(ii) when without crossing point In the left picture when the
alarm and stop tool radius is small, there
will be a crossing point for
when the compensation is huge the compensation path of
center of circular arc B circular arc. However,
Center of circular arc A when the radius become
when the compensation is small bigger, the crossing point
program path may disappear. The tool
will stop at the end point of
previous program segment
and an alarm may occur.

(iii) the center of circular arc is consistent with As shown in the left picture, an
starting point of end point alarm may occur and the tool will
stop stop at the end point of previous
tool center path program segment.

program path

- 54 -
ADT-CNC4840 Milling Controller
d. Compensation mode
In compensation mode, the system enters the compensation cancellation mode when the program
satisfying any following conditions is executed, and the action of this program segment is called as
compensation cancellation.
 Instruction G40
 The number of tool radius compensation is 0.
When executing the compensation cancellation, circular arc instruction (G03 and G02) cannot be
used; otherwise, it will give out an alarm (P/S34) and the tool will stop.
(a) Move along the inside of corner (a≥180°)
(i) Line →Line (II) Circular arc →Line

Program path

Tool center path

Program path
Tool center path

(b) Move along the inside of corne (90˚≤a≤180°)

(I) Line →Line (II) Circular arc →Line

Program path

Tool center path Program path


Tool center path

- 55 -
ADT-CNC4840 Milling Controller

(c) Move along the outside of acute angle corner (a<90°)

(i) Line →Line (II) Circular arc →Line

Program path

Tool center path

Program path
Tool center path

(d) Move along the outside of acute angle less than 1˚, line →line (a<1˚ =

Tool center path

Program path

a<1˚

e. Change compensation direction in compensation mode


Tool radius compensation G codes (G41 and G42) determine the direction of compensation. The sign
of compensation is as follows:
Sign of compensation
G码

G41 Left compensation Right compensation

G42 Right compensation Left compensation

- 56 -
ADT-CNC4840 Milling Controller
In special occasion, it is able to change the compensation direction in compensation mode, but it is
unable to change the starting program segment and the later program segments. When changing the
compensation direction, there is no way of saying inside and outside. The following compensation is
supposed to be positive.

(i) Line →Line (II) Circular arc →Line

Program path

Program path

Tool center path Tool center path

(iii) Circular arc →Line (iv) Circular arc →Circular arc


Tool center path
Tool center path

Program path

Program path

 If the compensation is executed normally, but there is no crossing point


When using G41 and G42 to change the offset direction from program segment A to B, if it is not
required to compensate the crossing point of path, make a vector at the starting point of program
segment B that is vertical to program segment B.
 Line----Line

Single
segment A Single segment B

Program
path
Tool center
path Compensa
tion vector
Single
segment A
Program
path

Tool center Single segment B


path

- 57 -
ADT-CNC4840 Milling Controller

 Line----Circular arc
Tool center
path

Program
path
Single
segment A
Single segment B

 Circular arc ---- Circular arc

Single segment B
Single
segment A

The end point of circular


arc is not on circular arc

Program
path

Center
Tool center Center
path

 In tool radius compensation, when the length of tool center path is over a circle
Usually, this situation would not happen. However, when G41 and G42 are changed, or when I, J,
or K instruction G40 is used, this situation may happen.
Program
path

At this time, the tool center path is not


a circular arc but a section of arc
between P1 and P2
In some conditions, it may give an
alarm may because of affecting the
check.
If you want the tool to move along the
circle, it should be instructed by
segment.
f. Temporary compensation cancellation

- 58 -
ADT-CNC4840 Milling Controller
In compensation mode, if the following instructions are appointed, the compensation will be cancelled
temporarily. The system will resume the compensation mode automatically later. For detailed operations,
please refer to details of compensation cancellation and compensation starting.
 G28 returns to reference point automatically
In compensation mode, if it is instruction G28, the compensation will be cancelled at intermediate
point and the compensation mode is resumed automatically after the reference point is returned.
Intermediate point

Origin
 G29 returns from reference origin automatically
In compensation mode, if it is instruction G29, the compensation will be cancelled at intermediate
point, and the compensation mode will be resumed automatically in the next program segment.
When executing instruction immediately after G28

Intermediate point

Origin
If the instruction is not executed right after G28
Intermediate point

- 59 -
ADT-CNC4840 Milling Controller

g. Tool radius compensation G code in compensation mode


In compensation mode, when appointing tool radius compensation G code (G41, G42), it will form
a vector that may form right angle with previous program segment, and it is nothing to do with the
processing inside and outside. However, if you appoint this G code in circular arc instruction, you will
not get the correct circular arc.
When using tool radius compensation G (G41, G42) to change the compensation direction, please
refer to (5).
Line---line

including G42 instruction program segment


G24 mode

Circular arc---line

including G42
instruction

G42 mode

h. Instructions for canceling compensation vector temporarily


In compensation mode, if G92 (absolute coordinate programming) is appointed, the compensation
vector will be cancelled. After that, the compensation vector will be resumed automatically.
It is different from compensation cancellation mode, the tool is moved from the crossing point
directly to instruction point of compensation vector cancellation. When resuming in compensation mode,
the tool is also moved directly to the crossing point.
tool center path
point of intersection
point of intersection

G41 mode

Program path

G50 program segment N7


Note: SS represents the point when the tool stops twice in single segment mode.

- 60 -
ADT-CNC4840 Milling Controller
i. Program segment in which the tool does not move
There is no tool movement in the following program segments. In these segments, the tool would
not move even there is crossing point in tool radius compensation mode.
(1) M05:………………… M code output
(2) S21:………………… S code output
(3) G04 X10000:……… Pause
(4) (G17)Z100:……… No moving instruction in compensation plane Not move
(5) G90:………………… Only G code
(6) G01 G91 X0:………… Movement is 0

 Instructions at the beginning of compensation

If there is no tool movement for the instructions at the beginning of compensation, it will not generate the
compensation vector.

 Instructions in compensation mode


When only one program segment without tool movement is instructed in compensation mode, the
vector and tool center path are the same as those when without this program segment.(refer to item (3)
Compensation mode) At this time, the tool movement program segment is executed at the stop point of
single program segment.

Program segment N7 is executed here

However, when the movement of program segment is 0, even only one program segment is
appointed, the tool is still as though having no moving instruction. This will be described in details later.

Two program segments without tool movement instructions should not be executed successively.
Otherwise, it will form a vector with length as compensation and the direction vertical to the moving
direction of previous program segment, which will lead to the over cutting.

- 61 -
ADT-CNC4840 Milling Controller

Program segment N7 and N8 are executed here

Note: SSS means to operate tool using program segment and stop for 3 times.
 When instructing with compensation cancellation
When the program segment instructing with compensation cancellation does not have tool movement
instruction, it will form a vector with length as compensation and the direction vertical to the moving
direction of previous program segment, and the vector will be cancelled in the next moving instruction.

j. In compensation plane, a program segment contains G40 and I-J-K instructions.


 the previous program segment is G41 or G42
Suppose the CNC has instructed the end point of previous program segment to execute movement at I, J
or K direction.

Use G40 program segment, the tool


moves to this position
N1 (G42 mode)

In G42 program segment, the tool


center is moved to X
Program path
Note: the crossing point of tool path calculated by CNC has nothing to do with the appointed processing
inside or outside.

Tool center path

Program path

- 62 -
ADT-CNC4840 Milling Controller
When crossing point cannot be calculated, the tool at end point of previous program segment is moved to
a position that is vertical to the previous program segment.

Tool center path

Program path

 If length of tool center path is over one circle


Tool center path

Program path

In the above picture, the tool center path is not moved along the circle but the circular arc from P1
to P2.
Under certain circumstances, it may as a result cause interference for the check and give an alarm
(P/S41). This will be described later. (To move along the circle, the circular arc instruction should be
separated.)
k. Corner moving
If there are two or more vectors at the end of a program segment, it means the tool is moved at
straight line from a vector to the other vector, which is called corner moving.
If these vectors are almost the same, the corner moving is not executed, and the later vector can be
neglected.

This vector is neglected.

If △Vx≤△V limit
△Vy≤ △V limit

If △VX≤△V limit and △VZ≤ △V limit, the later vector is neglected. △V limit uses the
parameter.

- 63 -
ADT-CNC4840 Milling Controller
If these vectors are inconsistent and generate a movement along the corner, this movement is the
later program segment.

the move belongs to program segment N7, and


therefore the feed rate is equal to that of program
segment N7. If the program segment N7 is G00 mode,
the tool is moved at quick feed rate. If it is G01, G02 or
G03 mode, the tool is moved at cutting feed rate.

However, if the path of next program segment exceeds the half circle, the above functions are not
executed. The reason is that:

Program path

Tool center path

thIf the vector is not neglected, the tool path is as follows:


P0→P1→P2→P3 (Circular arc)→P4→P5→P6→P7
But if the distance between P2 and P3 is neglected, the P3 will be neglected. The tool path is as follows:
P0→P1→P2→P4→P5→P6→P7, circular arc cutting of program segment N6 is neglected.

l. Interference check
Over cutting of tool is called as “Interference”. Interference enable users to pre-check the over
cutting of tool, but this function cannot check out all interferences. Interference check is also done even
there is no over cutting.

 Basic conditions of interference


 The tool path direction is different from that of program path. (the inclination of paths is
90˚-270˚.)
 When processing circular arc, apart from the above conditions, the inclination of starting point
and end point of tool center path has a great difference from that of the program path (above
180˚)

- 64 -
ADT-CNC4840 Milling Controller
Example 1
Tool center path

Program path The difference of two path


directions is big (180˚)

Tool center path

Program path

The difference of two path directions is big (180˚)

Example 2

Tool center path

Program path
Center

(G41)
N5 G01 G91 X8000 Y2000 D01;
N6 G02 Y-1600 X3200 12000 J-8000 D02;
N7 G01 X2000 Y-5000:
(H01 tool radius compensation r1=2000)
(H02 tool radius compensation r2=6000)
In above examples, the circular arc in program segment N6 is within the first quadrant, but after the tool
compensation, it is in the fourth quadrant.

- 65 -
ADT-CNC4840 Milling Controller
 Pretreatment of interference
 Interference incurred by vector movement
When tool compensation program segment A, B and C are executed, it will produce vector V1, V2,V3,
and V4 between A and B, and V5, V6, V7, and V8 between B and C. First, check the latest vector. If
there is interference, they will be cleared automatically. If the vector to be neglected is at the end of
corner, they cannot be cleared.
Interference check:
Between V4 and V5——Interference——V4, V5 cleared
Between V3 and V6——Interference——V3, V6 cleared
Between V2 and V7——Interference——V2, V7 cleared
Between V1 and V8——Interference——V1, V8 cannot be cleared

If a vector has no interference during the check, the later vector is not checked. If the program
segment B is moved along circular arc, the vector interference will produce straight line movement.

(Example 1) tool moves from V1 to V8 in straight line

L V7 V2
V1 S
V8
C
C
V6
Tool center path
V3

A
V5 V4
Program path
C
B

V4, V5: interfere


V3, V6: interfere
If you use the single V2, V7: interfere
segment to stop tool at point V1, V8: Not interfere
A, the tool center will be 01 02
moved to V3.

- 66 -
ADT-CNC4840 Milling Controller
(Example 2) Tool straight line movement is as follows:
Tool path: V1→V2→VY→V8

S
L V2 V7
V1 L
V8
C
C
V6 S
Tool center path
V3

A
V5 V4
Program path
C
B

If you use the single


segment to stop tool at V4, V5: interfere
point A, the tool center V3, V6: interfere
will be moved to V3. V2, V7: Not interfere
Then, start the operation
and move the tool to V7 or 01 02
V8.
 If there is still interference after treatment (1), the tool will stop and give an alarm. If interference occurs after
treatment (1) or there is only one vector at the beginning of the check, the tool will stop after the execution of
previous program segment, and give an alarm (P/S41).
(If executed by single program segment, the tool will stop at the end of the program segment.)
Tool center path

Program path

V2, V5: interfere


V1, V5: interfere

After the interference has neglected vector V2 and V5, the interference still occurs between V1 and V6.
The alarm will be shown and the tool will be stopped immediately.

- 67 -
ADT-CNC4840 Milling Controller
 In fact, there is no interference, but doing the interference check
For example:

 Recess depth is smaller than compensation

Tool center path

Program path Stop

A
B C

Actually, there is no interference, but because the tool is in program segment B, the program
direction is opposite to the path of tool radius compensation, the tool stops and shows an alarm.
 Depth of cut-off trench is smaller than compensation

As example (1), the direction of tool path is opposite to that of program path.

m. It is unable to execute compensation by MDI


When using single segment to execute the stop during the auto execution of NC program (absolute
instruction programming), insert the MD1 operation and then start the auto execution again. The tool
path is as follows:
At this time, transmit the vector of starting point of the next program segment, and generate other
vectors according to the next two program segments. Therefore, compensation from point Pc could be
executed properly.
- 68 -
ADT-CNC4840 Milling Controller

When Pa, Pb, Pc are programmed by absolute instruction, use single segment to execute the stop
after the execution of program segment from Pa to Pb, and move the tool in MDI mode. Vector Vb1
and Vb2 are transferred to V‵b1 and V‵b2, so vector Vc1 and Vc2 of Pb→Pc and Pc→Pd are
calculated again.
However, because vector Vb2 does not have re-calculation, compensation can be executed
correctly after the Pc point.
n. Manual operation
For manual operation in tool tip radius compensation, please refer to the manual operation in
operation chapter.
o. If tool length compensation is executed in tool radius compensation, the compensation of tool radius is
regarded as the compensation change.
p. Notices for compensation
 Instruction compensation
D code is used to specify the compensation number. Once specified, H code is valid until another H
code is specified or the compensation is cancelled. Apart from specifying the compensation in tool
radius compensation, H code can also be used to specify the offset of tool.
 Change compensation
Usually when changing tool, the compensation should be changed in cancellation mode. If
compensation is changed in compensation mode, calculate the new compensation at the end point of
program segment.

- 69 -
ADT-CNC4840 Milling Controller
Positive/Negative of compensation, and tool center path
If the compensation is negative (-), the G41 and G42 in program are exchanged. If the tool center
moves along the outside of work piece, it will move along the inside, and vice versa.
Generally, the compensation is (+) when programming. When tool path is programmed as picture
(a), if the compensation is (-), the tool center movement is as picture (b), and vice versa. In this way, the
same program can be cut into male or female type, and the gap between them can be adjusted by
choosing the compensation. (applicable to the compensation start and cancellation is A type)

 Compensate over cutting by tool radius

 when processing by circular inside of smaller tool radius


When the corner radius is smaller than tool radius, the inside compensation of tool will produce
over cutting, giving the alarm. CNC stops at the starting position of single segment program.

give an alarm and the


Tool center path operation is stopped

Program
path

in single segment operation,


an alarm is given and the
operation is stopped

If CNC does not stop, it will


cause the over cutting

- 70 -
ADT-CNC4840 Milling Controller
 when processing the cut-off trench smaller than radius of tool
Because the tool radius compensation forces the tool center path to move reversely to program path, it
will then generate the over cutting.

Program path

If the operation does not stop, it will


cause the over cutting

 when processing in case of segment difference smaller t han t ool radius


If there is segment difference smaller than tool radius, use the circular processing instruction to
process the segment difference, and the normal tool center path of compensation will be opposite to the
program direction. At this time, neglect the compensation vector and the tool is moved to the second
vector in straight line. The single program is stopped here. If it is not in single segment mode, the
operation will continue. If the segment difference is a straight line, it will not give an alarm but executing
the correct cutting, leaving the parts that are not cut.

- 71 -
ADT-CNC4840 Milling Controller
 If the initial vector of tool is not neglected, it will generate the over cutting
It is usually at the beginning of processing and when the tool radius compensative is effective, the
tool move along Z axis a certain distance away from the workpiece. In this situation, if you want to
divide the move along Z axis into quick feed and cutting feed, please follow the procedures as follows:

N6

Program segment N3 (Z axis moving


instruction) is divided as
follows:
N1 G91G00X50000Y50000H01:
N3 Z-250000:
N5 G01Z-5000F1:
N6 Y10000F2:

Moving instructions in
N3 and N5

N1

If t he select ed plane does not cont ain t he t wo moving inst ruct ion program segment s,
N6 cannot ent er t he buffer area and t he t ool cent er pat h is calculat ed by N1 as t he above
pict ure shows. If t he compensat ion vect or is not calculat ed at t he beginning of
compensat ion, it will t hen generat e t he over cut t ing. It is necessary t o modify t he above
example as follows:
When execut ing N1, program segment N2 and N3 ent er t he buffer area, and t ake
advant age of t he relat ionship of N1 and N2 t o execut e t he correct compensat ion.

- 72 -
ADT-CNC4840 Milling Controller

The moving
direction of
instruction N2
is the same as
that of N6
N1 G91G00X50000Y40000H01:
N2 Y1000:
N3 G01Z-25000F1:
N5 G01Z-5000F1:
N6 Y10000F2:
Moving instructions in N3
and N5

Length compensation G43 G44 G49


G43 G43
Z_H_ or H_
G44 G44
In accordance with the above instruction, move the end position of Z axis an offset, and preset the
difference of supposed tool length in programming and actual used tool length in offset storage;
therefore, it is not required to change the program, users just need to change the compensation value to
use tool of different length to process the parts.
G43, G44 specify the different offset directions, with H code for specifying the offset number.
 Offset direction
G43: Positive offset
G44: Negative offset
No matter it is absolute value instruction or increment value instruction, add the terminal coordinate
value of Z axis moving instruction in program with offset specified by H code while in G43, or deduct
offset specified by H code while in G44, and then take the calculated result as the coordinate value of end
point.
In case the Z axis movement is omitted, it can be taken as the following conditions. When the offset
is a positive value, G43 instruction is to move an offset in positive direction, and G44 is to move an offset
in negative direction.
G43
G91 H_
G44
When the offset is a negative value, it is moved in reverse direction.
G43, G44 are mode G codes, and are valid before encountering other G codes of the same group.
 Designation of offset
H code specifies the offset number, and the corresponding offset is added or deducted with moving
instruction value of Z axis in the program, forming the new Z axis moving instruction. The offset
number can specify H00-H18.
Enter the cuter compensation menu, and preset the corresponding offset number in offset storage.
mm input Inch input
Offset 0~±999.999 0~±99.9999
Offset number 00, which means the corresponding offset of H00 is 0. The corresponding offset of
H00 cannot be set.
 Cancel cutter length compensation; use G49 or H00 to cancel the cutter compensation. After
G49 or H00 instruction, cancel the compensation immediately.
 Example of cutter length compensation
- 73 -
ADT-CNC4840 Milling Controller
 Cutter length compensation (Processing #1, #2, and #3 holes)

Actual position
Compensation
Programmin
value
g position

Offset-4.0

N1 G91 G00 X120.0 Y80.0 :…………………(1)


N2 G43 Z-32.0 H01:……………………… (2)
N3 G01 Z-21.0:…………………………… (3)
N4 G04 P2000:…………………………… (4)
N5 G00 Z21.0:…………………………… (5)
N6 X30.0 Y-50.0 :………………………… (6)
N7 G01 Z-41.0 :…………………………… (7)
N8 G00 Z41.0 :…………………………… (8)
N9 X50.0 Y30.0 :………………………… (9)
N10 G01 Z-25.0 :………………………… (10)
N11 G04 P2000 :………………………… (11)
N12 G00 Z57.0 H00 :……………………… (12)
N13 X-200.0 Y-60.0 :……………………… (13)
N14 M30:
Note: When changing offset number to change the offset, it only changes for the new offset value,
not adding new offset and old compensation value.
H01………………………Offset 20.0
H02………………………Offset 30.0
G90 G43 Z100 0 H01………Z moved to 120..0
G90 G43 Z100 0 H02………Z moved to 130.0

- 74 -
ADT-CNC4840 Milling Controller
1.2.8 Hole processing cycle (G73~G89)
Fixed cycle of hole processing allows functions that should be done with many program segments in
other methods to be done in just one program segment. Table 7.1 lists all fixed cycles of hole processing.
Generally, one fixed cycle of hole processing finishes the following 5 operations (see Picture 7.1):
1. X, Y axis quick positioning
2. Z axis positioned to R point quickly
3. Hole processing
4. Down-hole motion
5. Z axis returns to R point
6. Z axis returns to original point quickly
Table 7.1 Fixed cycle of hole processing
Working Motion Return Motion
G code Down-hole motion Application
(Z negative) (Z positive)
G73 By times, cutting feed - Quick positioning feed High speed deep-hole
drilling
G80 - - - Cancel fixed cycle
G81 Cutting feed - Quick positioning feed Common drilling cycle
G82 Cutting feed Pause Quick positioning feed Drilling or rough boring
G83 By times, cutting feed - Quick positioning feed Deep hole drilling cycle
G84 Cutting feed Pause-Spindle reverse Cutting feed Right screw tapping
G85 Cutting feed - Cutting feed Boring cycle
G86 Cutting feed Spindle stop Quick positioning feed Boring cycle
G88 Cutting feed Pause-Spindle stop Manual Boring cycle
G89 Cutting feed Pause Cutting feed Boring cycle

Picture 7.1
Original point

1. Positioning

2. Z axis
moves to R 6. Z axis returns to original
point quickly point quickly

3. hole
processing 5. Z axis returns to R point

4. hole
bottom
motion

- 75 -
ADT-CNC4840 Milling Controller
The instructions that influence the execution of instruction for hole processing fixed cycle include
G90/G91 and G98/G99 instructions. Picture 7.2(a) and 7.2(b) show the influence of G90/G91 on
instruction for hole processing fixed cycle.

G90 (absolute value instruction) G91 (Increment instruction)


Picture 7.2 (a) Picture 7.2 (b)
Original point Original point

R point R point

Z point Z point

G98/G99 determines whether the fixed cycle returns to R point or the original point after the hole
processing. In G98 mode, Z axis returns to the original point after the hole processing, while in G99
mode, it returns to R point.
Generally, if the hole to be processed is on a flat plane, we can use G99 instruction, because in G99
mode, returning back to R point will perform the positioning of next hole. In general programming, R
point is very close to the surface of work piece, which can shorter the time for processing the part.
However, if the surface of work piece is higher than boss or bar of hole being processed, it is possible
that the tool and work piece may collide if G99 is used. Therefore, G98 should be used to ensure that Z
axis returns to original point and starts positioning the next hole. This way may be safer. See Picture 7.3
(a) and 7.3 (b).

G99 (return to R point) G98 (return to original point)

Picture 7.3 (a) Picture 8.3 (b)


Original point Original point
Next hole positioning

R point next hole positioning


R point

Z point Z point

Hole processing parameters are given after G73/G74/G76/G81~G89, and the format is:
G××X___ Y___ Z___ R___ Q___ P___ F___ K___ ;
G×× : Hole processing methods
X___ Y___ Z___ : position parameters of hole being processed
R___ Q___ P___ F___ : Processing parameters of hole
K___ : repeat time

- 76 -
ADT-CNC4840 Milling Controller
Processing method G See table 7.1

Specify the location of hole in way of increment value or absolute value, the
Location parameter X, Y
track and speed of tool to hole being processed is the same as those of G00
Specify the location of hole bottom along the direction of Z axis in way of
Location parameter Z absolute value, and the distance from R point to hole bottom in way of
increment value
Specify the location of R point along the direction of Z axis in way of absolute
Hole processing parameter R
value, and the distance from original point to R point in way of increment value
To specify the feed amount of deep hole drilling cycle G73 and G83, and the
Hole processing parameter Q offset of fine boring cycle G76 and reverse boring cycle G87 (it is increment
value instruction no matter in G90 or G91 mode)
Used in fixed cycle that has pause action in hole bottom operation to specify the
Hole processing parameter P
pause time, unit in second
To specify the cutting feed rate of fixed cycle; in fixed cycle, the motion from
original point to R point and from R point to original point is run at quick feed,
Hole processing parameter F the motion from R point to Z point is run at cutting feed speed specified by F,
but the motion from Z point to R point may be run at rate specified by F or the
quick feed rate in accordance with the fixed cycle
Specify the repeat time of fixed cycle at the current positioning point. If K is not
Repeat time K specified, NC will consider k=1; if K=0, the fixed cycle will not be performed
at the current point.
Because the hole processing way specified by G×× is in mode way, the hole processing mode will continue if you
do not change the current hole processing mode or cancel the fixed cycle. G instructing that uses G80 or 01 can cancel
the fixed cycle. Hole processing parameters are also in mode way, it does not change before being changed or the fixed
cycle is cancelled, even when the hole processing mode is changed. We can specify or change any of the hole
processing parameters when specifying a fixed cycle or in any time when executing the fixed cycle. Repeat time K is
not a mode value, it is only given when repeat is needed. Feed rate F is a mode value, which could be retained even
when the fixed cycle is cancelled. If NC system is reset when executing the fixed cycle, the mode and parameters of
processing hole, as well as the repeat time K would be cancelled.

- 77 -
ADT-CNC4840 Milling Controller

The following examples would make you understand the above contents better:
S/N Content of Program Note
S____ M03
1 Specify the rotating speed and instruct the main axis to rotate clockwise
G81X__Y__Z__R__F__K Go to appointed point of X and Y quickly, and process in hole processing mode
__ specified by G81 with processing parameters specified by Z, R, F for K times.
2
At the beginning of executing fixed cycle, Z, R, and F are the necessary hole
processing parameters.
Y__ X axis does not move, Y axis goes to appointed point quickly for processing the
3 hole, the hole processing parameters and processing mode retain the mode
value in 2. The K value in 2 does not work.
G82X__P__K__ Hole processing mode is changed. Hole processing parameter Z, R, and F
4 remain the mode value. Give the value of hole processing parameter P and
specify the repeat time K.
G80X__Y__ Fixed cycle is cancelled, and all hole processing parameters except F are
5
cancelled.
G85X__Y__Z__R__P__ For fixed cycle is cancelled when executing 5, all necessary processing
6 parameters except F should be specified again, even they have no any change
comparing with the original value.
X__Z__ X axis is located to instruction point for processing the hole, and the hole
7
processing parameter Z is changed in this program segment.
G89X__Y__ Locate to XY instruction point to process the hole, and the hole processing
8
mode is changed to G98. R and P are specified by 6, while Z is specified by 7.
G01X__Y__ Fixed cycle mode is cancelled, all hole processing parameters except F are
9
cancelled.
In the following diagrams, we use the following modes to show the feed of each segment:
Move at quick feeding rate
Move at cutting feeding rate
Manual feed

- 78 -
ADT-CNC4840 Milling Controller

 G73 (High-speed deep hole drilling cycle)


Format: G73 X_ Y_ Z_ R_ Q_ F_

Picture 8.4 (a) Picture 8.4 (b)

Original point Original point


R point R point

Z point Z point

In high-speed deep hole drilling cycle, the feed from R point to Z point is done by segment. After each cutting feed,
Z axis will be uplifted a certain distance before performing the cutting feed of next segment. The uplift distance of Z axis
is d, which is specified by 531# parameter. The depth of each feed is specified by hole processing parameter Q. This
fixed cycle is mainly used in processing the hole with small Calibre-Depth Ratio (such asΦ5, 70 in depth). After the

 G74 (Reverse thread tapping cycle)


cutting feed of each segment, the action of Z axis uplifting is to cut the scraps.

Format: G74 X_ Y_ Z_ R_ F_(D_)

X_Y_: thread position


Z_: depth of thread
R_: original point of feeding and cutter withdrawal
F_(D_): Calculate the feed rate according to the pitch or give out the pitch distance directly by D_

Picture 8.10 (a) Picture 8.10 (b)


Original point Original point
Main axis Main axis Main axis Main axis
reverse reverse reverse reverse
rotation rotation rotation rotation
R point R point

Pause Pause
Z point Z point
Main axis Main axis
Pause positive Pause positive
rotation rotation

Note: In G74 and G84 cycles, the function of feed rate override and feed hold will be neglected, which means the
feed rate will be kept at 100%. It should not be stopped in midway before a fixed cycle is executed. Before the cycle,
it is required to instruct to rotate in main axis tapping direction.

- 79 -
ADT-CNC4840 Milling Controller

 G80 (Cancel fixed cycle)


Once G80 instruction is executed, fixed cycle (G73, G74, G76, G81~G89) will be cancelled, parameters of R
point and Z point, as well as all hole processing parameters except F will be cancelled. In addition, G code in 01 group
will also have the same function.

 G81 (Drilling cycle)


Format: G81 X_ Y_ Z_ R_ F_

Picture 8.7 (a) Picture 8.7 (b)


Original point Original point

R point R point

Z point Z point

G81 is the most simple fixed cycle, it is executed as follows: X, Y locating, Z axis moved to R point
quickly and fed to Z point at F speed, and then returned to original point (G98) or R point (G99)

 G82 (Drilling cycle, rough boring cycle)


quickly, without hole bottom action.

Format: G82 X_ Y_ Z_ R_ P_F_

Picture 8.8 (a) Picture 8.8 (b)


Original point Original point

R point R point

pause pause
Z point Z point

G82 has a pause action at the hole bottom, and apart from this, it is the same as G81. The pause at
the bottom of hole can improve the precision of hole depth.

- 80 -
 G83 (Deep hole drilling cycle)
ADT-CNC4840 Milling Controller

Format: G83 X_ Y_ Z_ R_ Q_ F_
Similar to G73 instruction, the feeding from R point to Z point in G83 instruction is also done by
segment. The difference is that after the feed of each segment, Z axis is returned to R point, and then
moved at quick feeding rate to d above the feeding origin of the next segment and start the feeding
motion of next segment. The feeding distance of each segment is specified by hole processing parameter
Q, which is always the positive value. The value of d is given by 532# machine parameters. See Picture
8.9 :

Picture 8.8 (a) Picture 8.8 (b)


Original point Original point
R point R point

Z point Z point

 G84 (Tapping cycle)


Format: G84 X_ Y_ Z_ R_ F_(D_)

X_Y_: thread position


Z_: depth of thread
R_: original point of feeding and cutter withdrawal
F_(D_): Calculate the feed rate according to the pitch or give out the pitch distance directly by D_

Picture 8.10 (a) Picture 8.10 (b)


Original point Original point
Main axis Main axis
positive rotation Main axis Main axis
positive rotation
positive rotation positive rotation
R point R point

Pause Pause
Z point Z point
Main axis Main axis
reverse reverse
Pause rotation Pause rotation

Note: In G74 and G84 cycles, the function of feed rate override and feed hold will be neglected, which means the
feed rate will be kept at 100%. It should not be stopped in midway before a fixed cycle is executed. Before the cycle, it
is required to instruct to rotate in main axis tapping direction.

- 81 -
ADT-CNC4840 Milling Controller

7)G85 (Boring cycle)


Format: G85 X_ Y_ Z_ R_ F_

This fixed cycle is very simple, it is executed as follows: X, Y locating, Z axis moved to R point
quickly and fed to Z point at speed specified by F, and then returned to R point at specified speed, or if in
G98 mode, returned to R point and then to the original point quickly.

Picture 8.14 (b) Picture 8.14 (b)


Original point Original point

R point R point

Z point Z point

 G86 (Boring cycle)


Format: G86 X_ Y_ Z_ R_ F_
This fixed cycle is executed similarly to G81. what is different is that in G86 when the tool is fed to
hole bottom, the main axis will stop, and when it returns to R point or original point quickly, the main
axis will rotate at the original speed in the same direction.

- 82 -
 G88 (Boring cycle)
ADT-CNC4840 Milling Controller

Fixed cycle G88 is provided with manual return function for fixed cycle of drilling (as picture
shows):

Picture 8.14 (a) Picture 8.14 (b)


Original point Original point

Main Main
R point axis R point axis
rotation rotation
Main axis Main axis
stops after Z point stops after Z point
the pause the pause

 G89 (Boring cycle)


Pause at hole bottom is added in this fixed cycle basing on G85. See Picture 8.15:

 Notices for using fixed cycle of hole processing


a. When programming, it is required to make S and M codes to instruct the main axis to rotate before the
fixed cycle instruction.
M03 ; main axis is rotated clockwise
.
.
G□□…… ; Correct
.
.
M05 ; main axis stops
G□□……; incorrect (it is required to have instruction M03 or M04 before this
program segment)
b. In mode of fixed cycle, the program segment included X, Y, Z, R will execute the fixed cycle. If a
program segment does not include any of the above address, the fixed cycle is not executed in this
program segment, address X in G04 is excluded. In addition, address P in G04 could not change the P
value in hole processing parameters.
G00 X__ ;
G81 X__ Y__ Z__ R__ F__ K__ ;
; (do not execute the hole processing)

- 83 -
ADT-CNC4840 Milling Controller
F__; (do not execute the hole processing, F value is upgraded)
M__; (do not execute the hole processing, only execute the auxiliary function)
G04 P__; (do not execute the hole processing, use G04 P__ to change the hole processing
data P)
c. Hole processing parameter Q and P should be specified in program segment, in which the fixed cycle is
executed; otherwise, the Q and P values of instruction would be invalid.
d. When executing the fixed cycle (such as G76 and G84) that contains main axis control, as the tool
starts cutting and feeding, it is possible that the main axis may not have achieved the appointed rotation
speed. In this situation, it is required to add G04 pause instruction during the hole processing.
e. As it is described, the G code of 01 group can also be used to cancel the fixed cycle. Therefore, do not
write the fixed cycle instruction and G code of 01 group in the same program segment.
f. If an M code is specified in program segment for executing fixed cycle, M code will be executed at the
same time when the fixed cycle is executing the positioning. The signal of completion of M
instruction execution will be given out as Z axis returns to R point or the original point. When using
K parameter to instruct repeating the execution of fixed cycle, the M code in the same program
segment is executed when executing the fixed cycle at the first time.
g. In mode of fixed cycle, tool offset instruction G45~G48 will be neglected (not executed).
h. When the switch of single program segment is set in upper position, the fixed cycle will stop after
executing X, Y positioning, feeding to R point quickly and returning from hole bottom (to R point or
original point). This is to say you have to press the cycle activate button for 3 times to complete the
hole processing. Within these 3 times of pause, the first two times are in feed holding state, while the
last one is in stop state.
i. When executing G74 and G84 cycles, if you press feed holding button when Z axis is moving from R
point to Z point and from Z point to R point, the feed holding indicator will be on immediately, but the
machine would not stop and go to holding state until Z axis returns to R point. In addition, in G74 and
G84 cycles, feed rate switch is not valid, and the feed rate is fixed at 100%.

- 84 -
ADT-CNC4840 Milling Controller

 Examples of using tool length compensation and fixed cycle


Reference point

#1~6 Drill ¢10 hole


#7~10 Drill ¢20 hole
#11~13 Bore ¢95 hole (50MM in depth)

Returning
position

Position of starting point

- 85 -
ADT-CNC4840 Milling Controller

The value of offset in number 11 is 200.0, number 15 is 190.0, and number 31 is 150.0. The program
is as follows:
N001 G92 X0 Y0 Z0 ; the coordinate system is set at the reference point.
N002 G90 G00 Z250.0 T11 M6; change the tool.
N003 G43 Z0 H11 ; perform plane tool length compensation at the original point.
N004 S30 M3 ; main axis is started.
N005 G99 G81 X400.0 Y-350.0
Z-153.0 R-97.0 F120.0 ; process #1 hole after the positioning.
N006 Y-550.0 ; process #2 hole after the positioning, and then return to plane of R point.
N007 G98 Y-750.0 ; process #3 hole after the positioning, and then return to plane of original point.
N008 G99 X1200.0 ; process #4 hole after the positioning, and then return to plane of R point.
N009 Y-550.0 ; process #5 hole after the positioning, and then return to plane of R point.
N010 G98 Y-350.0 ; process #6 hole after the positioning, and then return to plane of original point.
N011 G00 X0 Y0 M5 ; return to reference point and the main axis stops.
N012 G49 Z250.0 T15 M6 ; Cancel the tool length compensation, and change the tool.
N013 G43 Z0 H15 ; perform tool length compensation on plane of original point.
N014 S20 M3 ; main axis starts.
N015 G99 G82 X550.0 Y-450.0 ;
Z-130.0 R-97.0 P30 F70; process #7 hole after the positioning, and then return to plane of R point.
N016 G98 Y-650.0 ; process #8 hole after the positioning, and then return to plane of original
point.
N017 G99 X1050.0 ; process #9 hole after the positioning, and then return to plane of R point.
N018 G98 Y-450.0 ; process #10 hole after the positioning, and then return to plane of original
point.
N019 G00 X0 Y0 M5 ; return to reference point and the main axis stops.
N020 G49 Z250.0 T31 M6 ; Cancel the tool length compensation, and change the tool.
N021 G43 Z0 H31 ; perform tool length compensation on plane of original point.
N022 S10 M3 ; main axis starts.
N023 G85 G99 X800.0 Y-350.0 ;
Z-153.0 R47.0 F50 ; process #11 hole after the positioning, and then return to plane of R point.
N024 G91 Y-200.0 ; process #12, #13 hole after the positioning, and then return to plane of R point.
Y-200.0 ;
N025 G00 G90 X0 Y0 M5 ; return to reference point and the main axis stops.
N026 G49 Z0 ; Cancel the tool length compensation.
N027 M30 ; % Program stops.

- 86 -
ADT-CNC4840 Milling Controller

1.3 Auxiliary function (M, S, T)


The machine tool uses S code to program the rotation speed of main axis, and T code to program
the tool selection. Other programmable auxiliary functions are achieved by M code.

1.3.1 M code
List of M code:
M code Function
M01 Stop program
M03 Rotate main axis clockwise
M04 Rotate main axis anti-clockwise
M05 Stop main axis
M06 Change tool instruction
M08 Open the cooling
M09 Close the cooling
M32 Enable the lubrication
M33 Disable the lubrication
M30 Program ended and returned to the beginning
M98 Call for sub-program
M99 Sub-program ended and returned/repeat the operation
M56 Expansion M code output control (refer to the definition of output interface connection)
M57 Expansion M code output control (refer to the definition of output interface connection)
M58 Expansion M code output control (refer to the definition of output interface connection)
M59 Expansion M code output control (refer to the definition of output interface connection)
M10 Expansion M code output control (refer to the definition of output interface connection)
M11 Expansion M code output control (refer to the definition of output interface connection)
M20 Expansion M code output control (refer to the definition of output interface connection)
M21 Expansion M code output control (refer to the definition of output interface connection)
M12 Expansion M code output control (refer to the definition of output interface connection)
M13 Expansion M code output control (refer to the definition of output interface connection)
M14 Expansion M code output control (refer to the definition of output interface connection)
M15 Expansion M code output control (refer to the definition of output interface connection)
M16 Expansion M code output control (refer to the definition of output interface connection)
M17 Expansion M code output control (refer to the definition of output interface connection)
M18 Expansion M code output control (refer to the definition of output interface connection)
M19 Expansion M code output control (refer to the definition of output interface connection)
M40 Expansion M code output control (refer to the definition of output interface connection)
M41 Expansion M code output control (refer to the definition of output interface connection)
M42 Expansion M code output control (refer to the definition of output interface connection)
M43 Expansion M code output control (refer to the definition of output interface connection)
M44 Expansion M code output control (refer to the definition of output interface connection)
M45 Expansion M code output control (refer to the definition of output interface connection)
M46 Expansion M code output control (refer to the definition of output interface connection)
M47 Expansion M code output control (refer to the definition of output interface connection)
M48 Expansion M code output control (refer to the definition of output interface connection)
M49 Expansion M code output control (refer to the definition of output interface connection)
M50 Expansion M code output control (refer to the definition of output interface connection)
M51 Expansion M code output control (refer to the definition of output interface connection)
M66 Expansion M code output control (refer to the definition of output interface connection)

- 87 -
ADT-CNC4840 Milling Controller
M67 Expansion M code output control (refer to the definition of output interface connection)
M64 Expansion M code output control (refer to the definition of output interface connection)
M65 Expansion M code output control (refer to the definition of output interface connection)
M62 Expansion M code output control (refer to the definition of output interface connection)
M63 Expansion M code output control (refer to the definition of output interface connection)
M60 Expansion M code output control (refer to the definition of output interface connection)
M61 Expansion M code output control (refer to the definition of output interface connection)
M88 Pn Test whether the level signal of waiting IO (IN n) is m (high, low)
Lm
M89 Pn Output OUT n, level is m, output in t milliseconds delay
Lm Qt

In machine tool, the function of M code can be classified as two categories: one is to control the
execution of program, and the other is used for IO operation to control the execution of auxiliary
devices such as main axis and cooling system.
M code for controlling program
The M codes for controlling program include M00, M30, M98, and M99. Their functions are
explained as follows:
M00………program stops. NC stops the execution of program when executing to M00. After the
reset, you can press start button to continue executing the program.
M30………program ends and returns to the beginning of program.
M98………Call the subprogram.
M99………Subprogram ends and returns to the main program.
Other M codes
M03………main axis is rotated clockwise. Use this instruction to make the main axis to rotate
anti-clockwise (CCW) at the current appointed rotation speed.
M04………main axis reversal; use this instruction to make the main axis to rotate clockwise (CW)
at the current appointed rotation speed.
M05………main axis stops.
M06………start changing tool; M06 T02 is to change the No. 2 tool
M08………Cooling open
M09………Cooling closed
M32………lubrication opened
M33………lubrication closed
M88………specify input IO to judge the level; if it's the same, the execution will continue; or
otherwise stop and wait. If level signal is not specified, it’s default as low level signal. For example, M88
P0 L1 waiting IN0 is high level; otherwise, wait all the time.
M89………specify output IO to judge the appointed level; if level signal is not specified, it’s default
as low level. If Q value is specified, this operation will output IO signal with Q milliseconds delay. For
example: M89 P5 L0, specifies OUT5 to output low level.
Note:
 When the moving instruction and M are in the same program segment, M instruction is executed first.
 If the program has many M codes in the current line, only one code is valid, which is the one defined at the very end.

- 88 -
ADT-CNC4840 Milling Controller
1.3.2 S code
The rotation speed instruction of main axis is given by S code, which is mode state, meaning once the
rotation speed is specified, it will be effective all the time until the mode value of the other S code is
changed.
The maximum value of S instruction is restricted by the maximum main axis rotation speed set by
parameter P5.020.
S instruction has three output modes, which are influenced by parameter P2.049 (main axis specifies
the interface axis number), P1.061 (frequency-changing control mode), as follows:
P2.049 set as non 0:
It means the current main axis is at AB-phase pulse control mode. At this time, the S value is set
by main axis coder to determine the pulse frequency.
P2.049set as 0, P2.061set as 1:
Frequency-changing control mode, the communication with frequency-changing uses 4 IO
(OUT23~OUT20) shifts. Four shifts form 16 codes, which means the S instruction value is
S00~S15;
P2.049 set as 0, P2.061 set as 0:
Frequency-changing analog control mode, the ratio of S value and the maximum rotation speed
set by parameter P5.020 plus 10V, and change over to get the analog voltage value; S instruction can
output analog value after having specified to execute M03 or M04;

1.3.3 T code
Tool library of machine tool uses arbitrary way of tool selection. The two digit T code (T××)
specifies the tool number, and it is not necessary to know which tool set the tool is in. The range of
address T can be any integer among 1~99.
Warning:
Tool table should be set correctly. If it is inconsistent with the actual condition, it will damage the
machine tool and bring unexpected results.

- 89 -
ADT-CNC4840 Milling Controller

1.4 Macro
1.4.1 Variable instruction
The address values in program are not described in fixed values but in variable. When running the
program, variable is quoted with the purpose of increasing the universal property of program. This is
called the variable instruction.

Instruction format:
#△△△=○○○○○○○○○ or #△△△= [Expression]

Details:
(1) Expression of variable:

(a) # m ...... M=value formed by 0~9 #100


(b) # [f]…… f represents the following
meanings
Numerical value m 123
Variable #543
Expression #110+#119
-(symbol) expression -#120
Function expression SIN [#110]

 Standard operational signs include +, -, ×, /


 When function expression is neglected, the function cannot be executed.
 The sign of variable should not be negative, for example,#-100 is illegal.
 The following are the wrong expressions of variable:
Wrong Correct
#6/2 → # [6/2]
#-[#1] → # [-#1]
#――5 → # [- [-5]]
(2) Kind of variable

Kind Variable address Description of function


Global #100~#199  Can be called by main program and sub
variable #500~#999 program
 #100~#199 is non-maintained variables and
will be cleared to 0 once the system is
electrified again.
 #500~#999 is maintained variable, and the
value will be retained after the system power
down.
Local #1~#32 can be called within the same program
variable
System Not available
variable

- 90 -
ADT-CNC4840 Milling Controller
(3) quotation of variable
(a) Except O, N and / (slash)
(b) specified as variable directly
G01X#1Y#100
(c) take complementary number for the variable directly
G01X-#2
(d) variable defines the variable
#3=-#105; take the complementary number of #105 value and assign it
directly to #3
#4=1000; assign 1000 to #4 directly
(e) use expression to assign the value
#1=#3+#2-100; the value of #1 is the result of #3+#2-100
X[#1+#3+1000]; the value of X is the calculation result of expression
[#1+#3+1000]

 Assigning value by function and by expression should not be in the same line, they should be
written separately.
Wrong Correct
X#1=#3+100 → #1=#3+100
X#1
 For [ ] (bracket) calculation, as many as 5 layers can be embedded.
#543=-[[[[[#120]/2+15.]*3-#100]/ #520+#125+#128]* #130+#132
 The value of variable should be within 0~±9999999 (7-digit effective figure). If it exceeds the
maximum value, the error of calculation will be big.

- 91 -
ADT-CNC4840 Milling Controller

1.4.2 Macro program call


using calling function of macro
Function and purpose
The call of macro program is the same as that of sub program. When the macro program is
calling, it can transfer some variable values to sub program. This is different from the call of
M98 sub-program.
The following G codes are instructions for calling macro programs:
G code Function
G65 simple call of macro program
G66 macro program calling mode A (Moving instruction call)
G661 macro program calling mode B (each segment call)
G67 cancel the macro program calling mode

Details:
1) Specified by G66 (or G661) instruction, and before G67 (Cancel) instruction, the macro
program specified after the execution of single segment with move instruction (or each single
segment) will be called.
2) In the same program, G66 (or G661), G67 instructions should be used correspondingly in pair.
Calling command of macro program
Function and purpose
Calling command of macro program includes simple call, and call mode (A&B) of single segment
fixed call.

1. Simple call

To sub-program

To main program

The macro program is the same as sub-program, ended with M99.

Format specification:

G65 P_ L_ < argument >;


P_ : No. of sub program
L_ : Repeat time

The function of < argument > in G65 is one of the methods that the main program uses address to
transfer parameters to sub program. This method uses local variable to transfer, and the description
of argument is as follows:

- 92 -
ADT-CNC4840 Milling Controller
Argument format:
Format description:
A_B_C_...X_Y_Z_
Details:
1) Except G,L,N,O,P, all addresses can be specified as argument.
2) Addresses that are not required to be transferred can be neglected.
3) The address information occurs in G65 instruction is considered as the argument of G65.
For example: G65P0002N100G01G90X100.Y200.F400R1000,G01 instructions are not
executed, and all addresses are considered as the argument of G65.
4) The comparison of addresses specified by argument and the local variable number is as
follows:

Address Variable No. G65, G66, G661


A #1 ○
B #2 ○
C #3 ○
D #7 ○
E #8 ○
F #9 ○
G × ×
H #11 ○
I #4 ○
J #5 ○
K #6 ○
L × ×
M #13 ○
N × ×
O × ×
P × ×
Q #17 ○
R #18 ○
S #19 ○
T #20 ○
U #21 ○
V #22 ○
W #23 ○
X #24 ○
Y #25 ○
Z #26 ○

○: Available
×: Not available

- 93 -
ADT-CNC4840 Milling Controller

2. Mode call A (Move instruction call)

To sub-program

To sub-program To main program

Between G66 and G67, when the single segment with move call is executed, the appointed macro
sub-program will be called and executed. The time of execution is the time specified by L.
Format description:

G66 P_ L_< argument >;


P_ : No. of sub program
L_ : Repeat time
Details:
1) Specified by G66 instruction, and before G67 (Cancel) instruction, the macro sub-program
specified by G66 will be called automatically after the execution of program segment with
move instruction.
2) In the same program, G66 and G67 instructions should be specified in pair. If G66 instruction
is not executed first before G67, the system will give a warning.
3) The address information occurs in G66 instruction segment is considered as the argument of
G65. For example: G66P0002N100G01G90X100.Y200.F400R1000,G01 instructions are not
executed, and all addresses are considered as the argument of G66.

- 94 -
ADT-CNC4840 Milling Controller

(Example) Drilling cycle

To sub-program

To sub-program

To main program

argument R
sub-program

speed F
argument Z
sub-program

sub-program

 G66 instruction executes the sub-program for the first time, and the later move instruction will
call and execute the sub-program automatically.
 Once the G67 instruction takes effect, the sub-program will not be executed any more.

3. Mode call B (Call in every single segment)

Between G661 and G67 instructions, each single segment of instruction will call the appointed
macro sub-program unconditionally.
Format description:

G661 P_ L_< argument >;


P_ : No. of sub program
L_ : Repeat time
Details:
1) In G661 mode, except O, N and G codes of single segment of each instruction, all are used as
argument.
2) The address information occurs in G661 instruction segment is considered as the argument of
G661. For example:
G661P0002N100G01G90X100.Y200.F400R1000,G01 instructions are not executed, and all
addresses are considered as the argument of G661.

- 95 -
ADT-CNC4840 Milling Controller

1.4.3 Variable
Function and purpose
Variable is a useful function for macro, which is divided into four kinds, local variable, global
non-maintained variable, global maintained variable, and system variable. These variables make it
convenient and universal when compiling the macro.

Use of multivariable
 Macro calls the variable, and the variable number can be multiple or specified by expression. As
the following examples show:
#1=10 For #1=10,#[#[#1]]=#[#10]
#10=20 For #10=20,#[#10]=#20
#20=30 Hence #5=#20 or #5=30
#5=#[#[#1]];

#10=5 For #1=10,#[#[#1]]=#[#10]


#10=20 For #10=20,#[#10]=#20
#20=30 Hence #20=#5 or #20=1000
#5=1000
#[#[#1]]=#5

 Examples of specifying the multivariable:


#10=5 ##10 is the same as #[#10]
#5=100
#6=##10

 use expression to replace as number:


#10=5
#[#10+1]=1000 #6=1000
#[#10-1]=-1000 #4=-1000
#[10*3]=100 #15=100
#[#10/2]=-100 #2=-100

Undefined variable
Once the system is started, the undefined variable is default as null. The local variables that
argument does not specify are also considered as null variable. The #0 of system is also the null
variable. The null variable is considered as 0 in calculation, and #0 is generally not allowed to act as
the left value of expression to join in the calculation. However, if the programmers make a mistake,
the program will not report the error, but it will not have any effect.
 Calculation
#1=#0; ……………#1=<Null> It should be noted that <Null> in calculation is
#2=#0+1; ……………#2=1 equal to 0.
#3=1+#0; ……………#3=1 <Null> + <Null>=0;
#4=#0*10;……………#4=0 <Null> + <Fixed number> = < Fixed number >
#5=#0+#0;……………#5=0 < Fixed number > + <Null> = < Fixed number >

- 96 -
ADT-CNC4840 Milling Controller
 Quotation of variable
#1=<Null>
G0X#1Y1000; ……………………equals toG0X0Y1000
G0X#1+10Y1000;…………………equals toG0X10Y1000

 Conditional expression
Null variable is equal to 0 to carry out the logical conditional calculation when judging the
condition.

Kinds of variable
Common variable
Every address can use the common variable. The common variable has 600 groups, in which #100
~ #199 represent the non-maintained common variable group in case of power down, and #500~
#999 represent the maintained common variable group in case of power down.

Local variable (#1~ #32)


When calling the sub program, the local variable can be defined by <argument>, and can only be
used in program. The local variable of program of each macro is independent, and therefore can be
repeated (maximum for 4 times).

G65 Pp1 Ll1 < argument >;


p1 : No. of sub program
l1 : Repeat time
< argument > is Aa1 Bb1 Cc1…Zz1 etc.
Comparison of addresses specified by <argument> and the local variable in program is as follows:
Address Variable No. Sub program Address Variable No. Sub program
A #1 ○ N × ×
B #2 ○ O × ×
C #3 ○ P × ×
D #7 ○ Q #17 ○
E #8 ○ R #18 ○
F #9 ○ S #19 ○
G × × T #20 ○
H #11 ○ U #21 ○
I #4 ○ V #22 ○
J #5 ○ W #23 ○
K #6 ○ X #24 ○
L × × Y #25 ○
M #13 ○ Z #26 ○

Argument address represented by “×” cannot be used.


Argument address represented by “○” can be used.

- 97 -
ADT-CNC4840 Milling Controller

1) In macro program calling, you can use <argument> to define the local variable in sub program.

To sub-program

To main program

2) Local variable can be used freely in the sub program where it belongs to.

To sub-program

To main program

In face-milling processing, argument J means the distance of face-milling is 10mm, but in order to do the
equal-distance processing, the distance is changed to 8.333mm.
In addition, local variable #30 is the calculation result of repeated processing.

- 98 -
ADT-CNC4840 Milling Controller

3) local variable can be used independently in macro calling of each layer for as many as 4 layers.
The main program (macro layer is 0) is provided with special local variable. However, in case the
layer is 0, the local variable cannot use the argument.

Local variable (0) Local variable (0) Local variable (0)


Local variable (0)

- 99 -
ADT-CNC4840 Milling Controller

1.4.4 Calculation instruction


Between variables, it is possible to use all kinds of calculation expressions.
Instruction format:
# i = [Expression]
Expression can be combined by constant, variable, function or sub expression, etc.

In the following table, #j, #k can be replaced by constant.


Calculation #i=#j Definition, displacement
method
Addition & #i=#j+#k Addition
Subtraction #i=#j-#k Subtraction
#i=#j OR #k or #i=#j|#k 32 bit OR calculation (logical
#i=#j XOR #k or #i=#j^#k sum)
32 bit XOR calculation
Multiplication #i=#j*#k Multiplication
& Division #i=#j/#k Division
#i=#j MOD #k Remainder
#i=#j AND #k or #i=#j & #k 32 bit AND calculation (logical
product)
Function #i=SIN[#k] sine
#i=COS[#k] cos
#i=TAN[#k] tanθ=sinθ/cosθ
#i=ASIN[#k] arc sine
#i=ATAN[#k] arctan
#i=ACOS[#k] arc cosine
#i=SQRT[#k] square root
#i=ABS[#k] absolute value
#i=ROUND[#k] round
#i=FIX[#k] FIX
#i=FUP[#k] FUP
#i=LN[#k] natural logarithm
#i=EXP[#k] exponent based on e(=2.718…)

 Values without decimal point are eyed as having decimal point (1=1.000)
 The expression behind the function should be enclosed by [ ].

- 100 -
ADT-CNC4840 Milling Controller

Calculation priority of expression


Priority Calculation sign
The smaller the number
is, the higher the
priority is
1 #
2 []
3 Function (SIN, COS,EXP…)
4 *,/,MOD
5 +,-
6 GE,GT,LE,LT
7 EQ,NE
8 AND,XOR,OR
9 =

 The expression of the same priority is calculated from left to right.


 The calculation expression may have many priorities. If the expression is long, it is
recommended to add [] to force it to be preferential.
 [] can be embedded in calculation, and as many as 5 layers can be embedded. As the following
example shows:

One layer
Two layers

Three layers

- 101 -
ADT-CNC4840 Milling Controller

Examples of calculation instruction


(1) specification of main #i=#j Definition, displacement
program and argument
(2) Definition, displacement #1=1000 #1 1000.000
(=) #2=1000 #2 1000.000
#3=#101 #3 100.000
#4=#102 #4 200.000
#5=#41 #5 -10.000

(3) Addition, Subtraction #11=#1+1000 #11 2000.000


(+ -) #12=#2-50 #12 950.000
#13-#101+#1 #13 1100.000
#14=#41-3 #14 -13.000
#15=#41+#102 #15 190.000
(4) logical sum #3=100 #3=01100100
(OR) #4=#3 XOR 14 14=00001110
#4=01101110=110
(5) XOR #3 = 100 #3=01100100
(XOR) #4 = #3 XOR 14 14=00001110
#4=01101010=106
(6) Multiplication, Division #21=100*100 #21 10000.000
(* /) #22=100.*100 #22 10000.000
#23=100*100. #23 10000.000
#24=100.*100 #24 10000.000
#25=100/100 #25 1.000
#26=100./100. #26 1.000
#27=100/100. #27 1.000
#28=100./100. #28 1.000
#29=#41*#101 #29 -1000.000
#30=#41/#102 #30 -0.050
(7) remainder #31=#19 MOD #20 #19 48.000
(MOD) #20 9.000
#31 3.000
(8) logical product #9 = 100 #9 =01100100
(AND) #10= #9 AND 15 15 =00001111
#10=00000100=4
(9) sine #501=SIN[60] #501 0.860
(SIN) #502=1000*SIN[60] #502 866.025
(10) cosine #541=COS[45] #541 0.707
(COS) #542=1000*COS[45.] #542 707.107
(11) tangent #551=TAN[60] #551 1.732
(TAN) #552=1000*TAN[60] #552 1732.051

(12) arc sine #531=ASIN[100.500/201.] #531 30.000


(ASIN) #532=ASIN[0.500] #532 30.000
#533=ASIN[-0.500] #533 -30.000

- 102 -
ADT-CNC4840 Milling Controller
(13) arctan #561=ATAN[173205/100000] #561 60.000
(ATAN) #562=ATAN[173205/100.] #562 60.000
#563=ATAN[173.205/100000] #563 60.000
#564=ATAN[173.205/100.] #564 60.000
#565=ATAN[1.732] #565 59.999
(14) arc cosine #521=ACOS[100./141.421] #521 45.000
(ACOS) #522=ACOS[10/14.142] #522 44.999
#523=ACOS[0.707] #523 45.009
(15) square root #571=SQRT[1000] #571 31.623
(SQRT) #572=SQRT[10.*10.+20.*20] #572 22.361
#573=SQRT[#14*#14+#15*#15] #573 190.444
(16) absolute value #576=-1000 #576 -1000.000
(ABS) #577=ABS[#576] #577 1000.000
#3 = 70.
#4=-50.
#580=ABS[#4-#3] #580 120.000
(17)
(18) round #21=ROUND[14/3] #21 5.000
(ROUND) #22=ROUND[-14/3] #22 -5.000
(19) FIX #21=FIX[14/3] #21 4.000
(FIX) #22=FIX[-14/3] #22 -4.000
(20) FUP #21=FUP[14/3] #21 5.000
(FUP) #22=FUP[-14/3.] #22 -5.000
(21) natural logarithm #101=LN[5] #101 1.609
(LN) #102=LN[0.5] #102 -0.693
#103=LN[-5] error
(22) exponent #104=EXP[2] #104 7.389
(EXP) #105=EXP[1] #105 2.718
#106=EXP[-2] #106 0.135

Accuracy of calculation:
Macro variable is valued in 7-digit effective figure, therefore too big or too small the calculated
value may cause the loss of accuracy, (9999999.000~0.0000001), and repeated calculation will lead
to the accumulation of error. In this way, try to make the value of macro variable in a reasonable
range. In addition, when calculating the trigonometric functions and exponential functions, due to
the calculation error of function, too big the value is also a reason of causing multiplication of error.

- 103 -
ADT-CNC4840 Milling Controller

1.4.5 Control instruction


Using IF-GOTO and WHILE~DO~ can control the flow of program.
Conditions instruction
Instruction format:
IF[conditional expression] GOTO n; (n is the order number in program)
If the conditional expression is established, the program will jump to line n to execute; and if it is not
established, the expression will be executed downward as the sequence.
Once [conditional expression] is neglected, the program will execute GOTO sentence
unconditionally.
The types of [conditional expression] are as follows:
#i EQ #j = when #i and #j are equal
#i NE #j ≠ when #i and #j are not equal
#i GT #j > when #i is larger than #j
#i LT #j < when #i is smaller than #j
#i GE #j ≥ when #i is larger than or equal to #j
#i LE #j ≤ when #i is smaller than or equal to #j

 The n in GOTO should be existing in program; if not, the system will give a warning of abnormal
program.
 #i, #j, n can be replaced by variable. For program segment contains order number n specified by
GOTO n, the order number n should be in front of the program segment; otherwise when the
program jumps, it may produce error due to the loss of key words. If there is a “/” in front of the
specified program segment and Nn behind, the neglect function of this program segment will
become ineffective but the program segment will still jump and be executed.
 When performing GOTO instruction to jump, it will search downward first. Once the search
fails, it will return to the beginning of program and search downward again. If there is no result
when it comes to calling segment, the system will give a warning message.
 EQ and NE can only be used in integer. Values with decimal should be compared with GT, GE,
LT, and LE instructions.

- 104 -
ADT-CNC4840 Milling Controller

Cycle condition judgement instruction


Instruction format:
WHILE [expression]DO m; (m=1,2,3…127)

END m;

1) When the conditional expression is established, the program from WHILE to END will be executed
repeatedly. If it is not established, it will jump to execute the next program segment of END m.
2) WHILE [expression]DO m and END m should be used in pair. When WHILE [expression] is
neglected, DO m and END m are executed in turn repeatedly. The range of M is 1…127.
3) WHILE is allowed to nest, but the maximum nesting layers should not exceed 27.

(1) the same identification number can be used (2) the identification number of WHILE~Dom can
repeatedly be specified with any value

Correct
Correct

(3) the maximum layers of WHILE~Dom is 27; the (4) the layers of WHILE~Dom cannot exceed 28
range of m is 1~127, and can be specified as you
like

Wrong
Correct

Note: In case of nesting, once m is specified, it


cannot be used repeatedly.

- 105 -
ADT-CNC4840 Milling Controller

(5) WHILE~Dom should be specified before END m (6) WHILE~DO m should be corresponding one
by one in the same program

Wrong
Wrong

(7) WHILE~DO m should not be used crosswise (8) it’s capable of calling sub-program, such as
M98, G65 and G66 during the WHILE~DO m

Wrong Allowed

(9) GOTO cannot go to the cycle of WHILE (10) GOTO can skip out the cycle of WHILE

Wrong Correct

(11) If you have called sub-program in WHILE~DO (12) If WHILE and END is not used in pair in
cycle, and at the same time executed WHILE~DO macro program, it may produce program error in
inside sub-program, the nesting layers of WHILE is case of M99.
calculated together with main program and
sub-program, and it should not exceed 27 layers.
To sub-program Wrong
To sub-program

M99 will cause the failure match of DO and END.

- 106 -
ADT-CNC4840 Milling Controller

1.4.6 Notice for using macro


Macro program is a NC program using variable and calculation to group the logical description,
which allows the program to be more universal. However, due to its flexible logical calculation mode, it
is possible that some of the hidden errors may not be detected. To avoid some logical errors, it is
necessary to pay attention to some compiling methods when compiling the macro.
1) Variable Initialization; the variable used in program should be initialized at the beginning of program
for transferring the variable value. One intervening variable is also needed for the transfer. this can
prevent the program to modify the parameter environment when processing for many times.
2) Use local variable in main program, sub program or macro. The local variable will be cleared when
called by program, which produces a clear environment for programming. Even it is wrongly quoted,
it is easy to check step by step.
3) Macro is just the same as sub program, can not engage in the tool radius compensation. Therefore,
before calling, it is essential to cancel the compensation function first.

- 107 -
ADT-CNC4840 Milling Controller

1 Chapter III Operation


1.1.1 Description of Control Panel

2.1.1 LCD panel


See the following picture for the LCD panel of CNC4840.

Display mode area

Editing area
U disk
Function keys Serial port

Description of display mode


When the system is started, the LCD will enter the operating state and the top left of screen will
show the operating status, the first column is the display mode, the second column is operating
mode, while the third column is the number of current program. At the right side, it is the date/time
display area.
In the middle of the screen, the left is the content of all display interfaces, and the right displays the
status of current M code, G code, S code and T code, as well as the processing information.
The bottom displays the menu, and the alarm message when alarming. The top left corner of this
line shows the status of machine tool.

- 108 -
ADT-CNC4840 Milling Controller

There are two pages of menu. You can press the function keys on the right side to switch the main
menu or the function key on the left side to exit the sub-menu and return to the main menu. The first
page includes [Edit Mode], [Auto Mode], [Manual Mode], [Clear Mode], [Single-step Mode], [Record
Mode] (note: the menu of this page will become invalid if additional panel is connected), the second
page includes [POS], [PROG], [OFFSET], [SYSTEM], [DIAGNOSIS], and [MESSAGE]. The
function keys are displayed corresponding to the display mode of current page. (when the system is
started, the menu column is displayed as menu of operating mode, and when you press the function keys
on the right side, it is switched to menu of display mode.)

Connect the additional panel, the operating mode is operated by rotary button of mode shift: rotary
mode shift is switched to the corresponding operating mode.

- 109 -
ADT-CNC4840 Milling Controller

S/N Name Remark

1 [Edit] edit mode

2 [Auto] a uto mode

3 [Ma nua l] Ma nua l mode

4 [Clea r] Clea r mode

5 [Ha ndwheel] Ha ndwheel mode

6 [Single-step] Single-step mode

7 [Record] Recording mode

displa y the interfa ce of coordina te position, the sub -menu ha s three


8 options, a bsolute position, rela tive position, a nd comprehensive
[POS] position

displa y the menu of progra m edition, MDI, progra m ca ta log, seria l


9 communica tion, file ma na gement a nd gra ph type
[PROG]

Displa y the interfa ce of setting tool compensa tion, including the


10 displa y a nd settings of tool length a nd ra dius compensa tion pa ra meter
[OFFSET

displa y the system pa ra meter, coordina te pa ra meter, network


11 pa ra meter, a nd setting interfa ce
[SYSTEM]

this interfa ce ca n be entered only in ma nua l mode; it includes input


[DIAGNOSIS]
dia gnosis a nd output dia gnosis
12

displa y the a la rm messa ge interfa ce


13
[MESSAGE]

1.2.1 position display

There are three pages for the position interface, you can press to switch
among absolute position, relative position, and comprehensive position.

Absolute position: display the position of address X, Y, Z, A,B,C in work piece coordinate system,
also called as work piece coordinate, which is corresponding to the programming absolute value. It can
be changed by G92 settings.
Relative position: display the displacement of address X, Y, Z, A ,B, and C corresponding to work piece
coordinate system. It is can cleared at any time in manual mode, and it is for observing the position or for
setting the cutter compensation value of counting way.
Comprehensive position: display the absolute position, relative position, machine tool position, and the
allowance. The reference point of machine tool is the origin of coordinate system. Generally, this
coordinate system would be change, it’s for examining the soft limit.

- 110 -
ADT-CNC4840 Milling Controller
1.Interface of absolute position

2.Interface of relative position

- 111 -
ADT-CNC4840 Milling Controller

In manual mode, press , , or key in this interface, and the

corresponding address will become green and flash, then press key, the relative position of
flashing address will be reset to 0.

3.Interface of comprehensive position

- 112 -
ADT-CNC4840 Milling Controller
1.2.2 Program display
1.Program edition

In editing mode, you can edit the program, press to page up or page down the
content of program.

2.MDI
The main function of MDI operation is to ensure that the instruction can be started and run once
inserted in recording mode.
MDI operation:

Select [Record] mode → press [MDI] to switch to MDI interface → enter the words to be

executed and press → press number key [7] or [Start], the system will run the program
segment. It will stop if the operation is over. Then You can continue performing the MDI operation.

- 113 -
ADT-CNC4840 Milling Controller

3.Program catalog

Press [Catalog] to enter the interface of program catalog as follows. The catalog mainly
shows all processing file catalogs in working area and the network parameters.
Operations of reading files:

Press to select the number of processing program → press key to select the
current processing file Oxxxx,

- 114 -
ADT-CNC4840 Milling Controller

4.
5.Graphic Simulation
Press [Figure] key to enter the figure display interface as follows. It is mainly used to draw the
plane figure of tool interpolation path.
: start tracking, start track realtime tracking simulation when G code is processed.

:Preview. scan,draw,preview G code track graphics.

:Clear screen, clear the screen drawing area.

:Plane selection, set two-dimensional or three-dimensional


Coordinate selection to draw simulation graphics.

【page up】button:simulation graphic zoom in


【page down】button:simulation graphic zoom out
【→】:simulation graphic move right
【←】:simulation graphic move left
【↑】:simulation graphic move up
【↓】:simulation graphic move down

- 115 -
ADT-CNC4840 Milling Controller

6.File management
Press [File] key to enter the file management interface as follows. The main function is to
operate the external USB disk.
Operating interface of file management:
1. Catalog ADT is to store CNC4840 system program and system parameters, and the files under this
catalog cannot be deleted.
2. Catalog PRG is to store the processing files of system (Note: saved as xxxx.CNC).
3.Operation menu,press OXMAHNYST buttons according to prompts on the
right.

- 116 -
ADT-CNC4840 Milling Controller

1.2.3 Settings of tool compensation parameters


You can press or key to enter the interface of tool compensation settings, and press

or key to select the tool compensation number that is corresponding to


the radius or length. Tool compensation parameters, including the radius compensation and length
compensation, are used to set the tool radius and length offset. The radius compensation number is
from 01 to 36, and the length compensation number is from 01 to 36. To set or modify the tool
compensation value, input the compensation value in editing or recording mode and press key
to complete.

- 117 -
ADT-CNC4840 Milling Controller

1.2.4 Setting and modification of system parameters, coordinate


parameters, network parameters, setting parameters and
parameter management
You can press or key to enter the system parameter interface. To ensure the
parameters would not be modified wrongly, the parameters can only be modified in [Record] or
[Edit] mode.
Ways to modify the parameters:
In recording mode, press key to move the cursor to the parameter need to be modified

→enter the data →press key, and the data will then be modified. (you can press key to
clear the data that are not inserted. If the input data exceed the allowed range, the system will adjust
it to the upper or lower value automatically).
Methods to inquiry the system parameters:
In recording mode, you can input the parameter number and press key to search the
corresponding parameter number (If the input parameter number is larger than the numbers of
parameters or smaller or equal to 0, it will not get any result).

- 118 -
ADT-CNC4840 Milling Controller

Settings of workpiece coordinate parameters


In system parameter interface, you can press → cursor key once to switch to coordinate parameter
interface and press key to move the cursor. The main function is to set the mechanical
position of workpiece coordinate system. (for methods of setting workpiece coordinate system, see
the annex)

- 119 -
ADT-CNC4840 Milling Controller

1.Settings of workpiece coordinate system


The machine tool has 6 workpiece coordinate systems, from G54~G59respectively, you can select
any one of them.
G54…………………workpiece coordina te system 1

G55…………………workpiece coordina te system 2

G56…………………workpiece coordina te system 3

G57…………………workpiece coordina te system 4

G58…………………workpiece coordina te system 5

G59…………………workpiece coordina te system 6


These 6 workpiece coordinate systems are set by distance (Part zero offset) from machine zero to
the zero point of each coordinate system .

Z Z

Y Y

X X
零点偏置

机床零点

例:N10G55G90G00X100.0Z20.0

N20G56X80.5Z25.5
In the above example, the position in workpiece coordinate system 2 (X=100.0, Z=20.0) is quickly
located to position in workpiece coordinate system 3 (X=80.5, Z=25.5). If N20 program segment is
G91, it’s increment movement. When starting to execute the N20 program segment, the absolute
coordinate value will be changed to the coordinate value in G57 coordinate system.

- 120 -
ADT-CNC4840 Milling Controller

( )
( )
Y
Z

X
(200.0,20.0)
Y

After starting the system and returning to machine zero, the workpiece coordinate system 1~6 are
established. Select G54 (workpiece coordinate system) when starting the system. The absolute
position of the position interface is at the coordinate value of the current coordinate system.
2.Display and input of workpiece zero

In recording or editing mode, you can press 、 、 、 to move the cursor


to X, Y, Z, or A axis, select the corresponding workpiece coordinate system from G54,
G55……G59, input the part zero offset and press key to set it as the zero offset of workpiece

coordinate system, or press key to set the current machine coordinate as the zero offset of the
workpiece coordinate.

- 121 -
ADT-CNC4840 Milling Controller
3 . Settings of network parameters

In system parameter interface, you can press the left and right cursor keys to switch to network
parameter interface and press key to move the cursor. (In recording mode, you can set the
IP address, gateway, and subnet mask of CNC4840, IP address of upper computer, and the port number
of online processing software. The setting methods are the same as those on computer, but the IP address
in LAN should not conflict. Other options are set according to specific circumstances)

4 . axis parameter setting


Setting parameter switching (0: system parameter can be modified; 1: system parameter cannot be
modified)
Selection of addition panel (0: do not use additional panel; 1: use additional panel)
Selection of servo alarm level (XYZABC axis 0: low level effective; 1: high level effective)
Whether to choose network online processing (0: No; 1: Yes; for large CNC processing file, you can
select network online transmitting and processing)
Selection of zero effective level (XYZABC axis 0: low level effective; 1: high level effective)
Selection of limit effective level (XYZABC) axis 0: low level effective; 1: high level effective)

- 122 -
ADT-CNC4840 Milling Controller

1.2.5 Diagnosis display setting


In manual mode, you can press [Diagnosis] software key to enter the I / O diagnosis interface, and press [Input]

and [Output] to switch between the input and output diagnosis interfaces. The main function is to test the input / output
status of machine.
The input diagnosis includes basic input, extended input and other inputs.
You can press , , or key to switch the display interface, and when the input
signal of corresponding point is effective, it is displayed in red.
The basic input of machine is corresponding to 37-pin interface of XS1 machine input. For detailed
definition and purpose, please refer to section–Connection.

- 123 -
ADT-CNC4840 Milling Controller

The extended input of machine is corresponding to extended 25-pin interface of XS5 machine input.
For detailed definition and purpose, please refer to section–Connection.

- 124 -
ADT-CNC4840 Milling Controller

Other inputs are corresponding to XS6 handheld box, XS7 X axis, XS8Y axis, XS9Z axis, XS10A axis,
XS11B axis, and XS12C axis pulse interfaces. For detailed definition and purpose, please refer to
section–Connection.

Output diagnosis include basic output, extended input and other input
You can press or key to switch the operating display interface.
The basic output of machine is corresponding to 25-pin interface of XS2 machine output. For
detailed definition and purpose, please refer to section–Connection.

- 125 -
ADT-CNC4840 Milling Controller

The above output points OT00---OT23 are corresponding to


[O][N][G][7][8][9][X][Y][Z][4][5][6][M][S][T][1][2][3][F] [H][EOB][-][0] and [.] keys on the panel.
The extended and pulse outputs are corresponding to 25-pin interface of XS3 machine extended
output, as well as XS7 X axis, XS8Y axis, XS9Z axis, XS10A axis, XS11B axis, and XS12C axis pulse
interfaces. For detailed definition and purpose, please refer to section–Connection.

- 126 -
ADT-CNC4840 Milling Controller

The above output points OT00---OT53 are corresponding to


[O][N][G][7][8][9][X][Y][Z][4][5][6][M][S][T][1][2][3][F]
[H][EOB][-][0][.][H][C][Shift][Enter][Modify] and [Delete] keys on the panel
Output diagnosis methods:
Select manual mode → press [Diagnosis] → select output diagnosis interface → press

main axis positive rotation signal output (main axis positive rotation starts) → press main
axis positive rotation signal stops (main axis positive rotation stops).

- 127 -
ADT-CNC4840 Milling Controller
1.2.6 Alarm display

- 128 -
ADT-CNC4840 Milling Controller

1.3 Description of operating mode


1.2.1 Selection of operating mode
Additional panel

You can rotate the mode shift [Edit], [Auto], [Record], [Manual], [Handwheel], [Single-step], and [Clear]

on additional panel to enter the corresponding operating mode.

S/N Na me Purpose

edition of program, and the setting of system parameters, coordinate parameters,


1 [Edit] offset parameters, network parameters, setting parameters and administrative
password

2 [Auto] start/stop the processing code program, adjust the main axis speed and feed rate

manual operation of all axes, clear the relative coordinate, operation of auxiliary
3 [Manual] function and diagnosis function, adjust the manual rate

4 [Clear] Program reset, machine reset

5 [Single-step] increase value by single-step, move XYZABC coordinate axes

6 [Handwheel] operate the handwheel to control XYZABC axes to move

MDI operation, USB disk operation, serial port operation, and edition setting of
7 [Record] parameter

- 129 -
ADT-CNC4840 Milling Controller

1.4 Manual operations


Continuous manual feed operations

Rotate the mode shift to manual mode to select the manual operation

mode.
Select X+, X-, Y+, Y-, Z+, Z-, A+, A-, B+, B-, C+, and C- axes. The
machine tool is moved along the direction of selected axis.

In [Manual] mode, in interface displaying the position, rotate the manual


rate shift to change the manual rate, which could be set between 0 and 150%.

1.4.2 reset relative position


Reset relative position: press , , or key on CNC4840 panel
in the relative position interface in manual mode, the address of pressed key will become
green and flash. Then, press key, the corresponding position of the flashing address

will be reset to 0. When you press , , or key again or change the


interface, X, Y, Z, or A will not flash any more.

- 130 -
ADT-CNC4840 Milling Controller
1.4.3 Operations of manual auxiliary functions
1 换刀

In [Manual] mode, press key and the tool rest will be rotated for changing
for the next tool.
2 Main axis positive rotation
In [Manual] mode, press key and the main axis will be rotated in
positive direction.
3 main axis stop
In [Manual] mode, press key and the main axis will be stopped.
4 main axis reverse rotation
In [Manual] or [Single-step/Handwheel] mode, press key
and the main axis will be rotated in reverse direction.
5 Cooling 1, Cooling 2
In [Manual] mode, press any one of keys and the corresponding cooling
motor will be started. Press it again and the cooling motor will then be closed.
6 Lubrication
In [Manual] mode, press key and the corresponding lubrication will be on
while press it again the lubrication will be off.
Others, such as illumination、 blowing、 adjustor、

tool magazine +、 tool magazine -、 adjusting materials、

dumping、 feeding、 chip cleaning , etc. are as the same


as the lubrication operations. For detailed output control and the
corresponding M code function, please refer to definition of output pin
in <Connection>.

- 131 -
ADT-CNC4840 Milling Controller

1.5 Auto operation


1.5.1 start of program
operating of storage
Select the program and auto mode, make sure it is in “Continuous” mode and the initial position is
correct, then press [Reset] and [Start] keys, the program will start operating immediately. You can press
[Stop] key to stop executing the processing program.

MDI operating
Select the recording mode, press [MDI] key to enter MDI operating interface, input the

words to be executed and press key. After entering the required data, press [Start] key and the
program of MDI program segment will be executed. You can press [Stop] key to stop executing the
processing program.

1.5.2 stop of auto operation

1.5.2 There are two ways to stop the auto operation. One is to
input stop order in where it is to stop in advance via the
program, and the other way is to use the button on control
panel.
5.2.1 Program stops (M00 )
Aft er t he program segment cont aining M00 is execut ed, t he aut o operat ion is
st opped and t he mode dat a are st ored. Aft er t he reset , press [St art ] key and t he
program will cont inue t o execut e.

5.2.2 Program ends (M30)


(1) represent t he end of main program
(2) st op t he aut o operat ion and change t o reset st at e
(3) ret urn t o t he beginning of program

5.2.3 Pause
In aut o operat ion, you can press [Pause] key on cont rol panel t o enable t he aut o
operat ion t o pause.
When t he [Pause] key is pressed, t he machine will have t he following st at es.
1) when t he machine is moving, t he feed is decelerat ed and st opped.
2) when execut ing pause (G04), cease and pause

- 132 -
ADT-CNC4840 Milling Controller
3)aft er execut ing t he act ion of M, S, and T, st op
press [St art ] and t he pro gram will cont inue.

5.2.4 Reset

Press key, and t he aut o operat ion will be ended, t he auxiliary funct ion will
be cancelled, and t he cursor will ret urn t o t he beginning of program while t he st at e
is changed t o reset st at e. If reset is done during t he operat ion, t he machine will
decelerat e and st op.

1.5.3 feed rate adjustment in auto operation

1.2.2 In [Auto] mode, in the interface of display position, you


can rotate the auto rate shift to change the manual rate.
The range of the rate is 0~150% (with 10% per shift) . The
feed rate is specified by F instruction or parameters.

1.5.4 Single program segment


In aut o mode, press key and t he syst em will st op aft er execut ing t he
current program segment . If you press [St art ] key again, it will execut e t he next
program segment and st op. This allows you t o check t he program.

- 133 -
ADT-CNC4840 Milling Controller
1.5.5 Skip the program segment
In auto mode, press key and the indicator will be on. At this time, t he syst em will skip
t he program segment aut omat ically when it is executed t o program segment wit h “/” and
start executing the next one. This function is to make the program segment with “/” in program to be
invalid.

1.6 Zero fill


1.6.1 return to reference point manually
There is a special mechanical posit ion on CNC machine t ool, in where you can set
t he t ool change and t he coordinat e syst em. This posit ion is called as t he reference
point . Generally, when t he power supply is connect ed, t he t ool is moved t o t he
reference point first . Use t he corresponding keys on cont rol panel t o move t he t ool
t o reference point , t his operat ion is called ret urning t o reference point manually.

Switch the mode shift key t o reset mode. At t his t ime,


press X-, Y-, Z-, A-, B-, and C- keys, t he corresponding axis will t hen ret urn t o t he
mechanical reference point .

Select t he way of ret urning t o zero, which will be different due t o t he difference
of t he value of paramet er “Zero mode”.

- 134 -
ADT-CNC4840 Milling Controller
When t he value is 0, it means t here is no zero switch.
When t he value is 1, it means t here is one zero swit ch.
In addit ion, using t he program inst ruct ion, it is also possible t o make t he t ool t o
ret urn t o t he reference point . This is called ret urning t o reference point
aut omat ically.

1.7 Single-step/Handwheel operation

1.7.1 Single-step feed

Switch the mode shift key to “Single-st ep” mode, and

select [Single-st ep] operat ing mode. The operat ing mode column on LCD will show
words “Single-st ep mode”.
Select t he moving dist ance key, and press t he
manual axis-moving key. The axis moves once each t ime you press t his key.

1.7.2 Handwheel feed

Switch the mode shift key to “Handwheel” mode and select


the [Handwheel] operating mode. The operat ing mode column on LCD will show words
“Handwheel mode”.
Select t he handwheel axis (Rot at e t he axis select ion but t on on handwheel
cont rol box t o select [X][Y][Z] or [A] axis shift , t he select ed handwheel axis will
be displayed behind “Current axis”. Rot at e t he moving dist ance select ion but t on on
handwheel cont rol box t o select [0.001][0.01] or [0.1] shift ) and rot at e t he
handwheel. Rot at e it clockwise or ant i-clockwise t o select t he moving direct ion.

- 135 -
ADT-CNC4840 Milling Controller

Emergency stop
Stop

Start

1.8 Edition operation


1.8.1 Preparation before program storage and edition

Swit ch t he mode shift key t o [Edit ] mo de, and yo u can


t hen select t he program int erface t o edit t he program.

1.8.2 Save the program in storage

In [Edit ] mode, press or key t o select t he program int erface, use t he

keys t o ent er t he address and program number, and t hen press key; by
doing t his, t he program number is saved. Aft er t hat, input every word of t he
program wit h keys, and t hen press key t o save t he input program.

Note : P, Q , R, U, V, W, B , J, K , L, D, E, and I ke ys ar e sur r ogate ke ys. You c an inse r t


it by pr e ssing the shift ke y fir st.

- 136 -
ADT-CNC4840 Milling Controller

1.8.3 Program searching


If t he st orage has st ored many programs, when displaying t he program, it always
displays t he program t hat t he current program pointer point s t o. This program
point er would not loss even in case of power down. You can call t he required
program by searching and edit or execut e t he program, which is called program
searching.
(1) Searching met hods (Edit o r aut o mode)
Press address key, input t he number of program t hat you want t o search, and

press cursor key . If t he input dat a is wrong, you can press key t o search
again.
Aft er t he search, t he searched program will be displayed on LCD and t he program
number will be shown on t he t op right corner of int erface. If t he required program
is not found, an error prompt will be displayed.
(2) Scanning met hod
Press address and t he cursor key . When in edit mode, yo u can pr ess

address key and t hen press cursor key t o display t he saved program one
by one.

- 137 -
ADT-CNC4840 Milling Controller
1.8.4 Adding program
Press address and input t he program number t hat you want t o add, and

press key, t he corresponding new program segment will t hen be saved in t he


st orage. If t here is a repeat ed program, it will give an error prompt . The new added
program can be edit ed, modified or delet ed as t he following met hod. The new
program is as follows:
OXXXX
%
Note: XXXX is the corresponding progra m number. If t here is repeat ed program, t he syst em
will give an error prompt .

1.8.5 Deleting program


Press address and input t he program number t hat you want t o delet e, and

press key, t he corresponding program in st orage will t hen be delet ed. If t he


required program number is not found, t he syst em will give an error prompt .

1.8.6 Deleting all programs


Delet e all programs in t he st orage.
Press address key , input -9999 and press t he delet e key t o delet e all t he
programs.

1.8.7 Inserting, modifying, deleting word


The cont ent of program saved in st orage can be changed.
In [Edit ] mode, select t he program t hat you want t o edit and search t he word you
want t o edit . There are t wo met hods as follows:
(A) by SCAN
(B) aft er searching t he word, perform modificat ion, insert and delet e o per at io ns
on word
8.7.1 Searching the word
(1) Scanning met hod
Scanning wo rd by word

(A) Press cursor key or , and t he cursor will be moved word by word
following t he sequence direct ion, which means t he syst em will show t he cursor
behind t he address of select ed word.
(B) Press cursor key or , and t he cursor will be moved word by word
following t he reverse direct ion, which means t he syst em will show t he cursor behind
t he address of select ed word.

- 138 -
ADT-CNC4840 Milling Controller

(C) If you keep pressing or , t he syst em will move t he cursor


quickly aut omat ically and cont inuously.
(D) Press key, t he int erface will be paged down and t he cursor will be moved t o
t he beginning of next page.
(E) Press key, t he int erface will be paged up and t he cursor will be moved t o t he
beginning of previous page.
(F) Press PD or PU key cont inuously, and t he syst em will page down or up quickly
and aut omat ically.
(2) Met hods t o search words
Search t he specified words from t he posit ion where t he cursor is locat ed.
(A) Input t he address

(B) Input t he word

(C) Press cursor key t o st art searching downward, and press to


st art searching upward.
Note 1: If you input S1, you c annot se ar c h S12
Note 2: To se ar c h S09, you c annot se ar c h by just e nte r ing S9. You have to input
S09.
(3) Met hods of searching wit h address
Search t he specified address at t he sequence direct ion from t he current
posit ion.
(A) by pressing address

(B) by pressing cursor key ; if you are pressing , t he syst em will


search at t he reverse direct ion.
(4) met hods t o ret urn t o t he beginning of program
(A) Met hod 1: Press key (select program int erface in edit mode). When
ret urning t o t he beginning, t he syst em will display t he cont ent of program from
t he beginning.
(B) Met hod 2: input t he program number by and

press

(C) Met hod 3: press address key , and press cursor key

8.7.2 Inserting word


Before searching t he word t hat yo u want t o insert , input t he address and
numbers t hat you want t o insert and press key.

- 139 -
ADT-CNC4840 Milling Controller
8.7.3 Altering word
When t he word you want t o alt er has been searched, input t he address and
dat a t o be alt ered and press key, t he new input word will t hen replace t he
word t hat current cursor point s t o.
8.7.4 Deleting word
When t he words t o be delet ed have been searched, press delet e key and t he current
word will be delet ed.

1.8.8 Storage capacity


(1) Capacit y of memory program: t ot al capacit y 56M byt es, each working area of
processing program has t he maximum 20M byt es
(2) Tool compensat ion dat a: 72 groups, in which lengt h compensat ion has 36
groups and radius compensat ion has 36 groups.

1.8.9 Download of program


1、Download via USB communicat ion:
(1) Use USB cable t o connect t he comput er and CNC4840 cont roller, rot at e t he
mode shift select ion cont roller t o <Record> mode -press
-press ,t o show ‘File cat alog’ int erface press
(connect t o comput er) t o ent er t he USB communicat ion st at e. Find t he folder
“PRG” under t he USB disk cat alog, and add t he files t o be processed in t his
folder. Aft er t he operat ion, disconnect t he comput er and cont roller, and
press key t wice, t hen press t o go back t o posit ion
int erface.(Not e: File name of OXXXX should not be repeat ed; ot herwise,
only one of t he files is t aken as t he processing file)
Not e: The format of processing file should be xxxx.CNC (for example,
0000.CNC). For t he cont ent , it should be begun wit h OXXXX (X is t he number
from 0 t o 9) and ended wit h %; ot herwise, t he download of t he file cannot be
received. For example:
O0001
G90G17G40G80
G0X0Y0Z0
G1X100Y100Z100
M30
%
(Not e: File name of OXXXX should not be repeat ed; ot herwise, only one of t he
files is t aken as t he processing file)

- 140 -
ADT-CNC4840 Milling Controller
2、Download via net work :

Inst all t he soft ware downloaded from t he Int ernet on comput er and t hen double click
t ft pclient .exe t o open t he soft ware as follows :

Send CNC4840 IP Addr: It’s the IP address of CNC4840 controller, which can be edited or
selected from the drop-down text box. It is possible to add or reduce the item of IP
address by editing IpAddr.ini file in the catalog of tool downloaded from Internet.
IpAddr.ini file can be opened and edited by any text editor, and the editing format is as
follows:

192.168.0.100

192.168.0.90

192.168.0.106

192.168.0.120

Just edit the IP of every CNC4840 controller in accordance with the above format in
IpAddr.ini file.

CNC4840 CNC File And Directory: the directory and file name of CNC files that sent to
CNC4840 controller (note: the directory file is \PRG\xxxx.CNC, x is number or character, for
example 0000.CNC 0001.CNC).

Computer CNC File And Directory: the file directory and name of CNC processing files in local
computer that sent to CNC4840 controller (Note: processing file can be selected from the computer
directory by clicking <Open CNC File> button); if the CNC processing file in local computer does not
have directory, the system will search for the file from the directory of network download software.
Send CNC File: Click this button to transmit the CNC processing file (Note: this file should exist)
(selected in the third step) to lower CNC4840 controller, but the IP address should be corresponding to
that of relevant CNC4840 controller.

- 141 -
ADT-CNC4840 Milling Controller
3、brief operation methods of Serial network port download application software V1.02
Install the software in PC,then double click Project1.exe to open the
software,displayed as below :

This software can manage system files through serial port or network port

When choose com serial port to download, set system axis configuration parameter
P3.009 : 0 ; when choose net port to download,set system configuration parameter
P3.009 : 1
Get serial port or net port communication line ready,set system relevant serial port
Baud rate,controller ID(when multi CNC controllers networking,controllers’ID
should be different),network relevant parameters.
Run [SearchDeviceID]
[ReadNCDeviceDir]: list of file directory of chosen CNC controller.
[NCDeviceID]: chosen controller ID
[NCDeviceIP]: chosen controller IP address( when using network transmission)
[COM]: chosen controller’s serial port number( when using serial port transmission)
[BaudRate]: chosen controller’s serial port communication baudrate(this baudrate
should be the same as CNC system synthetical parameter P1.094 setting.)
[SetIPaddr]: controllers not in use, their IP address should be set as 0.

- 142 -
ADT-CNC4840 Milling Controller

1.9 Recording operation


MDI operation

In [Record] mode, press [MDI] key t o ent er t he MDI int erface, input t he words t o

be execut ed and press [Insert ] . Aft er ent er all required dat a, press [St art ], t he
syst em will t hen run t he program segment . When t he operat ion is st opped, it can also
cont inue execut ing t he MDI operat ion.

- 143 -
ADT-CNC4840 Milling Controller

1.10 Composite key


W hen opera ting without a dditiona l pa nel, the setting pa ra meters a llow the key functions of
a dditiona l pa nel to be a chieved on control pa nel. These keys ha ve the functions of a dditiona l pa nel
only when in specia l opera tion mode a nd displa y mode. the composi te function of key would not
a ffect the origina l functions. The following composite keys ha ve the sa me function a s the
corresponding key on a dditiona l pa nel.

(Note: the composite key ca n be used only in position displa y mode a nd the opera tions of key
a re the sa me a s the corresponding key on a dditiona l pa nel.

List of composite key

Opera tion mode Displa y mode Composite key Function

Switching between Single Segment a nd


Continuous

Progra m sta rted


[Auto] [Position]
Progra m stopped

increa se a nd decrea se of feed ra te

[Ma nua l] [Position] Move a t X a xis + direction

Move a t X a xis - direction

Move a t Y a xis + direction

Move a t Y a xis - direction

Move a t Z a xis + direction

Move a t Z a xis - direction

Move a t A a xis + direction

Move a t A a xis - direction

Move a t B a xis + direction

Move a t B a xis - direction

Move a t C a xis + direction

- 144 -
ADT-CNC4840 Milling Controller

Move a t C a xis - direction

a djust the ma nua l ra te

a djust the ma in a xis rota tion speed

M08/M09 switching

M32/M33 switching

M3 (ma in a xis rota ted norma lly)

M4 (ma in a xis rota ted reversely)

M5 (ma in a xis stops)

X a xis returned to mecha nica l z ero

Y a xis returned to mecha nica l z ero

Z a xis returned to mecha nica l z ero


[Clea r] [Position]
A a xis returned to mecha nica l z ero

B a xis returned to mecha nica l z ero

C a xis returned to mecha nica l z ero

Single step increment 0.001 to


[Single-step] [Position]
1.000 grade switch

work mode [Position] [输入 INPUT]key Switch among


switch recording,auto,manual,MPG,single

- 145 -
ADT-CNC4840 Milling Controller

1.11 Parameters
According to application and function,there are :
Synthetical parameter,network parameter,axis config
parameter,toolchanger parameter,IO config parameter,manage parameter and
so on.

1.11.1 GenralParam (P1.)


001 Multiplication ratio of axis X’s instruction( X _ C M R )

002 Frequency-division coefficient of axis X’s instruction( X _ C M D )

003 Multiplication ratio of axis Y’s instruction( Y _ C M R )

004 Frequency-division coefficient of axis Y’s instruction( Y _ C M D )

005 Multiplication ratio of axis Z’s instruction( Z _ C M R )

006 Frequency-division coefficient of axis Z’s instruction( Z _ C M D )

007 Multiplication ratio of axis A’s instruction( A _ C M R )

008 Frequency-division coefficient of axis A’s instruction( A _ C M D )

009 Multiplication ratio of axis B’s instruction( X _ C M R )

010 Frequency-division coefficient of axis B’s instruction( X _ C M D )

011 Multiplication ratio of axis C’s instruction( X _ C M R )

012 Frequency-division coefficient of axis C’s instruction( X _ C M D )

Setting : 1~65535
range

unit : none

permission : operation manager above

preset : 1
value

Take effec : immediately


t time

- 146 -
ADT-CNC4840 Milling Controller
explain : W hen the lea ding screws of different pitches a re
ma tched with motors of different step a ngles or servo
motors of different pulse counts, or combined using
different cha nge gea rs, it is possible to a llow the
progra mming to be consistent with the a ctua l moving
dista nce by setting the gea r ra tio.

CMR/CMD =P/(L×1000)

CMR: Comma nd multiplica tion ra tio

CMD: Comma nd frequency division fa ctor

P: pulse per turn of motor

L: Moving length of ma chine tool per turn of motor (mm)

The va lue of CMD/CMR is a ctua lly the pulse equiva lent,


which is the corresponding moving dista nce of ea ch pulse, unit in
0.001mm.

Exa mple 1: the motor rota tes a circle every 5000 pulses, a nd the
ma chine tool moves 5mm every time when the motor rota tes a
circle, tha t is

CMR/CMD=5000/ (5*1000) =1/1

In this wa y, it is possible to set CMR=1, CMD=1.


The pulse equiva lent is 0.001mm. Exa mple 2: the motor
rota tes a circle every 5000 pulses a nd the ma chine tool
moves 10mm every time when the motor rota tes a circle,
tha t is

CMR/CMD=5000/ (10*1000) =1/2

In this wa y, it is possible to set CMR=1, CMD=2.


The pulse equiva lent is 0.002mm.

013 Axis X’s fast rate

014 Axis Y’s fast rate

015 Axis Z’s fast rate

016 Axis A’s fast rate

017 Axis B’s fast rate

018 Axis C’s fast rate

019 Axis X’s start rate

- 147 -
ADT-CNC4840 Milling Controller

020 Axis Y’s start rate

021 Axis Z’s start rate

022 Axis A’s start rate

023 Axis B’s start rate

024 Axis C’s start rate

025 Axis X’s acceleration

026 Axis Y’s acceleration

027 Axis Z’s acceleration

028 Axis A’s acceleration

029 Axis B’s acceleration

030 Axis C’s acceleration

Setting : 1~9999,1~9999,1~8000
range

unit : mm/min,mm/min,mm/sec

permission : operation manager above

Preset : 3000,200,1500
value

Take effec : immediately


t time

Explain : This pa ra meter is setting of Tra pez oid a ccelera tion a nd decelera tion,
used in GOO instruction, a nd ma nua l a nd z ero motion

About sta rt ra te, W hen using stepper motor, it is recommended


to a dopt a speed of 1 -2 revolutions for the motor. The ma chine
tool moves 5mm every time when the motor rota tes a circle, 1 -2
revolutions per second is 5-10mm/s, converted to mm/minute, the
initia l speed ca n be set a s 300 -600mm/minute.

For servo motor, it is best to ha ve no vibra tion when it is sta rted a nd


stopped. Too high the speed ma y produce vibra tion when opera ting a nd
ca use the stepper motor to loss step.

- 148 -
ADT-CNC4840 Milling Controller

031 Axis X’s positive soft limit


032 Axis X’s negative soft limit
033 Axis Y’s positive soft limit
034 Axis Y’s negative soft limit
035 Axis Z’s positive soft limit
036 Axis Z’s negative soft limit
037 Axis A’s positive soft limit
038 Axis Z’s negative soft limit
039 Axis B’s positive soft limit
040 Axis B’s negative soft limit
041 Axis C’s positive soft limit
042 Axis C’s negative soft limit
Setting : -9999~9999
range
Unit : mm

permission : Operation manager above

Preset : ± max
value

Take effec : immediately


t time

explain : Genera lly, there is ha rd limit signa l on ma chine tool, it is


not necessa ry to use the soft limit. Set the posit ive limit a s
+9999.999, a nd nega tive limit a s -9999.999.

If ha rd limit switch is not insta lled, softwa re limit ca n be


used, which ta kes ma chine coordina te system a s the ba se
point. The positive limit a nd nega tive limit a re subject to the
a ctua l dista nce, unit in mm.

For softwa re limit, it is decelera ted a nd stopped when


rea ching the limit point, it ma y exceed the set dista nce a
little, which is rela ted to a ccelera tion time a nd speed.

043 Feed speed

044 Start feeding speed

045 acceleration of feed

055 Maximum feed speed

- 149 -
ADT-CNC4840 Milling Controller

Setting : 1~9999,1~9999,1~8000,1~9999
range

unit : mm/min,mm/min,mm/sec,mm/min

permission : Operation manager above

Preset : 3000,200,1000,3000
value

Take effec : Immediately


t time

explain : Comma nds, such a s G01, G02 a nd G03, a re opera ted


following the speed of F instruction. If F instruction is not
specified in the progra m, the a bove comma nds a re moved a t
speed set by the pa ra meter. If F instruction is specified, this
pa ra meter does not work.

To ensure tha t the wrong F instruction would not dama ge the ma chine,
a nd a ccording to the processing ca pa bility of ma chine tool, set the feed
speed a s the ma ximum va lue. W hen the product of F instruction a nd
feed ra te is la rger tha n this va lue, confine the speed within this ra nge.

046 Axis X’s reverse gap compensation

047 Axis Y’s reverse gap compensation

048 Axis Z’s reverse gap compensation

049 Axis A’s reverse gap compensation

050 Axis B’s reverse gap compensation

051 Axis C’s reverse gap compensation

Setting : 1~20000
range

unit : Pulse

permission : Operation manager above

Preset : 0
value

Take effec : immediately


t time

- 150 -
ADT-CNC4840 Milling Controller
explain : Compensating the coordination gap of the machining
shaft.

052 Zero

Setting : 0~1
range

unit : None

permission : Upon operating administrators

Preset : 0( Program zero)


value

Take effec : Immediately


t time

explain : 0 Program zero

1 Mechanical zero
Program zero means the system is zeroed when the coordinate
value becomes zero.
To realize mechanical zero, the external inspection switch is needed
to position the zero point. To that effect, the system moves to the
set zeroing direction at fast speed, and moves back at low speed
when the signal is detected. Then, the system will advance slowly
after disconnected upon the detection of signal, and the zeroing
process ends till the signal becomes effective again. When the
switch is enabled to start by the inspection of servo phase Z in the
IO configuration parameters, the mechanical zero mode will
automatically start phase Z to position the zero point after the signal
from the inspection device reaches.

053 MPG valid mode whether prior

Setting : 0~1
range

unit : Unit

permission : Upon operating administrators

Preset : 0
value

Take effec : Take effect after reboot


t time

- 151 -
ADT-CNC4840 Milling Controller
explain : To set when MPG axis choose valid, whether switch to MPG mode

0:when MPG axis choose valid, not auto switch to MPG mode.

1: when MPG axis choose valid,auto switch to MPG mode.

054 Manual speed

Setting : 1~9999
range

Unit : mm/min

permission : Upon operating administrators

Preset : 1000,9000
value

Take effec : immediately


t time

explain : Set manual speed of XYZABC axis

Start rate and acceleration are up to parameters from 019


to 030

056 M code waiting time

Setting : 1~9999
range

Unit : ms

permission : Upon operating administrators

Preset : 100
value

Take effec : Immediately


t time

explain : set persistance time after M code executed

063 Line number increment


Setting : 0~64
range

unit : None

permission : Upon operating administrators

- 152 -
ADT-CNC4840 Milling Controller
Preset value : 0

Take effect : Immediately


time

explain : When edit G code manual,auto add a Nxxxxx line number


when change line.
0 represents prohibiting genera te the line number automa tica lly.

064 Maximum speed of spindle (RPM)


Setting : 0~30000
range

unit : RPM

permission : Upon operating administrators

Preset value : 6000

Take effect : immediately


time

explain : Set max rotation speed of spindle,when S value of process


code exceeds this value, this value is used to limit max
rotation speed of spindle.

065 Line number of spindle encoder

Setting : 64~9999
range

unit : none

permission : Upon operating administrators

Preset value : 1024

Take effect : immediately


time

- 153 -
ADT-CNC4840 Milling Controller
explain : Line number encoder receives when spindle makes 1
revolution.

Like common encoder, can only receive AB phase


pulse,encoder line number must be pulse per revolution
/4 frequency doubling.

This parameter setting shall influence G74,G84 tapping


command, so this parameter must be set correctly.

066 return to zero direction of X axis

067 return to zero direction of Y axis

068 return to zero direction of Z axis

069 return to zero direction of A axis

070 return to zero direction of B axis

071 return to zero direction of C axis

Setting : 0~1
range

unit : None

permission : Upon operating administrators

Preset value : 1,1,0,0,0,0

Take effect : Immediately


time

explain : It’s used to set the ma chinery to z ero direction of X, Y, Z, a nd ABC


a xes.

0 Positive direction return to zero

1 Negative direction return to zero

072 Feed of circular interpolation


setting : 0~1
range

unit : mm

permission : Upon operating administrators

- 154 -
ADT-CNC4840 Milling Controller
preset value : 0.2

take effect : immediately


time

explain : Set Equivalent circular split

If the value is set too small,arc Approximation precision


higher,but calculated amount too big,will cause obvious
pause when processing,affects processing results.

073 G73 cutter retract value in fixed cycle

074 G83 cutter retract value in fixed cycle

setting : 0.1~100
range

unit : mm

permission : Upon operating administrators

preset value : 2.000

take effect : immediately


time

explain : Set cutter retract value after Q value feed in G73,G83


command,set according to actual Scraps discharge
effect.

075 Auto-home mode configuration (Bit)

setting : 0~4294967295
range

unit : none

permission : Upon operating administrators

preset value : 772

take effect : immediately


time

- 155 -
ADT-CNC4840 Milling Controller
explain :

00000000 00000000 00000011 00000100-->772 first Z axis


return to zero,then XY axis return to zero at the same
time

00000000 00000000 00001011 00000100-->2820 first Z axis


return to zero,then XYA axis return to zero at the same
time

00000000 00000000 00001101 00000010-->3330 first Y axis


return to zero,then XZA axis return to zero at the same
time

00000000 00000000 00111011 00000100-->15108 first Z axis


return to zero,then XYABC axis return to zero at the
same time

076 interpolation speed mode

setting : 0~1
range

unit : none

permission : Upon operating administrators

preset value : 0(accelerate and deaccelerate )

take effect : immediately


time

explain : In not preprocess mode(P1.077 set to 0),this parameter


decides accelerate and deaccelerate mode of G01
command.

0:Trapezoid acceleration and deceleration;

1:constant speed;

077 Code processing mode

setting : 0~2
range

unit : Unit

permission : Upon operating administrators

preset value : 0(realtime process)

- 156 -
ADT-CNC4840 Milling Controller
take effect : Immediately
time

explain : 0 Realtime process,suitable for debug machine.

1 Pretreatment mode. Two seconds will be buffered for


pre-reading after the System enters the machining
state. In this pretreatment mode, only the direction
and size of the feeding line segment can be judged.
Therefore, the speed can be automatically adjusted to
optimize the speed of automatic running. (speed
optimize adopts space angle optimize)

2 same as 1(but speed optimize adopts : speed restrain


optimize by max feed rate and acceleration)

078 Handwheel reference speed of X axis

079 Handwheel reference speed of Y axis

080 Handwheel reference speed of Z axis

081 Handwheel reference speed of A axis

082 Handwheel reference speed of B axis

083 Handwheel reference speed of Caxis

setting : 200~30000
range

unit : none

permission : Upon operating administrators

preset value : 1,1,0,0,0,0

take effect : immediately


time

explain : Set axis’turn hand wheel reference speed in MPG mode.

084 X axis zero pulse offset

085 Y axis zero pulse offset

086 Z axis zero pulse offset

- 157 -
ADT-CNC4840 Milling Controller

087 A axis zero pulse offset

088 B axis zero pulse offset

089 C axis zero pulse offset

setting : -9999~9999
range

unit : mm

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : Set compensate zero offset after axis return to zero

After machinery zero,then offset the set distance,then


set the point as machinery zero.

When Program zero,this parameter is invalid

090 lube oil pump Timing open time (Min)

091 Hold time setting after lube oil pump opens (sec)

092 Point start type pump on/off period(ms)

setting :
range

unit :

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

- 158 -
ADT-CNC4840 Milling Controller
explain :  Set the schedule start and hold time parameter of the
automatic oil pump of the system

  The schedule start parameter starts timing in


minute when the system is started, and the oil pump
outputs M32(OUT5) when the timing reaches specified
value.

  The output signal stops (reverse phase) after


holding the seconds specified in parameter P1.091

 If point start type pump switch cycle is set,then


output OUT5 switch signal according to the set switch
cycle,if it’s set as 0,then output low level.

093 MPG empty running process speed

setting : 0~10000
range

unit : Mm/min

permission : Upon operating administrators

preset value : 100

take effect : immediately


time

explain : In MPG empty running process mode, execute G code program


by turning MPG,set speed of G00、G01、G02、G03 motion
command. Axis fast move speed set by synthetical
parameter P1.013~P1.018 shall be invalid,feed speed F
value set by G01 G02 G03 shall also be invalid.

094 serial port communication baud rate

setting : 9600~115200
range

unit : none

permission : Upon operating administrators

preset value : 115200

take effect : reboot


time

explain : communication rate setting when DNC or other upper


computer software communicates with the controller by
RS232.

- 159 -
ADT-CNC4840 Milling Controller

095 Controller communication equipment ID

setting : 1~255
range

unit : None

permission : Upon operating administrators

preset value : 1

take effect : reboot


time

explain : Controller’s ID setting when DNC or other upper computer


software communicates with controller by MODBUS.

096 Whether reset IO when system alarm

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : 0:not reset 1: reset

097 Arc speed clamping radius factor(mm)

098 Arc speed clamping speed factor(mm/sec)

setting : 10~100 10~10000


range

unit : mm mm/sec

permission : Upon operating administrators

preset value : 50 100

take effect : immediately


time

- 160 -
ADT-CNC4840 Milling Controller
explain : Set clamping G02 or G03 arc track process speed :

MaxCircleF = sqrt(Rel_R/CircSpeed_R)* CircSpeed_V


( Rel_R:G02 G03 radius of arc command, CircSpeed_R:Arc
speed clamping radius factor, CircSpeed_V:Arc speed
clamping speed factor, MaxCircleF:G02 G03 arc process
allowing max feed speed)

In processing when F feed speed of G02 G03 command exceeds


MaxCircleF arc process feed speed, to limit G02 G03 arc
feed speed.So it won’t be too fast to cause deformation
and overcut.

099 preprocess buffer section number

setting : 10~7000
range

unit : none

permission : Upon operating administrators

preset value : 500

take effect : immediately


time

explain : In preprocess mode(P1.007 set as 1) Used to set the codes


that the system pre-reads during pretreatment

 The higher this value is, the longer the


pre-reading time is, and the response may be delayed when
just enter G01 instruction

100 arc interpolation mode

setting : 0~1
range

unit : none

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : G02 G03 interpolation way of arc interpolation


command(0:time split,1:pulse step split)

- 161 -
ADT-CNC4840 Milling Controller

101 X axis return to zero speed

102 Y axis return to zero speed

103 Z axis return to zero speed

104 A axis return to zero speed

105 B axis return to zero speed

106 C axis return to zero speed

setting : 0~90000
range

unit : mm/min

permission : Upon operating administrators

preset value : 1000

take effect : immediately


time

explain : When X、Y、Z、A、B、C axis return to zero,speed of searching


machinery zero.

107 preprocess foresight section numbers

setting : 10~200
range

unit : none

permission : Upon operating administrators

preset value : 20

take effect : immediately


time

explain : In process mode,To set speed foresight to calculate


buffer amount.

108 G00 shift interpolation pattern enable

setting : 0~1
range

unit : none

- 162 -
ADT-CNC4840 Milling Controller
permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : To set G00 fast move command shift to G01 interpolation


command to execute.

109 spare parameters

setting :
range

unit : none

permission : Upon operating administrators

preset value : 0

take effect :
time

110 X axis max restrain acceleration

111 Y axis max restrain acceleration

112 Z axis max restrain acceleration

113 A axis max restrain acceleration

114 B axis max restrain acceleration

115 C axis max restrain acceleration

setting : 1~90000
range

unit : mm/sec

permission : Upon operating administrators

preset value : 500

take effect : immediately


time

- 163 -
ADT-CNC4840 Milling Controller
explain : When P1.077 parameter (code process mode) is set as 2,set
max acceleration restrain value of speed optimize.

116 X axis max restrain speed

117 Y axis max restrain speed

118 Z axis max restrain speed

119 A axis max restrain speed

120 B axis max restrain speed

121 C axis max restrain speed

setting : 1~90000
range

unit : mm/sec

permission : Upon operating administrators

preset value : 10000

take effect : immediately


time

explain : When P1.077 parameter (code process mode) is set as 2,set


max speed restrain value of speed optimize.

1.11.2 Network parameter(P2.)


001 Local IP address

setting : 000.000.000.000~255.255.255.255
range

unit : none

permission : Upon operating administrators

preset value : 192.168.0.176

take effect : reboot


time

explain : Set system IP address when network communication.Ip


address can’t be repeated in LAN.

002 Gateway

- 164 -
ADT-CNC4840 Milling Controller

setting : 000.000.000.000~255.255.255.255
range

unit : None

permission : Upon operating administrators

preset value : 192.168.0.1

take effect : reboot


time

explain : When using route to connect to LAN,set route gateway


address.

003 subnet mask

setting : 000.000.000.000~255.255.255.255
range

unit : None

permission : Upon operating administrators

preset value : 255.255.255.0

take effect : reboot


time

004 PC IP address

setting : 000.000.000.000~255.255.255.255
range

unit : None

permission : Upon operating administrators

preset value : 192.168.0.150

take effect : Reboot


time

explain : Upper computer IP address this IP address parameter is not used yet,
no need to set.

005 MAC address

- 165 -
ADT-CNC4840 Milling Controller

setting : 000.000.000.000.000.000~255.255.255.255.255.255
range

unit : None

permission : Upon operating administrators

preset value : 192.168.0.150

take effect : reboot


time

explain : MAC(Media Access Control) address, to set network equipment


position.

006 Network port number

setting : 0~65535
range

unit : None

permission : Upon operating administrators

preset value : 2048

take effect : reboot


time
Use preset value, no need to change.
explain :

1.11.3 Axis parameter configuration (P3.)


001 parameter switch open or not

setting : 0~1
range

unit : none

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

- 166 -
ADT-CNC4840 Milling Controller
explain : Set this parameter to prevent P1.synthetical parameter
unwilling change for safe reason.0: P1. synthetical
parameter allowed to be changed;1: P1. synthetical
parameter not allowed to be changed.

002 use additional panel or not

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 0

take effect : reboot


time

explain : Set system to use additional panel ADT-FCNC6A or


not.0:not use;1: use.

003 Electrical level that indicates alarm of servo axis X is effective

004 Electrical level that indicates alarm of servo axis Y is effective

005 Electrical level that indicates alarm of servo axis Z is effective

006 Electrical level that indicates alarm of servo axis A is effective

007 Electrical level that indicates alarm of servo axis B is effective

008 Electrical level that indicates alarm of servo axis C is effective

setting : 0~1
range

unit : LOGIC VOLTAGE LEVEL

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : To match the interface parameters of the servo driver. Details


for setting the parameters are subject to the electrical level of
the interface for the servo.

009 data communication select

- 167 -
ADT-CNC4840 Milling Controller

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 0

take effect : reboot


time

explain : Set communication physical medium of upper computer


transmission software,0:RS232 serial port;1:RJ45
ethernet.

010 zero of X effective electrical level

011 zero of Y effective electrical level

012 zero of Z effective electrical level

013 zero of A effective electrical level

014 zero of B effective electrical level

015 zero of C effective electrical level

setting : 0~1
range

unit : LOGIC VOLTAGE LEVEL

permission : Upon operating administrators

preset value : 0

take effect : Immediately


time
Set the induction effective electrical level of the external
machinery zero induction switch when the system returns to
explain :

machinery zero. .
0 Low electric level
1 High electric level

016 X axis limit effective electric level

017 Y axis limit effective electric level

018 Z axis limit effective electric level

- 168 -
ADT-CNC4840 Milling Controller

019 A axis limit effective electric level

020 B axis limit effective electric level

021 C axis limit effective electric level

022 X-axis positive limit of hardware enable

023 Y-axis positive limit of hardware enable

024 Z-axis positive limit of hardware enable

025 A-axis positive limit of hardware enable

026 B-axis positive limit of hardware enable

027 C-axis positive limit of hardware enable

028 X-axis negative limit of hardware enable

029 Y-axis negative limit of hardware enable

030 Z-axis negative limit of hardware enable

031 A-axis negative limit of hardware enable

032 B-axis negative limit of hardware enable

033 C-axis negative limit of hardware enable

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 0

take effect : reboot


time

- 169 -
ADT-CNC4840 Milling Controller
explain : There are two kind s of modes of hard limit, one is
hardware response mode, the other is software scanning
mode

 The hardware response mode is self-bring of the


motion chip, it is triggered by the effective level of the
circuit examination limiting displacement foot, so the
real time is very high, but it also brings a disadvantage,
when it is disturbed heavily by the outside condition,
it will disturb pulse, the system will not alarm due to it
has no time to read the fault, it will cause the false
appearance of pulse lose; So when using this function
normally requires constant-closed wire connection of
the connection switch, namely effectiveness is high
level; Considering the complexity of the field
environment, the default is shuted dow n.

 The system is equipped with the scan mode and it can


no be screened. The scan mode adopts the appointing
function visiting input signal, it adopts software
anti-jamming examine technology and is able to
estimate if whether it is the limiting displacement or
disturbing no-action. This need some time to estimate,
so real time effective is not better than the stop -type
limiting displacement. But most of the time (when the
processing speed is 10mm/min), it can satisfy the
safety examination

 The hardware response function of the hardware


limiting displacement take precedence of scan
response function, namely if the hardware response
starts, it will quicken the response speed,
noteworthiness, the hardware response function only
can stop the pulse with immediate-stop mode, so when
the speed is very fast, the effectiveness of
immediate-stop may cause the vibration of the tool.
But the software scanning mode adopt the mode of
maximum acceleration decelerating stop, decelerate
according to the maximum speed of each axis set by
user(parameter P2.074~077), so will be some
overshoot phenomenon.

- 170 -
ADT-CNC4840 Milling Controller

034 X axis pulse direction mode

035 Y axis pulse direction mode

036 Z axis pulse direction mode

037 A axis pulse direction mode

038 B axis pulse direction mode

039 C axis pulse direction mode

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 1

take effect : Reboot


time

explain : Set pulse direction,if controller pulse direction is


opposite to driver direction,can change this parameter
to adjust rotate direction of motor.

040 X axis auto zero whether effective

041 Y axis auto zero whether effective

042 Z axis auto zero whether effective

043 A axis auto zero whether effective

044 B axis auto zero whether effective

045 C axis auto zero whether effective

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 1,1,1,0,0,0

take effect : immediately


time

- 171 -
ADT-CNC4840 Milling Controller
explain : Set any of XYZABC axis return to zero at the same time
whether effective.1:effective; 0:not effective.When use
this parameter to set auto zero,Z axis return to zero
first.

046 servo X axis alarming reset efficient level

047 servo Y axis alarming reset efficient level

048 servo Z axis alarming reset efficient level

049 servo A axis alarming reset efficient level

050 servo B axis alarming reset efficient level

051 servo C axis alarming reset efficient level

setting : 0~1
range

unit : LOGIC VOLTAGE LEVEL

permission : Upon operating administrators

preset value : 0

take effect : Immediately


time

explain : Mtach port parameter of chosen servo driver,specific


parameter setting depends on servo driver’s port
electric level.

052 The appointing interface axis number of X axis

053 The appointing interface axis number of Y axis

054 The appointing interface axis number of Z axis

055 The appointing interface axis number of A axis

056 The appointing interface axis number of B axis

057 The appointing interface axis number of C axis

setting : 1~6
range

unit : pulse interface number

permission : Upon operating administrators

preset value :

- 172 -
ADT-CNC4840 Milling Controller
take effect : Reboot
time
In the default mode, the real axis number of each
coordinate defining axis is corresponded to the silk -screen
explain :

number of the product shell, when there is some abnormity


with some function axis, you can change the axis
according to the appointing function. For example, set the
P2.045 as 4, set the 4,P2.048 as 1, then the operation of
any x axis in the system is the operation of the A axis
coding interface in the product shell.
0:have no axis

1~4:corresponding axis one to axes four

058 spindle appointing interface axis number(restart)

setting : 0~6
range

unit : pulse interface number

permission : Upon operating administrators

preset value :

take effect : reboot


time
set it as 0 in the default mode, it stands for the main shaft
is the frequency conversion controlling mode, namely it is
explain :

the analog or shift controlling mod e, if you want to use the


servo main shaft, then it must occupy a coding
interface,(the servo main shaft must be the position
controlling mode); Then you can amend this parameter
and appoint the function.
0 :the frequency conversion main shaft of the
analog adjusting
1~4:correspond to number 1 to number 4 axis
Notice: If you appoint some pulse port as the
function port of the main shaft, need to delete the
function axis number corresponding to this pulse
before or when restart, the system will allocate the
main shaft preferentially and the original function
will be invalid

- 173 -
ADT-CNC4840 Milling Controller

059 X pulse command format

060 Y pulse command format

061 Z pulse command format

062 A pulse command format

063 B pulse command format

064 C pulse command format

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 1

take effect : reboot


time

explain : the setting of the pulse command format is the mode of


configuration input pulse, need to know the command
format received by the motor driver in advance.

0 pulse+pulse

1 pulse+direction

065 axis X pulse logic voltage level

066 axis Y pulse logic voltage level

067 axis Z pulse logic voltage level

068 axis A pulse logic voltage level

069 axis B pulse logic voltage level

070 axis C pulse logic voltage level

setting : 0~1
range

unit : LOGIC VOLTAGE LEVEL

permission : Upon operating administrators

preset value : 0

- 174 -
ADT-CNC4840 Milling Controller
take effect : reboot
time

explain : set the normal level when the pulse is w orking, if set a
level is different from the normal level which the motor
driver requires, then at each time of positive and negative
movements(it is nothing to do with the pulse amount),
there is an accumulative error in one direction. So you find
that the machine has the accumulative error in one
direction, please notice whether this parameter is not
compatible

071 To enable phase Z inspection at servo axis X


072 To enable phase Z inspection at servo axis Y
073 To enable phase Z inspection at servo axis Z
074 To enable phase Z inspection at servo axis A
075 To enable phase Z inspection at servo axis B
076 To enable phase Z inspection at servo axis C
077 electric level that indicates phase Z of servo axis X is effective
078 electric level that indicates phase Z of servo axis Y is effective
079 electric level that indicates phase Z of servo axis Z is effective
080 electric level that indicates phase Z of servo axis A is effective
081 electric level that indicates phase Z of servo axis B is effective
082 electric level that indicates phase Z of servo axis C is effective
setting : 0~1
unit : LOGIC VOLTAGE LEVEL
permission : Upon operating administrators
preset value : 0
take effect : immediately
explain : After this parameter is set and used, the System will

083 X axis ROUND set value

084 Y axis ROUND set value

085 Z axis ROUND set value

086 A axis ROUND set value

087 B axis ROUND set value

088 C axis ROUND set value

- 175 -
ADT-CNC4840 Milling Controller

setting : 0~9999999
range

unit : Pulse

permission : Upon operating administrators

preset value : 0

take effect : reboot


time

explain :  The loop function only exists in the hardware edition


1.5 or above.

 This functoin can prevent the overflow error that the


axis logic counting exceeds the maximum counting
range(2147483648).

 Normally the overflow will happen if set the axis as


the rotary axis, so after the system get the
P3.089~P3.094 parameter, if it finds user setted
the current axis as the rotary axis and adopt 360°
displaying mode, then the system calculate t he
the corresponding pulse threshold value
according to the gear ratio of the current axis and
endue with the round parameter of the
corresponding axis, the user can see the the
change of the parameter after start the rotary axis
displaying function. User can amend the
parameter after been changed, the final
displaying numbers are effective.

The parameter can only be carried out after restart; The


executing qualification is the corresponding axis must be
setted as the rotary axis and set it as 360°displayin g
( P3.089~P3.094 )

089 set X axis feature

090 set Y axis feature

091 set Z axis feature

092 set A axis feature

093 set B axis feature

094 set C axis feature

setting : 0~1
range

- 176 -
ADT-CNC4840 Milling Controller
unit : None

permission : Upon operating administrators

preset value : 1

take effect : reboot


time

explain : set the features of the axis.


0:rotary axis
1:linear axis

The setting of this parameter and P3.095~100 corresponding axis


will influence the setting of P3.083~088 , for details please refer to
the parameter instructions of P2.083~088 .

095 X axis rotate display mode

096 Y axis rotate display mode

097 Z axis rotate display mode

098 A axis rotate display mode

099 B axis rotate display mode

100 C axis rotate display mode

setting : 0~1
range

unit : none

permission : Upon operating administrators

preset value : 0

take effect : immediately


time

explain : set the coordinate display mode of axis. This parameter is


valid when P3.089~P3.094 is setted as 0.

0:0~360 degree displaying

1:-9999.999~9999.999 degree displaying

The setting of this parameter and P2.089~094 corresponding axis


will influence the setting of P3.083~088 , for details please refer to
the parameter instructions of P3.083~088.

- 177 -
ADT-CNC4840 Milling Controller

101 the rotary route of X axis optimizing

102 the rotary route of Y axis optimizing

103 the rotary route of Z axis optimizing

104 the rotary route of A axis optimizing

105 the rotary route of B axis optimizing

106 the rotary route of C axis optimizing

setting : 0~1
range

unit : None

permission : Upon operating administrators

preset value : 1

take effect : reboot


time
when this parameter is valid when P3.089~P3.094 and
P3.095~P3.100 is setted as 0; set whether choose automatic
explain :

search the shortest route moving, if this axis is rotary axis


and it does not process during the positiong course, start
this function, it can reduce the moving time.
0: do not optimize the route
1: start the shortest route
Notice: If during the moving co urse it needs the
cutting process, then the optimizing of the shortest
route maybe is not the processing trajectory you
want

107 direction logic of X axis encoder

108 direction logic of Y axis encoder

109 direction logic of Z axis encoder

110 direction logic of A axis encoder

111 direction logic of B axis encoder

112 direction logic of C axis encoder

113 MPG encoder direction logic

- 178 -
ADT-CNC4840 Milling Controller

setting : 0~1
range

unit : none

permission : Upon operating administrators

preset value : 0

take effect : immediately


time
When the logic direction the coder gets is opposite to the
real moving direction of the axis, you can set this
explain :

parameter and set in the same direction.


MPG encoder reuse A axis encoder
Spindle encoder reuse X axis encoder
0: positive direction
1: negative direction

1.11.4 Tool magazine parameter (P4.)


001 system amount of cutting tool
002 the speed of cutting tool change (mm/min)
003 the interval of cutter spacing(mm or degree)
004 safe height of cutting tool change(mm)
005 cutting tool changing benchmark speed X(mm)
006 cutting tool changing benchmark speed Y(mm)
007 cutting tool changing benchmark speed Z(mm)
008 Z axis put tool coord(mm)

009 Z axis fetch tool coord (mm)

010 current tool number

011 next ready tool number

setting :
range
unit :

permission : Upon operating administrators

preset value :

take effect : immediately


time
explain : This parameter is set according to the tool magazine of
the tool factory, please refer to the tool machine tool
instruction of tool factory.

- 179 -
ADT-CNC4840 Milling Controller

1.11.6 IO Configuration parameter(P5.)


001 IN00 OUT00

… …

059 IN59 OUT59

setting : Input mapping:0~55 input IN detect elctric level:0~1


range output mapping:0~53

Reset enable:0~1

unit : None

permission : Upon operating administrators

preset value : Refer to port table

take effect : immediately


time

explain : 1. input mapping:control system input (IN)IO object.

2. input IN detect elctric level:specific to all


system’s IO input IN00~IN55 detect effective
electric level.0:low electric level valid; 1:high
electric level valid.

3. reset enable:specific to all system IO output OUT00~


OUT53,whether reset output IO when system alarm or
push [reset] button.1:reset corresponding IO output;
0:not reset corresponding IO output.

1.11.7 Manager Parameter (P6.)


001 Enter Administrator password protection

002 Modify suppersuser password

003 Modify operation user password

setting : None
range

unit : None

permission : None

preset value : None

- 180 -
ADT-CNC4840 Milling Controller
take effect : immediately
time

explain : 1. In this menu, press Insert and enter the password press
[EOB]. If the password is authenticated and confirmed, the
System will enter this user mode.

2. Once the mode successfully entered, this menu will be


changed to “exit XXX administrator mode”, suggesting
entering is successful.

3. In the changed menu, press Insert, the System will exit the
administration mode. At the time, the parameters should be
modified and the administration mode re-entered.

4. The authority of superuser can modify all passwords,


whereas the authority of operator can only modify the
password of the operation himself.

5. When the password is 0, it means in this mode the


password will not be authenticated. If the parameters need
to be modified, you don’t have to enter the administrator
mode.

6. When system leaves factory,superuser and operator


password are 0,users can change the password by
themselves.

004 The initialing comprehensive parameters are the factory defaults

005 The initializing axis configuration network parameters are the factory defaults

setting : None
range

unit : None

permission : Superuser

preset : None
value

take effect : immediately


time

explain : Only in superuser mode, can the axis config and network parameter
table be initialized.

006 to backup synthetical parameter SYSPARAM.DAT

007 recover synthetical parameter from SYSPARAM.DAT

- 181 -
ADT-CNC4840 Milling Controller

setting : None
range

unit : None

permission : Superuser

preset : none
value

take effect : reboot


time

explain : 1. You can do the parameter back -up and retrieval only
under the superuser mode.

2. The parameter back-up is the SYAPARAM.DAT file


appointed under the root directory of the controller
electronic disc, if it h as existed a cognominal file in it,
then the last back-up will bestrow this file.

3. The bestrow is also carried out under the root directory


of the controller electronic disc according to the
SYSPARAM.DAT file. When it is bestrowed, it will judge
whether it belongs to the same parameter edition
according to the parameter edition number of the
system back-up, if it is not the same edition, then it will
not carry out the retrieval to the parameter.

4. After recover,system needs to be reboot to make recoverd


parameters valid.

008 backup axis config parameter to KNFPARAM.DAT

009 recover synthetical parameter from KNFPARAM.DAT

setting : None
range

unit : None

permission : Superuser

preset : None
value

take effect : reboot


time

- 182 -
ADT-CNC4840 Milling Controller
explain : 5. You can do the axis config and network parameter
back-up and retrieval only under the superuser mode

6. The parameter back-up is the KNFPARAM.DAT file


appointed under the root directory of the controller
electronic disc, if it has existed a cognominal file in it,
then the last back-up will bestrow this file.

7. The bestrow is also carried out under the root directory


of the controller electronic disc according to the
KNFPARAM.DAT file. When it is bestrowed, it will judge
whether it belongs to the same parameter edition
according to the parameter edition number of the
system back-up, if it is not the same edition, then it will
not carry out the retrieval to the parameter.

8. After recover,system needs to be reboot to make recoverd


parameters valid.

010 initialize SRAM parameter factory default

010 backup SRAM parameter to SRAMDATA.DAT

012 Recover SRAM parameter from SRAMDATA.DAT

setting : None
range

unit : None

permission : Superuser

preset : None
value

take effect : reboot


time

- 183 -
ADT-CNC4840 Milling Controller
explain : 9. You can do the SRAM parameter initialize, back-up and
retrieval only under the superuser mode

10. The parameter back-up is the SRAMDATA.DAT file


appointed under the root directory of the controller
electronic disc, if it has existed a cognominal file in it,
then the last back-up will bestrow this file.

11. The bestrow is also carried out under the root directory
of the controller electronic disc according to the
SRAMDATA.DAT file. When it is bestrowed, it will judge
whether it belongs to the same parameter e dition
according to the parameter edition number of the
system back-up, if it is not the same edition, then it will
not carry out the retrieval to the parameter

12. After recover,system needs to be reboot to make recoverd


parameters valid.

013 generate password file

setting : None
range

unit : None

permission : None

preset : None
value

take effect : immediately


time

explain : If user forget password,can use this function to generate


PassMeg.DAT file,give this file to ADTECH,ADTECH can
restore the password.

014 Import CSV system configuration table

setting : none
range

unit : None

permission : None

preset : none
value

take effect : immediately


time

- 184 -
ADT-CNC4840 Milling Controller
explain : Import the CSV system configuration table of the
manufacturer into the system.

015 Clear current processing number

016 Clear accumulated processing number

017 accumulated process max limit number (0 is infinite)

setting : None
range

unit : None

permission : None

preset : None
value

take effect : immediately


time

explain : P6.015 P6.016:clear current processing number or


accumulated processing number.

P6.017 accumulated process max limit number:when set value


is bigger than 0,then program can’t be processed when
accumulated processing number exceeds the set value,after
accumulated processing number,program can be executed
again.

018 System language pack

setting : 0~1
range

unit : None

permission : Operation admin

preset : 0(Chinese)
value

take effect : Reboot


time

explain : Select system language

0 Chinese

1 English

- 185 -
ADT-CNC4840 Milling Controller

1.12 System alarming


The system alarming is divided into multi-level alarming, so the alarming number has a level
classification. As follows:
G code program runs alarming informatio n
system condition alarming information

1.12.1 NC Program executing alarming


0000 : system not reset or XYZ axis not return to zero
0001 : program over
0002 : not specify movement function
0003 : no G code to get line code function
0004 : cutting tool changing failure
0005 : cutting tool invalid
0006 : G program segment repeat error
0007 : G program segment program number error
0008 : G7x8x compound command code can not run normally
0009 : specified port number error
0010 : program abend error
0011 : appoint the M01 code program halt
0012 : specified program number doesn’t exist
0013 : M98 format error
0014 : call motion executing failure
0015 : this segment does not need compensation
0016 : G program segment invalid format
0017 : M99 command call abnormity, forbidden in current occasion
0018 : movement abnormity alarming
0019 : illegal character
0020 : annotation mark format error or no symmetrical annotation mark
0021 : illegal G code
0022 : the radius offset number of G code error or value error
0023 : undefined G code radius offset error
0024 : arc programming error
0025 : appointing illegal plane exceeds G17,G18,G19
0026 : M98 calling error, probably exceeds the maximum value
0027 : spindle appointing hardware axis number error
0028 : M code executing error
0029 : spindle appointing failure
0030 : moving repeat request
0031 : appointing arc does not exist
0032 : lack X command error
0033 : lack Y command error
0034 : lack Z command error
0035 : lack A command error
0036 : lack B command error
0037 : lack C command error
- 186 -
ADT-CNC4840 Milling Controller
0038 : lack D command error
0039 : lack R command error
0040 : lack F command error
0041 : lack T command error
0042 : lack S command error
0043 : lack P command error
0044 : lack M command error
0045 : lack G command error
0046 : lack I command error
0047 : lack J command error
0048 : lack K command error
0049 : lack Q command error
0050 : screw pitch value repeating appointing error
0051 : system alarming and quit abnormally
0052 : quit by man-interrupting
0053 : no appointing G code parameter source
0054 : non appointing G code program number sheet storage address
0055 : macro function call error
0056 : macro expression abnormal write
0057 : macro variable address error
0058 : illegal variable value
0059 : skip sentence error
0060 : macro loop sentence pair error
0061 : macro loop sentence nest error
0062 : macro loop sentence nest call too much,exceeds max layer numbers
0063 : not define macro variable to get address function.
0064 : user self define information
0065 : user self define alarm
0066 : const quote error
0067 : last track i_gcode feature value error
0068 : next track i_gcode feature value error
0069 : start compensation point arc entering in
0070 : end compensation point arc exit
0071 : radius compensate last track starting point overlap end point
0072 : radius compensate next track starting point overlap end point
0073 : radius compensation value exceeds G0203 R value
0074 : not supportive codes occur in radius compensation
0075 : NURBS pitch point too many
0076 : NURBS parameter error





- 187 -
ADT-CNC4840 Milling Controller

1.12.2 system environment alarming


0001 : Emergency stop
hand-held box interface emergency stop button is effective
External emergency stop input valid,detect whether IO assign
has conflict or interference.
See the corresponding function interface in IO config, you can see it in
the input diagnoses

When system emergency stop is valid,system G code program


execute ,axis movements,all operations stop immediately,until
emergency alarm removed.

0002 : X axis positive direction hard limit


0003 : X axis positive direction soft limit
0004 : X axis negative direction hard limit
0005 : X axis negative direction soft limit
0006 : Y axis positive direction hard limit
0007 : Y axis positive direction soft limit
0008 : Y axis negative direction hard limit
0009 : Y axis negative direction soft limit
0010 : Z axis positive direction hard limit
0011 : Z axis positive direction soft limit
0012 : Z axis negative direction hard limit
0013 : Z axis negative direction soft limit
0014 : A axis positive direction hard limit
0015 : A axis positive direction soft limit
0016 : A axis negative direction hard limit
0017 : A axis negative direction soft limit
0018 : B axis positive direction hard limit
0019 : B axis positive direction soft limit
0020 : B axis negative direction hard limit
0021 : B axis negative direction soft limit
0022 : C axis positive direction hard limit
0023 : C axis positive direction soft limit
0024 : C axis negative direction hard limit
0025 : C axis negative direction soft limit

- 188 -
ADT-CNC4840 Milling Controller
1. the system gives the limit alarming corresponding to the hint,
examine the corresponding limit induction point or parameter.
2. If it is hard limiting displacement alarm, there is no problem with
the induction point visual examination, then enter the diagnoses
mode under the hand-mode, check the input port condition
under the diagnoses mode, if the condition is effective, then
eliminate it in turn, now pull out IO line, check whether the
induction disappears, if it disappears then check the lines, if it still
exists, the inside optical coupler maybe is destroyed, please
contact the supplier.
3. If P1.031 ~ P1.042 ± soft limit route limit value is
set,when axis machinery coord moving value exceeds the
set value,reach route limit alarm will happen.
4. No matter hard limit alarm or soft limit alarm,move
corresponding axis in opposite direction and then push
[reset] button to remove alarm in manual mode or handwheel
mode.

0026 : tool setting instrument limit


When system auto tool set,doesn’t detect tool setting
point,but detect limit point of tool set instrument,tool
setting instrument limit alarm will happen to end auto tool
setting,to prevent damage to tool setting instrument.

0026 : spindle alarm


Spindle inverter gives alarm signal to system when spindle
rotation speed too high or other reasons,system shall end
program execution immediately.

0027 : X axis servo alarm


0028 : Y axis servo alarm
0029 : Z axis servo alarm
0030 : A axis servo alarm
0031 : B axis servo alarm
0032 : C axis servo alarm
1. If servo alarming, but actually the servo does not give the alarming,
it is probably that the setting of parameter P3.003~008 is opposite to
the servo real alarming level, change the parameter
2. the corresponding function interface is IN66~IN71, you can see it in
the input diagnoses

0033 : air pressure alarm


When machine pneumatic parts detect insufficient air
pressure,gives alarm signal to system.

0034 : system clamp material alarm


When machine clamp parts detect not tight clamp of work
material,gives alarm signal to system.

- 189 -
ADT-CNC4840 Milling Controller

1.2 Annex1 setting of workpiece coordinate and tool setting


When using CNC4840 cont roller, it is recommended t o inst all t he machine zero point
swit ch.
Aft er ret urning t o t he zero point , t he workpiece coordinat e syst em 1~6 are
est ablished. Select G54 coordinat e syst em (workpiece coordinat e syst em 1) when
st art ing t he machine. The absolut e value of posit ion int erface is t he coordinat e value
in t he current coordinat e syst em.
(Not e: it ’s not necessary t o use G92 t o set coordinat e syst em when t he funct ions of
workpiece coordinat e are select ed. If G92 is used to set t he coordinat e syst em, it may
move t he coordinat e syst em 1~6. Do not use G92 t oget her wit h G54~G59, unless you
are going t o move t he workpiece coordinat e syst em G54~G59)
1. Met hods for t ool set t ing wit h machine zero point
First, make sure “Zero mode” is set as 1. Use [Zero Mode] to make XYZA axes to return to the
reference point, at this time the machine tool coordinate of position (comprehensive position) is 0. After
returning to the reference point, select a tool from tool holder and take the tool tip as the starting point
of program. In [Manual mode], press or , or , or ,

or , or , or t o move t o t he st art ing point of

workpiece (zero point of workpiece coordinat e syst em). Press or -and

t hen press key t o swit ch t o coordinat e paramet er int erface (t he value of machine
posit ion X, Y, Z, A, B, and C under t he int erface is t he mechanical coordinat e value of
current point of t ool). press and key t o allow t he cursor t o move t o G54,
G55……G59, select t he relevant X, Y, Z, A, B, C workpiece coordinat e, select
[Record] and press key, you can t hen set t he mechanical coordinat e value of
current point of t ool as t he origin of workpiece coordinat e syst em.
If t he offset of origin of workpiece coordinat e syst em t o t he origin of machine
coordinat e syst em is known, you can input t he value direct ly in t he set t ing int erface of
workpiece coordinat e syst em and t hen press key t o set t he origin of workpiece
coordin ate system.

1.3 Annex 2 Table of operating environment


Operating temperature 0°C— 45°C

Optimum operating temperature 5°C— 40°C

Operating humidity 10%——90% No condensation

Optimum operating humidity 20%——85%

Storage temperature 0℃—50℃

Storage humidity 10%——90%

- 190 -
ADT-CNC4840 Milling Controller

1.4 Annex3 Description of keyboard


The keyboard of CNC4840 is divided int o t wo areas, edit ion area and operat ion area. The
following t able is t he descript ion of all keys:

S/N Name Purpose

having different funct ions in different


1
display modes

To insert a EOB when t he input buffer


st orage has no dat a, and confirm t he
2
modificat ion of paramet er in
paramet er int erface

3 Address /Figure Ent er let t er and number

There are t wo ways of cursor


movement : ↓→: move down t he cursor
Cursor key a subdivision;

4 ↑←: move up t he cursor a subdivision.


Keep pressing t he cursor key allows
t he cursor t o move cont inuously. At
t he same t ime, ←→ can be used as
search key.

5 [Posit ion] Select [Posit ion] int erface

Select [Program] and [File


6 [Program]
management ] int erfaces

7 [Offset ] Select [Too compensat ion] int erface

8 [Syst em] Select [Syst em] int erface

9 [Message] Select [Message] int erface

10 [Graph] Select [Graph] int erface

insert t he charact er or sign in buffer


11 [Insert ]
st orage int o t he program

- 191 -
ADT-CNC4840 Milling Controller

Clear t he charact er or sign ent ered


int o t he input buffer st orage. For
12 [Cancel] example, when t he buffer st orage is
displayed as N001, press [Cancel] key
and t he N001 will be cancelled.

t o modify t he program or field during


13 [Alt er]
t he edit ion

t o swit ch bet ween upper and lower


14 [Shift ]
shift

15 [Input ] Not available

16 [Delet e] delet e a current subdivision

show t he operat ing funct ion


17 [Help] descript ions of composit e funct ion
keys

18 [Reset ] Clear t he alarm, CNC reset

Annex Product specifications

Function Name Specification

Controlled axis 4axis (X,Y,Z,A )


Controllable
axes 4 axes linear interpolation
Simultneous controllable axes number
2 axes arc interpolation

Min setting unit 0.001mm

Input command Min move unit 0.001mm

Max instruction value ±9999.999 mm

X-axis、Y-axis、Z-axis、
Feed fast feedrate
A-axis:9999mm/min(max)

feed per minute 1~9999 mm/min


range
feed per rotate 0.0001~500.0000 mm/r

- 192 -
ADT-CNC4840 Milling Controller

Auto acc and dec speed Yes

feed speed rate 10~150%

Hand continuous feeding Yes

one or three axes return to return to


Hand Reference point for manual return
reference point simultaneously

single step /handwheel function Yes

Interpolation Location,Linear,Full cycle arc G00,G01,G02/G03

Operation mode MDI,automation,manual,single step,edit Yes

Commissioning Yes
Trial running,single program,hand wheel
function

Pause(sec/microsecond) G04 X /P_


Coordinate
system and coordinate system setting G92
pause
Auto coordinate system setting Yes

software limit check Yes


safety function
sudden stop Yes

Total capacity: 32M bytes; 512


working areas; 4M bytes each
Memory program storage capacity and quantity
working area,can store 10000
programs.

program edit Insert,modification,delete,cancel

program number,sequence,address, Yes


Character retrieving

Program edit decimal point programming Yes

Position /program Yes


Cutter compensation/alarm
/diagnosis
Parameter/image emulation

- 193 -
ADT-CNC4840 Milling Controller

assistant function M2 digit

M,S ,T S 2 digit (level con trol) S 3~5 digit


function spindle function (an alog)

Tool function T01~18

Memory for cutter compensation ±7 digit 36 sets


Compensation
Function
Reverse gap compensation Yes

Start program at any position Yes

Others function Designating arc radius R Yes

Electronic gear ratio Yes

- 194 -

You might also like