All rights reserved. No part of this documentation may be transmitted,
transcribed, stored in a backup device or translated into another language
without Fagor Automation’s consent. Unauthorized copying or distributing of this
software is prohibited.
The information described in this manual may be subject to changes due to
technical modifications. Fagor Automation reserves the right to change the
contents of this manual without prior notice.
All the trade marks appearing in the manual belong to the corresponding owners.
The use of these marks by third parties for their own purpose could violate the
rights of the owners.
DUAL-USE PRODUCTS
Products manufactured by FAGOR AUTOMATION since April 1st 2014 will
include "-MDU" in their identification if they are included on the list of dual-use
products according to regulation UE 428/2009 and require an export license
depending on destination.
It is possible that CNC can execute more functions than those described in its
associated documentation; however, Fagor Automation does not guarantee the
validity of those applications. Therefore, except under the express permission
from Fagor Automation, any CNC application that is not described in the
documentation must be considered as "impossible". In any case, Fagor
Automation shall not be held responsible for any personal injuries or physical
damage caused or suffered by the CNC if it is used in any way other than as
explained in the related documentation.
The content of this manual and its validity for the product described here has been
verified. Even so, involuntary errors are possible, hence no absolute match is
guaranteed. However, the contents of this document are regularly checked and
updated implementing the necessary corrections in a later edition. We appreciate
your suggestions for improvement.
The examples described in this manual are for learning purposes. Before using
them in industrial applications, they must be properly adapted making sure that
the safety regulations are fully met.
This product uses the following source code, subject to the terms of the GPL license. The applications busybox V0.60.2;
dosfstools V2.9; linux-ftpd V0.17; ppp V2.4.0; utelnet V0.1.1. The librarygrx V2.4.4. The linux kernel V2.4.4. The linux boot
ppcboot V1.1.3. If you would like to have a CD copy of this source code sent to you, send 10 Euros to Fagor Automation
for shipping and handling.
Page 3
Programming manual
INDEX
About the product ......................................................................................................................... 9
Declaration of conformity and Warranty conditions .................................................................... 11
Version history............................................................................................................................ 13
C axis (on Lathe)-------------------------Opt.Opt.Opt.
Y axis (on Lathe)-------------------------Opt.Opt.Opt.
TelediagnosisOpt.Opt.Opt.Opt.Stand.Opt.Opt.Opt.
·10·
Page 11
DECLARATION OF CONFORMITY AND
WARRANTY CONDITIONS
DECLARATION OF CONFORMITY
The declaration of conformity for the CNC is available in the downloads section of FAGOR’S corporate
website at http://www.fagorautomation.com. (Type of file: Declaration of conformity).
WARRANTY TERMS
The warranty conditions for the CNC are available in the downloads section of FAGOR’s corporate website
at http://www.fagorautomation.com. (Type of file: General sales-warranty conditions).
CNC 8055
CNC 8055i
·11·
Page 12
Declaration of conformity and Warranty conditions
CNC 8055
CNC 8055i
·12·
Page 13
VERSION HISTORY
Here is a list of the features added in each software version and the manuals that describe them.
The version history uses the following abbreviations:
INSTInstallation manual
PRGProgramming manual
OPTOperating manual
OPT-MCOperating manual for the MC option.
OPT-TCOperating manual for the TC option.
OPT-COManual of the CO manual
Software V01.00October 2010
First version.
Software V01.20April 2011
List of featuresManual
Open communication.INST
Improvements to Look Ahead machining.INST
Blocks with helical interpolation in G51.PRG
G84. Tapping with relief.PRG
Software V01.08August 2011
List of featuresManual
Spindle parameter OPLDECTI (P86).INST
Software V01.30September 2011
List of featuresManual
Gear ratio management on Sercos spindlesINST
Improved feedrate limit management (FLIMIT).INST
New type of penetration in lathe type threading cycles.PRG
Improved lathe type thread repair. Partial repair.PRG
MC option: Rigid tapping with relief.OPT-MC
TC option: New type of penetration in threading cycles.OPT-TC
TC option: Improved thread repair. Partial and multi-entry (start) thread repair.OPT-TC
TC option: Zig-zag entry to the groove at the starting point of the groove.OPT-TC
CNC 8055
CNC 8055i
·13·
Page 14
Version history
Software V01.31October 2011
List of featuresManual
CNC 8055 FL Engraving modelINST / OPT/ PRG
Software V01.40January 2012
List of featuresManual
Execution of M3, M4 and M5 using PLC marksINST / PRG
Values 12 and 43 of variable OPMODE in conversational work mode.INST / PRG
Software V01.60December 2013
List of featuresManual
Auto-adjustment of axis machine parameter DERGAIN.INST
New value for axis machine parameter ACFGAIN (P46).INST
Value 120 of the OPMODE variable.INST / PRG
CNC 8055
CNC 8055i
Software V01.65January 2015
List of featuresManual
Block processing time of 1 ms on the "CNC 8055i FL Engraving" model.INST / OPT/ PRG
Software V02.00February 2014
List of featuresManual
Profile machining in segments. J parameter for G66 and G68 cycles.PRG
Calls to subroutines using G functions.INST / PRG
Anticipated tool management.INST
Managing "PNG" and "JPG" graphic elements.INST
New values for parameters MAXGEAR1..4 (P2..5), SLIMIT (P66) and MAXSPEED (P0).INST
Retracing function of 2000 blocks.INST
Quick block search.OPT
Local subroutines within a program.PRG
Avoid spindle stop with M30 or RESET. Spindle parameter SPDLSTOP (P87).INST
Programming T and M06 with associated with a subroutine in the same line.PRG
New values of the OPMODE variable.INST / PRG
New variables: DISABMOD, GGSN, GGSO, GGSP, GGSQ, CYCCHORDERR.INST / PRG
Possibility to set the parameters of SERCOS nodes in a non-sequential order.INST
WRITE instruction: “$” character followed by “P”.PRG
Cancel additive handwheel offset with G04 K0. General parameter ADIMPG (P176).INST / PRG
Ethernet parameter NFSPROTO (P32). TCP or UDP protocol selection.INST
Face thread repair cycle.OPT TC
Penetration increment (step) in thread repair.INST / OPT TC
API compliant thread.OPT TC
Roughing by segments in inside profiling cycles 1 and 2.INST / OPT TC
Programming the Z increment and the angle on threads.INST / OPT TC
Reversal of the starting and final point of the face thread repair.INST / OPT TC
Manual tool calibration without stopping the spindle during each step.INST / OPT TC
·14·
Page 15
Software V02.03July 2014
List of featuresManual
Set PAGE and SYMBOL instructions support PNG and JPG/JPEG formats.PRG
New values for parameters MAXGEAR1..4 (P2..5), SLIMIT (P66), MAXSPEED (P0) and
DFORMAT (P1).
INST
Software V02.10November 2014
List of featuresManual
Incremental zero offset (G158).INST / PRG
Programs identified with letters.OPT
Variables PRGN and EXECLEV.INST
Korean language.INST
Change of default value for general machine parameters: MAINOFFS (P107), MAINTASF (P162)
and FEEDTYPE (P170).
New variable EXTORG.INST / PRG
Image handling via DNC.PRG
Save/restore a trace of the oscilloscope.OPT
INST
Version history
Software V02.21July 2015
List of featuresManual
PLC library.INST
Zero offsets table in ISO mode.OPT
Compensation of the elastic deformation in the coupling of an axis.INST
Machine axis parameter DYNDEFRQ (P103).INST
Change of maximum value of axis and spindle parameter NPULSES.INST
Operating Terms.OPT
Software V02.22March 2016
List of featuresManual
Axis filters for movements with the handwheel. General machine parameter HDIFFBAC (P129)
and machine axis parameter HANFREQ (P104).
Change of maximum value of axis and spindle parameter NPULSES.INST
INST
CNC 8055
CNC 8055i
·15·
Page 16
Version history
CNC 8055
CNC 8055i
·16·
Page 17
SAFETY CONDITIONS
Read the following safety measures in order to prevent harming people or damage to this product and those
products connected to it.
The unit can only be repaired by personnel authorized by Fagor Automation.
Fagor Automation shall not be held responsible of any physical or material damage originated from not
complying with these basic safety rules.
PRECAUTIONS AGAINST PERSONAL HARM
• Interconnection of modules.
Use the connection cables provided with the unit.
• Use proper Mains AC power cables
To avoid risks, use only the Mains AC cables recommended for this unit.
• Avoid electric shocks.
In order to avoid electrical discharges and fire hazards, do not apply electrical voltage outside the range
selected on the rear panel of the central unit.
• Ground connection.
In order to avoid electrical discharges, connect the ground terminals of all the modules to the main
ground terminal. Before connecting the inputs and outputs of this unit, make sure that all the grounding
connections are properly made.
• Before powering the unit up, make sure that it is connected to ground.
In order to avoid electrical discharges, make sure that all the grounding connections are properly made.
• Do not work in humid environments.
In order to avoid electrical discharges, always work under 90% of relative humidity (non-condensing)
and 45 ºC (113º F).
• Do not operate this unit in explosive environments.
In order to avoid risks, harm or damages, do not work in explosive environments.
CNC 8055
CNC 8055i
·17·
Page 18
CNC 8055
CNC 8055i
• Work environment.
This unit is ready to be used in industrial environments complying with the directives and regulations
effective in the European Community.
Fagor Automation shall not be held responsible for any damage that could suffer or cause when installed
under other conditions (residential or domestic environments).
• Install this unit in the proper place.
It is recommended, whenever possible, to install the CNC away from coolants, chemical product, blows,
etc. that could damage it.
This unit meets the European directives on electromagnetic compatibility. Nevertheless, it is
recommended to keep it away from sources of electromagnetic disturbance, such as:
Powerful loads connected to the same mains as the unit.
Safety conditions
Nearby portable transmitters (radio-telephones, Ham radio transmitters).
Nearby radio / TC transmitters.
Nearby arc welding machines.
Nearby high voltage lines.
Etc.
•Enclosures.
It is up to the manufacturer to guarantee that the enclosure where the unit has been installed meets
all the relevant directives of the European Union.
• Avoid disturbances coming from the machine tool.
The machine-tool must have all the interference generating elements (relay coils, contactors, motors,
etc.) uncoupled.
DC relay coils. Diode type 1N4000.
AC relay coils. RC connected as close to the coils as possible with approximate values of R=220
AC motors. RC connected between phases, with values of R=300 / 6 W y C=0,47 µF / 600 V.
• Use the proper power supply.
Use an external regulated 24 Vdc power supply for the inputs and outputs.
• Connecting the power supply to ground.
The zero Volt point of the external power supply must be connected to the main ground point of the
machine.
• Analog inputs and outputs connection.
It is recommended to connect them using shielded cables and connecting their shields (mesh) to the
corresponding pin.
• Ambient conditions.
The working temperature must be between +5 ºC and +40 ºC (41ºF and 104º F)
The storage temperature must be between -25 ºC and +70 ºC. (-13 ºF and 158 ºF)
• Monitor enclosure (CNC 8055) or central unit ( CNC 8055i)
Guarantee the required gaps between the monitor or the central unit and each wall of the enclosure.
Use a DC fan to improve enclosure ventilation.
• Power switch.
This power switch must be mounted in such a way that it is easily accessed and at a distance between
0.7 meters (27.5 inches) and 1.7 meters (5.5ft) off the floor.
PRECAUTIONS AGAINST PRODUCT DAMAGE
1 W y C=0,2 µF / 600 V.
·18·
Page 19
PROTECTIONS OF THE UNIT ITSELF (8055)
OUT
IN
X7
X1
X8
X9
X2
X10
X3
X11X4X12
X5
X13
X6
+24V
0V
FUSIBLE
FUSES
• "Axes" and "Inputs-Outputs" modules.
All the digital inputs and outputs have galvanic isolation via optocouplers between the CNC circuitry
and the outside.
They are protected by an external fast fuse (F) of 3.15 A 250V against overvoltage of the external power
supply (over 33 Vdc) and against reverse connection of the power supply.
• Monitor.
The type of protection fuse depends on the type of monitor. See identification label of the unit itself.
PROTECTIONS OF THE UNIT ITSELF (8055I)
• Central unit.
It has a 4 A 250V external fast fuse (F).
• Inputs-Outputs.
All the digital inputs and outputs have galvanic isolation via optocouplers between the CNC circuitry
and the outside.
Safety conditions
CNC 8055
CNC 8055i
·19·
Page 20
PRECAUTIONS DURING REPAIRS
i
Do not manipulate the inside of the unit. Only personnel authorized by Fagor Automation may access
the interior of this unit.
Do not handle the connectors with the unit connected to AC power. Before manipulating the connectors
(inputs/outputs, feedback, etc.) make sure that the unit is not connected to AC power.
SAFETY SYMBOLS
Safety conditions
• Symbols that may appear in the manual.
Symbol for danger or prohibition.
It indicates actions or operations that may cause damage to people or to units.
Warning or caution symbol.
It indicates situations that could be caused by certain operations and the actions to take to prevent
them.
Mandatory symbol.
It indicates actions or operations that MUST be carried out.
Information symbol.
It indicates notes, warnings and advises.
CNC 8055
CNC 8055i
·20·
Page 21
RETURNING CONDITIONS
When sending the central nit or the remote modules, pack them in its original package and packaging
material. If you do not have the original packaging material, pack it as follows:
1. Get a cardboard box whose 3 inside dimensions are at least 15 cm (6 inches) larger than those of the
unit itself. The cardboard being used to make the box must have a resistance of 170 kg. (375 pounds).
2. Attach a label indicating the owner of the unit, person to contact, type of unit and serial number.
3. In case of failure, also indicate the symptom and a short description of the failure.
4. Protect the unit wrapping it up with a roll of polyethylene or with similar material.
5. When sending the central unit, protect especially the screen.
6. Pad the unit inside the cardboard box with polyurethane foam on all sides.
7. Seal the cardboard box with packaging tape or with industrial staples.
CNC 8055
CNC 8055i
·21·
Page 22
Returning conditions
CNC 8055
CNC 8055i
·22·
Page 23
ADDITIONAL NOTES
FAGOR
I/O
X1
X2
X3
AXES
X1 X2
X3 X4
X5 X6
X7 X8
X9
X10
CPU
X1 X2
CMPCT
FLASH
ETH
COM1
X3
C
D
E
F
0
B
A
9
8
1
7
2
6
3
5
4
IN
OUT
NODE
USB
(A)
(B)
X1
W1
Mount the CNC away from coolants, chemical products, blows, etc. which could damage it. Before turning
the unit on, verify that the ground connections have been made properly.
To prevent electrical shock at the central unit of the 8055 CNC, use the proper mains AC connector at the
power supply module. Use 3-wire power cables (one for ground connection).
To prevent electrical shock at the monitor of the 8055 CNC, use the proper mains AC connector (A) with
3-wire power cables (one of them for ground connection).
Before turning on the monitor of the 8055 CNC and verifying that the external AC line (B) fuse of each unit
is the right one. See identification label of the unit itself.
In case of a malfunction or failure, disconnect it and call the technical service. Do not get into the inside
of the unit.
CNC 8055
CNC 8055i
·23·
Page 24
Additional notes
CNC 8055
CNC 8055i
·24·
Page 25
FAGOR DOCUMENTATION
OEM manual
It is directed to the machine builder or person in charge of installing and starting-up the CNC.
USER-M manual
Directed to the end user.
It describes how to operate and program in M mode.
USER-T manual
Directed to the end user.
It describes how to operate and program in T mode.
MC Manual
Directed to the end user.
It describes how to operate and program in MC mode.
It contains a self-teaching manual.
TC Manual
Directed to the end user.
It describes how to operate and program in TC mode.
It contains a self-teaching manual.
MCO/TCO model
Directed to the end user.
It describes how to operate and program in MCO and TCO mode.
Examples-M manual
Directed to the end user.
It contains programming examples for the M mode.
Examples-T manual
Directed to the end user.
It contains programming examples for the T mode.
WINDNC Manual
It is directed to people using the optional DNC communications software.
It is supplied in a floppy disk with the application.
WINDRAW55 Manual
Directed to people who use the WINDRAW55 to create screens.
It is supplied in a floppy disk with the application.
CNC 8055
CNC 8055i
·25·
Page 26
Fagor documentation
CNC 8055
CNC 8055i
·26·
Page 27
GENERAL CONCEPTS
1
The CNC may be programmed at the machine (from the front panel) and from a peripheral
(computer). Memory available to the user for carrying out the part programs is 1 Mbyte.
The part programs and the values in the tables which the CNC has can be entered from the front
panel, from a pc (DNC) or from a peripheral.
Entering programs and tables from the front panel.
Once the editing mode or desired table has been selected, the CNC allows you to enter data from
the keyboard.
Entering programs and tables from a Computer (DNC) or peripheral device.
The CNC allows data to be exchanged with a computer or peripheral device, using the RS232C serial
line.
If this is controlled from the CNC, it is necessary to preset the corresponding table or part program
directory (utilities) you want to communicate with.
Depending on the type of communication required, the ser ial port machine parameter "PROTOCOL"
should be set.
"PROTOCOL" = 0if the communication is with a peripheral device.
"PROTOCOL" = 1if the communication is via DNC.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·27·
Page 28
1.
1.1Part programs
Part programs
Programming manual
The operating manual describes the different operating modes. Refer to that manual for further
information.
Editing a part-program
To create a part-program, access the –Edit– mode.
The new part-program edited is stored in the CNC's RAM memory. A copy of the part-programs may
be stored in the hard disk (KeyCF) at a PC connected through the serial line or in the USB disk.
To transmit a program to a PC through the serial, proceed as follows:
1. Execute the "WinDNC.exe" application program at the PC.
2. Activate DNC communications at the CNC.
3. Select the work directory at the CNC. It is selected from the –Utilities– mode, option Directory
\Serial L \Change directory
GENERAL CONCEPTS
In –Edit– mode, it is possible to modify part-programs residing in the CNC's RAM memory. To modify
a program stored in the hard disk (KeyCF), in a PC or in the USB disk, it must be previously copied
into RAM memory.
Executing and editing a part-program
Part-programs stored anywhere may be executed or simulated. Simulation is carried out in the
–Simulation– mode, whereas the execution is done in the –Automatic– mode
When executing or simulating a part-program, bear in mind the following points:
• Only subroutines stored in the CNC's RAM memory can be executed. Therefore, to execute a
subroutine stored in the hard disk (KeyCF), in a PC or in the USB disk, it must be first copied
into the CNC's RAM memory.
• The GOTO and RPT instructions cannot be used in programs that are executed from a PC
connected through the serial line.
• From a program in execution, it is possible to execute another program located in RAM memory,
in the hard disk (KeyCF) or in a PC using the EXEC instruction.
The user customizing programs must be in RAM memory so the CNC can execute them.
–Utilities– operating mode.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·28·
The –Utilities– mode, lets display the part-program directory of all the devices, make copies, delete,
rename and even set the protections for any of them.
Page 29
Programming manual
Operations that may be carried out with part-programs.
See the program directory of ...
See the subroutine directory of ...
Create the work directory from ...
Change the work directory from ...
Edit a program from ...
Modify a program from ...
Delete a program from ...
Rename a program from ...
Change the comment of a program from ...
Change the protections of a program from ...
Execute a part-program from ...
Execute a user program from ...
Execute a PLC program from ...
Execute programs with GOTO or RPT instructions from ...
Execute subroutines residing in ...
Execute programs with the EXEC instruction, in RAM from ...
Execute programs with the EXEC instruction, in HD from ...
Execute programs with the EXEC instruction, in DNC from ...
RAM
memory
Ye s
Ye s
No
No
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Hard
disk
Ye s
No
No
No
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
Ye s
No
Ye s
No
Ye s
Ye s
Ye s
DNC
Ye s
No
No
Ye s
No
No
Ye s
Ye s
Ye s
Ye s
No
No
No
Ye s
No
No
No
No
Ye s
Ye s
No
1.
Part programs
GENERAL CONCEPTS
Open programs with the OPEN instruction, in RAM from ...
Open programs with the OPEN instruction, in HD from ...
Open programs with the OPEN instruction, in DNC from ...
Via Ethernet:
See from a PC the program directory of ...
See from a PC the subroutine directory of ...
See from a PC, a directory in ...
Ye s
Ye s
Ye s
No
No
No
Ye s
Ye s
Ye s
Ye s
No
No
(*) If it is not in RAM memory, it generates the executable code in RAM and it executes it.
Ethernet
When having the Ethernet option and if the CNC is configured as another node within the computer
network, the following operations are possible from any PC of the network:
• Access the part-program directory of the hard disk (KeyCF).
• Edit, modify, delete, rename, etc. the programs stored on the hard disk.
• Copy programs from the hard disk to the PC and vice versa.
To configure the CNC as another node within the computer network, see the installation manual.
Ye s
Ye s
No
No
No
No
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·29·
Page 30
1.
Part programs
GENERAL CONCEPTS
Programming manual
1.1.1Considerations regarding the Ethernet connection
When configuring the CNC as another node in the computer network, the programs stored in the
hard disk (KeyCF) may be edited and modified from any PC.
Instructions for setting up a PC to access CNC directories
To set up the PC to access the CNC directories, we recommend to proceed as follows.
1. Open the "Windows Explorer"
2. On the "Tools" menu, select the "Connect to Network Drives" option.
3. Select the drive, for example "D".
4. Indicate the path. The path will be the CNC name followed by the name of the shared directory.
For example: \\FAGORCNC\CNCHD
5. When selecting the option: "Connect again when initiating the session", the selected CNC will
appear on each power-up as another path of the "Windows Explorer" without having to define
it again.
Data format
This connection is established through Ethernet and, therefore, the CNC does not control the syntax
of the programs while they are received or modified. However, whenever accessing the program
directory of the Hard Disk (HD), the following verification takes place:
File name.
The file number must always have 6 digits and the extension PIM (for milling) or PIT (for lathe).
If the file has been given the wrong name, for example: 1204.PIM or 100.PIT, the CNC will not change
it, but it will display it with the comment "****************". The file name cannot be modified
at the CNC; it must be edited from the PC to correct the error.
File size.
If the file is empty (size = 0) the CNC will display it with the comment "********************".
The file can be edited or deleted either from the CNC or from the PC.
First line of the program.
The first line of the program must have the % character, the comment associated with the file (up
to 20 characters) and between the two commas (,) the program attributes O (OEM), H (hidden), M
(modifiable), X (executable).
Examples:%Comment ,MX,
% ,OMX,
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·30·
If the first line does not exist, the CNC will display the program with an empty comment and with
the modifiable (M) and executable (X) attributes.
When the format of the first line is wrong, the CNC does not modify it, but it displays it with the
comment "****************". The file can be edited or deleted either from the CNC or from the
PC.
The format is incorrect when the comment has more than 20 characters, a comma (,) is missing
to group the attributes or there is a strange character in the attributes.
Page 31
Programming manual
1.2DNC connection
The CNC offers as optional feature the possibility of working in DNC (Distributed Numerical Control),
enabling communication between the CNC and a computer to carry out the following functions:
• Directory and delete commands.
• Transfer of programs and tables between the CNC and a computer.
• Remote control of the machine.
• The ability to supervise the status of advanced DNC systems.
1.
DNC connection
GENERAL CONCEPTS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·31·
Page 32
1.
GENERAL CONCEPTS
Communication protocol via DNC or peripheral device
Programming manual
1.3Communication protocol via DNC or peripheral device
This type of communication enables program-and-table transfer commands, plus the organization
of CNC directories such as the computer directory, for copying/deleting programs, etc. to be done
either from the CNC or the computer.
When you want to transfer files, it is necessary to follow this protocol:
• The "%" symbol will be used to start the file, followed by the program comment (optional), of up
to 20 characters.
Then, and separated by a comma ",", comes the protection of each file, read, write, etc. These
protections are optional, since their programming is not obligatory.
To end the file header, RT (RETURN ) or LF (LINE FEED) characters should be sent separated
by a comma (",").
Example:%Fagor Automation, MX, RT
• Following the header, the file blocks should be programmed. These will all be programmed
according to the programming rules indicated in this manual. After each block, to separate it from
the others, the RT (RETURN ) or LF (LINE FEED) characters should be used.
Example:N20 G90 G01 X100 Y200 F2000 LF
(RPT N10, N20) N3 LF
If communication is made with a peripheral device, you will need to send the ‘end of file’ command.
This command is selected via the machine parameter for the serial port: "EOFCHR", and can be
one of the following characters :
ESCESCAPE
EOTEND OF TRANSMISSION
SUBSUBSTITUTE
EXTEND OF TRANSMISSION
CNC 8055
CNC 8055i
Image handling via DNC
While using WinDNC (version V6.01 or later), it is possible to send and receive PNG, JPG/JPEG
and BMP type images via DNC.
WinDNC software:
Version V6.01 of WinDNC supports files with extension bmp, png, jpg and jpeg. The maximum length
or the file name is 16 characters (including the dot and the extension).
The application scans all image type files in the work folder. When sending the files, if the name
of any file is too long, it will ask the user to enter a new shorter name (up to 16 characters). It must
also keep the original extension.
·M· & ·EN· MODELS
SOFT: V02.2X
·32·
Page 33
CREATING A PROGRAM
2
A CNC program consists of a series of blocks or instructions. These blocks or instructions are made
of words composed of capital letters and numerical format.
The CNC’s numerical format consists of :
• The signs . (decimal points, + (plus), - (minus).
• Digits 0 1 2 3 4 5 6 7 8 9.
Programming allows spaces between letters, numbers and symbols, in addition to ignoring the
numerical format if it has zero value, or a symbol if it is positive.
The numeric format of a word may be replaced by an arithmetic parameter when programming. Later
on, during execution, the CNC will replace the arithmetic parameter by its value. For example, if XP3
has been programmed, during execution the CNC will replace P3 by its numerical value, obtaining
results such as X20, X20.567, X-0.003, etc.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·33·
Page 34
2.
Programming manual
2.1Program structure at the CNC
All the blocks which make up the program have the following structure:
Block header + program block + end of block
2.1.1Block header
The block header is optional, and may consist of one or more block skip conditions and by the block
number or label. Both must be programmed in this order.
Block skip condition. "/", "/1", "/2", "/3".
These three block skip conditions, given that "/" and "/1" are the same, they are governed by the
marks BLKSKIP1, BLKSKIP2 and BLKSKIP3 of the PLC. If any of these marks is active, the CNC
will not execute the block or blocks in which it has been programmed; the execution takes place in
the following block.
CREATING A PROGRAM
Program structure at the CNC
Up to 3 skip conditions can be programmed in one block; they will be evaluated one by one,
respecting the order in which they have been programmed.
The control reads 200 blocks ahead of the one being executed in order to calculate in advance the
path to be run. The condition for block skip will be analyzed at the time when the block is read i.e.
200 blocks before execution.
If the block skip needs to be analyzed at the time of execution, it is necessary to interrupt the block
preparation, by programming G4 in the previous block.
Label or block number. N(0-99999999).
This is used to identify the block, and is only used when block references or jumps are made. They
are represented by the letter N followed by up to 8 digits (0-99999999).
No particular order is required and the numbers need not be sequential. If two or more blocks with
the same label number are present in the same program, the CNC will always give priority to the
first number.
Although it is not necessary to program it, by using a softkey the CNC allows the automatic
programming of labels. The programmer can select the initial number and the step between labels.
Restrictions:
• Displaying the active block number at the top window on the screen:
When executing a program in ISO mode, when the label number is higher than 9999, it
displays N**** .
On the "DISPLAY / SUBROUTINES" window, when displaying an RPT that has a label higher
than 9999, it displays it with ****.
• Canned cycles G66, G67 and G68 (irregular pockets with islands) can only be edited using 4-
digit labels.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·34·
Page 35
Programming manual
2.1.2Program block
This is written with commands in ISO and high level languages. To prepare a program, blocks written
in both languages will be used, although each one should be edited with commands in just one
language.
ISO language.
This language is specially designed to control axis movement, as it gives information and movement
conditions, in addition to data on feedrate. It offers the following types of functions.
• Preparatory functions for movement, used to determine geometry and working conditions, such
as linear and circular interpolations, threading, etc.
• Control functions for axis feedrate and spindle speeds.
• Tool control functions.
• Complementary functions, with technological instructions.
High level language.
This enables access to general purpose variables and to system tables and variables.
2.
It gives the user a number of control sentences which are similar to the terminology used in other
languages, such as IF, GOTO, CALL, etc. Also, it allows the use of any type of arithmetic, relational
or logical expression.
It also has instructions for the construction of loops, plus subroutines with local variables. A local
variable is one that is only recognized by the subroutine in which it has been defined.
It is also possible to create libraries, grouping subroutines with useful and tested functions, which
can be accessed from any program.
CREATING A PROGRAM
Program structure at the CNC
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·35·
Page 36
Programming manual
2.1.3End of block
The end of block is optional and may consist of the indication of number of repetitions of the block
and of the block comment. Both must be programmed in this order.
Number of block repetitions. N(0-9999)
This indicates the number of times the block will be executed. The number of repetitions is
represented by the letter N followed by up to 4 digits (0-9999). The active machining operation does
not take place if N0 is programmed; only the movement programmed within the block takes place.
2.
CREATING A PROGRAM
Program structure at the CNC
Movement blocks can only be repeated which, at the time of their execution, are under the influence
of a modal subroutine. In these cases, the CNC executes the programmed move and the active
machining operation (canned cycle or modal subroutine) the indicated number of times.
Block comment
The CNC allows you to incorporate any kind of information into all blocks in the form of a comment.
The comment is programmed at the end of the block, and should begin with the character ";"
(semicolon).
If a block begins with ";" all its contents will be considered as a comment, and it will not be executed.
Empty blocks are not permitted. They should contain at least one comment.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·36·
Page 37
Programming manual
2.2Local subroutines within a program
A subroutine is a part of a program which, being properly identified, can be called from any position
of a program to be executed.
Local subroutines may be defined within a program. These subroutines are executed from RAM or
hard disk memory.
The local subroutines are defined as part of a program. These subroutines may only be called upon
from the program where it has been defined.
Programming
The local subroutines are located at the beginning of the program, before the actual beginning of
the program. Local subroutines are defined by programming (LSUB n), where n indicates the
subroutine number. Followed by the contents of the subroutine.
The range of local subroutines is from 0 to 9999.
(LSUB 0)
(LSUB 9999)
The actual beginning of the program is identified with the % sign. Any text may follow this character.
2.
CREATING A PROGRAM
A local subroutine may be called upon using the commands CALL, PCALL or MCALL. When
executing the calls, it first looks for the subroutines defined as local in that program and having
matching names. If there aren't any, it will look among the global subroutines.
To execute a local subroutine directly, program (LL n). This way, only the local subroutine will be
executed. If this subroutine does not exist, it will not execute anything and it will issue an error
message indicating undefined subroutine.
Up to 100 local subroutines may be defined in a program. The maximum local subroutine nesting
level is 15.
Examples:
Example 1:
(LSUB9505)
X100
(RET)
%**** ; beginning of program
(CALL 9505)
M30
Example 2:
(LSUB9505)
X100
(RET)
%**** ; beginning of program
(LL9505)
M30
Local subroutines within a program
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·37·
Page 38
2.
Programming manual
Executing programs:
(LL n) Call to a local subroutine.
Parameters cannot be initialized with this command.
(CALL n) Call to a local or global subroutine.
Parameters cannot be initialized with this command.
(PCALL n ...) Call to a global or local subroutine.
Local parameters can be initialized with this command.
(MCALL n ...) Modal call to a local or global subroutine.
Local parameters can be initialized with this command.
Limitations:
A local subroutine can call a global subroutine but a global subroutine cannot call a local subroutine
except if that local subroutine is defined in the root program; in other words, in the first program that
is executed.
Local subroutines defined inside a program that has been called with the "EXEC" command are
ignored. It only takes into account the ones defined in the root program.
CREATING A PROGRAM
Local subroutines within a program
It only takes into account local subroutines that are in programs that are executed from the CNC
execution channel, either in ISO mode or in conversational mode. Local subroutines cannot be
executed from the PLC channel.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·38·
Page 39
AXES AND COORDINATE SYSTEMS
3
Given that the purpose of the CNC is to control the movement and positioning of axes, it is necessary
to determine the position of the point to be reached through its coordinates.
The CNC allows you to use absolute, relative or incremental coordinates throughout the same
program.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·39·
Page 40
3.
Programming manual
3.1Axis nomenclature
The axes are named according to DIN 66217.
Axis nomenclature
AXES AND COORDINATE SYSTEMS
Characteristics of the system of axes:
X and Y main movements on the main work plane of the machine.
Z parallel to the main axis of the machine, perpendicular to the main XY plane.
U, V, W auxiliary axes parallel to X, Y, Z respectively.
A, B, C Rotary axes on each axis X, Y, Z.
The drawing below shows an example of the nomenclature of the axes on a milling-profiling machine
with a tilted table.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·40·
Page 41
Programming manual
3.1.1Axis selection
Of the 9 possible axes that may exist, the CNC allows the manufacturer to select up to 7 of them.
Moreover, all the axes should be suitably defined as linear/rotary, etc. through the axis machine
parameters which appear in the Installation and Start-up Manual.
There is no limitation to the programming of the axes, and up to 7 axes may be interpolated at the
same time.
3.
Axis nomenclature
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·41·
Page 42
3.
Programming manual
3.2Plane selection (G16, G17, G18, G19)
Plane selection should be made when the following are carried out :
• Circular interpolations.
• Controlled corner rounding.
• Tangential entry and exit.
•Chamfer.
• Coordinate programming in Polar coordinates.
• Machining canned cycles.
• Rotation of the coordinate system.
• Tool radius compensation.
• Tool length compensation.
The "G" functions which enable selection of work planes are as follows :
G16 axis1 axis2 axis3.Enables selection of the desired work plane, plus the direction of G02
G03 (circular interpolation), axis1 being programmed as the abscissa axis
and axis2 as the ordinate axis.
The axis3 is the longitudinal axis along which tool length compensation
is applied.
Plane selection (G16, G17, G18, G19)
AXES AND COORDINATE SYSTEMS
G17. Selects the XY plane and the Z axis as longitudinal axis.
G18. Selects the ZX plane and the Y axis as longitudinal axis.
G19. Selects the YZ plane and the X axis as longitudinal axis.
The G16, G17, G18 and G19 functions are modal and incompatible among themselves. The G16
function should be programmed on its own within a block.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·42·
The G17, G18, and G19 functions define two of the three main axes (X, Y, Z) as belonging to the
work plane, and the other as the perpendicular axis to the same.
Page 43
Programming manual
i
When radius compensation is done on the work plane, and length compensation on the
perpendicular axis, the CNC does not allow functions G17, G18, and G19 if any one of the X, Y,
or Z axes is not selected as being controlled by the CNC.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC will assume that
the plane defined by the general machine parameter as "IPLANE" is the work plane.
Function G49, coordinate transformation, must be used to machine inclined planes.
See chapter "15 Coordinate transformation".
3.
Plane selection (G16, G17, G18, G19)
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·43·
Page 44
3.
Programming manual
3.3Part dimensioning. Millimeters (G71) or inches (G70)
The CNC allows you to enter units of measurement with the programming, either in millimeters or
inches.
It has a general machine parameter "INCHES" to define the unit of measurement of the CNC.
However, these units of measurement can be changed at any time in the program. Two functions
are supplied for this purpose :
• G70. Programming in inches.
• G71. Programming in millimeters.
Depending on whether G70 or G71 has been programmed, the CNC assumes the corresponding
set of units for all the blocks programmed from that moment on.
The G70 and G71 functions are modal and are incompatible.
The CNC allows you to program figures from 0.00001 to 99999.9999 with or without sign, working
in millimeters (G71), called format +/-5.4, or either from 0.00001 to 3937.00787 with or without sign
if the programming is done in inches (G70), called format +/-4.5.
However, and to simplify the instructions, we can say that the CNC admits +/- 5.5 format, thereby
admitting +/- 5.4 in millimeters and +/- 4.5 in inches.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC will assume that
the system of units of measurement is the one defined by the general machine p arameter "INCHES".
AXES AND COORDINATE SYSTEMS
Part dimensioning. Millimeters (G71) or inches (G70)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·44·
Page 45
Programming manual
Absolute coordinates:
G90X0Y0; Point P0
X150.5 Y200; Point P1
X300; Point P2
X0Y0; Point P0
Incremental coordinates:
G90X0Y0; Point P0
G91X150.5 Y200; Point P1
X149.5; Point P2
X-300Y-200; Point P0
3.4Absolute/incremental programming (G90, G91)
The CNC allows the programming of the coordinates of one point either with absolute G90 or
incremental G91 values.
When working with absolute coordinates (G90), the point coordinates refer to a point of origin of
established coordinates, often the part zero (datum).
When working in incremental coordinates (G91), the numerical value programmed corresponds to
the movement information for the distance to be traveled from the point where the tool is situated
at that time. The sign in front shows the direction of movement.
The G90/G91 functions are modal and incompatible with each other.
3.
On power-up, after executing M02, M30 or after an EMERGENCY or RESET, the CNC will assume
G90 or G91 according to the definition by the general machine parameter "ISYSTEM".
AXES AND COORDINATE SYSTEMS
Absolute/incremental programming (G90, G91)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·45·
Page 46
3.
Programming manual
3.5Coordinate programming
The CNC allows the selection of up to 7 of the 9 possible axes X, Y, Z, U, V, W, A, B, C.
Each of these may be linear, linear to position only, normal rotary, rotary to position only or rotary
with hirth toothing (positioning in complete degrees), according to the specification in the machine
parameter of each "AXISTYPE" axis.
With the aim of always selecting the most suitable coordinate programming system, the CNC has
the following types :
• Cartesian coordinates
• Polar coordinates
• Cylindrical coordinates
• Angle and Cartesian coordinate
Coordinate programming
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·46·
Page 47
Programming manual
3.5.1Cartesian coordinates
The Cartesian Coordinate System is defined by two axes on the plane, and by three or more axes
in space.
The origin of all these, which in the case of the axes X Y Z coincides with the point of intersection,
is called Cartesian Origin or Zero Point of the Coordinate System.
The position of the different points of the machine is expressed in terms of the coordinates of the
axes, with two, three, four, or five coordinates.
The coordinates of the axes are programmed via the letter o f t h e a x is ( X, Y, Z , U, V, W , A , B, C, a lw ay s
in this order) followed by the coordinate value.
The values of the coordinates are absolute or incremental, depending on whether it is working in
G90 or G91, and its programming format is ±5.5.
3.
Coordinate programming
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·47·
Page 48
3.
Programming manual
3.5.2Polar coordinates
In the event of the presence of circular elements or angular dimensions, the coordinates of the
different points on the plane (2 axes at the same time), it may be easier to express them in polar
coordinates.
The reference point is called Polar Origin, and this will be the origin of the Polar Coordinate System.
A point on this system would be defined by :
Coordinate programming
AXES AND COORDINATE SYSTEMS
• The RADIUS (R), the distance between the polar origin and the point.
• The ANGLE (Q), formed by the abscissa axis and the line which joins the polar origin with the
point. (In degrees).
The values R and Q are absolute or incremental depending on whether you are working with G90
or G91, and their programming format will be R5.5 Q±5.5. The radius value must always be positive.
The values R and Q are incremental and their programming format will be R±5.5 Q±5.5.
The R values may be negative when programming in incremental coordinates; but the resulting value
assigned to the radius must always be positive.
When programming a "Q" value greater than 360º, the module will be assumed after dividing it by
360. Thus, Q420 is the same as Q60 and Q-420 is the same as Q-60.
Programming example assuming that the Polar Origin is located at the Coordinate Origin.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·48·
Absolute coordinates:
G90X0Y0; Point P0
G01R100Q0; Point P1, in a straight line (G01)
G01R50Q30; Point P2, in an arc (G03)
G01R50Q30; Point P3, in a straight line (G01)
G03Q60; Point P4, in an arc (G03)
G01R100Q60; Point P5, in a straight line (G01)
G03Q90; Point P6, in arc (G03)
G01R0Q90; Point P0, in a straight line (G01)
Page 49
Programming manual
Incremental coordinates:
G90X0Y0; Point P0
G91 G01R100Q0; Point P1, in a straight line (G01)
G01R50Q30; Point P2, in an arc (G03)
G01R-50Q0; Point P3, in a straight line (G01)
G03Q30; Point P2, in an arc (G03)
G01R50Q0; Point P1, in a straight line (G01)
G03Q30; Point P6, in arc (G03)
G01R-100Q0; Point P1, in a straight line (G01)
The polar origin, apart from being able to be preset using function G93 (described later) can be
modified in the following cases :
• On power-up, after executing M02, M30 EMERGENCY or RESET, the CNC will assume, as the
polar origin, the coordinate origin of the work plane defined by the general machine
parameter"IPLANE".
• Every time the work plane is changed (G16,G17,G18 or G19), the CNC assumes the coordinate
origin of the new work plane selected as the polar origin.
• When executing a circular interpolation (G02 or G03), and if the general machine parameter
"PORGMOVE" has a value of 1, the center of the arc will become the new polar origin.
3.
Coordinate programming
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·49·
Page 50
3.
Programming manual
3.5.3Cylindrical coordinates
To define a point in space, the system of cylindrical coordinates can be used as well as the Cartesian
coordinate system.
A point on this system would be defined by :
Coordinate programming
AXES AND COORDINATE SYSTEMS
The projection of this point on the main plane, which should be defined in polar coordinates (R Q).
Rest of axes in Cartesian coordinates.
Examples:
R30 Q10 Z100
R20 Q45 Z10 V30 A20
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·50·
Page 51
Programming manual
3.5.4Angle and Cartesian coordinate
A point on the main plane can be defined via one of its Cartesian coordinates, and the exit angle
of the previous path.
Example of programming assuming that the main plane is XY:
X10Y20; Point P0, starting point
Q45 X30 ; Point P1
Q90 Y60 ; Point P2
Q-45 X50 ; Point P3
Q-135Y20 ; Point P4
Q180 X10 ; Point P0
3.
Coordinate programming
AXES AND COORDINATE SYSTEMS
To represent a point in space, the rest of the coordinates may be programmed in Cartesian
coordinates.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·51·
Page 52
3.
Programming manual
3.6Rotary axes
The types of rotary axes available are:
Normal rotary axis.
Positioning-only rotary axis.
Rotary HIRTH axis.
Each one of them can be divided into:
RolloverWhen it is displayed between 0º and 360º.
Non Rollover When it may be displayed between -99999º and 99999º.
They are all programmed in degrees. Therefore, their readings are not affected by the inch/mm
conversion.
Rotary axes
AXES AND COORDINATE SYSTEMS
Normal rotary axes
They can interpolate with linear axes.
Movement: In G00 and G01.
Rollover axis programming:
G90The sign indicates the turning direction and the target position (between 0 and
359.9999).
G91The sign indicates the turning direction. If the programmed movement exceeds
360º, the axis will rotate more than one turn before positioning at the desired point.
Non-rollover axis programming.
In G90 and G91 like a linear axis.
Positioning-only rotary axis
They cannot be interpolated with linear axes.
Movement: Always in G00 and they do not admit tool radius compensation (G41, G42).
Rollover axis programming:
G90Always positive and in the shortest direction. End coordinate between 0 and
359.9999.
G91The sign indicates the turning direction. If the programmed movement exceeds
360º, the axis will rotate more than one turn before positioning at the desired point.
Non-rollover axis programming.
In G90 and G91 like a linear axis.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·52·
Rotary Hirth axis
They work like the positioning-only axis except that they do not admit decimal position values
(coordinates).
More than one hirth axis can be used, but they can only be moved one at a time.
Page 53
Programming manual
G20 K1 X20 Y20
G21 K1 X100 Y50
3.7Work zones
The CNC provides four work zones or areas, and also limits the tool movement in each of these.
3.7.1Definition of the work zones
Within each work zone, the CNC allows you to limit the movement of the tool on each axis, with upper
and lower limits being defined in each axis.
G20: Defines the lower limits in the desired zone.
G21: Defines the upper limits in the desired zone.
The format to program these functions is:
G20 K X...C±5.5
G21 K X...C±5.5
3.
Where:
KIndicates the work zone you wish to define (1, 2, 3 or 4).
X...CIndicates the coordinates (upper or lower) with which you wish to limit the axes.
These coordinates will be programmed with reference to machine zero (home).
For safety, the axis stops 0.1mm before the programmed limit.
It is not necessary to program all the axes, so only defined axes will be limited.
Work zones
AXES AND COORDINATE SYSTEMS
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·53·
Page 54
3.
S= 1 No entry zoneS = 2 No exit zone
Programming manual
3.7.2Using the work zones
Within each work zone, the CNC allows you to restrict the movement of the tool, either prohibiting
its exit from the programmed zone (no exit zone) or its entry into the programmed zone (no entry
zone).
Work zones
The CNC will take the dimensions of the tool into account at all times (tool offset table) to avoid it
exceeding the programmed limits.
The presetting of work zones is done via Function G22, the programming format being:
G22 K S
AXES AND COORDINATE SYSTEMS
Where:
KIndicates the work zone you wish to set (1, 2, 3 or 4).
SIndicates the enabling/disabling of the work zone.
S=0 disabled.
S=1 enabled as a no-entry zone.
S=2 enabled as a no-exit zone.
On power-up, the CNC will disable all work zones. However, upper and lower limits for these zones
will not undergo any variation, and they can be re-enabled through the G22 function.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·54·
Page 55
REFERENCE SYSTEMS
MMachine zero
WPart zero
RMachine reference point
XMW, YMW, ZMW...Coordinates of the part zero
XMR, YMR, ZMR...Coordinates of machine reference point ("REFVALUE")
4.1Reference points
A CNC machine needs the following origin and reference points defined :
• Machine Reference Zero or home. This is set by the manufacturer as the origin of the coordinate
system of the machine.
• Part zero or point of origin of the part. This is the origin point that is set for programming the
measurements of the part. It can be freely selected by the programmer, and its machine
reference zero can be set by the zero offset.
• Machine Reference point. This is a point on the machine established by the manufacturer around
which the synchronization of the system is done. The control positions the axis on this point,
instead of moving it as far as the Machine Reference Zero, taking, at this point, the reference
coordinates which are defined via the axis machine parameter "REFVALUE".
4
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·55·
Page 56
4.
4.2Machine reference (Home) search (G74)
The CNC allows you to program the machine reference search in two ways :
• Machine reference (home) search of one or more axes in a particular order.
G74 is programmed followed by the axes in which you want to carry out the reference search.
For example: G74 X Z C Y.
The CNC begins the movement of all the selected axes which have a machine reference switch
(machine axis parameter "DECINPUT") and in the direction indicated by the axis machine
parameter "REFDIREC".
This movement is carried out at the feedrate indicated by the axis machine parameter
"REFEED1" for each axis until the home switch is hit.
Next, the home search (marker pulse or home) will be carried out in the programmed order.
This second movement will be carried out one axis at a time, at the feedrate indicated in the axis
machine parameter "REFEED2" until the machine reference point is reached (i.e. the marker
pulse is found).
• Home search using the associated subroutine.
The G74 function will be programmed alone in the block, and the CNC will automatically execute
REFERENCE SYSTEMS
the subroutine whose number appears in the general machine parameter "REFPSUB". In this
subroutine it is possible to program the machine reference searches required, and also in the
required order.
In a block in which G74 has been programmed, no other preparatory function may appear.
Programming manual
If the machine reference search is done in JOG mode, the part zero selected is lost. The coordinates
Machine reference (Home) search (G74)
of the reference point indicated in the machine axis parameter "REFVALUE" is displayed. In all other
cases, the active part zero will be maintained and the CNC will display the position values with
respect to that part zero.
If the G74 command is executed in MDI, the display of coordinates depends on the mode in which
it is executed : Jog, Execution, or Simulation.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·56·
Page 57
Programming manual
MMachine zero
WPart zero
4.3Programming with respect to machine zero (G53)
Function G53 can be added to any block that has path control functions.
It is only used when the programming of block coordinates relating to machine zero is required.
These coordinates should be expressed in millimeters or inches, depending on how the general
machine parameter "INCHES" is defined.
By programming G53 alone (without motion information) the current active zero offset is canceled
regardless of whether it was originated by a G54-G59 or a G92 preset. This origin preset is described
next.
Function G53 is not modal, so it should be programmed every time you wish to indicate the
coordinates referred to machine zero.
This function temporarily cancels radius and tool length compensation.
4.
REFERENCE SYSTEMS
Programming with respect to machine zero (G53)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·57·
Page 58
4.
MMachine zero
WPart zero
Zero offsets
PLC Parameters.
G59
G58
G92
ORG*(59)
ORG*(58)
ORG*
PLCOF*
ORG*(54)ORG*(55)ORG*(56)ORG*(57)
G54G55G56G57
Programming manual
4.4Coordinate preset and zero offsets
The CNC allows you to carry out zero offsets with the aim of using coordinates related to the plane
of the part, without having to modify the coordinates of the different points of the part at the time
of programming.
The zero offset is defined as the distance between the part zero (point of origin of the part) and the
machine zero (point of origin of the machine).
REFERENCE SYSTEMS
Coordinate preset and zero offsets
This zero offset can be carried out in one of two ways :
• Via Function G92 (coordinate preset). The CNC accepts the coordinates of the programmed
axes after G92 as new axis values.
• Through the use of zero offsets (G54 ... G59, G159N1 ... G159N20); the CNC accepts as a new
part zero the point located relative to machine zero at the distance indicated by the selected
table(s).
Both functions are modal and incompatible, so if one is selected the other is disabled.
There is, moreover, another zero offset which is governed by the PLC. This offset is always added
to the zero offset selected and is used (among other things) to correct deviations produced as a
result of expansion, etc.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·58·
Page 59
Programming manual
; Positioning in P0
G90 X50 Y40
; Preset P0 as part zero
G92 X0 Y0
; Programming according to part coordinates
G91 X30
X20 Y20
X-20 Y20
X -30
Y-4 0
4.4.1Coordinate preset and S value limitation (G92)
Via Function G92 one can select any value in the axes of the CNC, in addition to limiting the spindle
speed.
• Coordinate preset.
When carrying out a zero offset via Function G92, the CNC assumes the coordinates of the axes
programmed after G92 as new axis values.
No other function can be programmed in the block where G92 is defined, the programming format
being :
G92 X...C ±5.5
4.
REFERENCE SYSTEMS
• Spindle speed limitation
When executing a "G92 S5.4" type block, the CNC limits the spindle speed from that instant on
to the value set by S5.4.
If later on, a block is to be executed at a greater "S", the CNC will execute that block at the
maximum "S" set with function G92S.
Neither is it possible to exceed this maximum value from the keyboard on the front panel.
Coordinate preset and zero offsets
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·59·
Page 60
4.
Programming manual
4.4.2Zero offsets (G54..G59 and G159)
The CNC has a table of zero offsets, in which several zero offsets can be selected. The aim is to
generate certain part zeros independently of the part zero active at the time.
Access to the table can be obtained from the front panel of the CNC (as explained in the Operating
Manual), or via the program using high-level language commands.
There are two types of zero offsets:
• Absolute zero offsets (G54 ... G57, G159N1 ... G159N20), must be referred to machine zero
(home).
• Incremental zero offsets (G58, G59).
Functions G54, G55, G56, G57, G58 & G59 must be programmed alone in the block, and work in
the following way:
When one of the G54, G55, G56, G57 functions is executed, the CNC applies the zero offset
programmed with respect to machine zero, canceling the possible active zero offsets.
If one of the incremental offsets G58 or G59 is executed, the CNC adds its values to the absolute
zero offset active at the time. Previously canceling the additive offset which might be active.
REFERENCE SYSTEMS
Coordinate preset and zero offsets
You can see (in the following example) the zero offsets which are applied when the program is
executed.
G54Applies zero offsets G54== G54
G58Applies zero offsets G58== G54+G58
G59Cancels G58 and adds G59== G54+G59
G55Cancels whatever and applies G55== G55
Once a Zero Offset has been selected, it will remain active until another one is selected or until a
home search is carried out (G74) in JOG mode. This zero offset will remain active even after
powering the CNC off and back on.
This kind of zero offsets established by program is very useful for repeated machining operations
at different machine positions.
Example: The zero offset table is initialized with the following values:
The G158 instruction may be used to program and activate an incremental offset in a program. This
feature is used to define new part zeros in the same program without having to set them previously
in the offset table or use high level instructions.
When applying an incremental zero offset, the CNC adds it to the absolute zero offset active at a time.
Programming:
Incremental zero offset are defined by program using function G158 followed by the values of the
zero offset to be applied on each axis. To cancel the incremental zero offset, program function G158
without axes in the block. To cancel the incremental zero offset only on particular axes, program
a 0 (zero) incremental offset for each one of them.
4.
REFERENCE SYSTEMS
Coordinate preset and zero offsets
XY
G54 (G159N1)2020
G55 (G159N2)12020
N100 G54(It applies the first zero offset)
···(Machining of profile 1)
N200 G158 X20 Y45(Apply incremental zero offset)
···(Machining of profile 2)
N300 G55(It applies the second zero offset. G158 stays active)
···(Machining of profile 3)
N400 G158(Cancel incremental zero offset. G55 stays active)
···(Machining of profile 4)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·61·
Page 62
4.
X
Z
909090
150240330
A2A3A4
90
A1
420
G54
G158
G158
G55
G158
Y
X
80
W
50
20
204070120
W
W
W
W
M
G54 (G159N1)0420
G55 (G159N2)0330
REFERENCE SYSTEMS
N100 G54
···
Coordinate preset and zero offsets
N200 G158 Z-90
···
N300 G55
···
N200 G158 Z-180
···
Programming manual
XZ
(It applies the first absolute zero offset)
(Machining of profile A1)
(Apply incremental zero offset)
(Machining of profile A2)
(It applies the second absolute zero offset)
(The incremental zero offset stays active)
(Machining of profile A3)
(It applies the second incremental zero offset)
(Machining of profile A4)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
Only one incremental zero may be active at a time for each axis; therefore, applying an incremental
zero offset on an axis cancels the one that was active on that axis. The offsets on the rest of the
axes are not affected.
G54 (G159N1)2020
N100 G54
N200 G158 X20 Y60
N300 G158 X50 Y30
N400 G158 X100
N500 G158 Y0
N600 G158 X0
XY
(Apply absolute zero offset)
(It applies the first incremental zero offset)
(It applies the second incremental zero offset)
(It applies the third incremental zero offset)
(It applies the fourth incremental zero offset)
(Cancel incremental zero offset)
·62·
Page 63
Programming manual
The incremental zero offset is not canceled after applying a new absolute zero offset (G54-G57
or G159Nx).
As described earlier, only one incremental zero offset may be active; therefore, instructions G58
and G59 are incompatible with G158. This way, the last incremental zero offset programmed
cancels the incremental zero offset that is currently active.
Programming the G158 function alone in the block or G158 with a 0 value in the axes cancels the
incremental zero offset G158 activated earlier. Those instructions also cancel the incremental zero
offsets G58/G59 that are currently active.
Considerations:
An incremental zero offset, by itself, does not cause any axis movement.
When homing an axis in JOG mode, the incremental zero offset for that axis is canceled.
Function properties:
G158 is modal and incompatible with G53.
On power-up, the CNC assumes the incremental zero offset that was active when the CNC was
turned off. On the other hand, the incremental zero offset is neither affected by functions M02 and
M30 nor by RESETTING the CNC.
Display in the zero offset table:
In ISO mode and conversational mode, the zero offset table is one line over the the G54 position
where it identifies the G158 with its values X, Y, Z, etc.
This line cannot be modified from the table, it can only be modified by programming G158.
Function G159
To apply any zero offset defined in the table.
The first six zero offsets are the same as programming G54 through G59, except that the values
of G58 and G59 are absolute. This is because function G159 cancels functions G54 through G57
and, consequently, there is no active zero offset to add the G58 or G59 to.
4.
REFERENCE SYSTEMS
Coordinate preset and zero offsets
Function G159 is programmed as follows:
G159 NnWhere n is a number from 1 to 20 that indicates the number of the zero offset being
applied.
Function G159 is modal, it is programmed alone in the block and is incompatible with functions G53,
G54, G55, G56, G57, G58, G59 and G92.
On power-up, the CNC assumes the zero offset that was active when the CNC was turned off. On
the other hand, the zero offset is neither affected by functions M02 and M30 nor by RESET.
This function is displayed in the history like G159Nn where the n is the active zero offset.
Examples:
G159 N1It applies the first zero offset. It is the same as programming G54.
G159 N6It applies the sixth zero offset. It is the same as programming G59, but it is applied
in absolute.
G159 N20It applies the 20th zero offset.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·63·
Page 64
4.
G93I35J30; Preset P3 as polar origin.
G90G01R25Q0; Point P1, in a straight line (G01).
G03Q90; Point P2, in arc (G03).
G01X0Y0; Point P0, in a straight line (G01)
Example, assuming that the tool is at X0 Y0
i
4.5Polar origin preset (G93)
Function G93 allows you to preset any point from the work plane as a new origin of polar coordinates.
This function must be programmed alone in the block, its programming format being :
Parameters I & J respectively define the abscissa and ordinate axes, of the new origin of polar
coordinates referred to part zero.
Polar origin preset (G93)
REFERENCE SYSTEMS
Programming manual
G93 I±5.5 J±5.5
If G93 is only programmed in a block, the point where the machine is at that moment becomes the
polar origin.
On power-up; or after executing M02, M30; or after an EMERGENCY or RESET; the CNC assumes
the currently active part zero as polar origin.
When selecting a new work plane (G16, G17, G18, G19), the CNC assumes as polar origin the part
zero of that plane.
CNC 8055
CNC 8055i
The CNC does not modify the polar origin when defining a new part zero; but it modifies the values
of the variables: "PORGF" y "PORGS".
If, while selecting the general machine parameter "PORGMOVE" a circular interpolation is
programmed (G02 or G03), the CNC assumes the center of the arc as the new polar origin.
·M· & ·EN· MODELS
SOFT: V02.2X
·64·
Page 65
ISO CODE PROGRAMMING
5
A block programmed in ISO language can consist of:
• Preparatory (G) functions
• Axis coordinates (X...C)
• Feedrate (F)
• Spindle speed (S)
• Tool number (T)
• Tool offset number (D)
• Auxiliary functions (M)
This order should be maintained within each block, although it is not necessary for every block to
contain the information.
The CNC allows you to program figures from 0.00001 to 99999.9999 with or without sign, working
in millimeters (G71), called format +/-5.4, or either from 0.00001 to 3937.00787 with or without sign
if the programming is done in inches (G70), called format +/-4.5.
However, and to simplify the instructions, we can say that the CNC admits +/- 5.5 format, thereby
admitting +/- 5.4 in millimeters and +/- 4.5 in inches.
Any function with parameters can also be programmed in a block, apart from the number of the label
or block. Thus, when the block is executed the CNC substitutes the arithmetic parameter for its value
at that time.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·65·
Page 66
5.
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
Preparatory functions
Programming manual
5.1Preparatory functions
Preparatory functions are programmed using the letter G followed by up to 3 digits (G0 - G319).
They are always programmed at the beginning of the body of the block and are useful in determining
the geometry and working condition of the CNC.
Table of G functions used in the CNC.
FunctionMDVMeaningSection
G00*?*Rapid traverse6.1
G01*?*Linear interpolation6.2
G02** Clockwise circular (helical) interpolation6.3 / 6.7
G03** Counterclockwise circular (helical) interpolation6.3 / 6.7
G04Dwell/interruption of block preparation7.1 / 7.2
G05*?* Round corner7.3.2
G06* Circle center in absolute coordinates6.4
G07*?Square corner7.3.1
G08* Arc tangent to previous path6.5
G09*Arc defined by three points6.6
G10**Mirror image cancellation7.5
G11** Mirror image on X axis7.5
G12** Mirror image on Y axis7.5
G13** Mirror image on Z axis7.5
G14** Mirror image in the programmed directions7.5
G15** Longitudinal axis selection8.2
G16** Main plane selection by two addresses and longitudinal axis3.2
G17*?*Main plane X-Y and longitudinal Z3.2
G18*?* Main plane Z-X and longitudinal Y3.2
G19** Main plane Y-Z and longitudinal X3.2
G20Definition of lower work zone limits3.7.1
G21Definition of upper work zone limits.3.7.1
G22* Enable/disable work zones.3.7.2
G28** Second spindle selection5.4
G29**Main spindle selection5.4
G28-G29*Axis toggle7.9
G30** Spindle synchronization (offset)5.5
G32** Feedrate "F" as an inverted function of time.6.15
G33** Electronic threading6.12
G34Variable-pitch threading6.13
G36*Corner rounding6.10
G37* Tangential entry6.8
G38* Tangential exit6.9
G39* Chamfer6.11
G40**Cancellation of tool radius compensation8.1
G41** Left-hand tool radius compensation8.1
G41 N** Collision detection8.3
G42**Right-hand tool radius compensation8.1
G42 N** Collision detection8.3
G43*?*Tool length compensation8.2
G44*?Cancellation of tool length compensation8.2
G45**Tangential control (G45)6.16
G47* Tool movement according to the tool coordinate system.15.2
G48**TCP transformation15.3
G49**Inclined plane definition15.1
G50**Controlled corner rounding7.3.3
G51**Look-Ahead7.4
·66·
Page 67
Programming manual
FunctionMDVMeaningSection
G52* Movement until making contact6.14
G53* Programming with respect to machine zero4.3
G54**Absolute zero offset 14.4.2
G55**Absolute zero offset 24.4.2
G56**Absolute zero offset 34.4.2
G57**Absolute zero offset 44.4.2
G58**Additive zero offset 14.4.2
G59**Additive zero offset 24.4.2
G60* Multiple machining in a straight line10.1
G61* Multiple machining in rectangular pattern10.2
I** Grid pattern canned cycle10.3
G63* Multiple machining in a circular pattern10.4
G64* Multiple machining in an arc10.5
G65* Machining programmed with an arc-chord10.6
G66* Irregular pocket canned cycle11.1 / 11.2
G67* Irregular pocket roughing11.1.2
G68* Irregular pocket finishing11.1.3
G69**Drilling canned cycle with variable peck9.6
G70*?* Programming in inches3.3
G71*?Programming in millimeters3.3
G72**General and specific scaling factor7.6
G73**Rotation of the coordinate system7.7
G74* Machine reference (home) search4.2
G75* Probing move until touching12.1
G76* Probing move while touching12.1
G77**Axis coupling (slaving)7.8.1
G77S**Spindle synchronization5.5
G78**Cancellation of axis coupling (slaving)7.8.2
G78S**Cancellation of spindle synchronization5.5
G79Canned cycle parameter modification9.2.1
G80**Canned cycle cancellation9.3
G81**Drilling canned cycle9.7
G82**Drilling canned cycle with dwell9.8
G83**Deep-hole drilling canned cycle with constant peck9.9
G84**Tapping canned cycle9.10
G85**Reaming canned cycle9.11
G86**Boring canned cycle with withdrawal in G009.12
G87**Rectangular pocket canned cycle.9.13
G88**Circular pocket canned cycle9.14
G89**Boring canned cycle with withdrawal in G019.15
G90*?Absolute programming:3.4
G91*?* Incremental programming3.4
G92Coordinate preset / spindle speed limit4.4.1
G93Polar origin preset4.5
G94*?Feedrate in millimeters (inches) per minute5.2.1
G95*?* Feedrate in millimeters (inches) per revolution.5.2.2
G96**Constant cutting point speed5.2.3
G97**Constant tool center speed5.2.4
G98**Withdrawal to the starting plane at the end of the canned cycle9.5
G99**Withdrawal to the reference plane at the end of the canned cycle9.5
G145** Temporary cancellation of tangential control6.17
M means modal, i.e. the G function, once programmed, remains active until another incompatible
G function is programmed or until an M02, M30, EMERGENCY or RESET is executed or the CNC
is turned off and back on.
5.
D means BY DEFAULT, i.e. they will be assumed by the CNC when it is powered on, after executing
M02, M30 or after EMERGENCY or RESET.
In those cases indicated by ?, it should be understood that the DEFAULT of these G functions
depends on the setting of the general machine parameters of the CNC.
The letter V means that the G code is displayed next to the current machining conditions in the
execution and simulation modes.
Preparatory functions
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·68·
Page 69
Programming manual
5.2Feedrate F
The machining feedrate can be selected from the program. It remains active until another feedrate
is programmed. It is represented by the letter F and Depending on whether it is working in G94 or
G95, it is programmed in mm/minute (inches/minute) or in mm/revolution (inches/revolution).
Its programming format is 5.5; in other words, 5.4 when programmed in mm and 4.5 when
programmed in inches.
The maximum operating feedrate of the machine, limited on each axis by the axis machine
parameter "MAXFEED", may be programmed via code F0, or by giving F the corresponding value.
The programmed feedrate F is effective working in linear (G01) or circular (G02, G03) interpolation.
If function F is not programmed, the CNC assumes the feedrate to be F0. When working in rapid
travel (G00), the machine will move at the rapid feedrate indicated by the axis machine parameter
"G00FEED", apart from the F programmed.
5.
The programmed feedrate F may be varied between 0% and 255% via the PLC, or by DNC, or
between 0% and 120% via the switch located on the Operator Panel of the CNC.
The CNC, however, is equipped with the general machine parameter "MAXFOVR" to limit maximum
feedrate variation.
If you are working in rapid travel (G00), rapid feedrate will be fixed at 100%, alternatively it can be
varied between 0% and 100%, depending on how the machine parameter "RAPIDOVR" is set.
When functions G33 (electronic threading), G34 (variable-pitch threading) or G84 (tapping canned
cycle) are executed the feedrate cannot be modified; it works at 100% of programmed F.
From the moment the code G94 is programmed, the control takes that the feedrates programmed
through F5.5 are in mm/min or inches/mm.
If the moving axis is rotary, the CNC interprets that the programmed feedrate is in degrees/minute.
If an interpolation is made between a rotary and a linear axis, the programmed feedrate is taken
in mm/min or inches/min, and the movement of the rotary axis (programmed in degrees) will be
considered programmed in millimeters or inches.
5.
Feedrate F
ISO CODE PROGRAMMING
The relationship between the feedrate of the axis component and the programmed feedrate "F" is
the same as that between the movement of the axis and the resulting programmed movement.
Example:
On a machine which has linear X and Y axes and rotary C axis, all located at point X0 Y0 C0, the
following movement is programmed :
G1 G90 X100 Y20 C270 F10000
You ge t:
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
Function G94 is modal i.e. once programmed it stays active until G95 is programmed.
On power-up, after executing M02, M30 or following EMERGENCY or RESET, the CNC assumes
function G94 or G95 according to how the general machine parameter "IFEED" is set.
·70·
Page 71
Programming manual
5.2.2Feedrate in mm/rev.or inches/rev (G95)
From the moment when the code G95 is programmed, the control assumes that the feedrates
programmed through F5.5 are in mm/rev or inches/mm.
This function does not affect the rapid moves (G00) which will be made in mm/min or inch/min. By
the same token, it will not be applied to moves made in the JOG mode, during tool inspection, etc.
Function G95 is modal i.e. once programmed it stays active until G94 is programmed.
On power-up, after executing M02, M30 or following EMERGENCY or RESET, the CNC assumes
function G94 or G95 according to how the general machine parameter "IFEED" is set.
5.
Feedrate F
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·71·
Page 72
Programming manual
5.2.3Constant surface speed (G96)
When G96 is programmed the CNC takes the F5.5 feedrate as corresponding to the cutting point
of the tool on the part.
By using this function, the finished surface is uniform in curved sections.
In this manner (working in function G96) the speed of the center of the tool in the inside or outside
curved sections will change in order to keep the cutting point constant.
Function G96 is modal i.e. once programmed it stays active until G97 is programmed.
5.
On power-up, after executing M02, M30 or following EMERGENCY or RESET, the CNC assumes
function G97.
Feedrate F
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·72·
Page 73
Programming manual
5.2.4Constant tool center speed (G97)
When G97 is programmed the CNC takes the programmed F5.5 feedrate as corresponding to the
feedrate of the center of the tool.
In this manner (working in function G97) the speed of the cutting point on the inside or outside cur ved
sections is reduced, keeping the speed of the center of the tool constant.
Function G97 is modal i.e. once programmed it stays active until G96 is programmed.
On power-up, after executing M02, M30 or following EMERGENCY or RESET, the CNC assumes
function G97.
5.
Feedrate F
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·73·
Page 74
5.
Programming manual
5.3Spindle turning speed (S)
The turning speed of the spindle is programmed directly in rpm via code S5.4.
The maximum value is limited by spindle machine parameters "MAXGEAR1", MAXGEAR2,
MAXGEAR 3 and MAXGEAR4", in each case depending on the spindle range selected.
It is also possible to limit this maximum value from the program by using function G92 S5.4.
The programmed turning speed S may be varied from the PLC, DNC, or by the SPINDLE keys "+"
and "-" on the Operator Panel of the CNC.
This speed variation is made between the maximum and minimum values established by spindle
machine parameters "MINSOVR" and "MAXSOVR".
The incremental pitch associated with the SPINDLE keys "+" and "-" on the CNC Operator Panel
in order to vary the programmed S value is fixed by the spindle machine parameter "SOVRSTEP".
When functions G33 (electronic threading), G34 (variable-pitch threading) or G84 (tapping canned
cycle) are executed the programmed speed cannot be modified; it works at 100% of programmed S.
Spindle turning speed (S)
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·74·
Page 75
Programming manual
5.4Spindle selection (G28, G29)
This CNC can govern two spindles: the main one and the second one. They both can be operative
simultaneously, but only one can be controlled at a time.
This selection is made using functions G28 and G29.
G28: Second spindle selection.
G29: Main spindle selection.
Once the desired spindle has been selected, it can be acted upon from the keyboard or by means
of the following functions:
Functions G28 and G29 are modal and incompatible with each other.
Function G28 and G29 must be programmed alone in the block.
No more information can be programmed in that block. On power-up, after executing an M02, M30
or after an EMERGENCY or RESET, the CNC assumes function G29 (selects the main spindle).
Operating example for when 2 spindles are used.
5.
Spindle selection (G28, G29)
ISO CODE PROGRAMMING
On power-up, the CNC assumes function G29 selecting the main spindle.
All the keyboard actions and by spindle related functions affect the main spindle.
Example: S1000 M3
Main spindle clockwise at 1000 rpm.
To select the second spindle, execute function G28.
From then on, All the keyboard actions and spindle related functions affect the second spindle.
The main spindle remains in its previous status.
Example: S1500 M4
Second spindle turns counterclockwise at 1500 rpm.
The main spindle keeps turning at 1000 rpm.
To select the main spindle again, execute function G29.
From then on, all the keyboard actions and spindle related functions affect the main spindle.
The second spindle stays in its previous status.
Example: S2000
The main spindle keeps turning clockwise but at 2000 rpm.
The second spindle keeps turning at 1500 rpm.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·75·
Page 76
5.
5.5Synchronized spindles (G30, G77S, G78S)
ISO CODE PROGRAMMING
Programming manual
With function G77S, two spindles (main and secondary) may be synchronized in speed; this
synchronism may be cancelled with function G78S. Always program G77S and G78S because
functions G77, G78 to slave and unslave the axes.
When the spindles are synchronized in speed, the second one turns at the same speed as the main
spindle.
Function G77S may be executed at any time, open loop (M3, M4) or closed loop (M19), the spindles
may even have different ranges (gears).
General output "SYNSPEED (M5560)" will be high while the spindle are in synch (same speed).
When this synchronism is cancelled (G78S), the second spindle recovers its previous speed and
status (M3, M4, M5, M19) and the main spindle stays in the current status.
If while in synchronism, an S is programmed greater than the maximum allowed, the CNC applies
the maximum value while they are synchronized. When canceling this synchronism, the limit is no
longer applied and the main spindle assumes the programmed speed.
While the spindles are synchronized in speed, function G77S active, with G30 they may also be
synchronized in position and set an angular offset between them so the second spindle follows the
main spindle at this set offset distance.
Programming format: G30 D ±359.9999 (offset in degrees)
For example, with G30 D90 the second spindle will turn 90º behind the main spindle.
Synchronized spindles (G30, G77S, G78S)
Considerations:
Before activating the synchronism, both spindles must be homed (referenced).
To synchronized the spindles in position (G30) they must be synchronized in speed already (G77S).
To synchronize two spindles, the SERVOSON and SERVOSO2 signals must be activated already.
When the spindle synchronization is active, only the main spindle signals PLCCNTL, SPDLINH,
SPDLREV, etc., will be addressed. Also, if a thread is wanted to be made, only the feedback and
the input of the main spindle will be used.
While the spindle synchronism is active, it is possible to:
• Change the spindle speed via DNC, PLC or CNC (S).
• Change the spindle speed override via DNC, PLC, CNC or keyboard.
• Change the spindle speed limit via DNC, PLC or CNC (G92 S)
But the following cannot be done:
• Toggle the spindles: G28, G29.
• Change gears: M41, M42, M43, M44.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·76·
Page 77
Programming manual
Selects the tool
Magazine?
EZ
YES
YES
EZ
D?
The CNC takes the D
associated with the T in the
tool table
The CNC takes the
dimensions defined for the D
in the tool offset table
5.6Tool number (T) and tool offset (D)
With the "T" function, it is possible to select the tool and with the "D" function it is possible to select
the offset associated with it. When defining both parameters, the programming order is T D. For
example: T6 D17
If the machine has a tool magazine, the CNC looks up the "Tool
magazine table" to know the position occupied by the selected
tool and the desired one.
If the "D" function has not be defined, it looks up the "Tool table"
to know the "D" offset associated with it.
It examines the "tool offset table" and assumes the tool
dimensions corresponding to the "D" offset.
To access, check and define these tables, refer to the operating manual.
How to use the T and D functions
• The "T" and "D" functions may be programmed alone or together as shown in the following
example:
T5 D18Selects tool 5 and assumes the dimensions of tool offset 18.
D22Tool 5 stays selected and it assumes the dimensions of tool offset 22.
T3Selects tool 3 and assumes the dimensions of the offset associated with that tool.
• When having a tool magazine where the same position is occupied by more than one tool, do
the following:
Use the "T" function to refer to the magazine position and the "D" function to the dimensions
of the tool located in that position.
Thus, for example, programming T5 D23 means selecting the turret position 5 and assuming
the geometry and dimensions of tool offset 23.
5.
ISO CODE PROGRAMMING
Tool number (T) and tool offset (D)
Tool length and radius compensation.
The CNC looks up the "tool offset table" and assumes the tool dimensions corresponding to the
active "D" offset.
Length compensation is applied at all times, whereas radius compensation must be selected by the
operator by means of functions G40, G41, G42.
Length compensation is applied at all times, whereas tool length compensation must be selected
by the operator by means of functions G43, G44.
If there is no tool selected or D0 is defined, neither tool length nor radius compensation is applied.
For further information, refer to chapter 8 "tool compensation" in this manual..
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·77·
Page 78
5.
i
Auxiliary function (M)
Programming manual
5.7Auxiliary function (M)
The miscellaneous functions are programmed by means of the M4 Code, it being possible to
program up to 7 functions in the same block.
When more than one function has been programmed in one block, the CNC executes these
correlatively to the order in which they have been programmed.
The CNC is provided with an M functions table with "NMISCFUN" (general machine parameter)
components, specifying for each element:
• The number (0-9999) of the defined miscellaneous M function.
• The number of the subroutine which is required to associate to this miscellaneous function.
• An indicator which determines if the M function is executed before or after the movement block
in which it is programmed.
• An indicator which determines if the execution of the M function interrupts block preparation or
not.
• An indicator which determines if the M function is executed or not, after the execution of the
associated subroutine.
• An indicator which determines if the CNC must wait for the signal AUX END or not (Executed
M signal, coming from the PLC), to continue the execution of the program.
ISO CODE PROGRAMMING
If, when executing the M miscellaneous function, this is not defined in the M functions table, the
programmed function will be executed at the beginning of the block and the CNC will wait for the
AUX END to continue the execution of the program.
Some of the miscellaneous functions are assigned an internal meaning in the CNC.
If, while executing the associated subroutine of an "M" miscellaneous function, there is a block
containing the same "M", this will be executed but not the associated subroutine.
All the miscellaneous "M" functions which have an associated subroutine must be programmed alone
in a block.
In the case of functions M41 through M44 with associated subroutine, the S that generates the gear
change must be programmed alone in the block. Otherwise, the CNC will display error 1031.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·78·
Page 79
Programming manual
5.7.1M00. Program stop
When the CNC reads code M00 in a block, it interrupts the program. To start up again, press CYCLE
START.
We recommend that you set this function in the table of M functions, in such a way that it is executed
at the end of the block in which it is programmed.
5.7.2M01. Conditional program stop
This is identical to M00, except that the CNC only takes notice of it if the signal M01 STOP from
the PLC is active (high logic level).
5.7.3M02. End of program
5.
This code indicates the end of program and carries out a "General Reset" function of the CNC
(returning it to original state). It also carries out the M05 function.
We recommend that you set this function in the table of M functions, in such a way that it is executed
at the end of the block in which it is programmed.
5.7.4M30. End of program with return to the first block
Identical to M02 except that the CNC returns to the first block of the program.
5.7.5M03, M4, M5. Spindle start and stop
M03. Clockwise spindle rotation
This code represents clockwise spindle start. As explained in the corresponding section, the CNC
automatically executes this code in the machining canned cycles.
It is recommended to set this function in the table of M functions, so that it is executed at the beginning
of the block in which it is programmed.
Auxiliary function (M)
ISO CODE PROGRAMMING
M04. Counterclockwise spindle rotation
This code represents counterclockwise spindle start. We recommend that you set this function in
the table of M functions, so that it is executed at the beginning of the block in which it is programmed.
M05. Spindle stop
We recommend that you set this function in the table of M functions, in such a way that it is executed
at the end of the block in which it is programmed.
Execution of M03, M04 and M05 using PLC marks
Auxiliary functions M03, M04 and M05 may be executed using the following PLC marks:
• First spindle: PLCM3 (M5070), PLCM4 (M5071) and PLCM5 (M5072).
• Second spindle: PLCM3SP2 (M5073), PLCM4SP2 (M5074) and PLCM5SP2 (M5075).
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·79·
Page 80
5.
Auxiliary function (M)
ISO CODE PROGRAMMING
Programming manual
• Auxiliary spindle: PLCM45 (M5076) to stop the auxiliary spindle and PLCM45S (M5077) to start
it up.
The PLC activates these marks to indicate to the CNC that it must execute the corresponding M
function at the indicated spindle.
If that spindle is not the main spindle at that moment, it changes the M in the execution history, it
activates the corresponding PLC mark DM3/4//5 and executes the transfer with the PLC (it writes
the M number in the MBCD1 (R550) register, it activates the MSTROBE signal, it waits for the
AUXEND signal to go up and it cancels the MSTROBE signal; if the M function is set as not to wait
for AUXEND in the M function table, it waits for the time period set with MINAENDW and cancels
the MSTROBE).
When acting upon the secondary spindle, it executes the same operation, but having activated the
mark S2MAIN (M5536) first and then cancelling it at the end. This operation is done automatically;
i.e. there is no need to program it at the PLC.
Even if the M3, M4 or M5 function has an associated subroutine in the M function table, that
subroutine will not be executed when they are executed using the PLC marks.
When executing M3, M4 or M5 using the PLC marks, the gear change that could be required by
the new S is not output to the PLC even if the gear change is automatic.
If the CNC is started up with no gear being active yet, because no M3 or M4 has been executed in
the main channel, the CNC will issue an error message even if it has been configured as AUTOGEAR.
The CNC will admit the M functions from the PLC as long as it is not in an error state or with LOPEN
(M5506) high, whether there is an execution active or not, either in manual or automatic. If the M
function is executed during a tool inspection and the spindle turning direction is changed, the change
will be identified in repositioning and it will offer the choice to change it again.
If when activating the M3, M4 or M5 marks via PLC, the main channel is transferring something to
the PLC, the PLC keeps the mark active until the CNC can attend to it. Once the M function is
executed, the CNC deactivates the mark.
In the following cases, the CNC ignores these PLC marks and deletes the mark so the request is
not left as pending:
• When the spindle is threading in electronic threading (G33).
• When it is doing a rigid tapping or a regular tapping.
• When the CNC is in error state or when LOPEN (M5506) is high.
If several marks of different spindles are activated at the same time, the below order will be followed:
first the first spindle, then the second spindle and finally the auxiliary spindle.
When receiving contradictory marks, they will all be ignored. When receiving several marks at the
same time and there is a stop (PLCM5 / PLCM45) between them, only this will be considered and
the rest will be ignored and not saved.
If the spindle has M19TYPE=1, the spindle is homed with the first M3 or M4 after start-up, as long
as that M function is executed in manual or automatic mode. If the M function is executed using one
of the PLC marks, the spindle will not be homed.
When activating the PLC marks while homing the spindle, the PLC command stays waiting for the
homing operation to be over. If the home search is associated with the first M3 or M4 after startup, the PLC command stays waiting for the homing operation is over.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·80·
If there are synchronized spindles, it acts upon the command of the main and secondary spindles
at the same time.
While executing the M function, it is possible to abort the process by deactivating the PLC mark that
has initiated it.
Note:
The PLCM5 mark is used to handle the open-door safety operation defined by Fagor Automation.
Page 81
Programming manual
5.7.6M06. Tool change code
If the general machine parameter "TOFFM06" (indicating that it is a machining center) is active, the
CNC sends instructions to the tool changer and updates the table corresponding to the tool
magazine.
It is recommended to set this function in the table of M functions, so that the subroutine
corresponding to the tool changer installed in the machine is executed.
The functions T and M06 may be programmed in the same block, regardless if they have an
associated subroutine or not. In a block where the functions T and M06 are programmed, nothing
else may be programmed.
5.
Auxiliary function (M)
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·81·
Page 82
5.
i
5.7.7M19. Spindle orientation
Auxiliary function (M)
ISO CODE PROGRAMMING
Programming manual
With this CNC it is possible to work with the spindle in open loop (M3, M4) and with the spindle in
closed loop (M19).
In order to work in closed loop, it is necessary to have a rotary encoder installed on the spindle of
the machine.
To switch from open loop to closed loop, execute function M19 or M19 S±5.5. The CNC will act as
follows:
• If the spindle has a home switch, the CNC modifies the spindle speed until it reaches the one
set by spindle machine parameter "REFEED1".
It then searches for actual marker pulse (Io) of the spindle encoder at the turning speed set by
spindle machine parameter REFEED2.
And, finally, it positions the spindle at the programmed S±5.5 point.
• If the spindle does not have a home switch, it searches the encoder marker pulse at the turning
speed set by spindle machine parameter REFEED2.
And, then, it positions the spindle at the programmed S±5.5 point.
If only M19 is executed, the spindle is oriented to position "I0".
To, now, orient the spindle to another position, program M19 S±5.5, the CNC will not perform the
home search since it is already in closed loop and it will orient the spindle to the indicated position.
(S±5.5).
The S±5.5 code indicates the spindle position, in degrees, from the spindle reference point (marker
pulse).
The sign indicates the counting direction and the 5.5 value is always considered to be absolute
coordinates regardless of the type of units currently selected.
Example:
S1000 M3
Spindle in open loop.
M19 S100
The spindle switches to closed loop. Home search and positioning (orientation) at 100º.
M19 S -30
The spindle orients to -30º, passing through 0º.
M19 S400
The spindle turns a whole revolution and positions at 40º.
During the M19 process the screen will display the warning: “M19 in execution"
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·82·
Page 83
Programming manual
5.7.8M41, M42, M43, M44. Spindle gear change
The CNC offers 4 spindle speed ranges M41, M42, M43 and M44 with maximum speed limits set
by the spindle machine parameters "MAXGEAR1", MAXGEAR2", "MAXGEAR3" and
"MAXGEAR4".
If machine parameter "AUTOGEAR" is set so the CNC executes the range change automatically,
M41 thru M44 will be sent out automatically by the CNC without having to be programmed.
If this machine parameter is set for non-automatic gear change, M41 thru M44 will have to be
programmed every time a gear change is required. Bear in mind that the maximum velocity
command value assigned to machine parameter "MAXVOLT" corresponds to the maximum speed
indicated for each one of the speed ranges (machine parameters "MAXGEAR1" thru
"MAXGEAR4").
Regardless of whether the gear change is automatic or not, functions M41 through M44 may have
an associated subroutine. If the function M41 through M44 is programmed and then an S
corresponding to that gear, it does not generate the automatic gear change and it does not execute
the associated subroutine.
5.
Auxiliary function (M)
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·83·
Page 84
Programming manual
5.7.9M45. Auxiliary spindle / Live tool
In order to use this miscellaneous function, it is necessary to set one of the axes of the machine
as auxiliary spindle or live tool (general machine parameter P0 thru P7).
To use the auxiliary spindle or live tool, execute the command: M45 S±5.5 where S indicates the
turning speed in rpm and the sign indicates the turning direction.
The CNC will output the velocity command corresponding to the selected speed according to the
value assigned to the machine parameter "MAXSPEED" for the auxiliary spindle.
5.
To stop the auxiliary spindle, program M45 or M45 S0.
Whenever the auxiliary spindle or live tool is active, the CNC will let the PLC know by activating the
general logic output "DM45" (M5548).
Also, it is possible to set the machine parameter for the auxiliary spindle "SPDLOVR" so the Override
keys of the front panel can modify the currently active turning speed of the auxiliary spindle.
Auxiliary function (M)
ISO CODE PROGRAMMING
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·84·
Page 85
PATH CONTROL
X100 Y100; Starting point
G00 G90 X400 Y300; Programmed path
6
The CNC allows you to program movements on one axis only or several at the same time.
Only those axes which intervene in the required movement are programmed. The programming
order of the axes is as follows :
X, Y, Z, U, V, W, A, B, C
6.1Rapid traverse (G00)
The movements programmed after the G00 are executed using the rapid feedrate found in the
machine axis parameter "G00FEED".
Independently of the number of axis which move, the resulting path is always a straight line between
the starting point and the final point.
It is possible, via the general machine parameter "RAPIDOVR", to establish if the feedrate override
% switch (when working in G00) operates from 0% to 100%, or whether it stays constant at 100%.
When G00 is programmed, the last "F" programmed is not cancelled i.e. when G01, G02 or G03
are programmed again "F" is recovered.
G00 is modal and incompatible with G01, G02, G03, G33 G34 and G75. Function G00 can be
programmed as G or G0.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC assumes code
G00 or G01, depending on how general machine parameter "IMOVE" has been set.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·85·
Page 86
6.
G01 G90 X650 Y400 F150
Programming manual
6.2Linear interpolation (G01)
The movements programmed after G01 are executed according to a straight line and at the
programmed feedrate "F".
When two or three axes move simultaneously the resulting path is a straight line between the starting
point and the final point.
The machine moves according to this path to the programmed feedrate "F". The CNC calculates
the feedrates of each axis so that the resulting path is the "F" value programmed.
PATH CONTROL
Linear interpolation (G01)
The programmed feedrate "F" may vary between 0% and 120% via the switch located on the Control
Panel of the CNC, or by selecting between 0% and 255% from the PLC, or via the DNC or the
program.
The CNC, however, is equipped with the general machine parameter "MAXFOVR" to limit maximum
feedrate variation.
With this CNC, it is possible to program a positioning-only axis in a linear interpolation block. The
CNC will calculate the feedrate for this positioning-only axis so it reaches the target coordinate at
the same time as the interpolating axes.
Function G01 is modal and incompatible with G00, G02, G03, G33 and G34. Function G01 can be
programmed as G1.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC assumes code
G00 or G01, depending on how general machine parameter "IMOVE" has been set.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·86·
Page 87
Programming manual
Axes X, U, A==>I
Axes Y, V, B==>J
Axes Z, W, C==>K
6.3Circular interpolation (G02, G03)
There are two ways of carrying out circular interpolation:
Movements programmed after G02 and G03 are executed in the form of a circular path and at the
programmed feedrate "F".
Clockwise (G02) and counterclockwise (G03) definitions are established according to the system
of coordinates shown below:
6.
PATH CONTROL
Circular interpolation (G02, G03)
This system of coordinates refers to the movement of the tool on the part.
Circular interpolation can only be executed on a plane. The form of definition of circular interpolation
is as follows :
Cartesian coordinates
The coordinates of the endpoint of the arc and the position of the center with respect to the starting
point are defined according to the axes of the work plane.
The center coordinates are defined in radius by the letters I, J, or K, each one of these being
associated to the axes as follows: When not defining the center coordinates, the CNC assumes that
their value is zero.
Programming format:
Plane XY:G02(G03)X±5.5Y±5.5I±6.5J±6.5
Plane ZX:G02(G03)X±5.5Z±5.5I±6.5K±6.5
Plane YZ:G02(G03)Y±5.5Z±5.5J±6.5K±6.5
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·87·
Page 88
Programming manual
The programming order of the axes is always maintained regardless of the plane selected,, as are
the respective center coordinates.
Plane AY:G02(G03)Y±5.5A±5.5J±6.5 I±6.5
Plane XU:G02(G03)X±5.5U±5.5 I±6.5I±6.5
Polar coordinates
6.
PATH CONTROL
Circular interpolation (G02, G03)
It is necessary to define the angle to be traveled Q and the distance from the starting point to the
center (optional), according to the axes of the work plane.
The center coordinates are defined by the letters I, J, or K, each one of these being associated to
the axes as follows:
Axes X, U, A==>I
Axes Y, V, B==>J
Axes Z, W, C==>K
If the center of the arc is not defined, the CNC will assume that it coincides with the current polar
origin.
Programming format:
Plane XY:G02(G03)Q±5.5I±6.5J±6.5
Plane ZX:G02(G03)Q±5.5I±6.5K±6.5
Plane YZ:G02(G03)Q±5.5J±6.5K±6.5
Cartesian coordinates with radius programming
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
The coordinates of the endpoint of the arc and radius R are defined.
Programming format:
Plane XY:G02(G03)X±5.5Y±5.5R±6.5
Plane ZX:G02(G03)X±5.5Z±5.5R±6.5
Plane YZ:G02(G03)Y±5.5Z±5.5R±6.5
If a complete circle is programmed, with radius programming, the CNC will show the corresponding
error, as infinite solutions exist.
If an arc is less than 180o, the radius is programmed with a plus sign, and a minus sign if it is more
than 180o.
·88·
Page 89
Programming manual
If P0 is the starting point and P1 the endpoint, there are 4 arcs which have the same value passing
through both points.
Depending on the circular interpolation G02 or G03, and on the radius sign, the relevant arc is
defined. Thus the programming format of the sample arcs is as follows:
The CNC calculates, depending on the programmed arc, the radii of the starting point and endpoint.
Although both of them should be "exactly" the same, general parameter "CIRINERR" allows a
certain calculation tolerance by establishing the maximum difference between these two radii. When
exceeding this value, the CNC will issue the corresponding error message.
In all these programming cases, the CNC checks that the center or radius coordinates do not exceed
214748.3647mm. Otherwise, the CNC will display the corresponding error.
The programmed feedrate "F" may var y between 0% and 120% via the switch located on the Control
Panel of the CNC, or by selecting between 0% and 255% from the PLC, or via the DNC or the
program.
The CNC, however, is equipped with the general machine parameter "MAXFOVR" to limit maximum
feedrate variation.
If the general machine parameter "PORGMOVE" has been selected and a circular interpolation
(G02 or G03) is programmed, the CNC assumes the center of the arc to be a new polar origin.
Functions G02 and G03 are modal and incompatible both among themselves and with G00, G01,
G33 and G34. Functions G02 and G03 can be programmed as G2 and G3.
Also, function G74 (home search) and G75 (probing) cancel the G02 and G03 functions.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC assumes code
G00 or G01, depending on how general machine parameter "IMOVE" has been set.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·89·
Page 90
6.
PATH CONTROL
Circular interpolation (G02, G03)
Programming manual
Programming examples
Various programming modes are analyzed below, point X60 Y40 being the starting point.
Cartesian coordinates:
G90 G17 G03 X110 Y90 I0 J50
X160 Y40 I50 J0
Polar coordinates:
G90 G17 G03 Q0 I0 J50
Q-90 I50 J0
or:
G93 I60 J90; defines polar center
G03 Q0
G93 I160 J90; defines new polar center
Q-90
Cartesian coordinates with radius programming:
G90 G17 G03 X110 Y90 R50
X160 Y40 R50
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·90·
Page 91
Programming manual
Programming of a (complete) circle in just one block:
6.
Various programming modes analyzed below, point X170 Y80 being the starting Point.
Cartesian coordinates:
G90 G17 G02 X170 Y80 I-50 J0
or:
G90 G17 G02 I-50 J0
Polar coordinates.
G90 G17 G02 Q36 0I-50 J0
or:
G93 I120 J80; defines polar center
G02 Q360
Cartesian coordinates with radius programming:
A complete circle cannot be programmed as there is an infinite range of solutions.
PATH CONTROL
Circular interpolation (G02, G03)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·91·
Page 92
6.
Programming manual
6.4Circular interpolation with absolute arc center coordinates (G06)
By adding function G06 to a circular interpolation block you can program the coordinates of the
center of the arc (I,J, or K) in absolute coordinates i.e. with respect to the zero origin and not to the
beginning of the arc.
Function G06 is not modal, so it should be programmed any time the coordinates of the center of
the arc are required in absolute coordinates. G06 can be programmed as G6.
PATH CONTROL
Various programming modes are analyzed below, point X60 Y40 being the starting point.
Circular interpolation with absolute arc center coordinates (G06)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·92·
Page 93
Programming manual
6.5Arc tangent to previous path (G08)
Via function G08 you can program an arc tangential to the previous path without having to program
the coordinates (I.J &K) of the center.
Only the coordinates of the endpoint of the arc are defined, either in polar coordinates or in Car tesian
coordinates according to the axes of the work plane.
6.
PATH CONTROL
Supposing that the starting point is X0 Y40, you wish to program a straight line, then an arc tangential
to the line and finally an arc tangential to the previous one.
G90 G01 X70
G08 X90 Y60; Arc tangent to previous path.
G08 X110 Y60; Arc tangent to previous path.
Function G08 is not modal, so it should always be programmed if you wish to execute an arc
tangential to the previous path. Function G08 can be programmed as G8.
Function G08 enables the previous path to be a straight line or an arc and does not alter its history.
The same function G01, G02 or G03 stays active after the block is finished.
When using function G08 it is not possible to execute a complete circle, as an infinite range of solutions
exists. The CNC displays the corresponding error code.
Arc tangent to previous path (G08)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·93·
Page 94
Programming manual
6.6Arc defined by three points (G09)
Through function G09 you can define an arc by programming the endpoint and an intermediate point
(the starting point of the arc is the starting point of the movement). In other words, instead of
programming the coordinates of the center, you program any intermediate point.
The endpoint of the arc is defined in Cartesian or polar coordinates, and the intermediate point is
always defined in Cartesian coordinates by the letters I,J, or K, each one being associated to the
axes as follows:
6.
PATH CONTROL
Arc defined by three points (G09)
Axes X, U, A==>I
Axes Y, V, B==>J
Axes Z, W, C==>K
In Cartesian coordinates:
G17G09X±5.5Y±5.5I±5.5J±5.5
Polar coordinates:
G17G09R±5.5Q±5.5I±5.5J±5.5
Example:
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
Being initial point X-50 Y0.
G09 X35 Y20 I-15 J25
Function G09 is not modal, so it should always be programmed if you wish to execute an arc defined
by three points. Function G09 can be programmed as G9.
When G09 is programmed it is not necessary to program the direction of movement (G02 or G03).
Function G09 does not alter the history of the program. The same G01, G02 or G03 function stays
active after finishing the block.
Function G09 may not be used to programmed a full circle because all three points must be different.
The CNC displays the corresponding error code.
·94·
Page 95
Programming manual
Z
Y
X
5
Z=18
15
(X, Y)
Programming a helical interpolation
where the starting point is X0 Y0 Z0.
As the example shows, it is not necessary
to program the last point (X, Y):
G03 I15 J0 Z18 K5
Example:
6.7Helical interpolation
A helical interpolation consists in a circular interpolation in the work plane while moving the rest of
the programmed axes.
6.
The helical interpolation is programmed in a block where the circular interpolation must be
programmed by means of functions: G02, G03, G08 or G09.
G02 X Y I J Z
G02 X Y R Z A
G03 Q I J A B
G08 X Y Z
G09 X Y I J Z
If the helical interpolation is supposed to make more than one turn, the linear movement of another
axis must also be programmed (one axis only).
On the other hand, the pitch along the linear axis must also be set (format 5.5) by means of the I,
J and K letters. Each one of these letters is associated with the axes as follows:
Axes X, U, A==>I
Axes Y, V, B==>J
Axes Z, W, C==>K
G02 X Y I J Z K
G02 X Y R Z K
G03 Q I J A I
G08 X Y B J
G09 X Y I J Z K
PATH CONTROL
Helical interpolation
It is now possible to program helical interpolations while Look Ahead is active (G51). Thanks to this,
CAN/CAM programs that contain this type of paths may be executed while look-ahead is active.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·95·
Page 96
6.
Programming manual
6.8Tangential entry at the beginning of a machining operation (G37)
Via function G37 you can tangentially link two paths without having to calculate the intersection
points.
Function G37 is not modal, so it should always be programmed if you wish to start a machining
operation with tangential entry:
PATH CONTROL
If the starting point is X0 Y30 and you wish to machine an arc (the path of approach being straight)
you should program:
G90 G01 X40
G02 X60 Y10 I20 J0
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
If, however, in the same example you require the entrance of the tool to the part to be machined
tangential to the path and describing a radius of 5 mm, you should program:
Tangential entry at the beginning of a machining operation (G37)
G90 G01 G37 R5 X40
G02 X60 Y10 I20 J0
As can be seen in the figure, the CNC modifies the path so that the tool starts to machine with a
tangential entry to the part.
You have to program Function G37 plus value R in the block which includes the path you want to
modify.
R5.5 should appear in all cases following G37, indicating the radius of the arc which the CNC enters
to obtain tangential entry to the part. This R value must always be positive.
Function G37 should only be programmed in the block which includes a straight-line movement (G00
or G01). If you program in a block which includes circular movement (G02 or G03), the CNC displays
the corresponding error.
·96·
Page 97
Programming manual
6.9Tangential exit at the end of a machining operator (G38)
Function G38 enables the ending of a machining operation with a tangential exit of the tool. The
path should be in a straight line (G00 or G01). Otherwise, the CNC will display the corresponding
error.
Function G38 is not modal, so it should be programmed whenever a tangential exit of the tool is
required.
Value R 5.5 should always appear after G38. It also indicates the radius of the arc which the CNC
applies to get a tangential exit from the part. This R value must always be positive.
6.
PATH CONTROL
If the starting point is X0 Y30 and you wish to machine an arc (with the approach and exit paths
in a straight line), you should program :
G90 G01 X40
G02 X80 I20 J0
G00 X120
If, however, in the same example you wish the exit from machining to be done tangentially and
describing a radius of 5 mm, you should program :
G90 G01 X40
G02 G38 R5 X80 I20 J0
G00 X120
Tangential exit at the end of a machining operator (G38)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·97·
Page 98
Programming manual
G90 G01 G36 R5 X35 Y60
X50 Y0
G90 G03 G36 R5 X50 Y50 I0 J30
G01 X50 Y0
6.10Automatic radius blend (G36)
In milling operations, it is possible to round a corner via function G36 with a determined radius,
without having to calculate the center nor the start and end points of the arc.
Function G36 is not modal, so it should be programmed whenever controlled corner rounding is
required.
This function should be programmed in the block in which the movement the end you want to round
is defined.
6.
The R5.5 value should always follow G36. It also indicates the rounding radius which the CNC
applies to get the required corner rounding. This R value must always be positive.
PATH CONTROL
Automatic radius blend (G36)
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·98·
Page 99
Programming manual
G90 G01 G39 R15 X35 Y60
X50 Y0
6.11Chamfer (G39)
In machining operations it is possible (using G39) to chamfer corners between two straight lines,
without having to calculate intersection points.
Function G39 is not modal, so it should be programmed whenever the chamfering of a corner is
required.
This function should be programmed in the block in which the movement whose end you want to
chamfer is defined.
The R5.5 value should always follow G39. It also indicates the distance from the end of the
programmed movement as far as the point where you wish to carry out the chamfering. This R value
must always be positive.
6.
Chamfer (G39)
PATH CONTROL
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
·99·
Page 100
Programming manual
6.12Threading (G33)
If the machine spindle is equipped with a rotary encoder, you can thread with a tool tip via function
G33.
Although this threading is often done along the entire length of an axis, the CNC enables threading
to be done interpolating more than one axis at a time.
Programming format:
G33 X.....C L Q
6.
Threading (G33)
PATH CONTROL
X...C ±5.5End point of the thread
L 5.5Thread pitch
Q ±3.5Optional. It indicates the spindle angular position (±359.9999) of the thread's starting
point. If not programmed, a value of 0 is assumed.
Considerations:
Whenever G33 is executed, if s.m.p. M19TYPE (P43) =0, and before making the servo-driven
thread, the CNC references the spindle (home search).
Spindle machine parameter M19TYPE (P43) must be set to "1" in order to be able to program
parameter Q (angular spindle position).
When executing function G33 Q (s.m.p. M19TYPE (P43) =1), and before executing the thread, a
home search must be made for the spindle after the last power-up.
When executing function G33 Q (s.m.p. M19TYPE (P43) =1), and the s.m.p. DECINPUT (P31) =NO,
a home search is not needed for the spindle, since the CNC will be homed automatically after powerup when turning the spindle in M3 or in M4 for the first time.
This search will be carried out at the feedrate set by s.m.p. REFEED2 (P35). After finding home,
the spindle will speed up or slow down to the programmed speed without stopping.
If the spindle has motor feedback with a SINCOS encoder (without reference mark), the home
search will be done directly at the programmed S speed without going through the speed set by
s.m.p. REFEED2.
CNC 8055
CNC 8055i
·M· & ·EN· MODELS
SOFT: V02.2X
If after power-up, an M19 is executed before an M3 or M4, that M19 will be executed without homing
the spindle when executing the first M3 or M4.
If the feedback device does not have the reference mark synchronized, the home search in M3 might
not coincide with the home search in M4. This does not happen with FAGOR feedback.
If the threads are blended together in round corner, only the first one can have an entry angle (Q).
While function G33 is active, neither the programmed feedrate "F" nor the programmed Spindle
speed "S" can be varied. They will both be set to 100%.
Function G33 is modal and incompatible with G00, G01, G02, G03, G34 and G75.
On power-up, after executing M02, M30 or after EMERGENCY or RESET, the CNC assumes code
G00 or G01, depending on how general machine parameter "IMOVE" has been set.
·100·
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.