Navigation

  • Page 1

    NCT ®101M, 104M, 115MControls for Milling Machines and Machining CentersProgrammer's ManualFrom SW version x.066

  • Page 2

    Manufactured by NCT Automation kft.H1148 Budapest Fogarasi út 7: Address: H1631 Bp. pf.: 26F Phone: (+36 1) 467 63 00F Fax:(+36 1) 467 63 09E-mail: actionURI(mailto:nct@nct.hu):nct@nct.huHome Page: actionURI(http://www.nct.hu):www.nct.hu

  • Page 3

    3Contents1 Introduction. ............................................................. 9,91.1 The Part Program. ..................................................... 9,9Word. ............................................................... 9,9Address Chain. ........................................

  • Page 4

    46.4.4 Override and Stop Inhibit (Tapping) Mode (G63). . . . . . . . . . . . . . . . . . . . . . . 51,516.4.5 Automatic Corner Override (G62).................................... 52,526.4.6 Internal Circular Cutting Override.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...

  • Page 5

    512 Tool Function. .......................................................... 95,9512.1 Tool Select Command (Code T). ........................................ 95,9512.2 Program Format for Tool Number Programming. . . . . . . . . . . . . . . . . . . . . . . . . . . . 95,9513 Miscellaneous and A...

  • Page 6

    617.3.5 Chaining of Intersection Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156,15618 Canned Cycles for Drilling............................................... 157,15718.1 Detailed Description of Canned Cycles. . . . . . . . . . . . . . . . . . . . . . . . . . . ....

  • Page 7

    722.11.3 Vacant Variables. ............................................. 198,19822.11.4 Numerical Format of Variables. .................................. 198,19822.12 Types of Variables. ................................................ 199,19922.12.1 Local Variables . ............................

  • Page 8

    8 © Copyright NCT February 5, 2010The Publisher reserves all rights for contentsof this Manual. No reprinting, even in ex-tracts, is permissible unless our written con-sent is obtained.The text of this Manual has been compiledand checked with utmost care, yet we as-sume no liability for possibl...

  • Page 9

    9,1 Introduction91 Introduction1.1 The Part ProgramThe Part Program is a set of instructions that can be interpreted by the control system in order tocontrol the operation of the machine.The Part Program consists of blocks which, in turn, comprise words.Word: Address and DataEach word is made up...

  • Page 10

    9,1 Introduction10BlockA block is made up of words.The blocks are separated by characters s (Line Feed) in the memory. The use of a block numberis not mandatory in the blocks. To distinguish the end of block from the beginning of anotherblock on the screen, each new block begins in a new line, w...

  • Page 11

    9,1 Introduction11DNC ChannelA program contained in an external unit (e.g., in a computer) can also be executed without storingit in the control's memory. Now the control will read the program, instead of the memory, fromthe external data medium through the RS232C interface. That link is referre...

  • Page 12

    9,1 Introduction12Fig. 12,1.2-1Fig 12,. 12,1.2-2Fig 12,. 12,1.2-31.2 Fundamental TermsThe InterpolationThe control system can move the tool alongstraight lines and arcs in the course of mach-ining. These activities will be hereafter refer-red to as "interpolation".Tool movement alon...

  • Page 13

    9,1 Introduction13Fig. 12,1.2-4F 12,ig. 12,1.2-5Reference PointThe reference point is a fixed point on the machine-tool. After power-on of the machine, theslides have to be moved to the reference point. Afterwards the control system will be able to inter-pret data of absolute coordinates as we...

  • Page 14

    9,1 Introduction14Fig. 12,1.2-6Fig 12,. 12,1.2-7Absolute Coordinate SpecificationWhen absolute coordinates are specified,the tool travels a distance measured fromthe origin of the coordinate system, i.e.,to a point whose position has been speci-fied by the coordinates.The code of absolute data...

  • Page 15

    9,1 Introduction15Fig. 12,1.2-8F 12,ig. 12,1.2-9One-shot (Non-modal) FunctionsSome codes or values are effective only in the block in which they are specified. These are one-shot functions.Spindle Speed CommandThe spindle speed can be specified at address S. It is also termed as "S functi...

  • Page 16

    9,1 Introduction16Wear CompensationThe tools are exposed to wear in the course of machining. Allowance can be made for such di-mensional changes (in length and radius as well) with wear compensations. The tool wear can beset in the control system. A geometry value, i.e., the initial length and r...

  • Page 17

    17,2 Controlled Axes17Fig. 17,2.1-12 Controlled AxesNumber of Axes (in basic configuration)3 axesIn expanded configuration5 additional axes (8 axes altogether)Number of axes to be moved simultaneously8 axes (with linear interpolation)2.1 Names of AxesThe names of controlled axes can be defined ...

  • Page 18

    17,2 Controlled Axes18The input increment system of the control is regarded as the smallest unit to be entered. It canbe selected as parameter. There are three systems available - IS-A IS-B and IS-C. The incrementsystems may not be combined for the axes on a given machine.Having processed the in...

  • Page 19

    19,3 Preparatory Functions (G codes)193 Preparatory Functions (G codes)The type of command in the given block will be determined by address G and the number fol-lowing it.The Table below contains the G codes interpreted by the control system, the groups and functionsthereof.G codeG roupFunctionP...

  • Page 20

    19,3 Preparatory Functions (G codes)G codeG roupFunctionP age20G39cutter compensation corner arc 125,125G40*07cutter radius/3 dimensional tool compensation cancel 110,110G41cutter radius compensation left/3 dimensional tool compensation 110,110, 113,113G42cutter radius compensation right 110,110...

  • Page 21

    19,3 Preparatory Functions (G codes)G codeG roupFunctionP age21G80canned cycle cancel* 166,166G81drilling, spot boring cycle, 166,166G82drilling, counter boring cycle 167,167G83peck drilling cycle 168,168G84tapping cycle 169,169G84.2rigid tap cycle 170,170G84.3rigid counter tap cycle 170,170G85b...

  • Page 22

    22,4 The Interpolation22Fig. 22,4.1-14 The Interpolation4.1 Positioning (G00)The series of instructionsG00 vrefers to a positioning in the current coordinate system.It moves to the coordinate v. Designation v (vector) refers here (and hereinafter) to all controlledaxes used on the machine-tool....

  • Page 23

    22,4 The Interpolation23Fig. 22,4.2-1F 22,ig. 22,4.2-2.............................Feed along the axis U is.............................Feed along the axis C iswhere x, y, u, c are the displacements programmed along the respective axes, L is the vectoriallength of programmed displacement:G01 X...

  • Page 24

    22,4 The Interpolation24F 24,ig. 24,4.3-14.3 Circular and Spiral Interpolation (G02, G03)The series of instructions specify circular interpolation.A circular interpolation is accomplished in the plane selected by commands G17, G18, G19 inclockwise or counter-clockwise direction (with G02 or G03...

  • Page 25

    22,4 The Interpolation25Fig. 24,4.3-2F 24,ig. 24,4.3-3Further data of the circle may be specified in one of two different ways.Case 1At address R where R is the radius of the circle. Now the control will automatically calculate thecoordinates of the circle center from the start point coordinat...

  • Page 26

    22,4 The Interpolation26Fig. 24,4.3-4F 24,ig. 24,4.3-5Fig 24,. 24,4.3-6The feed along the path can be programmed at address F,pointing in the direction of the circle tangent, and beingconstant all along the path. L Notes: – I0, J0, K0 may be omitted, e.g. G03 X0 Y100 I-100ppp – When each ...

  • Page 27

    22,4 The Interpolation27Fig. 24,4.3-7F 27,ig. 27,4.4-1If the specified circle radius is smaller thanhalf the distance of straight line inter-connec-ting the start point with the end point, the con-trol will regard the specified radius of the cir-cle as the start-point radius, and will interpo-...

  • Page 28

    22,4 The Interpolation28Fig. 27,4.4-2Fig 28,. 28,4.5-1The series of instructionsdefine a multi-dimensional spatial helical interpolation in which q, r, s are optional axes not in-volved in the circle interpolation.For example, series of instructionsG17 G3 X0 Y-100 Z50 V20 I-100will move the to...

  • Page 29

    22,4 The Interpolation29Fig. 28,4.5-2F 28,ig. 28,4.5-3The lead can be defined in one of two 2 ways. – If the lead is specified at address F, the data will be interpreted in mm/rev or inch/rev. Accor-dingly, F2.5 has to be programmed if a thread of 2.5 mm lead is to be cut. – If the pitch i...

  • Page 30

    22,4 The Interpolation30 L Notes: – The control returns error message 3020 DATA DEFINITION ERROR G33 if more than two co-ordinates are specified at a time in the thread-cutting block, or if both addresses F and Eare specified simultaneously. – Error message 3022 DIVIDE BY 0 IN G33 is produce...

  • Page 31

    31,4.6 Polar Coordinate Interpolation (G12.1, G13.1)31Fig. 31,4.6-14.6 Polar Coordinate Interpolation (G12.1, G13.1)Polar coordinate interpolation is a control operation method, in case of which the work describedin a Cartesian coordinate system moves its contour path by moving a linear and a r...

  • Page 32

    31,4.6 31, Polar Coordinate Interpolation (G12.1, G13.1)32Programming length coordinates in the course of polar coordinate interpolationIn the switched-on state of the polar coordinate interpolation length coordinate data may be pro-grammed on both axes belonging to the selected plane; The rotar...

  • Page 33

    31,4.6 Polar Coordinate Interpolation (G12.1, G13.1)33Fig. 31,4.6-2F 31,ig. 31,4.6-3The diagram beside shows the cases whenstraight lines parallel to axis X (1, 2, 3, 4) areprogrammed. Äx move belongs to the pro-grammed feed within a time unit. Different1234angular moves (n , n , n , n ) belo...

  • Page 34

    31,4.6 31, Polar Coordinate Interpolation (G12.1, G13.1)34N090 G12.1(polar coordinate interpolation on)N100 G42 G1 X100 F1000N110 C30N120 G3 X60 C50 I-20 J0N130 G1 X-40N140 X-100 C20N150 C-30N160 G3 X-60 C-50 R20N170 G1 X40N180 X100 C-20N190 C0N200 G40 G0 X150N210 G13.1(polar coordinate interpol...

  • Page 35

    35,4.7 Cylindrical Interpolation (G7.1)35Fig. 35,4.7-14.7 Cylindrical Interpolation (G7.1)Should a cylindrical cam grooving be milled on a cylinder mantle, cylindrical interpolation is tobe used. In this case the rotation axis of the cylinder and of a rotary axis must coincide. The rotaryaxis m...

  • Page 36

    35,4.7 35, Cylindrical Interpolation (G7.1)36Fig. 35,4.7-2 – Switch-on of cylindrical interpolation (command G7.1 Qr) is only possible in state G40. – Should G41 or G42 be switched on in cylindrical interpolation mode, G40 must be program-med before switching cylindrical interpolation off ...

  • Page 37

    37,4.8 37, Smooth Interpolation37Fig. 37,4.8-14.8 Smooth InterpolationThe programmer can select between two ways of machining in case of linear interpolation (G01): – At parts or at a detail of a part where the accurate form the way it was programmed is impor-tant such as at corners or plane ...

  • Page 38

    37,4.8 37, Smooth Interpolation38Fig. 37,4.8-2In case of smooth interpolation control moves the tool along a smooth curved path that intersectspoints specified in G1 blocks thus eliminating garduation between line segments. Control systemautomatically decides wether G1 blocks (and only G1 block...

  • Page 39

    37,4.8 37, Smooth Interpolation39 – In G1 blocks preceding a G or M code that does not buffer (e.g.: G53) linear interpolation isdone.If parameter 2535 SMOOTHEN is kept always on, command G5.1 Q2 need not be specified inthe part program. Then keep attention when normal machining is returned th...

  • Page 40

    40,5 The Coordinate Data40Fig. 40,5.1-15 The Coordinate Data5.1 Absolute and Incremental Programming (G90, G91), Operator IThe input coordinate data can be specified as absolute or incremental values. In an absolute speci-fication, the coordinates of the end point have to be specified for the c...

  • Page 41

    40,5 The Coordinate Data41Fig. 40,5.2-1F 40,ig. 40,5.2-2F 40,ig. 40,5.2-3Example:G90 G16 G01 X100 Y60 F180Both the radius and the angle are ab-solute data, the tool moves to thepoint of 100mm; 60E.G90 G16 G01 X100 YI40 F180The angle is an incremental data. Amovement by 40E relative to the pre...

  • Page 42

    40,5 The Coordinate Data42N6 Y300N7 Y360N8 G15 G0 X1005.3 Inch/Metric Conversion (G20, G21)With the appropriate G code programmed, the input data can be specified in metric or inch units.G20: Inch input programmingG21: Metric input programmingAt the beginning of the program, the desired input un...

  • Page 43

    40,5 The Coordinate Data43The value ranges of the length coordinates are shown in the Table below.input unit output unit incrementsystem value range of lengthcoordinates unit ofmeasuremmmmIS-A± 0.01-999999.99mmIS-B± 0.001-99999.999IS-C± 0.0001-9999.9999inchmmIS-A± 0.001-39370.078inchIS-B± ...

  • Page 44

    40,5 The Coordinate Data44Specifying path per roll-overThe path per one roll-over of the axis is defined at parameter 0261 ROLLAMNT_A, 0262 ROLL-AMNT_B or 0263 ROLLAMNT_C in input increment for axes A, B or C, respectively. Thus ifthe control is operating in increment system B and the axis rotat...

  • Page 45

    40,5 The Coordinate Data45Movement of rotary axis in case of incremental programmingIn case of programming incremental data input the direction of movement is always accordingto the programmed sign.The appropriate parameter ROLLAMNT_x to be applied for movement setting can be set atparameter 024...

  • Page 46

    46,6 The Feed46Fig. 46,6.2-16 The Feed6.1 Feed in Rapid TraverseG00 commands a positioning in rapid traverse.The value of rapid traverse for each axis is set by parameter by the builder of the machine. Therapid traverse may be different for each axis.When several axes are performing rapid trave...

  • Page 47

    46,6 The Feed47effective.6.2.1 Feed per Minute (G94) and Feed per Revolution (G95)The unit of feed can be specified in the program with the G94 and G95 codes:G94: feed per minuteG95: feed per revolutionThe term "feed/minute" refers to a feed specified in units mm/minute, inch/minute or...

  • Page 48

    46,6 The Feed48The Table below shows the maximum programmable range of values at address F, for variouscases. input units output units incrementsystem value range of address F unitmmmmIS-A0.001 - 250000mmordeg/minIS-B0.0001 - 25000IS-C0.00001 - 2500IS-A0.0001 - 5000mmordeg/revIS-B0.00001 - 500IS...

  • Page 49

    46,6 The Feed49Fig. 49,6.3-1The maximum jog feed can also be clamped separately by parameters for human response times.6.3 Acceleration/Deceleration. Taking F Feed into AccountAcceleration and deceleration in case of movement start and stop is needed in order to minimizeor level the effect of p...

  • Page 50

    46,6 The Feed50Fig. 49,6.3-2Fig 49,. 49,6.3-3Fig 49,. 49,6.3-4In case of bell-shaped acceleration thevalue of acceleration changes, i.e. it in-creases in the course of acceleration un-til it reaches the acceleration value set(parameter ACCn) as well as it de-creases linearly before reaching t...

  • Page 51

    46,6 The Feed51Fig. 51,6.4-16.4 Feed Control FunctionsThe override control functions are required when corners are to be machined, and/or when theparticular technology requires the override and stop switches to be canceled.When machining corners, with continuous cut-ting applied, the slides are...

  • Page 52

    46,6 The Feed52Fig. 52,6.4.5-1Fig 52,. 52,6.4.5-2Fig 52,. 52,6.4.5-36.4.5 Automatic Corner Override (G62)Modal function canceled by any of codes G61, G63 or G64.When inside corners are being machined,higher forces are acting upon the tool beforeand after the corners. To prevent the overloadof...

  • Page 53

    46,6 The Feed53Fig. 53,6.4.6-16.4.6 Internal Circular Cutting OverrideWith the cutter compensation on (G41, G42), the controlwill automatically reduce the feed in machining the insidesurface of an arc so that the programmed feed will be ef-fective along the cutting radius. The feed in the cente...

  • Page 54

    46,6 The Feed54Fig. 62,7.2.3-2F 62,ig. 62,7.2.3-1If no deceleration isexecuted at the cornerin two subsequent -N1, N2 blocks, feedxdifferences (ÄF,yÄF ) occur along theaxes, which results inthe tool rounding thereal corner.For the corner deceleration function to operate, parameter 2501 CDEN...

  • Page 55

    46,6 The Feed55Fig. 62,7.2.3-4F 62,ig. 62,7.2.3-3Deceleration at corners by monitoring the cange of feed components per axisIf 2501 CDEN=1 and 2502 FEEDDIF=1, deceleration is executed by monitoring the change offeed components. This setting only operates in state G94 (feed per minute).L Warnin...

  • Page 56

    46,6 The Feed56Fig. 56,6.6-1F 62,ig. 62,7.2.3-5In case of parameter setting 2503 GEO=1 the control starts from the worst case(45°) and operates with the feed valid inthe case of 45° independent of the geo-metric position of angle legs. This canresult in at most 30% feed decrease.L Warning: ...

  • Page 57

    57,7 High-Speed High-Precision M achining577 High-Speed High-Precision MachiningHigh-speed high-precision machining is applied mainly if the path is built up of succeeding shortstraight lines or arcs, as is usually in the case of metal die machining. As the effect of this function the tool follo...

  • Page 58

    57,7 High-Speed High-Precision M achining58M01: conditional stopM02, M30: end of program/n: conditional block skip, if parameter 1248 CNDBKBUF=0Processing Macro StatementsMacro statements are always buffered and ececuted independently of the state of parameterMULBUF. The following blocks are reg...

  • Page 59

    57,7 High-Speed High-Precision M achining59Fig. 59,7.2.1-1value set as accuracy level for an axis. In this way slow-down of block processing and ma-chine skipping caused by blocks consisting many small movements generated in the com-puter can be avoided. – Speed feedforward, if the function i...

  • Page 60

    57,7 High-Speed High-Precision M achining60 2601 FINACCUR for finishing, 2701 MEDACCUR for medium roughing, 2801 ROUACCUR for roughing.The programmed short straight movements (blocks G01) are pooled for each axis until the abso-lute value of movement on an axis is higher than the value set at p...

  • Page 61

    57,7 High-Speed High-Precision M achining612532 FDFORWRAP must be set to 1.In most cases this is unnecessary, this time the value of parameter must be 0.If the speed feedforward is 100%, this means, that the slides track the movement commands sentwithout lag in stationary state. In case of feed ...

  • Page 62

    57,7 High-Speed High-Precision M achining627.2.3 Deceleration Based on Speed Difference per Axis at CornersIn case of high-speed high-precision machining when detecting corners it is always the decelera-tion based on speed difference being active independent of the state of parameter 2502 FEEDDI...

  • Page 63

    57,7 High-Speed High-Precision M achining63Fig. 62,7.2.4-1Fig. 62,7.2.4-2The reduction of the acceleration step in the case of successive straight linesIf the path consists of long straight lines the accelerationchange is insignificant. In this case the changing of thefeedrate components of th...

  • Page 64

    57,7 High-Speed High-Precision M achining64F 63,ig. 7.2.5-1If a path is built up of short straight lines, as it is general in metal die production, then the curva-ture of the resulting path may be significant and feed has to be decelerated, as shown in the belowexample:In blocks N2, N3, N4 as we...

  • Page 65

    57,7 High-Speed High-Precision M achining65Fig. 63,7.2.5-2The feed may decrease significantly due to the limiting of accelerations in normal direction. Theuser has the possibility to define an absolute feed minimum at parameter 2541 FEEDLOW.If the programmed feed is less than the value set at p...

  • Page 66

    57,7 High-Speed High-Precision M achining662534 NOFEEDRIf the parameter value =0: the control takes the programmed F as its starting point when calculating feed, =1: all F feed commands are ineffective. The axis feeds are only defined by accelerations enabledand critical feed differences The ca...

  • Page 67

    57,7 High-Speed High-Precision M achining677.3 Summarizing HSHP Path Tracking Parametersin COMMON main group1221 CODES subgroup (BIT)1228 HSHP (BIT)After power-on the mode according to the parameter is activated. If the parameter value=0:high-speed high-precision path tracking (HSHP) is off. Its...

  • Page 68

    57,7 High-Speed High-Precision M achining682511 CRITICAN subgroup (WORD)2511 CRITICAN (WORD)The value of the critical angle can be specified at this parameter in degree, should automa-tic feed deceleration at corners be executed to the critical angle (FEEDDIF=0) .2512 FEEDCORN (WORD)The feed to...

  • Page 69

    57,7 High-Speed High-Precision M achining69=0: speed feedforward is not effective in case of rapid traverse movements (G0),=1: it is also effective in case of rapid traverse movements.2533 ZAXOVEN (BIT)Its value is obligatorily 0.2534 NOFEEDR (BIT)If parameter value=0: the control takes programm...

  • Page 70

    57,7 High-Speed High-Precision M achining70If the parameter value is 1, finishing parameters No. 2600 of HSHP machining are selec-ted. It substitutes command G5.1 R1.2562 MEDIUM (BIT)If the parameter value is 1, medium roughing parameters No. 2700 of HSHP machiningare selected. It substitutes c...

  • Page 71

    57,7 High-Speed High-Precision M achining712601 FINLEVEL subgroup (WORD)2601 FINACCUR (WORD)In course of HSHP machining in case of finishing the programmed short straight move-ments are pooled by axes until the movement on an axis is larger than the value set at theparameter, and the pooled move...

  • Page 72

    57,7 High-Speed High-Precision M achining722641 FINFDIF subgroup (WORD)264n FINFDIFn (WORD)This parameter provides the critical feed difference enabled at corners in course of HSHPmachining in case of finishing.Its interpretation is mm/min (if INCHDET=0) or inch/min (if INCHDET=1) in case of li-...

  • Page 73

    57,7 High-Speed High-Precision M achining732701 MEDLEVEL subgroup (WORD)2701 MEDACCUR (WORD)In course of HSHP machining in case of medium roughing the programmed short straightmovements are pooled by axes until the movement on an axis is larger than the value setat the parameter, and the pooled ...

  • Page 74

    57,7 High-Speed High-Precision M achining742741 MEDFDIF subgroup (WORD)274n MEDFDIFn (WORD)This parameter provides the critical feed difference enabled at corners in course of HSHPmachining in case of medium roughing.Its interpretation is mm/min (if INCHDET=0) or inch/min (if INCHDET=1) in case ...

  • Page 75

    57,7 High-Speed High-Precision M achining752801 ROULEVEL subgroup (WORD)2801 ROUACCUR (WORD)In course of HSHP machining in case of roughing the programmed short straight move-ments are pooled by axes until the movement on an axis is larger than the value set at theparameter, and the pooled movem...

  • Page 76

    57,7 High-Speed High-Precision M achining762841 ROUFDIF subgroup (WORD)284n ROUFDIFn (WORD)This parameter provides the critical feed difference enabled at corners in course of HSHPmachining in case of roughing.Its interpretation is mm/min (if INCHDET=0) or inch/min (if INCHDET=1) in case of li-n...

  • Page 77

    77,8 The Dwell778 The Dwell (G04)The(G94) G04 P....command will program the dwell in seconds.The range of P is 0.001 to 99999.999 seconds.The(G95) G04 P....command will program the dwell in terms of spindle revolutions.The range of P is 0.001 to 99999.999 revolutions.Depending on parameter SECON...

  • Page 78

    78,9 The Reference Point78Fig. 78,9-1 9 The Reference PointThe reference point is a distinguished positionon the machine-tool, to which the control caneasily return. The location of the referencepoint can be defined as a parameter in the co-ordinate system of the machine. Work coordi-nate syste...

  • Page 79

    78,9 The Reference Point799.2 Automatic Return to Reference Points 2nd, 3rd, 4th (G30)Series of instructionsG30 v Pwill send the axes of coordinates defined at the addresses of vector v to the reference point de-fined at address P.P1=reference point 1P2=reference point 2P3=reference point 3P4=r...

  • Page 80

    78,9 The Reference Point80Fig. 79,9.3-1G29. If coordinate v has an incremental value, the displacement will be measured from the inter-mediate point.When the cutter compensation is set up, it will move to the end point by taking into account thecompensation vector.A non-modal code.An example of...

  • Page 81

    81,10 Coordinate Systems, Plane Selection81Fig. 81,10-1F 81,ig. 81,10.1-110 Coordinate Systems, Plane SelectionThe position, to which the tool is to be moved, is specified with coordinate data in the program.When 3 axes are available (X, Y, Z), the position of the tool is expressed by three co...

  • Page 82

    81,10 Coordinate Systems, Plane Selection82F 82,ig. 82,10.2.1-110.1.1 Setting the Machine Coordinate SystemAfter a reference point return, the machine coordinate system can be set in parameters. The dis-tance of the reference point, calculated from the origin of the machine coordinate system, h...

  • Page 83

    81,10 Coordinate Systems, Plane Selection83Fig. 82,10.2.1-2F 83,ig. 83,10.2.2-1Furthermore, all work coordinate system can be offset with a common value. It can also be ente-red in setting mode.10.2.2 Selecting the Work Coordinate SystemThe various work coordinate system can be selected with i...

  • Page 84

    81,10 Coordinate Systems, Plane Selection84Fig. 83,10.2.2-2After a change of the work coordinate system,the tool position will be displayed in the newcoordinate system. For instance, there are twoworkpieces on the table. The first work coordi-nate system (G54) has been assigned to zeropoint of ...

  • Page 85

    81,10 Coordinate Systems, Plane Selection85Fig. 84,10.2.4-1F 84,ig. 84,10.2.4-2If, e.g., the tool is at a point of X=150, Y=100coordinates, in the actual (current) X, Y workcoordinate system, instruction G92 X90 Y60will create a new X', Y' coordinate system, inwhich the tool will be set to the...

  • Page 86

    81,10 Coordinate Systems, Plane Selection86Fig. 85,10.3-1Fig 85,. 85,10.3-2coincide with the point v in the work coordinate system. – When specified as an incremental value, the origin of the local coordinate system will be shif-ted with v offset (provided a local coordinate system has been ...

  • Page 87

    81,10 Coordinate Systems, Plane Selection87Fig. 85,10.3-3F 87,ig. 87,10.4-1cified inG92 - as if command G52 v0 had been issued.Whenever the tool is at point of X=200,Y=120 coordinates in the X, Y work coordina-te system, instructionG52 X60 Y40will shift its position to X'=140, Y'=80 in theX', ...

  • Page 88

    81,10 Coordinate Systems, Plane Selection88Unless there is an axis address specified in the G17, G18, G19 block, the control will considerthe basic axes:the XY plane will be selected by G17,the XY plane will be selected by G17 X,the UY plane will be selected by G17 U,the XV plane will be selecte...

  • Page 89

    89,11 The Spindle Function89Fig. 89,11.2-111 The Spindle Function11.1 Spindle Speed Command (Code S)With a number of max. five digits written at address S, the NC will give a code to the PLC. De-pending on the design of the given machine-tool, the PLC may interpret address S as a code oras a da...

  • Page 90

    89,11 The Spindle Function9011.2.1 Constant Surface Speed Control Command (G96, G97)CommandG96 Sswitches constant surface speed control function on. The constant surface speed must be specifiedat address S in the unit of measure given in the above table.CommandG97 Scancels constant surface speed...

  • Page 91

    89,11 The Spindle Function9111.2.3 Selecting an Axis for Constant Surface Speed ControlThe axis, which position the constant surface speed is calculated from, is selected by parameter1182 AXIS. The logic axis number must be written at the parameter.If other than the selected axis is to be used, ...

  • Page 92

    89,11 The Spindle Function9211.5 Spindle Positioning (Indexing)A spindle positioning is only feasible after the spindle position control loop has been closed afterorientation. Accordingly, this function is used for closing the loop. The loop will be opened byrotation command M3 or M4.If the valu...

  • Page 93

    89,11 The Spindle Function93Fig. 92,11.6-2F 92,ig. 92,11.6-1Start of Spindle Speed Fluctuation DetectionAs the effect of new rotation speed the detection is suspended by the control. The speed fluctua-tion detection starts when - the current spindle speedreaches the specified spindlespeed wit...

  • Page 94

    89,11 The Spindle Function94Fig. 92,11.6-3Detecting ErrorIn the course of detection the control sends error message in case the deviation between currentand specified spindle speed exceeds- the tolerance limit specified by value "r" inpercent of the command value and- also the absolut...

  • Page 95

    95,12 95, Tool Function9512 Tool Function12.1 Tool Select Command (Code T)With a number of max. four digits written at address T, the NC will give a code to the PLC.When a movement command and a tool number (T) are programmed in a given block, functionT will be issued during or after the motion ...

  • Page 96

    95,12 Tool Function96This procedure is described in the part program as follows.Part ProgramExplanation.....................Tnnnn........search for tool Tnnnn.................the part program is running, tool search is being performed in thebackground...M06 Tmmmm....tool Tnnnn is placed in the s...

  • Page 97

    97,13 M iscellaneous and Auxiliary Functions9713 Miscellaneous and Auxiliary Functions13.1 Miscellaneous Functions (Codes M)With a numerical value of max. 3 digits specified behind address M, the NC will transfer the codeto the PLC.When a movement command and a miscellaneous function (M) are pro...

  • Page 98

    97,13 M iscellaneous and Auxiliary Functions98It will cause the execution to return to the position of call.13.2 Auxiliary Function (Codes A, B, C)Max. three digits can be specified at each of addresses A, B, C provided one (or all) of those add-resses is (are) selected as auxiliary function(s) ...

  • Page 99

    99,14 Part Program Configuration9914 Part Program ConfigurationThe structure of the part program has been described already in the introduction presenting thecodes and formats of the programs in the memory. This Section will discuss the procedures of or-ganizing the part programs.14.1 Sequence N...

  • Page 100

    99,14 Part Program Configuration10014.3.1 Calling the SubprogramThe series of instructionsM98 P....will generate a subprogram call. As a result, the execution of the program will be resumed at thesubprogram, the number of which is defined at address P. The limit of address P are 1 to 9999.After ...

  • Page 101

    99,14 Part Program Configuration10114.3.2 Return from a SubprogramThe use of instructionM99in a subprogram means the end of that subprogram, and the program execution returns to theblock following the call in the calling program.main programO0010..................subprogramcommentexecution of pr...

  • Page 102

    99,14 Part Program Configuration102 L Note: – An error message 3070 NOT EXISTING BLOCK NO. P is displayed when the return blocknumber (P) is not found in the calling program.14.3.3 Jump within the Main ProgramThe use of instructionM99in the main program will produce an unconditional jump to th...

  • Page 103

    103,15 The Tool Compensation10315 The Tool Compensation15.1 Referring to Tool Compensation Values (H and D)Reference can be made totool length compensation at address H,tool radius compensation at address D.The number behind the address (the tool compensation number) indicates the particular com...

  • Page 104

    103,15 The Tool Compensation104Limit values of geometry and wear: input units outputunits incrementsystem geometry value wear value unit ofmeasure mmmmIS-A±0.01 ÷99999.99±0.01÷163.80IS-B±0.001÷9999.999±0.001÷16.380mmIS-C±0.0001÷999.9999±0.0001÷1.6380inchmmIS-A±0.001÷9999.999±...

  • Page 105

    103,15 The Tool Compensation10515.3 Tool Length Compensation (G43, G44, G49)InstructionG43 q H orG44 q Hwill set up the tool length compensation mode.Address q means axis q to which the tool length compensation is applied (q= X, Y, Z, U, V, W,A, B, C).Address H means the compensation cell, from ...

  • Page 106

    103,15 The Tool Compensation106Fig. 105,15.3-1If, however, instruction G49 is used, any refe-rence to address H will be ineffective untilG43 or G44 is programmed.At power-on, the value defined in parametergroup CODES decides which code is effective(G43, G44, G49).The example below presents a si...

  • Page 107

    103,15 The Tool Compensation107Fig. 106,15.4-1F 106,ig. 106,15.4-2F 106,ig. 106,15.4-3F 106,ig. 106,15.4-4F 106,ig. 106,15.4-5With G45 programmed (increase by the offset value):a. movement command: 20b. movement command: 20compensation: 5compensation: -5a. movement command: -20b. movement c...

  • Page 108

    103,15 The Tool Compensation108F 106,ig. 106,15.4-6F 106,ig. 106,15.4-7Fig 106,. 106,15.4-8With G47 programmed (double increase by the offset value):a. movement command: 20cases b, c, d are similar to G45compensation: 5With G48 programmed (double decrease by the offset value):a. movement comm...

  • Page 109

    103,15 The Tool Compensation109Fig. 106,15.4-9NC commandG45 XI0 D1G46 XI0 D1G45 XI-0 D1G46 XI-0 D1displacementx=12x=-12x=-12x=12A tool radius compensation applied with one of codes G45...G48 is also applicable with ¼ and¾ circles, provided the centers of the circles are specified at address I...

  • Page 110

    103,15 The Tool Compensation110Fig. 110,15.5-1Fig 110,. 110,15.5-215.5 Cutter Compensation (G38, G39, G40, G41, G42)To be able to mill the contour of atwo-dimensional workpiece and tospecify the points of that forma-tion as per the drawing in the pro-gram (regardless of the size of thetool emp...

  • Page 111

    103,15 The Tool Compensation111performed for interpolation movements G00, G01, G02, G03.The above points refer to the specification of positive tool radius compensation, but its value maybe negative, too. It has a practical meaning if, e.g., a given subprogram is to be used for definingthe conto...

  • Page 112

    103,15 The Tool Compensation112Fig. 110,15.5-3An auxiliary data is to be introduced be-fore embarking on the discussion of thedetails of the compensation computa-tion. It is "á", the angle at the corner oftwo consecutive blocks viewing from theworkpiece side. The direction of á de-p...

  • Page 113

    103,15 The Tool Compensation113Fig. 113,15.5.1-115.5.1 Start up of Cutter CompensationAfter power-on, end of program or resetting to the beginning of the program, the control will as-sume state G40. The offset vector will be deleted, the path of the tool center will coincide withthe programmed ...

  • Page 114

    103,15 The Tool Compensation114Fig. 113,15.5.1-2F 113,ig. 113,15.5.1-3F 113,ig. 113,15.5.1-4Going around the outside of a corner at an obtuse angle, 90E#á#180EGoing around the outside of a corner at an acute angle, 0E#á<90ESpecial instances of starting up the radiuscompensation:If values...

  • Page 115

    103,15 The Tool Compensation115Fig. 113,15.5.1-5F 113,ig. 113,15.5.1-6F 113,ig. 113,15.5.1-7the interpolation, in which it has been programmed. This facility is useful, e.g., in moving to aninside corner....G91 G17 G40...N110 G42 G1 X-80 Y60 I50 J70 D1N120 X100 ...In this case the control wil...

  • Page 116

    103,15 The Tool Compensation116Fig. 113,15.5.1-8If zero displacement is programmed (or such is produced) in the block containing the activationof compensation (G41, G42), the control will not perform any movement but will carry on themachining along the above-mentioned strategy....N10 G40 G17 G...

  • Page 117

    103,15 The Tool Compensation117Fig. 117,15.5.2-115.5.2 Rules of Cutter Compensation in Offset ModeIn offset mode the compensation vectors will be calculated continuously between interpolationblocks G00, G01, G02, G03 (see the basic instances) until more than one block will be inserted,that do n...

  • Page 118

    103,15 The Tool Compensation118Fig. 117,15.5.2-2F 117,ig. 117,15.5.2-3It may occur that no intersection point is ob-tained with some tool-radius values. In thiscase the control comes to a halt during execu-tion of the previous interpolation and returnserror message 3046 NO INTERSECTION G41,G42...

  • Page 119

    103,15 The Tool Compensation119Fig. 117,15.5.2-4F 117,ig. 117,15.5.2-5Going around the outside of a corner at an acute angle, 0E#á<90ESpecial instances of offset mode:If zero displacement is programmed (or such is obtained) in the selected plane in a block in offsetmode, a perpendicular ve...

  • Page 120

    103,15 The Tool Compensation120Fig. 120,15.5.3-1F 120,ig. 120,15.5.3-215.5.3 Canceling of Offset ModeCommand G40 will cancel the computation of tool radius compensation. Such a command canbe issued with linear interpolation only. The control will return error message 3042 G40 IN G2,G3 to any a...

  • Page 121

    103,15 The Tool Compensation121F 120,ig. 120,15.5.3-3F 120,ig. 120,15.5.3-4F 120,ig. 120,15.5.3-5Going around the outside of a corner at an acute angle, 0E#á<90ESpecial instances of canceling offset mode:If values are assigned to I, J, K in the compensation cancel block (G40) - but only t...

  • Page 122

    103,15 The Tool Compensation122Fig. 120,15.5.3-6F 120,ig. 120,15.5.3-7F 120,ig. 120,15.5.3-8Unless a point of intersection is found, the control willmove, at a right angle, to the end point of the previous in-terpolation.If the compensation is canceled in a block in which nomovement is progra...

  • Page 123

    103,15 The Tool Compensation123F 123,ig. 123,15.5.4-115.5.4 Change of Offset Direction While in the Offset ModeThe direction of tool-radius compensation computation is given in the Table below.Radius compensation: positiveRadius compensation: negativeG41leftrightG42rightleftThe direction of off...

  • Page 124

    103,15 The Tool Compensation124Fig. 123,15.5.4-2Fig 123,. 123,15.5.4-3Fig 123,. 123,15.5.4-4Unless a point of intersection is found in a li-near-to-linear transition, the path of the toolwill be:Unless a point of intersection is found in a li-near-to-circular transition, the path of the toolw...

  • Page 125

    103,15 The Tool Compensation125Fig. 125,15.5.5-1F 125,ig. 125,15.5.5-215.5.5 Programming Vector Hold (G38)Under the action of commandG38 vthe control will hold the last compensation vector between the previous interpolation and G38block in offset mode, and will implement it at the end of G38 b...

  • Page 126

    103,15 The Tool Compensation126Fig. 125,15.5.6-1Fig 125,. 125,15.5.6-2The start and end points of the arc will begiven by a tool-radius long vector perpendicu-lar to the end point of the path of previous in-terpolation and by a tool-radius vector perpen-dicular to the start point of the next o...

  • Page 127

    103,15 The Tool Compensation127Fig. 127,15.5.7-1F 127,ig. 127,15.5.7-215.5.7 General Information on the Application of Cutter CompensationIn offset mode (G41, G42), the control will always have to compute the compensation vectorsbetween two interpolation blocks in the selected plane. In practi...

  • Page 128

    103,15 The Tool Compensation128F 127,ig. 15.5.7-3F 127,ig. 127,15.5.7-4F 127,ig. 127,15.5.7-5If no cut is feasible in direction Z unless the radius compensation isset up, the following procedure may be adopted:...G17 G91...N110 G41 G0 X50 Y70 D1N120 G1 Z-40N130 Y40...Now the tool will have a c...

  • Page 129

    103,15 The Tool Compensation129F 127,ig. 15.5.7-6F 127,ig. 127,15.5.7-7F 127,ig. 127,15.5.7-8interpolation, the command will be executed and the vector will be restored at the end point ofthe next interpolation. If the previous or next interpolation is a circular one, the control will returner...

  • Page 130

    103,15 The Tool Compensation130Fig. 127,15.5.7-9F 127,ig. 127,15.5.7-10F 127,ig. 15.5.7-11A new compensation value can also becalled at address D in offset mode. In theevent of a reversal in the sign of the ra-dius, the direction of motion along thecontours will be reversed (see earlier).Other...

  • Page 131

    103,15 The Tool Compensation131Fig. 127,15.5.7-12Fig. 127,15.5.7-13Fig. 127,15.5.7-14When the radius compensation is applied to acircle of a variable radius, the control will cal-culate the compensation vector(s) to an imagi-nary circle at the start point thereof, the radiusof which is equal ...

  • Page 132

    103,15 The Tool Compensation132Fig. 127,15.5.7-15Fig. 132,15.5.8-1Two or more compensation vectors may be producedwhen going around sharp corners. When their endpoints lie close to each other, there will be hardly anymotion between the two points.When the distance between the two vectors is sm...

  • Page 133

    103,15 The Tool Compensation133F 132,ig. 15.5.8-2F 132,ig. 132,15.5.8-3In the other words the con-trol will check wether thecompensated displacementvector has a component op-posite to the programmeddisplacement vector or not.If parameter ANGLAL is set to 1, the control will, after an angle chec...

  • Page 134

    103,15 The Tool Compensation134Fig. 132,15.5.8-4Automatic repairing of interference error by neglecting compensation vectors.If parameter ANGLAL is set to 0, the control will not return an error message, but will automati-cally attempt to correct the contour in order to avoid overcutting. The p...

  • Page 135

    103,15 The Tool Compensation135Fig. 132,15.5.8-5Fig 132,. 132,15.5.8-6F 132,ig. 132,15.5.8-7Automatic repairing of interference error by adding gap vector.If 1262 ANGLAL= 0 and 1263GAP=0, the control tries to repairinterference error by neglectingcompensation vectors as discus-sed before in s...

  • Page 136

    103,15 The Tool Compensation136Fig. 132,15.5.8-8Fig 132,. 132,15.5.8-9Fig 132,. 132,15.5.8-10Milling a step smaller than the tool ra-dius along an arc. If parameter ANGLAL2is 0, the control will delete vector õP and13will interconnect vectors õP and õP by astraight line to avoid a cut-in....

  • Page 137

    103,15 The Tool Compensation13715.6 Three-dimensional Tool Offset (G41, G42)The 2D tool radius compensation will offset the tool in the plane selected by commands G17,G18, G19. The application of the three-dimensional tool compensation enables the tool compen-sation to be taken into account in t...

  • Page 138

    103,15 The Tool Compensation138Fig. 138,15.6.2-115.6.2 The Three-dimensional Offset VectorThe control will generate the components of compensation vectors in the following way:where r is the compensation value called at address D,P is the dominator constant,I, J, K are values specified in the p...

  • Page 139

    103,15 The Tool Compensation139It is not feasible to set up the three-dimensional compensation and two-dimensional radius com-pensation simultaneously.

  • Page 140

    140,16 Special Transformations140Fig. 140,16.1-1F 140,ig. 140,16.1-216 Special Transformations16.1 Coordinate System Rotation (G68, G69)A programmed shape can be rotated in the plane selected by G17, G18, G19 by the use ofcommandG68 p q RThe coordinates of the center of rotation will be specif...

  • Page 141

    140,16 Special Transformations141Fig. 140,16.1-3F 141,ig. 141,16.2-1Example:N1 G17 G90 G0 X0 Y0N2 G68 X90 Y60 R60N3 G1 X60 Y20 F150 (G91 X60 Y20 F150)N4 G91 X80N5 G3 Y60 R100N6 G1 X-80N7 Y-60N8 G69 G90 X0 Y016.2 Scaling (G50, G51)CommandG51 v Pcan be used for scaling a programmed shape.P1......

  • Page 142

    140,16 Special Transformations142Fig. 141,16.2-2For example:N1 G90 G0 X0 Y0N2 G51 X60 Y140 P0.5N3 G1 X30 Y100 F150 (G91 X30 Y100 F150)N4 G91 X100N5 G3 Y60 R100N6 G1 X-100N7 Y-60N8 G50 G90 X0 Y016.3 Programmable Mirror Image (G50.1, G51.1)A programmed shape can be projected as a mirror image a...

  • Page 143

    140,16 Special Transformations143Fig. 142,16.3-1Example:subprogramO0101N1 G90 G0 X180 Y120 F120N2 G1 X240N3 Y160N4 G3 X180 Y120 R80N5 M99main programO0100N1 G90(absolute coordinate specification)N2 M98 P101(call of subprogram)N3 G51.1 X140(mirror image applied to an axis parallel to axis Y onco...

  • Page 144

    140,16 Special Transformations144Fig. 143,16.4-1It is evident from the figure that the order of applying the various transformations is relevant.The programmed mirror image is a different case. It can be set up in states G50 and G69 only, i.e.,in the absence of scaling and rotation commands.On ...

  • Page 145

    145,17 Automatic Geometric Calculations145Fig. 145,17.1-1F 145,ig. 145,17.1-2F 145,ig. 145,17.1-317 Automatic Geometric Calculations17.1 Programming Chamfer and Corner RoundThe control is able to insert chamfer or rounding between two blocks containing linear (G01) orcircle interpolation (G02...

  • Page 146

    145,17 Automatic Geometric Calculations146Fig. 146,17.2-1L Note: – Chamfer or rounding can only be programmed between the coordinates of the selected plane(G17, G18, G19), otherwise error message 3081 DEFINITION ERROR ,C ,R is sent bythe control. – Chamfer or corner rounding can only be app...

  • Page 147

    145,17 Automatic Geometric Calculations147Fig. 146,17.2-2For example:G17 G90 G0 X57.735 Y0 ... G1 G91...X100 ,A30(this specification is equi-valent to X100 Y57.735 where7.735=100Atg30E)Y100 ,A120(this specification is equi-valent to X-57.735 Y100 where!57.735=100/tg120E)X-100 ,A210 (th i s s pe...

  • Page 148

    145,17 Automatic Geometric Calculations148Fig. 148,17.3.1-117.3 Intersection Calculations in the Selected PlaneIntersection calculations discussed here are only executed by the control when tool radius com-pensation (G41 or G42 offset mode) is on. If eventually no tool radius compensation is ne...

  • Page 149

    145,17 Automatic Geometric Calculations149Fig. 148,17.3.1-2F 148,ig. 148,17.3.1-3F 148,ig. 148,17.3.1-4For example:G17 G90 G41 D0...G0 X90 Y10N10 G1 ,A150N20 X10 Y20 ,A225G0 X0 Y20...Block N10 can also be given with the coordi-nates of a point of the straight line:G17 G90 G41 D0...G0 X90 Y10N...

  • Page 150

    145,17 Automatic Geometric Calculations150F 150,ig. 17.3.2-1F 150,ig. 150,17.3.2-217.3.2 Linear-circular IntersectionIf a circular block is given after a linear block in a way that the end and center position coordina-tes as well as the radius of the circle are specified, i.e., the circle is de...

  • Page 151

    145,17 Automatic Geometric Calculations151Fig. 150,17.3.2-3F 150,ig. 150,17.3.2-4Let us see the following example:%O9981N10 G17 G42 G0 X100 Y20 D0 S200 M3N20 G1 X-30 Y-20N30 G3 X20 Y40 I20 J-10 R50 Q-1N40 G40 G0 Y60N50 X120N60 M30%%O9982N10 G17 G42 G0 X100 Y20 D0 S200 M3N20 G1 X-30 Y-20N30 G3 ...

  • Page 152

    145,17 Automatic Geometric Calculations152F 152,ig. 17.3.3-1F 152,ig. 152,17.3.3-217.3.3 Circular-linear IntersectionIf a linear block is given after a circular block in a way that the straight line is defined over, i.e.,both its end point coordinate and the angle are specified, then the contr...

  • Page 153

    145,17 Automatic Geometric Calculations153Fig. 152,17.3.3-3F 152,ig. 152,17.3.3-4Let us see an example:%O9983N10 G17 G0 X90 Y0 M3 S200N20 G42 G1 X50 D0N30 G3 X-50 Y0 R50N40 G1 X-50 Y42.857 ,A171.87 Q-1N50 G40 G0 Y70 N60 X90N70 M30%%O9984N10 G17 G0 X90 Y0 M3 S200N20 G42 G1 X50 D0N30 G3 X-50 Y0 ...

  • Page 154

    145,17 Automatic Geometric Calculations154Fig. 154,17.3.4-1F 154,ig. 154,17.3.4-217.3.4 Circular-circular IntersectionIf two successive circular blocks are specified so that the end point, the center coordinates as wellas the radius of the second block are given, i.e., it is determined over th...

  • Page 155

    145,17 Automatic Geometric Calculations155Fig. 154,17.3.4-3F 154,ig. 154,17.3.4-4Let us see the following example:%O9985N10 G17 G54 G0 X200 Y10 M3 S200N20 G42 G1 X180 D1N30 G3 X130 Y-40 R-50N40 X90 Y87.446 I50 J30 R70 Q–1N50 G40 G0 Y100N60 X200N70 M30%%O9986N10 G17 G54 G0 X200 Y10 M3 S200N20...

  • Page 156

    145,17 Automatic Geometric Calculations156Fig. 156,17.3.5-117.3.5 Chaining of Intersection CalculationsIntersection calculation blocks can be chained, i.e., more successive blocks can be selected forintersection calculation. The control calculates intersection till straight lines or circles det...

  • Page 157

    157,18 Canned Cycles for Drilling157F 157,ig. 18-118 Canned Cycles for DrillingA drilling cycle may be broken up into the following operations.Operation 1: Positioning in the Selected PlaneOperation 2: Operation After PositioningOperation 3: Movement in Rapid Traverse to Point ROperation 4: ...

  • Page 158

    157,18 Canned Cycles for Drilling158F 157,ig. 18-2pwhere X is axis X or the one parallel to itpY is axis Y or the one parallel to itpZ is axis Z or the one parallel to it.Axes U, V, W are regarded to be parallel ones when they are defined in parameters.The drilling cycles can be configured with...

  • Page 159

    157,18 Canned Cycles for Drilling159Fig. 157,18-3Initial point:The initial point is the position of axis selected for drilling; it will be recorded – when the cycle mode is set up. For example, in the case ofN1 G17 G90 G0 Z200N2 G81 X0 Y0 Z50 R150N3 X100 Y30 Z80the position of initial point w...

  • Page 160

    157,18 Canned Cycles for Drilling160Fig. 157,18-4rapid traverse.Data of drillingpppBottom position of the hole (point Z): X , Y , ZThe bottom position of the hole or point Z (in case of G17) has to be specified at the address ofthe drilling axis. The coordinate of the bottom point of the hole w...

  • Page 161

    157,18 Canned Cycles for Drilling161Fig. 157,18-5Dwell (P)Specifies the time of dwell at the bottom of the hole. Its specification is governed by the rules de-scribed at G04. The value of the dwell is a modal one deleted by G80 or by the codes of the inter-polation group.Feed (F)It will define ...

  • Page 162

    157,18 Canned Cycles for Drilling162Fig. 157,18-6N1 G90 G17 G16 G0 X200 Y–60 Z50 M3N2 G81 YI60 Z–40 R3 F50 L6Under the above instructions the control will drill6 holes spaced at 60 degrees around a circle of a200mm radius. The position of the first hole coin-cides with the point of X=200 Y=...

  • Page 163

    157,18 Canned Cycles for Drilling163Fig. 163,18.1.1-118.1 Detailed Description of Canned Cycles18.1.1 High Speed Peck Drilling Cycle (G73)The variables used in the cycle arepppG17 G73 X __ Y __ Z __ R__ Q__ E__ F__ L__pppG18 G73 Z __ X __ Y __ R__ Q__ E__ F__ L__pppG19 G73 Y __ Z __ X _...

  • Page 164

    157,18 Canned Cycles for Drilling164F 164,ig. 18.1.2-118.1.2 Counter Tapping Cycle (G74)This cycle can be used only with a spring tap. The variables used in the cycle arepppG17 G74 X __ Y __ Z __ R__ (P__) F__ L__pppG18 G74 Z __ X __ Y __ R__ (P__) F__ L__pppG19 G74 Y __ Z __ X __ R__ ...

  • Page 165

    157,18 Canned Cycles for Drilling165Fig. 165,18.1.3-118.1.3 Fine Boring Cycle (G76)Cycle G76 is only applicable when the facility of spindle orientation is incorporated in the machi-ne-tool. In this case parameter ORIENT1 is to be set to 1, otherwise message 3052 ERROR ING76 is returned.Since, ...

  • Page 166

    157,18 Canned Cycles for Drilling166F 166,ig. 18.1.5-118.1.4 Canned Cycle Cancel (G80)The code G80 will cancel the cycle state, the cycle variables will be deleted.Z and R will assume incremental 0 value (the rest of variables will assume 0).With coordinates programmed in block G80 but no other ...

  • Page 167

    157,18 Canned Cycles for Drilling167Fig. 167,18.1.6-118.1.6 Drilling, Counter Boring Cycle (G82)The variables used in the cycle arepppG17 G82 X __ Y __ Z __ R__ P__ F__ L__pppG18 G82 Z __ X __ Y __ R__ P__ F__ L__pppG19 G82 Y __ Z __ X __ R__ P__ F__ L__the operations of the cycle are1...

  • Page 168

    157,18 Canned Cycles for Drilling168Fig. 168,18.1.7-118.1.7 Peck Drilling Cycle (G83)The variables used in the cycle arepppG17 G83 X __ Y __ Z __ R__ Q__ E__ F__ L__pppG18 G83 Z __ X __ Y __ R__ Q__ E__ F__ L__pppG19 G83 Y __ Z __ X __ R__ Q__ E__ F__ L__The oprations of the cycle are1...

  • Page 169

    157,18 Canned Cycles for Drilling169Fig. 169,18.1.8-118.1.8 Tapping Cycle (G84)This cycle can be used only with a spring tap.The variables used in the cycle arepppG17 G84 X __ Y __ Z __ R__ (P__) F__ L__pppG18 G84 Z __ X __ Y __ R__ (P__) F__ L__pppG19 G84 Y __ Z __ X __ R__ (P__) F_...

  • Page 170

    157,18 Canned Cycles for Drilling17018.1.9 Rigid (Clockwise and Counter-clockwise) Tap Cycles (G84.2, G84.3)In a tapping cycle the quotient of the drill-axis feed and the spindle rpm must be equal to thethread pitch of the tap. In other words, under ideal conditions of tapping, the quotient mus...

  • Page 171

    157,18 Canned Cycles for Drilling171Fig. 170,18.1.9-1 – In state G94 (feed per minute), where P is the thread pitch in mm/rev or inches/rev,S is the spindle speed in rpmIn this case the displacement and the feed along the drilling axis and the spindle will beas follows (Z assumed to be the dr...

  • Page 172

    157,18 Canned Cycles for Drilling172F 170,ig. 18.1.9-26.-7.linear interpolation between the drilling axis and the spindle, with the spindle be-ing rotated counter-clockwise8.-9.with G98, rapid-traverse retraction to the initial point10.-In the case of G84.3, the operations of the cycle are1.rapi...

  • Page 173

    157,18 Canned Cycles for Drilling173Fig. 173,18.1.10-118.1.10 Boring Cycle (G85)The variables used in the cycle arepppG17 G85 X __ Y __ Z __ R__ F__ L__pppG18 G85 Z __ X __ Y __ R__ F__ L__pppG19 G85 Y __ Z __ X __ R__ F__ L__The operations of the cycle are1.rapid-traverse positioning ...

  • Page 174

    157,18 Canned Cycles for Drilling174F 174,ig. 18.1.11-118.1.11 Boring Cycle Tool Retraction with Rapid Traverse (G86)The variables used in the cycle arepppG17 G86 X __ Y __ Z __ R__ F__ L__pppG18 G86 Z __ X __ Y __ R__ F__ L__pppG19 G86 Y __ Z __ X __ R__ F__ L__The spindle has to be gi...

  • Page 175

    157,18 Canned Cycles for Drilling175Fig. 175,18.1.12-118.1.12 Boring Cycle/Back Boring Cycle (G87)The cycle will be performed in two different ways.A. Boring Cycle, Manual Operation at Bottom PointUnless the machine is provided with the facility of spindle orientation (parameter ORIENT1=0),the ...

  • Page 176

    157,18 Canned Cycles for Drilling176F 175,ig. 18.1.12-2B. Back Boring CycleIf the machine is provided with the facility of spindle orientation (parameter ORIENT1=1), thecontrol will act in conformity with case "B".The variables of cycle arepppG17 G87 X __ Y __ I__ J__ Z __ R__ F__ ...

  • Page 177

    157,18 Canned Cycles for Drilling177Fig. 177,18.1.13-118.1.13 Boring Cycle (Manual Operation on the Bottom Point) (G88)The variables used in the cycle arepppG17 G88 X __ Y __ Z __ R__ P__ F__ L__pppG18 G88 Z __ X __ Y __ R__ P__ F__ L__pppG19 G88 Y __ Z __ X __ R__ P__ F__ L__The spind...

  • Page 178

    157,18 Canned Cycles for Drilling178F 178,ig. 18.1.14-118.1.14 Boring Cycle (Dwell on the Bottom Point, Retraction with Feed) (G89)The variables used in the cycle arepppG17 G89 X __ Y __ Z __ R__ P__ F__ L__pppG18 G89 Z __ X __ Y __ R__ P__ F__ L__pppG19 G89 Y __ Z __ X __ R__ P__ F__ L...

  • Page 179

    157,18 Canned Cycles for Drilling17918.2 Notes to the Use of Canned Cycles for Drilling – The drilling cycle will be executed in cycle mode provided a block without code G containsone of the addressespppX , Y , Z , or ROtherwise, the drilling cycle will not be executed. – With dwell G04 P pr...

  • Page 180

    180,19 Chopping Function (G81.1, G81)180Fig. 180,19-119 Chopping Function (G81.1, G80)This function serves for programming chopping movement of the axis of grinding wheel duringcontour grinding. Chopping happens perpendicular to the plane of contour grinding. E.g.: Ifgrinding is done in XY plan...

  • Page 181

    180,19 Chopping Function (G81.1, G81)181Feedrate of ChoppingFeedrate override switch has no effect to the feedrate of chopping. A separate override switch canbe applied to chopping, that is supplied by machine tool builder and operation of it is publishedin the manual of machine tool. The feedra...

  • Page 182

    180,19 Chopping Function (G81.1, G81)182Fig. 180,19-2ExampleG90 G81.1 Z-10 R12 Q-12 F1000Movement begins with position-ing with rapid traverse to pointZ=2 (R point). Then it moveswith feedrate F1000 to the lowerdead point Z=-22, then to upperdead point Z=-10. Then choppingis done between the tw...

  • Page 183

    183,20 M easurement Functions183Fig. 183,20.1-120 Measurement Functions20.1 Skip Function (G31)InstructionG31 v (F) (P)starts linear interpolation to the point of v coordinate. The motion is carried on until an externalskip signal (e.g. that of a touch-probe) arrives or the control reaches the ...

  • Page 184

    183,20 M easurement Functions184Fig. 183,20.1-2Fig 183,. 183,20.1-3Fig 184,. 184,20.2-1returned if state G95, G51, G51.1, G68 or G16 is in effect.The value specified at coordinates v may be an incremental or an absolute one. If the next move-ment command following G31 block is specified in in...

  • Page 185

    183,20 M easurement Functions185The appropriate H value and the length compensation have to be set up prior to commencementof the measurement. – G37 is a single-shot instruction. – Cycle G37 will be executed invariably in the coordinate system of the current workpiece. – Parameters RAPDIST...

  • Page 186

    186,21 Safety Functions186Fig. 186,21.1-121 Safety Functions21.1 Programmable Stroke Check (G22, G23)InstructionG22 X Y Z I J K Pwill forbid to enter the area selected by the command. Meaning of addresses:X:limit along axis X in positive directionI:limit along axis X in negative directionY:limi...

  • Page 187

    186,21 186, Safety Functions187Fig. 187,21.2-1of the tool at the limit. If, however, the compensation is not set up, the reference point of the toolholder will not be allowed into the prohibited area. It is advisable to set the border of the forbid-den area at the axis of the tool for the longe...

  • Page 188

    186,21 Safety Functions188Fig. 188,21.3-1F 188,ig. 188,21.3-221.3 Stroke Check Before Movement The control differentiates two forbidden areas. The first is the parametric overtravel area whichdelimits the physically possible movement range of the machine. The extreme positions of thatrange are...

  • Page 189

    189,22 Custom M acro18922 Custom Macro22.1 The Simple Macro Call (G65)As a result of instructionG65 P(program number) L(number of repetitions) <argument assignment>the custom macro body (program) specified at address P (program number) will be called as manytimes as is the number specified...

  • Page 190

    189,22 Custom M acro190In the above example, variable #8 has already been assigned a value by the second address J(value, -12), since the value of address E is also assigned to variable #8, the control returns errormessage 3064 BAD MACRO STATEMENT.A decimal point and a sign can also be transferr...

  • Page 191

    189,22 Custom M acro19122.2.2 Macro Modal Call From Each Block (G66.1)As a result of commandG66.1 P(program number) L(number of repetitions) <argument assignment>all subsequent blocks will be interpreted as argument assignment, and the macro of the numberspecified at address P will be call...

  • Page 192

    189,22 Custom M acro192Each NC block following G66.1 to a block containing code G67 will produce a macro call withthe rules of argument assignment described under point 2. No macro will be called if an emptyblock is found (e.g., N1240) where a reference is made to a single N address, or from a b...

  • Page 193

    189,22 Custom M acro193The particular program number to be called by the calling M code has to be selected by parame-ters.M(9020)=code M calling program O9020M(9021)=code M calling program O9021 :M(9029)=code M calling program O9029Code M can specify invariably a type G65 call (i.e., a non-mo...

  • Page 194

    189,22 Custom M acro19422.6 Subprogram Call with T CodeWith parameter T(9034)=1 set, the value of T written in the program will not be transferred tothe PLC, instead, the T code will initiate the call of subprogram No. O9034.Now blockGg Xx Yy Ttwill be equivalent to the following two blocks:#199...

  • Page 195

    189,22 Custom M acro195If a call of a user G, M, S, T code is made in the subprogram, FGMAC=0, not enabled (executed as ordinary codes M, S, ... G) FGMAC=1, enabled, i.e. a new call is generated.22.9 Differences Between the Call of a Subprogram and the Call of a Macro – A macro call may includ...

  • Page 196

    189,22 Custom M acro196Including only the interpolations, the sequence of executions will beOf the numbers in brackets, the first and the second ones are the numbers of the programs andblock being executed, respectively.Instruction G67 specified in block N14 will cancel the macro called in block...

  • Page 197

    189,22 Custom M acro19722.10 Format of Custom Macro BodyThe program format of a user macro is identical with that of a subprogram:O(program number):commands:M99The program number is irrelevant, but the program numbers between O9000 and O9034 are re-versed for special calls.22.11 Variables of the...

  • Page 198

    189,22 Custom M acro198 – If the variable is used behind an address, its value may not exceed the range of values permis-sible for the particular address. If, e.g., #112=5630, reference M#112 will produce an er-ror message. – If the variable is used behind an address, its value will be round...

  • Page 199

    189,22 Custom M acro199Difference between a vacant variable and a 0 - value one in a conditional expression will be if #1=<vacant> if #1=0 #1 EQ #0 #1 EQ #0 * * fulfilled not fulfilled ...

  • Page 200

    189,22 Custom M acro20022.12.3 System VariablesThe system variables are fixed ones providing information about the states of the system.Interface input signals - #1000–#1015, #103216 interface input signals can be determined, one by one, by reading the system variables #1000through #1015. Nam...

  • Page 201

    189,22 Custom M acro201Interface output signals - #1100–#1115, #113216 interface output signals can be issued, one by one, by assigning values to variables #1100through #1115. Name of system variables Interface input with reference to the PLC pr...

  • Page 202

    189,22 Custom M acro202Work zero-point offsets - #5201 through #5328The work zero-point offsets can be read at variables #5201 through #5328, or values can be assig-ned them.No. of value of variablevariableworkpiececoordinatesystem#5201common work zero point offset, axis 1common forall ...

  • Page 203

    189,22 Custom M acro203permissible.Alarm - #3000By defining#3000=nnn(ALARM),a numerical error message (nnn=max. three decimal digits) and the text of error message can beprovided. The text must be put in (,) brackets. A message may not be longer than 25 characters.If the macro contains an error,...

  • Page 204

    189,22 Custom M acro204Suppression of stop button, feed override, exact stop - #3004Under the conditions of suppression of feed stop function, the feed will stop after the stop buttonis pressed when the suppression is released.When the feedrate override is suppressed, the override takes the valu...

  • Page 205

    189,22 Custom M acro205number.Number of machined parts, number of parts to be machined - #3901, #3902The numbers of machined parts are collected in counter #3901 by the control. The contents of thecounter will be incremented by 1 upon the execution of each function M02, M30 or selected Mfunction...

  • Page 206

    189,22 Custom M acro206Instantaneous positions in the coordinate system of the machine system nature of position information entry during variable motion #5021 instantaneous coordinate of axis 1 (G53) #5022 instant...

  • Page 207

    189,22 Custom M acro207Fig. 200,22.12.3-1F 200,ig. 200,22.12.3-2Tool-length compensation system nature of position information entry during variable motion #5081 length compensation on axis 1 #5082 length compensa...

  • Page 208

    189,22 Custom M acro208Servo lag system nature of position information entry during variable motion #5101 servo lag in axis 1 #5102 servo lag in axis 2 : not poss...

  • Page 209

    189,22 Custom M acro209Additive arithmetic operationsAddition: #i = #j + #kThe code of the operation is +.As a result of the operation, variable #i will assume the sum of the values of variables #jand #k.Subtraction: #i = #j – #kThe code of the operation is –.As a result of the operation, va...

  • Page 210

    189,22 Custom M acro210FunctionsSquare root: #i = SQRT #jThe code of operation is SQRT.As a result of operation, variable #i will assume the square root of variable #j. The valueof #j may not be a negative number.Sine: #i = SIN #jThe code of operation is SIN.As a result of operation, variable #i...

  • Page 211

    189,22 Custom M acro211Absolute value: #i = ABS #jThe code of the function is ABS.As a result of operation, variable #i will assume the absolute value of variable #j.Conversion from binary into binary-coded decimal: #i = BCD #jThe code of the function is BCD.As a result of operation, variable #i...

  • Page 212

    189,22 Custom M acro212The numbers refer to the sequence of executing the operations. Clearly, the above-mentioned ruleof precedence is applicable to the sequence of executing the operations at a given level ofbrackets.22.13.3 Logical OperationsThe programming language uses the following logical...

  • Page 213

    189,22 Custom M acro21322.13.7 Iteration: WHILE[<conditional expression>] Dom ... ENDmAs long as [<conditional expression>] is satisfied, the blocks following DOm up to block ENDmwill be repeatedly executed. In the instruction, the control will check wether the condition hasbeen fulf...

  • Page 214

    189,22 Custom M acro214 – Pairs DOm ... ENDm can be nested into one another at three levels. : DO1 : DO2 : DO3 : : correct : END3 : END2 : END1 : – Pairs DOm ... ENDm may not be overlapped. : DO1 : DO2 : : ...

  • Page 215

    189,22 Custom M acro215 – No entry is permissible into a cycle from outside. : GOTO150 : DO1 : : false : N150 : END1 : or : DO1 : N150 : : false : END1 : GOTO150 : – A subprogram or a macro can...

  • Page 216

    189,22 Custom M acro216Opening a peripheral - POPENnBefore issuing a data output command, the appropriate peripheral has to be opened, throughwhich the data output is to be performed. The appropriate peripheral is selected by number n.n = 1RS–232C interface of serial channeln = 31 memory of c...

  • Page 217

    189,22 Custom M acro217 Characters to be output areDecimal data output - DPRNT[...]All characters and digits will be output in ISO or ASCII code, depending on the parameter setting. – For the rules of character outputs, see instruction BPRNT. – For the output of variable values, the number...

  • Page 218

    189,22 Custom M acro218Example: Output of data with PRNT=0: 7 6 5 4 3 2 1 0 1 1 0 1 1 0 0 0 --- X 1 0 1 0 0 0 0 0 --- Space 1 0 1 0 0 0 0 0 --- Space 1 0 1 0 0 0 0 0 --- Space 1 0 1 0 0 0 0 0 --- Space 0 0 1 1 0 0 1 1 --- 3 0 0 1 1 0 1 0 1 --- 5 0 0 1 0 1 1 1 0 --- D...

  • Page 219

    189,22 Custom M acro219 Data output at PRNT=1:Closing a peripheral - PCLOSnThe peripheral opened with command POPEN has to be closed with command PCLOS. Com-mand PCLOS has to be followed by the specification of the number of peripheral to be closed.At the time of closing, a % character is also...

  • Page 220

    189,22 Custom M acro220F 220,ig. 22.15-1F 220,ig. 220,22.15-2 – a block containing a conditional divergence or iteration instruction (IF, WHILE) – blocks containing control commands (GOTO, DO, END) – blocks containing macro calls (G65, G66, G66.1, G67, or codes G, or M that initiate macro...

  • Page 221

    189,22 Custom M acro22122.16 Displaying Macros and Subprograms in Automatic ModeThe blocks of macros and subprograms will be displayed by the control in automatic mode. If pa-rameter MD8 is set to 0, the blocks of subprograms and macros numbered 8000 to 8999 will notbe listed when they are execu...

  • Page 222

    189,22 Custom M acro222Fig. 222,22.18-122.18 Pocket-milling Macro CycleInstructionG65 P9999 X Y Z I J K R F D E Q M S Twill start a pocket-milling cycle. For the execution of the cycle, macro of program number O9999has to be filled in the memory, from the PROM memory of the control.Prior to cal...

  • Page 223

    189,22 Custom M acro223Fig. 222,22.18-2Two types of information can be specified at address E. The value of E defines the width of cut-ting in percent of milling diameter. Unless it is specified, the control will automatically assume+83%. The control can modify the data specified at address E, ...

  • Page 224

    189,22 Custom M acro224Fig. 222,22.18-3F 222,ig. 222,22.18-4Unless the width of pocket and the rounding radii of corners have been specified, the tool diame-ter applied will be taken for the width of pocket (groove).If neither the length nor the width of pocket has been specified, only address...

  • Page 225

    189,22 Custom M acro225 – The value specified for the width of cutting is 0 or the tool radius called is 0 – The value of depth of cut is 0, i.e. 0 has been programmed at address Q.

  • Page 226

    Notes226Notes

  • Page 227

    Index in Alphabetical Order227Index in Alphabetical Order:#0. ............................ 198,198#10001–#13999. ................. 201,201#1000–#1015. ................... 200,200#1032. ......................... 200,200#1100–#1115. ................... 201,201#1132. ........................

  • Page 228

    Index in Alphabetical Order228Exact Stop. .................. 51,51, 204, 204Feed. ....................... 12,12, 204, 204,204Feed Reduction. .................. 53,53FINADIFF. ................... 63,63, 72,72FINADIFFn. ..................... 72,72Format. ......................... 10,10full ...

  • Page 229

    Index in Alphabetical Order229CORNCONTROL. ............... 67,67CORNOVER. ................... 52,52CRITFDIF. ..................... 68,68CRITFDIFn. ................. 55,55, 68,68CRITICAN. ................. 54,54, 68,68CUTTING2. ................... 203,203DECDIST. ..................... 52,...

  • Page 230

    Index in Alphabetical Order230ROUNORMACC. ............ 64,64, 75, 75ROUNORMACCn. .............. 75,75ROUTANACC. .............. 61,61, 75, 75ROUTANACCn. ................ 75,75S(9033). ...................... 194,194SECOND. ..................... 77,77SELECT. ................... 59,59, 69,69S...

  • Page 231

    Index in Alphabetical Order231

x