Navigation

  • Page 1

    Book 4 – Programming Guide A2100Di ControlCincinnati Machine U.K. Limited,PO. Box 505 Kingsbury Road, Birmingham B24 0QU UK.Cincinnati Machine, CINCINNATI and FTV are the trademarks of Cincinnati Machine,a division of UNOVA Industrial Automation Systems, Inc.Publication...

  • Page 2

    A2100Di Programming ManualPrelimsPublication 91204426A001 ii October 2002Intentionally blank

  • Page 3

    A2100Di Programming ManualPrelimsPublication 91204426A001 iii October 2002FTV Series 600 and 800 Machining CentresBook 4Programming GuideContentsPageContents page (this page)iiiGeneralvManual Content and UsevPatents and Copyright NoticeviService and SparesviCincinnati Machine World Representatio...

  • Page 4

    A2100Di Programming ManualPrelimsPublication 91204426A001 iv October 2002Cincinnati Machine UK Ltd has a policy of continuous product improvement. They reserve the rightto apply design changes at any time, without notice and without any obligations to equipmentpreviously sold.No part of...

  • Page 5

    A2100Di Programming ManualPrelimsPublication 91204426A001 v October 20021GeneralThis Manual is intended as a guide to the correct installation and preparation for use ofyour Cincinnati V-CNC Machining Centre. Every care is taken in the design, developmentand manufacture of the machine to ensure ...

  • Page 6

    A2100Di Programming ManualPrelimsPublication 91204426A001 vi October 2002The Manual Suite comprises the following four guides covering all aspects of theequipment from installation, commissioning and basic operating procedures to the correctmaintenance and repair of the installed machin...

  • Page 7

    A2100Di Programming ManualPrelimsPublication 91204426A001 vii October 20025Cincinnati Machine World RepresentationUnited States of America:Cincinnati Machine Marketing Company,Cincinnati,Ohio, 45209-9988,USA.Tel (Main): (513) 841-8100Tel (Service): (513) 841-3000Fax (Service): (513) 841...

  • Page 8

    A2100Di Programming ManualPrelimsPublication 91204426A001 viii October 20027SafetyBooks 1 and 2 contain a Chapter concerning Health and Safety. In addition, supplementarycomments may be inserted in the text to emphasise specific safety points, as follows:WARNINGInformation to prevent ca...

  • Page 9

    A2100Di Programming Manual1Chapter 1Publication 91204451- 001May 2002Chapter 1NUMERIC CONTROL PROGRAM FORMATContents1NC Program Format...................................................................... 3 11,1.1 11,Introduction......................................................................

  • Page 10

    A2100Di Programming Manual2Chapter 1Publication 91204451- 001May 2002Intentionally blank

  • Page 11

    A2100Di Programming Manual3Chapter 1Publication 91204451- 001May 20021 NC Program Format1.1 IntroductionA numeric control (NC) part program is a series of numeric command instructions whichthe machine control interprets for machining the workpiece. During automatic cycle, NCprogram commands con...

  • Page 12

    A2100Di Programming Manual4Chapter 1Publication 91204451- 001May 2002White space characters (space, tab, carriage return) may be included in an NC programbetween words in a block, and between elements of expressions. White spacecharacters are not permitted within numbers or symbols. White space...

  • Page 13

    A2100Di Programming Manual5Chapter 1Publication 91204451- 001May 20021.7 NC Program Block FormatsMachine control supports variable block format in accordance with EIA-274D. Both TypeI (NC program blocks) and Type II (parenthetic blocks) are supported, and both Type Iand Type II blocks are termi...

  • Page 14

    A2100Di Programming Manual6Chapter 1Publication 91204451- 001May 2002micron) results from a commanded move or an accumulation of smaller motions.Machine motion cannot occur until the commanded motion exceeds one feedback bit, thevalue of which depends on the mechanical configuration of each axis...

  • Page 15

    A2100Di Programming Manual7Chapter 1Publication 91204451- 001May 2002program to be selected to run in the same manner as a NC program stored within thecontrol.Program DirectoryDescriptionProgram Name32 character alphanumeric name.Program Identifier5 digit program ID.Program TypeSpecifies the typ...

  • Page 16

    A2100Di Programming Manual8Chapter 1Publication 91204451- 001May 20021.16 Program Search and PositioningProgram search and positioning can be used to change position in the program up to theend of the current program segment. If the user attempts to search or position beyondthe end of the curre...

  • Page 17

    A2100Di Programming ManualChapter 2Publication 91204426-0011May 2002Chapter 2NUMERIC CONTROL PROGRAM ELEMENTSContents1Introduction ..........................................................................................3 19,2 19,PGM 19, (Program 19, Identification 19, Block).......................

  • Page 18

    A2100Di Programming ManualChapter 2Publication 91204426-0012May 2002Intentionally blank

  • Page 19

    A2100Di Programming ManualChapter 2Publication 91204426-0013May 20021 IntroductionThis Chapter describes the elements of a program block and NC features controlled bythe various codes.N0010 (PGM, NAME="TEST")[OPERATION 1]}N0020G0 X5 Y2 Z3N0030 [#TEST_TYPE]=0N0040(IF [#TEST3]=5 THEN)N005...

  • Page 20

    A2100Di Programming ManualChapter 2Publication 91204426-0014May 2002G * NAME=“<program name>” - or N = “<program name>” - <program name> is astring of from one to 32 alphabetic or numeric characters. The string is permitted tocontain blanks, and can contain either upper...

  • Page 21

    A2100Di Programming ManualChapter 2Publication 91204426-0015May 2002on the current password level. The permitted operations are configurable. The validvalues for <access> are OPEN, EXPERIMENTAL, LIMITED_REL, PRODUCTIONand DO_NOT_RUN.Briefly, the usual settings are as follow:An OPEN progra...

  • Page 22

    A2100Di Programming ManualChapter 2Publication 91204426-0016May 2002The sequence number is an unsigned, one through eleven-digit number as follows:N6:6Sequence Numbers with a colon (:) designate Alignment Blocks, which are blocks thatare planned program restart points. An alignment block should ...

  • Page 23

    A2100Di Programming ManualChapter 2Publication 91204426-0017May 20026 Type I Block Word FormatsEach Type I Block word is a specific command or piece of data, and the PreparatoryCodes (G Codes) supported by the control are shown in Chapter 5.Each NC program block can contain:G One Block Label.G On...

  • Page 24

    A2100Di Programming ManualChapter 2Publication 91204426-0018May 2002NotesG Only G and M words may appear more than once within a block. Conflicting G andM codes, however, are not allowed in the same block.G Partial Block delete code (// followed by single digit, when on, will skip blockinformati...

  • Page 25

    A2100Di Programming ManualChapter 2Publication 91204426-0019May 200211 Assignment StatementsAssignment statements are a means of setting a variable identifier to a certain value.The format of an assignment statement is:[/n] [label] [Nxxx] [variable_identifier] = [nnnnn] or [variable_identifier]wh...

  • Page 26

    A2100Di Programming ManualChapter 2Publication 91204426-00110May 2002Intentionally blank

  • Page 27

    A2100Di Programming ManualChapter 3Publication 91204451- 0011May 2002Chapter 3PREPARATORY FUNCTION CODES (G CODES)Contents1Overview............................................................................................... 5 31,2 31,Interpolation.................................................

  • Page 28

    A2100Di Programming ManualChapter 3Publication 91204451- 0012May 20027.4G15.2 Part Contour Programming..................................................... 36 62,7.5 62,G13.1 62, Cylindrical 62, Interpolatio 62,n 62, Off (Option) 62,..................................... 62,38 64,7.6 64,G7.1 64,...

  • Page 29

    A2100Di Programming ManualChapter 3Publication 91204451- 0013May 200213.3G44 Apply Tool Length Deviation and Tool Offset .......................... 69 95,13.3.1 95,G44.1 95, Apply 95, Total Tool 95, Length 95,......................................................... 95,69

  • Page 30

    A2100Di Programming ManualChapter 3Publication 91204451- 0014May 2002Intentionally blank

  • Page 31

    A2100Di Programming ManualChapter 3Publication 91204451- 0015May 20021 OverviewPreparatory function codes are used to command some action or to select a mode ofoperation, and are programmed using the G word. The G word consists of a wholenumber of up to three digits and may in some cases contai...

  • Page 32

    A2100Di Programming ManualChapter 3Publication 91204451- 0016May 2002G Feedrate commands (F words) programmed in the G0 block are retained by thecontrol, but do not become effective until the next interpolation preparatory functionrequiring a feed rate is acted upon.G At least one zero of the G0...

  • Page 33

    A2100Di Programming ManualChapter 3Publication 91204451- 0017May 20022.3 Chamfer Blending (,C Word)This control provides a means for generating a chamfer blend between any twosuccessive linear (G1) and circular (G2 or G3) programmed motions, as shown in Fig2.3. A chamfer blend is specified by p...

  • Page 34

    A2100Di Programming ManualChapter 3Publication 91204451- 0018May 2002G (SHI,G (SLO,2.4 Radius and Fillet Blending (,R Word or R Word)The control provides a means for generating a circular arc blend between any twosuccessive linear (G1) and circular (G2 or G3) programmed motions. The blend occur...

  • Page 35

    A2100Di Programming ManualChapter 3Publication 91204451- 0019May 2002G N860 X3G N870 M2Figure 2.4 Automatic Blend Radii and Filefillet Insertion2.5 Circular (G2, G3)A Circular Interpolation G2/G3 block moves the machine from its current position to thecommanded position along a circular arc, as...

  • Page 36

    A2100Di Programming ManualChapter 3Publication 91204451- 00110May 2002Circular interpolation may be programmed in two ways:G Programming G2 or G3 preparatory functions together with I, J, K, words to definethe centre point of the arc.G Programming G2 or G3 preparatory functions, together with a ...

  • Page 37

    A2100Di Programming ManualChapter 3Publication 91204451- 00111May 2002Centre PointThe centre point (X or U, Y or V, or Z or W co-ordinate) is the centre of the circular arc,as shown in Fig. 2.6:G I word describes X or U co-ordinate value.G J word describes Y or V co-ordinate value.G K word descr...

  • Page 38

    A2100Di Programming ManualChapter 3Publication 91204451- 00112May 2002Figure 2.7 Arc G2 and G3END POINT BP WORD LESS THAN OR = TO 180 DEGREESTART POINT ATWO POSSIBLE ARCSBETWEEN POINTS A & BIN CCW DIRECTIONP WORD GREATERTHAN 180 DEGREEFigure 2.8 Arc G2 and G3Unless the length of the arc fr...

  • Page 39

    A2100Di Programming ManualChapter 3Publication 91204451- 00113May 2002If the radius of the arc, or the location of the endpoint of the arc is the most criticaldimension, the P word method is preferable.G Arcs up to 360 degrees can be programmed in a single block when the centre pointmethod is us...

  • Page 40

    A2100Di Programming ManualChapter 3Publication 91204451- 00114May 2002Direction Of the HelixThis is defined as clockwise or counterclockwise in the selected circular interpolationplane (in normal circular programming).Centre Point of the ArcThis is programmed using I, J, K or P words (as in norm...

  • Page 41

    A2100Di Programming ManualChapter 3Publication 91204451- 00115May 20022.7 Helical Example (CAM)XYOX=15"1.5R=2A=32.5Y=10"SET TOP OF PART=11"HELIX .5" DEEP AT END POINTTOOLING = 1" DIA. END MILLCAMFigure 2.9 Helical Example (Cam)Start point of helix -- X, Y, ZCentre of ci...

  • Page 42

    A2100Di Programming ManualChapter 3Publication 91204451- 00116May 2002AlternatesG The alternate N00050 uses the controls mathematical facility to calculate values forthe endpoint and lead (X, Y, K).N00050 G3 G17 X15+(2*COS(32.5))Y10+(2*SIN(32.5)) Z10.5F50 K360/212.5*(11-10.5) I15 J10G The altern...

  • Page 43

    A2100Di Programming ManualChapter 3Publication 91204451- 00117May 2002K+Z+Y+XZ MovedistanceFigure 2.10 Helical Example: 5 RevolutionsNC Part Program::00010 G0 X18 Y16 Z18 M6 T1N00030 X17 Y10 Z11.2 S1500 M3N00040 G1 F10 Z11N00045 (MSG, CUT HELIX-- 5 REVOLUTIONS DESCEND 6.7 INCH)N00050 G3 G17 X17...

  • Page 44

    A2100Di Programming ManualChapter 3Publication 91204451- 00118May 2002corner, or to ensure that a tool has cleared the workpiece before moving to anotheroperation in drilling or boring operations.The control supports both positioning and contouring modes of operation, and alsoprovides a nonmodal...

  • Page 45

    A2100Di Programming ManualChapter 3Publication 91204451- 00119May 2002Program ConsiderationsProgrammed codes G60 and G61 remain active until replaced by the opposing code andonly one of these codes can be programmed in a block. The positioning/contouringmode is reset to a configured selection a...

  • Page 46

    A2100Di Programming ManualChapter 3Publication 91204451- 00120May 2002During the exit span the feedrate is increased from the corner feedrate to the exitcorner feedrate (R * Programmed feedrate) proportionally over the entire exit span.When the exit span end is reached, programmed feedrate is re...

  • Page 47

    A2100Di Programming ManualChapter 3Publication 91204451- 00121May 2002The I, J, and K words specify the co-ordinates from which the scaled dimensions arecomputed, and the P word specifies the scale factor. If the I, J, and K words are notprogrammed, the current program position is used as the s...

  • Page 48

    A2100Di Programming ManualChapter 3Publication 91204451- 00122May 2002Reference Point CalculationDuring normal programming the scaling factor, and X, Y, Z co-ordinates of the scaledworkpiece that is to be machined are known. What is not known are the I, J, and Kscaling reference points, the fol...

  • Page 49

    A2100Di Programming ManualChapter 3Publication 91204451- 00123May 2002ORIGINAL PROGRAMMEDPOINTSCALEDPROGRAMMEDPOINTHALF SCALE REFERENCE I = 2 inches J = 1.5 inches P = .5SCALEDRECTANGLEORGINALRECTANGLE(X0, Y3)(X4, Y3)(X3, Y2.25)(X1, Y2.25)SCALINGREFERENCEPOINT(I2, J1.5)(X1, Y.75)(X3, Y.75)CUTTI...

  • Page 50

    A2100Di Programming ManualChapter 3Publication 91204451- 00124May 2002N0080 G150N0090 X-.5 Y0N0100 M2(X2.5, Y2.0)SCALEDPROGRAMMEDPOINTORIGINALPROGRAMMEDPOINTFigure 4.4 Scaling Example 24.3.3 Example 3The sample program and Fig.4.5 show how scaling is used to modify a circular partfeature. In ...

  • Page 51

    A2100Di Programming ManualChapter 3Publication 91204451- 00125May 2002HALF SCALED REFERENCE I = 100mm J = 100mm P = .5SCALINGREFERENCEPOINTS(I 100, J100)SCALEDPROGRAMMEDSTART ANDEND POINTOF CIRCLE(X50, Y100)ORIGINALCIRCLESCALEDCIRCLESCALED AND ORIGINALPROGRAMMEDPOINT(X100, Y100)ORIGINALPROGRAMME...

  • Page 52

    A2100Di Programming ManualChapter 3Publication 91204451- 00126May 2002DOUBLE SCALED REFERENCE I = 200mm J = 200mm P = 2SCALINGREFERENCEPOINTS(I 200, J200)ORIGINALCIRCLESCALEDCIRCLESCALEDPROGRAMMEDPOINTS(X0, Y0)ORIGINALPROGRAMMEDPOINTS(X100, Y100)SCALEDPROGRAMMEDSTART ANDEND POINTOF CIRCLE(X-200,...

  • Page 53

    A2100Di Programming ManualChapter 3Publication 91204451- 00127May 2002Examples:N011 G4 S5 - Dwell for 5 spindle revolutions.N013 G4 F1.5 - Dwell for 1.5 seconds.N015 G4 - Dwell for .5 seconds.5.2 G8 Suppress InterpolationG8 allows the NC program to suppress the normal modal interpolation f...

  • Page 54

    A2100Di Programming ManualChapter 3Publication 91204451- 00128May 2002A contouring rotary axis is unwound by programming a G12 in a block with the axis wordfor the axis or axes to be unwound. The presence of the axis word specifies the axis,and the word value is ignored by the G12 operation.The...

  • Page 55

    A2100Di Programming ManualChapter 3Publication 91204451- 00129May 2002reference point as the unload position. The fourth reference point is also used as thepallet shuttle position for machines equipped with an automatic workchanger).Additional reference points are defined as needed for specific...

  • Page 56

    A2100Di Programming ManualChapter 3Publication 91204451- 00130May 20025.7 Automatic Return To Reference Point (G28)The automatic return to reference point (G28) provides the ability to move to the one ofthe predefined reference points, via a second NC program specified point, to providecontrol o...

  • Page 57

    A2100Di Programming ManualChapter 3Publication 91204451- 00131May 20026.1 Rectangular (Cartesian) Co-ordinatesThe location of any point lying in a plane may be stated by giving two co-ordinatedimensions which are measured along lines parallel to two reference axis lines. The axisreference lines ...

  • Page 58

    A2100Di Programming ManualChapter 3Publication 91204451- 00132May 2002When selecting which octant to program, keep the following in mind:G The control assumes a plus value if no sign is programmed for a co-ordinate word.G It is necessary to program the minus sign for every word of minus value.Fi...

  • Page 59

    A2100Di Programming ManualChapter 3Publication 91204451- 00133May 2002The right hand co-ordinate system establishes the direction the cutter moves withrespect to the workpiece. For consistency of reference, visualise the workpiece asstationary and the cutter in motion. When reference is made t...

  • Page 60

    A2100Di Programming ManualChapter 3Publication 91204451- 00134May 2002Figure 7.1 Using Plus and Minus ValuesOn parts similar to those shown in Fig. 7.1, which are symmetrical, it is only necessary tocalculate the dimensions of the positions in the first quadrant, then simply change thesigns of ...

  • Page 61

    A2100Di Programming ManualChapter 3Publication 91204451- 00135May 2002The inch or metric mode is set to the initialised state when a colon block is executed.The G70 or G71 code must be programmed when the required state is different.Linear dimensions are entered and displayed in inches when the ...

  • Page 62

    A2100Di Programming ManualChapter 3Publication 91204451- 00136May 2002The following example shows multiple moves using polar co-ordinates. This programdrills 5 holes equally spaced 72_ apart, around a circle of radius 0.8 inches with a centreat X4.5 Y-1.5:[OP1008]: 1008 G0 G61 G70 T1008 M6N0970...

  • Page 63

    A2100Di Programming ManualChapter 3Publication 91204451- 00137May 2002for programming a part contour where points may be specified as an angle, and either adistance along the angled surface, or an in-axis distance to travel.Note that, in part contour mode, the l word is not modal.The following p...

  • Page 64

    A2100Di Programming ManualChapter 3Publication 91204451- 00138May 20027.5 G13.1 Cylindrical Interpolation Off (Option)G13.1 is used to turn off cylindrical interpolation.When cylindrical interpolation is turned off (by programming G13.1) logical axes revert toX, Y, and Z linear motion. The posi...

  • Page 65

    A2100Di Programming ManualChapter 3Publication 91204451- 00139May 2002ZXAYRZ X VERTICAL MACHINEZYY Z HORIZONTAL MACHINEY RXBXFigure 7.8 Cylindrical Interpolation PartsParametersG The rotary axis word (A, or B) specifies the rotary axis of the cylinder.G The selection of the linear axis is restr...

  • Page 66

    A2100Di Programming ManualChapter 3Publication 91204451- 00140May 2002G The axis to be wrapped must be the non-spindle axis.G For example, specifying A in a G7.1 block selects the A axis as the rotary axis. Eitherthe Y or Z may be specified as the linear axis wrapped around the cylinder. For a...

  • Page 67

    A2100Di Programming ManualChapter 3Publication 91204451- 00141May 2002G The following are not permitted when cylindrical interpolation mode is active:Fixture Offsets (H word)Pallet Co-ordinates (G50)Set-up Position Set (G92.1)Pallet Position Set (G92.2)Cylindrical rotary axis commands i.e. G0 A,...

  • Page 68

    A2100Di Programming ManualChapter 3Publication 91204451- 00142May 200225.4mm (1.0")19.05mm(.75")38.1mm(1.5")19.05mm(.75")68.072mm(2.68")15.377mm(.605")131.572mm(5.18")R 6.35mm(.25)R 6.35mm(.25)N01N05N06N07N08N09AZXYRFigure 7.10 Cylinder Interpolation Example7....

  • Page 69

    A2100Di Programming ManualChapter 3Publication 91204451- 00143May 2002Figure 7.11 Absolute Input G90The reference point is a programmer designated position on the part. The dimensions ofthe reference point are also assigned by the programmer. The position and dimensionsselected are usually th...

  • Page 70

    A2100Di Programming ManualChapter 3Publication 91204451- 00144May 2002Had the reference point been assigned values of X10, Y10, a value of 10 inches wouldhave to be added to each dimension on the drawing.Example:Pos. 1X13Y13Pos. 2X15.75 Y16Pos. 3X18.5 Y13On some parts it may be easier to use bot...

  • Page 71

    A2100Di Programming ManualChapter 3Publication 91204451- 00145May 2002Figure 7.13 Incremental Input G91The information required to move from Pos. 1 to Pos. 2 is an X2 incremental dimension.The move from Pos. 2 to Pos. 3 requires a Y1 incremental dimension.Note the direction of the theoretical t...

  • Page 72

    A2100Di Programming ManualChapter 3Publication 91204451- 00146May 2002Note that these limits are ignored if they are higher or lower than the machinesconfigured limits. SHI F and S limits bound the amount of feedrate and spindle speedoverride that are permitted, in addition to limiting the maxi...

  • Page 73

    A2100Di Programming ManualChapter 3Publication 91204451- 00147May 2002They have the range values of type I block axis words, are affected by inch/metricprogramming, and are absolute values only. When an axis word is omitted with G1/G11,the corresponding limit is not changed.All of the default G...

  • Page 74

    A2100Di Programming ManualChapter 3Publication 91204451- 00148May 20028 Feedrate ProgrammingFeedrate Programming control (see Fig. 8.1) provides three feedrate modes, selectableby G code. The feedrate may be specified in feed (inches or millimetres) per minute(G94), in feed per tooth (G95), or ...

  • Page 75

    A2100Di Programming ManualChapter 3Publication 91204451- 00149May 2002programmed, or the feedrate mode is changed. In all motions, the control automaticallylimits the feedrate such that no axis exceeds its maximum allowable feedrate.8.2 G95 - Feed Per Tooth FeedrateIn this mode, the F word spec...

  • Page 76

    A2100Di Programming ManualChapter 3Publication 91204451- 00150May 2002In inverse time mode, each block requires an F word. The value of the F word iscomputed as:F = VSL x 60F = V inchmin x 1SL inch x 160minsec = 1SecWhere: V = velocity in inches/minuteSL = span length of distance travelledThe k...

  • Page 77

    A2100Di Programming ManualChapter 3Publication 91204451- 00151May 2002Where:BSL = B axis equivalent Span Length in mm or inches0.01745 = Constant to Convert Degrees to RadiansR = Radius of Cut in mm or inchesB1 = Rotation Angle in DegreesIn the following example, the numeric values are inserted ...

  • Page 78

    A2100Di Programming ManualChapter 3Publication 91204451- 00152May 2002Minutes or SecondsDegree EquivalentMinutesSeconds500.833330.01389400.666670.01111300.500000.00833200.333330.00556100.166670.0027890.150030.0025280.133360.0022470.116690.0019660.100020.0016850.083330.0013940.066670.0011130.0500...

  • Page 79

    A2100Di Programming ManualChapter 3Publication 91204451- 00153May 2002Example (Inch) (Fig. 8.2):Cutter diameter = 1 in. (25.4 mm)Workpiece hole size = 2 in. (50.8 mm)Required IPM at the part surface = 2 in/min. (50.8 mm/min)Feed Rate (ipm) = (2" - 1" ) x 2 in / min.2"= 1 in....

  • Page 80

    A2100Di Programming ManualChapter 3Publication 91204451- 00154May 2002changes such that no machine axis is required to accelerate or decelerate faster than itscapability allows.Whenever automatic acceleration/deceleration is off, velocity feed forward isautomatically disabled.Automatic accelerat...

  • Page 81

    A2100Di Programming ManualChapter 3Publication 91204451- 00155May 2002of acceleration (for digital servo systems) and velocity. A2100 currently provides threeprofiles (more may be added in the future):G G45 selects a general machining profileG G45.1 selects a profile for high speed contour rou...

  • Page 82

    A2100Di Programming ManualChapter 3Publication 91204451- 00156May 200210.1 Explanation of G45, G45.1, G45.2 CodesThe G45, G45.1, and G45.2 codes relate to the selection of a factory predetermined setof parameters that are expected, based on development and experience, to make themachine perform ...

  • Page 83

    A2100Di Programming ManualChapter 3Publication 91204451- 00157May 200210.4 User Specified (G45.01, G45.02, G45.03)These modes are provided to allow the machine tool builder or end user to createmachining modes with a path velocity profile other than those provided by A2100. Thereare configurati...

  • Page 84

    A2100Di Programming ManualChapter 3Publication 91204451- 00158May 2002For example, if [$PLUNGE_PCT]=10 and the programmed feedrate is 1500mm/min, thenegative Z axis feedrate component will not exceed 150mm/min. Note that the plungefeedrate limited is not active in either rapid (G0) moves or in ...

  • Page 85

    A2100Di Programming ManualChapter 3Publication 91204451- 00159May 2002If the actual tool differs from the tool assumed by the NC program in diameter or numberof teeth, the control automatically adjusts for the new tool with no program changes.To use G97.1 the tools nominal diameter in the Tool T...

  • Page 86

    A2100Di Programming ManualChapter 3Publication 91204451- 00160May 2002If the spiral is programmed using radius specification, the starting and ending radii arespecified using P and R words, respectively. The P and R word values must be positiveand must be programmed with a Q word.11.2 Spiral In...

  • Page 87

    A2100Di Programming ManualChapter 3Publication 91204451- 00161May 2002G The end radius of the spiral = 10”G The number of revolutions = 4G Radius is increasing, therefore the Q word must be positive.The change in radius per 360º (Q word) is defined as:Q = (End radius – Start radius) + Numbe...

  • Page 88

    A2100Di Programming ManualChapter 3Publication 91204451- 00162May 200211.3.2 Conical Interpolation (G2, G3)Conical Interpolation is a special combination of helical and spiral interpolation.Conical motion is commanded by programming a helix, see, Section2.6, and additionallyprogramming a Q or an...

  • Page 89

    A2100Di Programming ManualChapter 3Publication 91204451- 00163May 2002Figure 11.2 Multi-revolution Conical ExampleThe Part Program blocks for this example are:N080 G0 X-10 Y0 Z10.2N090 G1 Z10 F10N100 (MSG, CUT CONICAL)N110 G3 G17 X-2 Y0 10 J0 Q-2 Z2 K2 F50N115 (MSG, CONICAL COMPLETED)N120 G0 Z1...

  • Page 90

    A2100Di Programming ManualChapter 3Publication 91204451- 00164May 2002fitting mathematical functions through programmed end points. Fig.12.1 shows anexample of a spline fitted through a series of linear points.Figure 12.1 Spline Interpolation12.1 Spline ProgrammingThe G codes used to activate s...

  • Page 91

    A2100Di Programming ManualChapter 3Publication 91204451- 00165May 2002when modal states are reset. If programmed beyond a limit, the limit is used, and analert message is displayed to indicate that limiting has occurred.The default values and range for the I, J, and K spline optional parameters...

  • Page 92

    A2100Di Programming ManualChapter 3Publication 91204451- 00166May 2002The geometry of the spline curve is not influenced by the geometry of the block followingthe final block. Likewise, the first block of a series begins from a full stop (or nearly fullstop) and its geometry is not affected by ...

  • Page 93

    A2100Di Programming ManualChapter 3Publication 91204451- 00167May 2002G5.3) block. When the angle of direction change exceeds the threshold, each blockis interpolated as if it were linear.The blocks adjacent to the linear blocks are spline blocks that join the linear blocks insuch a way that th...

  • Page 94

    A2100Di Programming ManualChapter 3Publication 91204451- 00168May 200213 Tilt Spindle G Codes13.1 G52.1 Spindle Normal Co-ordinate SystemA tilt spindle machine has one or more rotary axes that define the position of the spindle.Parts cut on these machines often have drawings with features specif...

  • Page 95

    A2100Di Programming ManualChapter 3Publication 91204451- 00169May 200213.2 G44/G44.1 Multi-axis Tool Length CompensationWhen a tilt spindle is configured and the tilt spindle tool length compensation option ispresent, the G44 and G44.1 G codes determine how the multi-axis tool lengthcompensation...

  • Page 96

    A2100Di Programming ManualChapter 3Publication 91204451- 00170May 2002Intentionally blank

  • Page 97

    A2100Di Programming ManualChapter 4Publication 91204451- 0011May 2002Chapter 4OFFSETTING CO-ORDINATESContents1Introduction.......................................................................................... 3 99,1.1 99,Shifting 99, the 99, Coordinate 99, System................................

  • Page 98

    A2100Di Programming ManualChapter 4Publication 91204451- 0012May 2002Intentionally blank

  • Page 99

    A2100Di Programming ManualChapter 4Publication 91204451- 0013May 20021 IntroductionAn NC program expresses locations and dimensions in terms of co-ordinates, measuredfrom an origin. The NC program co-ordinate system, referred to as program co-ordinates, must be setup so that the program co-ordin...

  • Page 100

    A2100Di Programming ManualChapter 4Publication 91204451- 0014May 20022 Zero ShiftZero Shift is a manual operation performed during setup. Zero Shift enables the operatorto move the machine axes without affecting the program co-ordinate position. If the Xaxis was positioned to the program co-ordi...

  • Page 101

    A2100Di Programming ManualChapter 4Publication 91204451- 0015May 2002offset can be set by executing a block containing G92.2 X0 Y0 Z0. As pallet offsets haveonly X, Y, and Z co-ordinate values, only those axes are permitted in a G92.2 block.The Spindle Probe cycles have a provision to perform a ...

  • Page 102

    A2100Di Programming ManualChapter 4Publication 91204451- 0016May 20023 Part Program AlignmentThe programmer must have the ability to convey to the machine operator the relationbetween the part program co-ordinate system and the physical machine co-ordinatesystem.3.1 Using Position SetThe Positio...

  • Page 103

    A2100Di Programming ManualChapter 4Publication 91204451- 0017May 2002Figure 3.2 Position SetThe operator positions the workpiece at a convenient position on the table, thenpositions the tool tip to the datum (corner of part) using manual controls (power feed orhandwheel). When the tool tip is c...

  • Page 104

    A2100Di Programming ManualChapter 4Publication 91204451- 0018May 2002Position Set is not affected by:M2 - End of Program.M30 - End of Program (Put Tool Away).Data Reset.For G92.1, the shift changes the Setup Offset. It remains with the setup, until it isreplaced by the new setups offset whenever...

  • Page 105

    A2100Di Programming ManualChapter 4Publication 91204451- 0019May 2002ExampleG52 X0 Y0 would reset the local coordinate system in the previous example.The local coordinate system is also reset by Data Reset or End of Program.The local coordinate system is applied to the active setups part coordin...

  • Page 106

    A2100Di Programming ManualChapter 4Publication 91204451- 00110May 2002The programming task is simplified by programming the pocket once and copying theblock for the other three. The program might be structured as::100 (blocks to machine part outline)G52 X10 Y5 (blocks to machine pocket #1)(INV, ...

  • Page 107

    A2100Di Programming ManualChapter 4Publication 91204451- 00111May 2002Where:<label> is an optional label on the ROT block.Nxxxx is the optional sequence number for the ROT block.The G word determines the meaning of the axis words in the ROT block as follows:G0 or G absent defines the axis ...

  • Page 108

    A2100Di Programming ManualChapter 4Publication 91204451- 00112May 2002N1140 X97.5N1150 (ROT, A0)Alternatively using a hole pattern cycleN1030 X80 Y165N1040 (ROT, G1 X40 Y45 A36)N1050 G38 I2 U20 J5 V20N1060 G81 X77.5 Y47 R.... Z....Figure 3.4 Coordinate Rotation3.9 Machine Coordinates Programmin...

  • Page 109

    A2100Di Programming ManualChapter 4Publication 91204451- 00113May 2002with no tool present. G98.1 is useful to move an axis to the machine limits, or to programmoves for special applications such as setting the tool tram surface or loading tools intothe spindle. G98 is useful when it is required...

  • Page 110

    A2100Di Programming ManualChapter 4Publication 91204451- 00114May 2002CAUTIONProgramming a G98.1 block with a Z coordinate will position the spindle nose (notthe tool point) to the specified Z axis machine coordinate. If it is necessary toposition the tool point at a specific Z axis machine coor...

  • Page 111

    A2100Di Programming ManualChapter 4Publication 91204451- 00115May 2002Per-tool length and diameter compensation values are used to correct for the differencebetween the size of the actual tool and the tool diameter assumed by the NC program.The Programmable Tool Offset value is used for finish s...

  • Page 112

    A2100Di Programming ManualChapter 4Publication 91204451- 00116May 2002N10 G1 F50 T2 M6N20 X0 Y5N30 G41 X5 Y5N40 X10 Y0N50 X0 Y-2N60 G40 X0 Y-3N70 M2Figure 4.1 Outside Round-cornering5 Programming GuidelinesAutomatic CDC is still active when axis inversion is selected. The control processes them...

  • Page 113

    A2100Di Programming ManualChapter 4Publication 91204451- 00117May 20025.1 G43 PQR Cutter Diameter CompensationWhile Automatic Cutter Diameter Compensation is simple to program and is capable ofhandling many common machining situations, it is not able to compensate for differencesbetween the actu...

  • Page 114

    A2100Di Programming ManualChapter 4Publication 91204451- 00118May 2002The cutter compensation vector is formed from the intersection of two spans, to theintersection of construction lines, offset one unit, (1.0), and parallel to the lines formingthe spans. The cutter compensation vector always p...

  • Page 115

    A2100Di Programming ManualChapter 4Publication 91204451- 00119May 2002Fig. 5.3 CDC Cutter Path Offset to Inside5.2 Programming ExamplesThe cutter path will always have the cutter compensation vectors pointing away from thepart surface, as shown in Fig. 5.1. The sign of the P and Q values will b...

  • Page 116

    A2100Di Programming ManualChapter 4Publication 91204451- 00120May 2002Fig. 5.4 Cutter Path with CDC VectorsFig. 5.5 illustrates how the cutter compensation vectors would appear for a part beingmachined with an oversize cutter. The dashed line in the illustration represents thecentreline of the...

  • Page 117

    A2100Di Programming ManualChapter 4Publication 91204451- 00121May 2002Fig. 5.5 CDC Cutter Path with Oversize CutterThe formulas used by the control are:X Cutter Path Offset = P (Cutter Compensation Value)2Y Cutter Path Offset = Q (Cutter Compensation Value)2An example of a calculation made by t...

  • Page 118

    A2100Di Programming ManualChapter 4Publication 91204451- 00122May 2002The illustration shows that the vectors point in the same direction for the undersize cutteras they did for the oversize cutter in Figure 5.5, and that the values for P and Q are thesame in both cases.The control would calcula...

  • Page 119

    A2100Di Programming ManualChapter 4Publication 91204451- 00123May 2002Fig. 5.7 CDC Vector Diagram5.3 Symbols and DefinitionsΑ = angle measured CCW from the position X-axis to L1 (span 1)Β = angle measured CCW from the position X-axis to L2 (span 2)Γ = angle measured CCW from the positive X-a...

  • Page 120

    A2100Di Programming ManualChapter 4Publication 91204451- 00124May 2002Determine the value of θ.Θ = α - βDetermine the value of θ .θ = θ if θ > 0ºθ = θ +360 if θ < 0ºDetermine the value of γΓ = β + ( θ /2)Determine the values of P and Q.P = COS(γ)[SIN( θ /2 ]Q = SIN(γ)[S...

  • Page 121

    A2100Di Programming ManualChapter 4Publication 91204451- 00125May 2002To compute the P and Q values for the example1. Find the angle α (measured CCW from positive X - Axis to span 1):Α = ARCTAN Y1 - Y2X1 - X2Α = ARCTAN 7.0 - 9.0 = - 2 = 0.3331.0 - 7.0- 6Α = ARCTAN + .333, α = 18º 26’Α =...

  • Page 122

    A2100Di Programming ManualChapter 4Publication 91204451- 00126May 2002Q = SIN(63º 26')[SIN 135º)]Q = +1.265 or Q + 12650Example Circular Arc with CDCN020G1X50000Q + 10000Y70000(P10)N021X60000(P11)N022G2P + 10000X70000Y60000I60000J60000(P13)N023G1Y50000(P14)Fig. 5.9 Circular Arc with CDCWhen c...

  • Page 123

    A2100Di Programming ManualChapter 4Publication 91204451- 00127May 2002Another use for tool diameter and length compensation is to allow a single tool to beused for both roughing and finishing operations, or to leave a specified amount of stockon the part after machining for subsequent operations...

  • Page 124

    A2100Di Programming ManualChapter 4Publication 91204451- 00128May 2002A brief explanation of the part status and pallet status description fields are as follows:COMPLETEFinished, nothing was aborted.ABORTEDAborted not finished.SETUP ABORTEDPallet was finished but one or more set-ups were aborted...

  • Page 125

    A2100Di Programming ManualChapter 4Publication 91204451- 00129May 2002the offset amount that was in the Z direction moves with the rotation. At 90, the offsetthat was in the +Z direction is now in the -Y direction. All axis offsets other than the linearaxes in the plane or rotation are unaffecte...

  • Page 126

    A2100Di Programming ManualChapter 4Publication 91204451- 00130May 2002A fixture offset is activated by programming an H word, and remains in effect until it isreplaced by another fixture offset (programmed H word) or is cancelled by:G Program H0.G Data reset.G End of program M2 or M30.G A colon ...

  • Page 127

    A2100Di Programming ManualChapter 4Publication 91204451- 00131May 2002Figure 8.1 Fixture Offset Set-Up X And YThe distance between locating holes of the four fixtures along X axis is critical, as theprogram is written to machine all four parts. Without the fixture offset feature each fixturewou...

  • Page 128

    A2100Di Programming ManualChapter 4Publication 91204451- 00132May 2002Figure 8.2 Fixture Offset Set-Up X And Y8.2.3 Fixture Offset Z Axis Set-upThe Z axis is set-up similar to the X and Y axes. Refer to Fig. 8.3, fixture #1 is set-upusing normal techniques.Fixture #2 is set-up by touching the s...

  • Page 129

    A2100Di Programming ManualChapter 4Publication 91204451- 00133May 2002completed, the fixtures removed and inverted fixturing installed for mirror image partsusing the same program. In this case, however, the fixture offset data input must bechecked and modified before operation can be started.No...

  • Page 130

    A2100Di Programming ManualChapter 4Publication 91204451- 00134May 2002At Pos 1 (0), the operator will input offset values Y =+1mm and Z =-0.5mm for theprogrammed H code.As the table rotates from position.1 to position.2, then to position.3 and then toposition.4, the control will automatically of...

  • Page 131

    A2100Di Programming ManualChapter 4Publication 91204451- 00135May 2002G The linear interpolation mode (G0 or G1) must be active. All other interpolation modesmay be used in blocks following the one containing the D word.G The D word must have a value of 1 to 32.8.3.1 The D WordThe programmable o...

  • Page 132

    A2100Di Programming ManualChapter 4Publication 91204451- 00136May 2002Intentionally blank

  • Page 133

    A2100Di Programming ManualChapter 5Publication 91204426- 0011May 2002Chapter 5MECHANISM CONTROLContents1Miscellaneous Function Codes (M codes) .................................. 3 135,1.1 135,Introduction................................................................................... 135,3 13...

  • Page 134

    A2100Di Programming ManualChapter 5Publication 91204426- 0012May 20022.3Tool Data Information ................................................................. 24 157,2.4 157,Tool 157, Search.................................................................................. 157,24 157,2.5 157,Too...

  • Page 135

    A2100Di Programming ManualChapter 5Publication 91204426- 0013May 20021 Miscellaneous Function Codes (M codes)1.1 IntroductionMiscellaneous Function Codes (M codes) are used to command various control andmachine functions, mostly related to overall NC program execution and control ofmachine mechan...

  • Page 136

    A2100Di Programming ManualChapter 5Publication 91204426- 0014May 20021.2 M0 Program StopM0 Program Stop code stops NC program execution at the end of the block in which itappears. After any axis motion programmed in the block completes, the spindle isstopped (usually with an oriented stop, that i...

  • Page 137

    A2100Di Programming ManualChapter 5Publication 91204426- 0015May 2002CAUTIONDo not use an M1 when a mandatory stop is required. Failure to heed this Cautionmay result in damage to equipment.1.4 M2 End of ProgramThe M2 code signals the end of the part program. An End of Program code stops the NCpr...

  • Page 138

    A2100Di Programming ManualChapter 5Publication 91204426- 0016May 20021.6 M6 Tool ChangeThe M6 code request a tool change. In general, the control moves the machine to aspecific tool change position, stops the spindle and coolant, performs an automatic toolchange, and continues program execution. ...

  • Page 139

    A2100Di Programming ManualChapter 5Publication 91204426- 0017May 20021.6.1 Automatically Loaded ToolsThe following axis and mechanism motions occur when an M6 code is processedrequesting the mechanism to automatically exchange tools between the tool storagematrix and the spindle.G The spindle wil...

  • Page 140

    A2100Di Programming ManualChapter 5Publication 91204426- 0018May 2002Fig 4Note:The automatic tool change sequence returns the tool from the spindleinto the pocket location of the pre-selected tool. The pre-selected toolloaded into the spindle will subsequently return to the pocket of thenext pre-...

  • Page 141

    A2100Di Programming ManualChapter 5Publication 91204426- 0019May 2002the spindle. Automatic N.C. cycle is engaged by pressing the CYCLE START pushbutton.If the tool in the spindle is a manually loaded tool, and the next tool is an automaticallyloaded tool, the operator is first instructed to unlo...

  • Page 142

    A2100Di Programming ManualChapter 5Publication 91204426- 00110May 2002Manual Tool LoadIn sequence :10, the spindle and coolant are turned off and the axes rapid to theirrespective MANUAL tool change position co-ordinates. Tool Number 12345678(with manual load status) is loaded into the spindle by...

  • Page 143

    A2100Di Programming ManualChapter 5Publication 91204426- 00111May 2002storage magazine. A manually loaded tool will be unloaded by the operator inaccordance with the unload instructions posted to the screen display.Arrow 21 Tool MachinesFTV MachinesTo optimise tool change time, tools should be st...

  • Page 144

    A2100Di Programming ManualChapter 5Publication 91204426- 00112May 2002Z clearance = ZTC – TL - WCWhere:ZTC = The fixed position of the spindle nose for tool changes measured from themachine table surface i.e.:MachineArrow 500/750Arrow 1000/1250CArrow 1250 - 3000Automatic ToolChange Position520m...

  • Page 145

    A2100Di Programming ManualChapter 5Publication 91204426- 00113May 20021.7.2 Arrow Machines – 30 Tool Figure 7: Auto Tool Change Clearance Check Figure 8: Radius Swing of Tool Changer Double ArmZ clearance = ZTC – TL –...

  • Page 146

    A2100Di Programming ManualChapter 5Publication 91204426- 00114May 2002Note:The system does not process a Tool Change Clearance check. If the Tool ChangeClearance value is negative, the X and/or Y axis must be positioned such that theworkpiece/fixture is placed well clear of the tools in the magaz...

  • Page 147

    A2100Di Programming ManualChapter 5Publication 91204426- 00115May 2002ZTC = The fixed position of the spindle nose for tool changes measured from themachine table surface i.e.:MachineFTV 640FTV 840FTV 850Automatic ToolChange Position56mm (22.0 ins){563mm (22.1 ins)}735mm (28.9 ins)*{738mm (29.0 i...

  • Page 148

    A2100Di Programming ManualChapter 5Publication 91204426- 00116May 20021.9 M3, M4, M5 Spindle ControlThese codes start and stop the spindle. M3 starts the spindle in the clockwise direction;M4 starts it in the counterclockwise direction, M5 stops the spindle and also turnscoolant off if it is on.I...

  • Page 149

    A2100Di Programming ManualChapter 5Publication 91204426- 00117May 2002Figure 12: Spindle Dive-key Orient Positions for 0° and 90°The Oriented Spindle Stop code allows the NC program to control the angular position ofthe tool in the spindle for such functions as probing where the position is si...

  • Page 150

    A2100Di Programming ManualChapter 5Publication 91204426- 00118May 20021.13 M42 Select Spindle Constant Torque ModeThis function sets the spindle drive into its constant torque mode. This restricts spindlespeeds to below the motors base speed (the constant torque range). This mode isgenerally used...

  • Page 151

    A2100Di Programming ManualChapter 5Publication 91204426- 00119May 2002ExampleMiscellaneous code M8.4 is selected for an end mill 170mm long, and 50mm diameter.The M8.x code is active when read. If it is to be used in conjunction with a ’fixed cycle’(e.g.: G81 Drilling) the Coolant Jets M-code...

  • Page 152

    A2100Di Programming ManualChapter 5Publication 91204426- 00120May 20021.17 M11, M11.1- M11.4 Axis UnclampThe NC program can release an axis clamp by programming M11.1 for Clamp #1, M11.2for Clamp #2, and so on. The first clamp can also be released by programming M11.Axis Clamp codes (M10 and M10....

  • Page 153

    A2100Di Programming ManualChapter 5Publication 91204426- 00121May 20021.21 M59 Arm Spindle ProbeThis code arms the surface sensing probe in the spindle. The probe is armed following atool change, or by executing any of the probe cycles. When the probe is armed, thecontrol is sensitive to any prob...

  • Page 154

    A2100Di Programming ManualChapter 5Publication 91204426- 00122May 2002If a machine is not equipped with a Swarf Conveyor, M91/M92 are ignored. If the SwarfConveyor is present, M91 and M92 allow the NC program to control the conveyordirectly, overriding automatic conveyor operation. M91 turns the ...

  • Page 155

    A2100Di Programming ManualChapter 5Publication 91204426- 00123May 2002Each M user M code can be specified to hold cycle or not. If hold cycle is specified, NCprogram execution is held until:G The pulsewidth elapses for pulsed outputs.G The pulsewidth elapses and the acknowledgement signal is rece...

  • Page 156

    A2100Di Programming 5 –23A Publication 91204426A0011.27 M69 Alternate Work Station.The spindle may be moved to the Alternate Work station by processing an M69 code.M69 is an M.D.I. function only.On processing an M69 in M.D.I. mode, the machine wil...

  • Page 157

    A2100Di Programming ManualChapter 5Publication 91204426- 00124May 2002Tooling Data are created and stored within the Tool Resource File. During Job Set-up,tooling information is moved to the machines active tool storage (magazine and manualtool rack) from the Tool Resource File.Figure 13: Tool M...

  • Page 158

    A2100Di Programming ManualChapter 5Publication 91204426- 00125May 2002manually loaded tools, and cradle loaded tools). Note that the tool search is limited to theactive tool table; tools in the tool file are not accessible to the part program.The standard tool search algorithm is based on the con...

  • Page 159

    A2100Di Programming ManualChapter 5Publication 91204426- 00126May 2002T1234 M6; reload end millBlocks to finish machine pocketNote that when using the Tool Record Number data are only applied to the Active ToolSet.2.7 Tool Magazine and Active Tool SetThe tool magazine represents the physical stor...

  • Page 160

    A2100Di Programming ManualChapter 5Publication 91204426- 00127May 2002changers, it is faster to exchange the tool in the spindle with the tool to be loaded. Thisstyle of tool changing is called migrating tools because the tools migrate, or move, as theNC program runs.In some cases, it is desirabl...

  • Page 161

    A2100Di Programming ManualChapter 5Publication 91204426- 00128May 2002depth to correct for tip length in order to produce a hole that is drilled to the final depth atfull diameter. See, Hole Making Cycles (G80 series).Nominal tool diameter is also used by Milling Cycles (G22-G28), Tool Sensor (G6...

  • Page 162

    A2100Di Programming ManualChapter 5Publication 91204426- 00129May 20022.18 Threads LeadFor inch or metric taps, the maximum feedrate field (Feed Per Tooth) is used to specifythe thread lead. The valid range for the TPI field is 0-99.2.19 Spindle Speed OverrideSpindle speed override is a three-dig...

  • Page 163

    A2100Di Programming ManualChapter 5Publication 91204426- 00130May 20022.21.1 Tool Usage Count (Option)The Tool Usage Count mode field is similar in operation to the Tool Cycle Time Statusfield. When set to OFF the tool usage count is not accumulated for the associated tool.When set to ON the usag...

  • Page 164

    A2100Di Programming ManualChapter 5Publication 91204426- 00131May 2002[$TOOL_DATA([#TEMP1])DIA_OFFSET] =[$TOOL_DATA([#TEMP1])DIA_OFFSET] + 4.0 - [$PRB_WIDTH]T1234 M6; reload end mill.Blocks to finish machine pocket2.24 Tool ClassThis field specifies the category of the tool. The tool may belong t...

  • Page 165

    A2100Di Programming ManualChapter 6Publication 91204426-0011May 2002Chapter 6HOLE-MAKING FIXED CYCLESContents1Overview............................................................................................... 3 167,2 167,R 167, Work 167, Plane....................................................

  • Page 166

    A2100Di Programming ManualChapter 6Publication 91204426-0012May 20027.8.8G25 Rectangular Outside Frame Centre Specified andG25.1 Rectangular Outside Frame Corner Specified....................... 76 240,7.8.9 240,G25 Outside 240, Rectangular 240, Frame 240, Centre 240, Specified 240, Example.........

  • Page 167

    A2100Di Programming ManualChapter 6Publication 91204426-0013May 20021 OverviewThe G80 series of fixed cycle operations provide a simple means of programmingcommon hole-making operations including drilling, boring, counterboring, and tapping.The cycles are programmed in a single block and perform ...

  • Page 168

    A2100Di Programming ManualChapter 6Publication 91204426-0014May 2002For example, a G86 (Bore, dead spindle retract) cycle can specify an offset value to useto retract the boring tool from the work using the U word. Once a G86 with a U value isprogrammed, subsequent G86 blocks use the same value. ...

  • Page 169

    A2100Di Programming ManualChapter 6Publication 91204426-0015May 2002The first step (rapid all non-spindle axes to the commanded position) can be specified byCartesian (XY) co-ordinates or by Polar co-ordinates.NoteThree hole-making cycles (G86, G87, G88) use non-modal U and V words, which aresign...

  • Page 170

    A2100Di Programming ManualChapter 6Publication 91204426-0016May 2002rapids to the Gage Height above that R plane, clearing the work by 0.100 inch for thisexample.Figure 2.2 Gage Height3 Hole DepthThe hole depth for fixed cycles can be specified in one of two ways, either as anincremental depth f...

  • Page 171

    A2100Di Programming ManualChapter 6Publication 91204426-0017May 2002selected. For example, with Hole Depth mode selected, when a 1” dimension isprogrammed the Z axis moves a total of -1.1” plus drill point length.To program the depth of cut for the three holes, as shown in Fig. 2.3, the progr...

  • Page 172

    A2100Di Programming ManualChapter 6Publication 91204426-0018May 2002Figure 2.4 Boring Tool RetractTo use the tip shift capability, the position of the boring tool tip relative to the machineaxes must be known. The control Tool Data includes a Tip Angle field that, for boringbars, specifies the a...

  • Page 173

    A2100Di Programming ManualChapter 6Publication 91204426-0019May 2002NoteU and V tip shifts are subject to the effects of a Rotation of Axes (ROT,) command. Theprogrammed Tool Tip Orientation Angle (J word) ignores (ROT,) commands. U and V tipshifts, and J orientation angle are not affected by Axi...

  • Page 174

    A2100Di Programming ManualChapter 6Publication 91204426-00110May 2002the block. With Single Loop off. Z Repeat is not active when the operation completesnormally.With both Single Block and Single Loop on, the first press of Cycle Start moves themachine to the operation site and then stops. Pressi...

  • Page 175

    A2100Di Programming ManualChapter 6Publication 91204426-00111May 2002Programming ConsiderationsG The non-spindle axes will always be in position before any spindle axis rapid motionwill occur.G If a Z axis feed dimension is programmed in a block containing a G80, it is ignoredfor that block, howe...

  • Page 176

    A2100Di Programming ManualChapter 6Publication 91204426-00112May 2002The above block, and Fig. 6.2, show the use of a G80 Cancel Cycle.Block N10G M3 turns spindle on in the clockwise direction at a spindle speed of 720 rpm.G X and Y axes rapid to X4, Y4 inches.G Z axis rapids to clearance plane (...

  • Page 177

    A2100Di Programming ManualChapter 6Publication 91204426-00113May 2002Programming ConsiderationsG The non-spindle axes will always be in position before any spindle axis rapid motionwill occur.G The following program and Fig.6.3 show the use of a G81 Drill Cycle.N15 G81 X4 Y1 Z-1.15 R0 S550 M3 F10...

  • Page 178

    A2100Di Programming ManualChapter 6Publication 91204426-00114May 2002Permissible Tool TypesUNKNOWN, DRILL, COUNTERSINK SPOT DRILL, REAMER, BORE, ROUGH ENDMILL, FINISH END MILLParametersG R word - Modal Reference Plane dimension.G Spindle axis word - Modal hole depth or hole bottom dimension.G W w...

  • Page 179

    A2100Di Programming ManualChapter 6Publication 91204426-00115May 2002G The spindle dwells for the G82 Dwell Time then rapid retracts to 1.00 inch above theR plane as specified by W1.Figure 6.4 Counterbore/Spot Drill with Dwell Cycle G826.6 G83 Deep Hole Drill (Peck Drill) CycleThis cycle is used...

  • Page 180

    A2100Di Programming ManualChapter 6Publication 91204426-00116May 2002Permissible Tool TypesUNKNOWN, DRILL, ROUGH END MILL, FINISH END MILL. Refer to Figs. 6.5 through6.8.ParametersG R word - Modal Reference Plane dimension.G Spindle axis word - Modal hole depth or hole bottom dimension.G K word -...

  • Page 181

    A2100Di Programming ManualChapter 6Publication 91204426-00117May 2002Repeat feed by K word increment and retract until at depth.J word = 1 or 11 selects chip breaking.Feed by the selected increment.Rapid retract by the G83 Retract Distance to break chips.Feed by next increment.Figure 6.5 Deep Ho...

  • Page 182

    A2100Di Programming ManualChapter 6Publication 91204426-00118May 2002Figure 6.7 Deep Hole Drill G83 Full Retract and Short ReliefThe spindle axis rapid retracts to the clearance plane or to the W word value above thereference plane.The following program segment illustrates the use of a G83 Deep ...

  • Page 183

    A2100Di Programming ManualChapter 6Publication 91204426-00119May 2002Figure 6.8 Deep Hole Drill G83 Relief Amount and Return Rate6.6.3 G84 Tap Cycle (Conventional)The Conventional Tapping Cycle (G84) is used with spring-loaded floating tap holders.Permissible Tool TypesUNKNOWN, TAP. Refer to Fig...

  • Page 184

    A2100Di Programming ManualChapter 6Publication 91204426-00120May 2002Programming ConsiderationsG In hole depth mode the feed distance begins at the clearance plane and extendsalong the spindle axis. The feed distance is the modal spindle axis value plus gageheight.G In hole bottom mode, the feed ...

  • Page 185

    A2100Di Programming ManualChapter 6Publication 91204426-00121May 2002Z Position:= 0.500 + (3 x 0.050) - (0.48 x 0.050)= 0.500 + 0.150 - 0.024= 0.626G The feedrate for the example was computed as follows:Feedrate= (RPM x Pitch) ipm= 200 x 0.05”= 10 ipmWhen the programmed depth is reached spindle...

  • Page 186

    A2100Di Programming ManualChapter 6Publication 91204426-00122May 2002Permissible Tool TypesUNKNOWN, TAP, RIGID TAP.ParametersG R word - Modal Reference Plane dimension.G Spindle axis word - Modal hole depth or hole bottom dimension.G W word - Nonmodal final retract distance.G J word - Cycle modal...

  • Page 187

    A2100Di Programming ManualChapter 6Publication 91204426-00123May 2002and reverses for the feed out motion. The feed out part of the cycle is performed atthe programmed rate times the J word value. A J word value less than one results inthe feed out being performed at the programmed rate. A J word...

  • Page 188

    A2100Di Programming ManualChapter 6Publication 91204426-00124May 2002Figure 6.10 Tap Cycle (Rigid) G84.16.8 G85 Bore/Ream CycleBore/Ream Cycle (G85) is similar to the Drill Cycle (G81) except the tool is fed to depthand then fed back to the clearance plane.Permissible Tool TypesUNKNOWN, ROUGH EN...

  • Page 189

    A2100Di Programming ManualChapter 6Publication 91204426-00125May 2002Block N15G M3 turns spindle on in the clockwise direction at a spindle speed of 620 rpm.G X and Y axes rapid simultaneously to X4,Y10 inches from the previous position.G Z axis rapids to clearance plane.G Z axis feeds to -1.05 i...

  • Page 190

    A2100Di Programming ManualChapter 6Publication 91204426-00126May 2002CAUTIONThe U and V words must be used only with single point tools since they move thetool from the hole centreline while the tool is inside the workpiece.Ensure that the tool is mounted at the correct orientation in the spindle...

  • Page 191

    A2100Di Programming ManualChapter 6Publication 91204426-00127May 2002The BlockG : Provides Synchronisation of the control system.G G0 code sets Linear Rapid Interpolation.G T1 is tool selection for M6 tool change.Block N15G M3 turns spindle on in the clockwise direction at a spindle speed of 620 ...

  • Page 192

    A2100Di Programming ManualChapter 6Publication 91204426-00128May 2002Figure 6.12 Bore/Ream Cycle G86Figure 6.13Bore/Ream Cycle G856.10 G87 Back Bore CycleBack Bore Cycle (G87) see fig. 6.14, is used when it is required for a boring bar to passthrough a clearance hole, move to a cutting position,...

  • Page 193

    A2100Di Programming ManualChapter 6Publication 91204426-00129May 2002CAUTIONEnsure that the tool is mounted at the correct orientation in the spindle andsufficient clearance exists on the non-cutting side of the boring bar. Otherwise, Uand V offset words could produce an interference condition.Fa...

  • Page 194

    A2100Di Programming ManualChapter 6Publication 91204426-00130May 2002Figure 6.14 Back Bore Cycle G87The specific actions of the G87 cycle are:G Rapid non-spindle axes to their commanded position.G Rapid the spindle axis to place end of boring bar at upper clearance plane (R wordvalue + gage heig...

  • Page 195

    A2100Di Programming ManualChapter 6Publication 91204426-00131May 2002Programming ConsiderationsG Non spindle axes will always be in position before any spindle axis rapid motion willoccur.G Always ensure enough Backbore nose extension clearance exist below the part.G At least one U or V word must...

  • Page 196

    A2100Di Programming ManualChapter 6Publication 91204426-00132May 2002G Position 1, X and Y axes rapid simultaneously to X4, Y10 inches from the previousposition. Then Z axis rapids to clearance plane (above workpiece).G Spindle is stopped and oriented.G Position 2, X axis rapid offsets .25 inch i...

  • Page 197

    A2100Di Programming ManualChapter 6Publication 91204426-00133May 2002CAUTIONEnsure that the tool is mounted at the correct orientation in the spindle and thatsufficient clearance exists on the non-cutting side of the boring bar. Otherwise, Uand V offset words could produce an interference conditi...

  • Page 198

    A2100Di Programming ManualChapter 6Publication 91204426-00134May 20026.11 G88 Web Drill/Bore CycleThis cycle, see Figs 6.17 and 6.18, is used when it is required to machine two in-lineholes, making a rapid movement between them. This is useful for drilling through bothsides of a hollow part. Prog...

  • Page 199

    A2100Di Programming ManualChapter 6Publication 91204426-00135May 2002ParametersG R word - Modal reference plane dimension.G Spindle axis word - Modal depth or hole bottom dimension.G I word - unsigned cycle modal distance between the bottom of the upper hole andthe lower reference plane.G J word ...

  • Page 200

    A2100Di Programming ManualChapter 6Publication 91204426-00136May 2002The G88 Breakthrough Distance is specified in the Cycle Parameter Table. This distanceis added to the programmed upper hole depth to ensure that the drill passes completelythrough the upper web of the part.Figure 6.19 Web Drill...

  • Page 201

    A2100Di Programming ManualChapter 6Publication 91204426-00137May 2002Block N11G The G88 code is reused to rapid Y axis to 8 inches (plus direction).G Cycle execution takes place as previously described.G After reaching final depth, Z axis rapid retracts to clearance plane, restarts spindleand coo...

  • Page 202

    A2100Di Programming ManualChapter 6Publication 91204426-00138May 2002Feed the spindle axis to depth.Dwell for G89 Dwell Time value in the Cycle Parameters Table.Feed the spindle axis to the clearance plane.Rapid W distance from the R plane if W is programmed.The following program, and Fig.6.21, s...

  • Page 203

    A2100Di Programming ManualChapter 6Publication 91204426-00139May 2002Drilling Example (Fig 6.22)Figure 6.22 Drilling ExampleG :G0 G90 G40 G77 G17 G94 ; Establish program settings.G T1 M6 ; Tool change line - 8mm Drill.G (MSG, Drill 3 Holes Through').G G0 G90 G40 G71 G17 G94 ; Safety default line...

  • Page 204

    A2100Di Programming ManualChapter 6Publication 91204426-00140May 2002Drilling Example Using Programmed Drill Set-up (Fig. 6.23)Figure 6.23 Drilling Example Using Programmed Drill SetupG : G0 G90 G40 G71 G17 G94 ; Safety default line.G [$TOOL_DATA(1)NOM_DIA]= 8 ; Setup drill Nominal Diameter.G [$...

  • Page 205

    A2100Di Programming ManualChapter 6Publication 91204426-00141May 2002Tapping Example (Fig. 6.24)Figure. 6.24 Tapping ExampleG :T2 M6 ; Tool change line - M10 x 1.5 Tap.G (MSG, Tap 3 Holes Through’).G G0 G90 G40 G71 G17 G95 ; Safety default line (G95 setting Tapping feed ).G X20 Y20 Z100 H01 S30...

  • Page 206

    A2100Di Programming ManualChapter 6Publication 91204426-00142May 2002Tapping Example Using Programmed Tap Setup (Fig. 6.25)Figure 6.25 Tapping Example Using Programmed Tap SetupG : G0 G90 G40 G71 G17 G95 ; Safety default line (G95 setting Tapping feed ).G [$TOOL_DATA(2)TEETH]= 1 ; Setup Number o...

  • Page 207

    A2100Di Programming ManualChapter 6Publication 91204426-00143May 2002Hole Making Cycles Main Example (Fig. 6.26)Figure 6.26 Hole Making CyclesG T1 = 25mm x 90 Degree Spot drill.G T2 = 8.5mm drill.G T3 = M10 x 1.5 Pitch tap.G T4 = 9.2mm drill.G T5 = 10mm Reamer.G T6 = 3/4” Slot drill.G T7 = 20m...

  • Page 208

    A2100Di Programming ManualChapter 6Publication 91204426-00144May 2002X150 R0G80 R0G90 G0 Z100:T2 M6 ;T2 = 8.5mm DRILLG0 G90 G71 G17 G40 G94X25 Y-25 Z100 H01 S1000 M3Z-15G81 Z-27.4 R-20 F200 M8G91 X50 W25X50 R0 W25X50Y-50X-50X-50 R-20 W25X-50G80 R-20G90 G0 Z100:T3 M6 ;T3 = M10 x 1.5 Pitch TAPG0 G9...

  • Page 209

    A2100Di Programming ManualChapter 6Publication 91204426-00145May 2002X150 Z-70 R0G80 R0G90 G0 Z100:T5 M6 ;T5 = 10mm REAMERG0 G90 G71 G17 G40 G94X50 Y-50 Z100 H01 S450 M3Z-15G89 Z-50 R-20 W25 F200 M8X150 Z-70 R0G80 R0G90 G0 Z100:T6 M6 ;T6 = 3/4” SLOTDRILLG0 G90 G71 G17 G40 G94X50 Y-50 Z100 H01 S...

  • Page 210

    A2100Di Programming ManualChapter 6Publication 91204426-00146May 20027 Milling CyclesMilling cycles mill rectangular or circular faces, pockets, and frames. The NC programspecifies the location, shape, and size of the face, pocket, or frame and the controlautomatically performs all the machining ...

  • Page 211

    A2100Di Programming ManualChapter 6Publication 91204426-00147May 2002This allows use of the milling cycles with programs processed assuming a nominal cutterdiameter (specified in the Nominal Diameter field) and using Cutter DiameterCompensation to handle variations based on the actual cutter used...

  • Page 212

    A2100Di Programming ManualChapter 6Publication 91204426-00148May 20027.2 End of Cycle Incremental Retract Dimension (W word)The milling cycles finish with the tool at the clearance plane. These cycles accept anoptional, non-modal W word whose unsigned value specifies a rapid move to a pointabove ...

  • Page 213

    A2100Di Programming ManualChapter 6Publication 91204426-00149May 2002Feedhold operates normally during a milling cycle block. That is, Feedhold causes axismotion to stop just as it does for a G1 or G0 block. Pressing Cycle Start resumes normalcycle.7.4 Rectangular Milling Cycle DimensionsThe rect...

  • Page 214

    A2100Di Programming ManualChapter 6Publication 91204426-00150May 2002pocket, or frame to be machined. The U word defines the diameter of the face, pocket, orframe.7.6 Milling Cycle Cut Width and DepthThe milling cycles use the P word to define the cut width and the K word to define thedepth of cu...

  • Page 215

    A2100Di Programming ManualChapter 6Publication 91204426-00151May 2002As almost all of the parameters of the cycle are cycle modal, it is only necessary tospecify the value of the Q word and possibly the W word in the second (finish)invocation.For example, to rough and finish a rectangular pocket ...

  • Page 216

    A2100Di Programming ManualChapter 6Publication 91204426-00152May 2002G Z word - Cycle Modal milling cycle depth or bottom surface dimension.G Q word - Cycle modal cycle type.G K word - Cycle modal cut depth for each pass of the face cycle.G P word - Cycle modal width of cut, expressed as a percen...

  • Page 217

    A2100Di Programming ManualChapter 6Publication 91204426-00153May 2002G The F and S words specify the feedrate and spindle speed to be used for the finishpasses (if any). These items are cycle modal and do not affect the rough feed andspeed. When a cycle specifying a finish feedrate or speed compl...

  • Page 218

    A2100Di Programming ManualChapter 6Publication 91204426-00154May 2002Figure 7.3 Cycle Actions (Bi-directional Milling)Cycle Actions (Unidirectional Milling, Q = 10, 11, 12, 13, 14, 15)1. Move the non-spindle axes to the cycle start point in rapid (point #1 see Fig.7.4).2. Rapid the spindle axis ...

  • Page 219

    A2100Di Programming ManualChapter 6Publication 91204426-00155May 20027.8.1 G22 Rectangular Face Milling Centre Specified ExampleTo illustrate the specific action of the G22 cycle, the following program, and Fig. 7.5, willexecute a Bi-directional Face Milling operation, using Centre Reference, Rou...

  • Page 220

    A2100Di Programming ManualChapter 6Publication 91204426-00156May 2002Figure 7.5 G22 Face Milling Example7.8.2 G22.1 Rectangular Face Milling Corner Specified ExampleTo illustrate specific action of the G22.1 cycle, the following program, and Fig. 7.6specification will be used:G Use unidirectiona...

  • Page 221

    A2100Di Programming ManualChapter 6Publication 91204426-00157May 2002X and Y axis start positionBefore Y axis start position can be calculated, the amount of material removed foreach rough pass must be calculated as follows:Face Stock to remove = V Word + 1mm or .003937 inchFace Stock to remove =...

  • Page 222

    A2100Di Programming ManualChapter 6Publication 91204426-00158May 2002Figure 7.6 G22.1 Face Milling Example Illustration7.8.3 G23 Rectangular Pocket Centre Specified and G23.1 RectangularPocket Corner SpecifiedThe rectangular pocket cycles machine rectangular pockets in solid material, plungingth...

  • Page 223

    A2100Di Programming ManualChapter 6Publication 91204426-00159May 2002G V word - Cycle modal finished length parallel to the Y axis or the side of the pocketrotated from the +Y axis by the angle specified by the O word.G O word - Cycle modal angle from the +X axis by which the pocket is rotated ab...

  • Page 224

    A2100Di Programming ManualChapter 6Publication 91204426-00160May 2002If L is positive and non-zero, the L word value specifies the angle of the rampmeasured from the XY plane. For square pockets, this results in a square patternwith each side being 1.6 times the cutter diameter. The slot is cut u...

  • Page 225

    A2100Di Programming ManualChapter 6Publication 91204426-00161May 200210 or greater that 80 (that is, specifies an overlap less than 10% or greater than 80%of the cutter diameter), an overlap of 10% or 80% is used and no alarm is reported.The actual overlap is computed so that all passes remove th...

  • Page 226

    A2100Di Programming ManualChapter 6Publication 91204426-00162May 2002Cycle ActionsRapid the non-spindle axes to the cycle start point:G If L = 0, #2G If L = -1, #2G If L > 0, either #1 or #2 depending on the depth, slot length and angleIn all cases, the plunge ends at #2 position.Figure. 7.8 ...

  • Page 227

    A2100Di Programming ManualChapter 6Publication 91204426-00163May 20023. If L = -1:An entry hole large enough to accommodate the roughing cutter is assumed to exist,and the cutter is fed at the full modal feedrate to the cut depth at the cycle start point(position #1) and then at the plunge feedra...

  • Page 228

    A2100Di Programming ManualChapter 6Publication 91204426-00164May 2002(m) Make one pass around the pocket in the appropriate direction based on climb orconventional milling and the spindle direction. The pass begins and ends in onecorner of the part. Entry and exit to the finish pass are made alon...

  • Page 229

    A2100Di Programming ManualChapter 6Publication 91204426-00165May 2002Figure 7.9 G23 Rectangular Pocket Centre Specified ExampleNumber of milling passes to remove side stock is calculated as follows:Rough Stock to remove = V - I Word2Rough Stock= 2 - .040 inch = 0.962Cutter Efficiency= Cutter Dia...

  • Page 230

    A2100Di Programming ManualChapter 6Publication 91204426-00166May 2002Figure 7.10 G23 Rectangular Pocket Milling Example Illustration7.8.4 G23.1 Rectangular Pocket Corner Specified ExampleTo illustrate the specific action of the G23.1 cycle, the following program specifications,Figs 7.11 and 7.12...

  • Page 231

    A2100Di Programming ManualChapter 6Publication 91204426-00167May 2002Example: G0 T2 M6N10 S100 M13 F12N20 G23.1 X2 Y1 U2.25 V.5 R0 Q3 Z-.25 K.2 I.0 L-1 P70N50 G0 M2The basic sequence used by each pass to machine this slot will rapid to position 1,plunge to depth K .2, feed from position 1 through...

  • Page 232

    A2100Di Programming ManualChapter 6Publication 91204426-00168May 2002Figure 7.12 G23.1 Rectangular Pocket Milling Example Illustration7.8.5 G24 Rectangular Inside Frame Centre Specified and G24.1Rectangular Inside Frame Corner Specified.The Rectangular Inside Frame cycles machine a rectangular p...

  • Page 233

    A2100Di Programming ManualChapter 6Publication 91204426-00169May 2002G U word - Cycle modal finished length parallel to the X axis or the side of the framerotated from the +X axis by the angle specified by the O word.G V word - Cycle modal length parallel to the Y axis or the side of the frame ro...

  • Page 234

    A2100Di Programming ManualChapter 6Publication 91204426-00170May 2002G The O word specifies the angle with respect to the +X axis by which the frame geometryis rotated about the reference point. Negative values specify clockwise rotation andpositive values specify counterclockwise rotation. If th...

  • Page 235

    A2100Di Programming ManualChapter 6Publication 91204426-00171May 2002or Spindle speed in Surface Feed per Minute) in effect when the milling cycle isexecuted.G For both rough and finish machining, the pocket cycles recompute a corner feedratebased on the cutter overlap (the P word) and other fact...

  • Page 236

    A2100Di Programming ManualChapter 6Publication 91204426-00172May 2002radius. The smallest finishing cutter diameter is such that the overlap (P word timesthe cutter diameter) is greater than the finish stock specified.G The Frame Cycle Cut Width, Frame Cycle Side Finish Stock, and Gage Heightvalu...

  • Page 237

    A2100Di Programming ManualChapter 6Publication 91204426-00173May 20027.8.6 G24 Rectangular Inside Frame Centre Specified ExampleTo illustrate the specific action of the G24 cycle, the following program specifications,and Fig. 7.15, will be used:G Conventional Milling, Rough Only to Size Q13G Cent...

  • Page 238

    A2100Di Programming ManualChapter 6Publication 91204426-00174May 2002Figure 7.15 G24 Inside Rectangular Frame Milling Example Illustration7.8.7 G24.1 Rectangular Inside Frame Corner Specified ExampleTo illustrate specific action of the G24.1 cycle, the following program specification, andFig. 7....

  • Page 239

    A2100Di Programming ManualChapter 6Publication 91204426-00175May 2002The number of rough milling passes is calculated as follows:Rough Stock to remove= J Word - I Word = .2 - .02 = .18Cutter Efficiency= Cutter Diameter x P wordCutter Efficiency= .50 inch x .60 = .30Number of Rough Passes= Rough S...

  • Page 240

    A2100Di Programming ManualChapter 6Publication 91204426-00176May 2002Figure 7.16 G24.1 Inside Rectangular Frame Milling Example Illustration7.8.8 G25 Rectangular Outside Frame Centre Specified and G25.1Rectangular Outside Frame Corner SpecifiedThe Rectangular Outside Frame cycles machine the out...

  • Page 241

    A2100Di Programming ManualChapter 6Publication 91204426-00177May 2002ParametersG X word - X axis dimension of reference point of geometry.G Y word - Y axis dimension of reference point of geometry.G U word - Cycle modal finished length parallel to the X axis or the side of the framerotated from t...

  • Page 242

    A2100Di Programming ManualChapter 6Publication 91204426-00178May 2002additionally rotated by the angle defined by the pattern cycle if the pattern cyclespecifies rotated operations.G The ,R word defines a radius to be machined on the corners of the frame. The ,Rvalue must be no more than half of ...

  • Page 243

    A2100Di Programming ManualChapter 6Publication 91204426-00179May 2002nominal diameters of the milling cutters is required by the frame milling cycles andmust be present in the tool table. The cycle use the sum of the Nominal Diameterand Diameter Offset fields from the Tool Data Table and the Diam...

  • Page 244

    A2100Di Programming ManualChapter 6Publication 91204426-00180May 2002the work at the end of the final corner radius move if corner radii are specified(position #2).11. Repeat steps 10 and 11 until the bottom of the frame is reached.12. Retract the spindle axis to the original clearance plane or t...

  • Page 245

    A2100Di Programming ManualChapter 6Publication 91204426-00181May 2002YSP = Y Centre position - V/2 - J word - Tool Diameter/2 + Rough stock removedon each pass.XSP = 2 - 4/2 - .5 - .750/2 - .02 = -.8950.YSP = 1 - 2/2 - .5 - .750/2 + .2125 = -.6625.Figure 7.19 G25 Outside Rectangular Frame Millin...

  • Page 246

    A2100Di Programming ManualChapter 6Publication 91204426-00182May 20027.8.10 G25.1 Outside Rectangular Frame Corner Specified ExampleTo illustrate specific action of the G25.1 cycle, the following program specifications, andFig. 7.20, will be used:G Conventional MillingG Corner Reference X2, Y1G T...

  • Page 247

    A2100Di Programming ManualChapter 6Publication 91204426-00183May 2002Figure 7.20 G25.1 Outside Rectangular Frame Milling Example Illustration7.8.11 G26 Circular FaceThe circular face cycle machines the stock above the face of a part, assuming that thereis clearance on all sides of the workpiece ...

  • Page 248

    A2100Di Programming ManualChapter 6Publication 91204426-00184May 2002ParametersG X word - X axis dimension of the centre of the circular face.G Y word - Y axis dimension of the centre of the circular face.G U word - Cycle modal diameter of the circular face.G R word - Modal Reference Plane dimens...

  • Page 249

    A2100Di Programming ManualChapter 6Publication 91204426-00185May 2002speed in RPM - G97 or Spindle speed in Surface Feed per Minute) in effect whenthe milling cycle is executed.G The start point (point #1) is located on the start-finish circle at a point defined by thecutter overlap and clear of ...

  • Page 250

    A2100Di Programming ManualChapter 6Publication 91204426-00186May 2002Figure 7.21 G25 Unidirectional MillingCycle Actions (Unidirectional Milling, Q = 10, 11, 12, 13, 14, 15):1. Move the non-spindle axes to the cycle start point in rapid (point #1).2. Rapid the spindle axis to the clearance plane...

  • Page 251

    A2100Di Programming ManualChapter 6Publication 91204426-00187May 2002Figure 7.22 G26 Circular Face MillingG26 Circular Face Milling ExampleTo illustrate the specific action of the G26 cycle, the following program will execute a Bi-directional Circular Face Milling operation:G Rough and Finish wi...

  • Page 252

    A2100Di Programming ManualChapter 6Publication 91204426-00188May 2002Sharpened or undersized cutters may initiate additional passes.Tool Diameter is the sum of the Nominal Diameter from the Tool Data Table + DiameterOffset from the Tool Data Table + Diameter Offset from the active Programmable To...

  • Page 253

    A2100Di Programming ManualChapter 6Publication 91204426-00189May 20027.8.12 G26.1 Circular Pocket CycleThe circular pocket cycle machines circular pockets in solid material, plunging the cutterinto the work using a helical ramp entry if the tool and pocket sizes allow sufficient room.Permissible ...

  • Page 254

    A2100Di Programming ManualChapter 6Publication 91204426-00190May 2002G The L word modifies the method of entry into the workpiece for pockets requiringroughing. L = 0 or not programmed signifies entry by plunging into the work along ahelical ramp whose outer diameter is 1.6 times the cutter diame...

  • Page 255

    A2100Di Programming ManualChapter 6Publication 91204426-00191May 2002Figure 7.25 G26.1 CircularG The I word specifies the amount of finish stock to be left on the side of the pocket,and the J word specifies the amount of finish stock to be left on the bottom of thepocket for those operations tha...

  • Page 256

    A2100Di Programming ManualChapter 6Publication 91204426-00192May 2002cycles use the sum of the Nominal Diameter and Diameter Offset fields from theTool Data Table and the Diameter Offset from the active Programmable Tool Offsetas the tool diameter.Cycle Actions1. Rapid the non-spindle axes to the...

  • Page 257

    A2100Di Programming ManualChapter 6Publication 91204426-00193May 2002arcs. The exit arc is located 1 mm along the arc past the entry point to ensurecleaning up the full surface.16. Repeat steps 13 and 14 until the bottom of the pocket is reached.17. Retract the spindle axis to the clearance plane...

  • Page 258

    A2100Di Programming ManualChapter 6Publication 91204426-00194May 2002Figure 7.26 G26.1 Circular Pocket Milling Example Illustration7.8.13 G27 Circular Inside FrameThe Circular Inside Frame cycle machines a circular pocket in the same manner as theCircular Pocket cycle, but this cycle assumes tha...

  • Page 259

    A2100Di Programming ManualChapter 6Publication 91204426-00195May 2002G I word - Cycle modal amount of stock to be left for finishing on the frame sides.G F word - Cycle modal finish feedrate.G S word - Cycle modal finish spindle speed.G W word - Nonmodal final retract distance measured from R - p...

  • Page 260

    A2100Di Programming ManualChapter 6Publication 91204426-00196May 2002G The P word specifies the maximum width of cut for each pass around the frame as apercentage of the nominal tool diameter from the tool table. If the P word is absent,the Frame Cycle Cut Width from the cycle parameter table is ...

  • Page 261

    A2100Di Programming ManualChapter 6Publication 91204426-00197May 20026. Repeat steps 3, 4, and 5 until the frame is complete to depth.7. If finishing is specified (Q = 0, 1, 4, 5, 10, 11, 14, or 15), activate the F and S wordsprogrammed in the frame cycle block and complete steps 8, 9, and 10.8. ...

  • Page 262

    A2100Di Programming ManualChapter 6Publication 91204426-00198May 2002Figure 7.28 G27 Circular Inside Frame Milling Example Illustration7.8.14 G27.1 Circular Outside FrameThe Circular Outside Frame cycle machines the outer surface of a circular shape whichis assumed to have adequate clearance on ...

  • Page 263

    A2100Di Programming ManualChapter 6Publication 91204426-00199May 2002G R word - Modal Reference Plane dimension.G Z Axis - Modal milling cycle depth or bottom surface dimension.G Q word - Cycle modal cycle type.G J word - Cycle modal amount of stock to be removed from the frame sides.G K word - C...

  • Page 264

    A2100Di Programming ManualChapter 6Publication 91204426-001100May 2002Figure 7.29 G27.1 Circular Outside FrameG The P word specifies the maximum width of cut for each pass around the frame as apercentage of the nominal tool diameter from the tool table. If the P word is absent,the Frame Cycle Cu...

  • Page 265

    A2100Di Programming ManualChapter 6Publication 91204426-001101May 2002G The nominal diameters of the roughing and finishing milling cutters are required bythe pocket milling cycles and must be present in the tool table.Cycle Actions1. Rapid the non-spindle axes to the cycle start point, which is ...

  • Page 266

    A2100Di Programming ManualChapter 6Publication 91204426-001102May 2002G One Finish Conventional Milling pass will be at final depth with increased spindlespeed and feedrate.G Rough/Finish cycle with T1 .750” End Mill.Example: G0 T1 M6N10 S900 M3 F5N20 G27.1 X0 Y0 U5 R0 Z-.75 J.5 P50 Q10 K.25 I....

  • Page 267

    A2100Di Programming ManualChapter 6Publication 91204426-001103May 2002Figure 7.30 G27.1 Circular Outside Frame Milling Example IllustrationG37, G38, G39 Pattern Cycles (Option)These Pattern Cycles are used in conjunction with the G80 hole making cycles, the G22- G27.1 milling cycles, and user wr...

  • Page 268

    A2100Di Programming ManualChapter 6Publication 91204426-001104May 2002Blocks with interpolation modes other than the G80 series fixed cycles, milling cycles, oruser pattern subroutines ignore the active pattern.8 End of Cycle Incremental Retract Dimension (W word)The G38 and G39 pattern cycles fi...

  • Page 269

    A2100Di Programming ManualChapter 6Publication 91204426-001105May 2002P2: the subroutine responds to pattern cycles and executes in NC program co-ordinates.G I, J, K - These words define an incremental vector from the operation site (at currentspindle depth) to the required PCS origin (at R plane...

  • Page 270

    A2100Di Programming ManualChapter 6Publication 91204426-001106May 2002If a subroutine is pattern sensitive but does not use pattern co-ordinates (DFS, , , P2),execution of G36 may be skipped if patterns are inactive, as:(IF [&PATTERN] THEN)G36 P2(ENDIF)G36.1 Pattern End/RetractParametersNone....

  • Page 271

    A2100Di Programming ManualChapter 6Publication 91204426-001107May 2002XY plane. For other machines, the spindle axis may change as right angle heads arefitted, or the spindle may rotate so that it is not parallel to Z.The pattern cycles are configurable to match the machine type. The description ...

  • Page 272

    A2100Di Programming ManualChapter 6Publication 91204426-001108May 2002Figure 7.31 G38 Rectangular PatternThe grid of locations is rotated by the angle specified in the O word from the positivedirection of the reference axis. If the O word is omitted, the grid is aligned along the axesof the sele...

  • Page 273

    A2100Di Programming ManualChapter 6Publication 91204426-001109May 2002unrotated orientation (R = 1). The effect of the R word is shown by the followingexamples.The pattern:G0 X500 Y35:G38 I4 U25 O30 R1generates four unrotated operations spaced along a line at a 30 degree angle to the +Xaxis. If t...

  • Page 274

    A2100Di Programming ManualChapter 6Publication 91204426-001110May 2002To illustrate the specific action of the G38 cycle the following program will create arectangular pattern, using a G81 drill cycle, then taps each hole in the rectangularpattern using G84. After each drill and tap operation the...

  • Page 275

    A2100Di Programming ManualChapter 6Publication 91204426-001111May 2002G W2 is the final retract distance after all drilling operation are complete.Block N30G Starts spindle clockwise at 850 RPM.Block N40G G81 code indicates a Drill cycle.G Z axis rapids to clearance plane then rapids to hole No. ...

  • Page 276

    A2100Di Programming ManualChapter 6Publication 91204426-001112May 2002Figure 7.34 G39 Circular PatternG39 Circular PatternThe G39 Circular Pattern code establishes a pattern of locations on the periphery of acircle or circle arc. Words in the G39 block establish the centre and diameter of thecir...

  • Page 277

    A2100Di Programming ManualChapter 6Publication 91204426-001113May 2002NoteThe location of the first operation can be given by programming either:G The operation circle diameter and the angular displacement of the first operationfrom the positive direction of the reference axis (using the P word)....

  • Page 278

    A2100Di Programming ManualChapter 6Publication 91204426-001114May 2002Figure 7.36 Circular Pattern 4 HolesG G39 moves the non-spindle axes motion in rapid traverse to the first operationlocation.G The remainder of the operations are performed moving around the circle in thedirection specified by...

  • Page 279

    A2100Di Programming ManualChapter 6Publication 91204426-001115May 2002N20 M3 S850N30 G81 Z-1 R0 F10 W1N40 G37N50 G0 M2Block :01G : Provides synchronisation of the control system.G T3 identifies a drill from the tool table. The code M6 is used for tool change if propertool is not selected.Block N1...

  • Page 280

    A2100Di Programming ManualChapter 6Publication 91204426-001116May 2002Figure 7.37 Circular Pattern 10 HolesG37 Cancel PatternCancel Pattern (G37) code cancels all pattern information set by previous Grid Pattern(G38) and Circle Pattern (G39) blocks. Following G37, G80 series hole making blocks,...

  • Page 281

    A2100Di Programming ManualChapter 7Publication 91204426- 0011May 2002Chapter 7ARITHMETIC EXPRESSIONS AND VARIABLESContents1Introduction...........................................................................................3 283,2 283,Arithmetic 283, Operators 283,..............................

  • Page 282

    A2100Di Programming ManualChapter 7Publication 91204426- 0012May 2002Intentionally blank

  • Page 283

    A2100Di Programming ManualChapter 7Publication 91204426- 0013May 20021 IntroductionWhilst numbers are adequate for most NC program word values, sometimes the valuesmust be computed during program execution. The control allows most word value to beexpressed using an arithmetic expression. Arithme...

  • Page 284

    A2100Di Programming ManualChapter 7Publication 91204426- 0014May 2002The contents of the parentheses are done first, then the exponentiation.G 12/2X3=18As multiplication and division are of the same hierarchical level, the operations areperformed left to right. division is done first then the mu...

  • Page 285

    A2100Di Programming ManualChapter 7Publication 91204426- 0015May 20023 Arithmetic and Trigonometric FunctionsAs well as arithmetic operations, the control can compute arithmetic and trigonometricfunctions within an NC program. These functions are listed in the following table. Theletters ARG rep...

  • Page 286

    A2100Di Programming ManualChapter 7Publication 91204426- 0016May 20023.1 Examples of Arithmetic FunctionsProgrammedDescriptionAnswerSIN (22.5)Sine of 22.5º0.3826834COS (15)Cosine of 15º0.9659258TAN (45.125)Tangent of 45.125º1.0043729ARCSIN (0.5)Inverse Sine (Arcsine) of 0.530ARCCOS (0.7071067...

  • Page 287

    A2100Di Programming ManualChapter 7Publication 91204426- 0017May 20024.4 System VariablesPrefixed by $, and are permanently assigned named variables supplied by the control.All variables are named using alphanumeric identifiers. A variable identifier must:G Be enclosed in square brackets “[ ]...

  • Page 288

    A2100Di Programming ManualChapter 7Publication 91204426- 0018May 2002Inside of “SUB1”, these same parameters are referenced by [&X], [&Y], [&Z], and [&F]respectively. For example, blocks inside the subroutine might look like:N0100 G1 X[&X] Y[&Y] Z[&Z] F[&F]N01...

  • Page 289

    A2100Di Programming ManualChapter 7Publication 91204426- 0019May 2002program is entered. If a subroutine uses local variables, every time the subroutine iscalled the variables are initially zero.Local variables are intended for use as “scratch pad” or working storage. They arezeroed at end o...

  • Page 290

    A2100Di Programming ManualChapter 7Publication 91204426- 00110May 2002As with local variables, the identifiers for common variables are bound to the variablesas they are encountered. The control provides 100 common variables for use by the NCprogram and its called NC program subroutines. Common ...

  • Page 291

    A2100Di Programming ManualChapter 7Publication 91204426- 00111May 2002System variables can be simple variables that consist of one number, arrays of values,or tables. Most system variables that are arrays are associated with axis positions.These axis position variables are referenced using the f...

  • Page 292

    A2100Di Programming ManualChapter 7Publication 91204426- 00112May 2002The field names are:G yearG monthG day of weekG dayG hourG minutesG secondsFor example:[#YEAR] = [$CALENDAR(1)year]Process Control Data TableThe control provides a scratch-pad for the collection of data in a part program that ...

  • Page 293

    A2100Di Programming ManualChapter 8Publication 91204426- 0011May 2002Chapter 8PROGRAM LOGIC, FLOW CONTROLContents1Overview............................................................................................... 3 295,2 295,Logical 295, Expressions 295,.......................................

  • Page 294

    A2100Di Programming ManualChapter 8Publication 91204426- 0012May 2002Intentionally blank

  • Page 295

    A2100Di Programming ManualChapter 8Publication 91204426- 0013May 20021 OverviewFlow control statements enable the programmer to control the execution of the NCprogram at execution time, both unconditionally and conditionally, based on the value ofa logical expression. These statements provide fo...

  • Page 296

    A2100Di Programming ManualChapter 8Publication 91204426- 0014May 2002:1000 ...N010 ...[OPERATION_3] N020 G1 F100 X10 Y10N030 ......N100 (GOTO [OPERATION_3])...This example is identical to the previous example but an alphanumeric identifier is used.Conditional Branch (IF <logical expression>...

  • Page 297

    A2100Di Programming ManualChapter 8Publication 91204426- 0015May 20024 Conditional Execution (IF <logical expression> THEN)The optional IF...THEN, ELSE, ELSEIF...THEN and ENDIF statements provide a morestructured method of controlling program execution than the GOTO and IF...GOTOstatements...

  • Page 298

    A2100Di Programming ManualChapter 8Publication 91204426- 0016May 2002For example:N100 (IF [@DEPTH] > 50 THEN)N110 G83 X100 Y115 R5 Z[@DEPTH]N200 (ELSE)N210 G81 X100 Y115 R5 Z[@DEPTH]N220 (ENDIF)In the example, if the depth of a hole to be drilled exceeds 50 mm, deep hole drillingcycle G83 is ...

  • Page 299

    A2100Di Programming ManualChapter 8Publication 91204426- 0017May 2002(CASE 82)G82 X! Y!(END SELECT)In the example, parameter [&G] is the test expression. If it is equal to 81, the first CASEstatement is chosen, if 82, the second CASE is chosen. If [&G] is neither 81 nor 82, nocase is sel...

  • Page 300

    A2100Di Programming ManualChapter 8Publication 91204426- 0018May 20026 Program Iteration (DO...LOOP) (Option)The DO, DO WHILE, LOOP and LOOP WHILE statements provide a structured programlooping capability. They are used as follows:[<label>] [Nxxxx] (DO WHILE <logical expression>)NC p...

  • Page 301

    A2100Di Programming ManualChapter 8Publication 91204426- 0019May 2002The same example can be performed using DO...LOOP WHILE as follows:...N100 [#PASS_NUMBER] = 0N110 (DO)...N290 [#PASS_NUMBER] = [#PASS_NUMBER]+1N300 (LOOP WHILE [#PASS_NUMBER] < 5)N310 ...NoteIf <logical expression> is ...

  • Page 302

    A2100Di Programming ManualChapter 8Publication 91204426- 00110May 2002The format of the ATR block is:[<label>] [Nxxxx] (ATR, L<exception handler label>)Where:G <label> is an optional label on the ATR block.G Nxxxx is the optional sequence number for the ATR block.G <exceptio...

  • Page 303

    A2100Di Programming ManualChapter 8Publication 91204426- 00111May 2002N080 (CLS, ”SUB1”, X[@X] Y[@Y])N090 G1 G91 F1 X1N100 G1 F1 Y1N110 [#OPERATION] = 2[OP2]N130 T3 M6N140 S100 M3N150 G1 F1 X3N160 G1 F1 Y2N170 M02N180;[TOOL_REC] ; Main program exception handler labelN200 (MSG, Recover for ou...

  • Page 304

    A2100Di Programming ManualChapter 8Publication 91204426- 00112May 2002Intentionally blank

  • Page 305

    A2100Di Programming ManualChapter 9Publication 91204426- 0011May 2002Chapter 9SUBROUTINES AND PROGRAM CHAININGContents1Overview............................................................................................... 3 307,2 307,NC Program 307, Chaining (CHN Block) 307,......................

  • Page 306

    A2100Di Programming ManualChapter 9Publication 91204426- 0012May 2002Intentionally Blank

  • Page 307

    A2100Di Programming ManualChapter 9Publication 91204426- 0013May 20021 OverviewThe control provides a means for one program to 'chain' to another program, and allowsprograms to call subroutines. The difference between chaining and a subroutine call isthat a program that is chained to is still a ...

  • Page 308

    A2100Di Programming ManualChapter 9Publication 91204426- 0014May 2002Example:[NEXT] N0500 (CHN, “PGM_12345”)N01000 (CHN, 562)WhereG Block N0500, a CHN statement transfers to a program named “PGM_12345”.G Block N01000, transfers to the program with program ID 562.NC Program SubroutinesAn ...

  • Page 309

    A2100Di Programming ManualChapter 9Publication 91204426- 0015May 20023 Call NC Program Subroutine (CLS)An NC program subroutine is called using the CLS Type II block. The format of the blockis:[<label>] [Nxxxx] (CLS,<subroutine>,<repeat>,<arguments>)Where:G <label> ...

  • Page 310

    A2100Di Programming ManualChapter 9Publication 91204426- 0016May 2002A subroutine begins with a Define Subroutine (DFS) block and ends with an EndSubroutine (ENS) block which can have a label. If it is necessary to exit the subroutinefrom some point within the body of the subroutine, it is possi...

  • Page 311

    A2100Di Programming ManualChapter 9Publication 91204426- 0017May 2002G <step over> is programmed as S0 or S1. It defines whether the subroutine behaveslike a single block or like a collection of blocks in Single Block mode. S0 or S1 notprogrammed causes the subroutine to stop at the end of...

  • Page 312

    A2100Di Programming ManualChapter 9Publication 91204426- 0018May 2002The subroutine inherits all of the modal values of the preparatory code groups(inch/metric, absolute/incremental, etc.), the miscellaneous code groups (spindle,coolant, etc.) and the modal values for all other functions such as...

  • Page 313

    A2100Di Programming ManualChapter 9Publication 91204426- 0019May 2002A pattern subroutine is typically coded as follows:(DFS,”SUB_4”,P1)(IF NOT [#FIRST_TIME] THEN)<blocks that check parameters and perform initialisation>[#FIRST_TIME]=1(ENDIF)G36 P1 ; move to first pattern location and ...

  • Page 314

    A2100Di Programming ManualChapter 9Publication 91204426- 00110May 20026 Move To Next Operation Location (G36) (Option)A G36 is programmed in a user NC program subroutine designated as a patternsubroutine before the blocks that define the operation. If a pattern is active, the G36causes a move fr...

  • Page 315

    A2100Di Programming ManualChapter 9Publication 91204426- 00111May 2002For example, the rectangular milling cycles allow the reference point of the rectangle tobe either the centre of one corner. Internally, these two different specifications call asingle operation that places pattern co-ordinate...

  • Page 316

    A2100Di Programming ManualChapter 9Publication 91204426- 00112May 2002N190 X-2N200 Y-1N210 Z1N220 G36.1 R4 ;End pattern, retract to 10” + 4”N230 (IF [$PATTERN_END] THEN)N240 G91 G1 Z6 ;Feed to 20”N250 (ENDIF)N260 (ENS);N331094 G90 G0 X0 Y0 M309.2 G36 P1 4 Rectangular Patterns I, J, K Offse...

  • Page 317

    A2100Di Programming ManualChapter 9Publication 91204426- 00113May 20029.3 G36 P1 4 Rectangular Patterns X, Y, Z Offsets (Incremental):331100 G0 G94 G90 G70 G17 X2 Y2 Z8 F100;N010 G1 X1 Y1N020 G39 X0 Y0 Z8 S1 D4 P0 K4 W10 R0;Pattern centred at X=0 Y=0,;Aligned at 0 deg, 4 inch diameter,;4 rectang...

  • Page 318

    A2100Di Programming ManualChapter 9Publication 91204426- 00114May 2002N030 (CLS, ”PATTERN”) ;Call pattern subN040 G37N050 G04 F0.1;N100 (DFS, ”PATTERN”, P2) ;Pattern subroutine;P0 = ignore patterns;P1 = execute pattern, use pattern co-ordinates;P2 = execute pattern, ignore pattern co-ord...

  • Page 319

    A2100Di Programming ManualChapter 9Publication 91204426- 00115May 2002N180 Y1N190 X0N200 Y0N210 Z2N220 G36.1 R4 ;End pattern, retract to 10” + 4”N230 (IF [$PATTERN_END] THEN)N240 G91 G1 Z6 ;Feed to 20”N250 (ENDIF)N260 (ENS);N331104 G90 G0 X0 Y0 M309.6 G36 P1 4 Rectangular Patterns, No G36 ...

  • Page 320

    A2100Di Programming ManualChapter 9Publication 91204426- 00116May 2002Intentionally blank

  • Page 321

    A2100Di Programming ManualChapter 10Publication 91204426- 0011May 2002Chapter 10PRINT, MESSAGE, and FILE BLOCKSContents1Overview............................................................................................... 3 323,2 323,Message Output 323, Blocks 323,...............................

  • Page 322

    A2100Di Programming ManualChapter 10Publication 912044526- 0012May 2002Intentionally blank

  • Page 323

    A2100Di Programming ManualChapter 10Publication 91204426- 0013May 20021 OverviewThe machine control provides NC programs with several means to display or recordmessages for the operator, for recording results of machining or probing operations, andfor communication with a host computer system.Al...

  • Page 324

    A2100Di Programming ManualChapter 10Publication 912044526- 0014May 2002The same string can be formatted without spaces between the sign and the first digit byspecifying ;[@PROBE_X]:0.4; which causes the formatted string to occupy as manyspaces as necessary to contain the sign, decimal point, fou...

  • Page 325

    A2100Di Programming ManualChapter 10Publication 91204426- 0015May 2002In this example, the double quote mark in 1/2” actually terminates the message stringand the remaining characters result in a syntax error. This example should be writtenwithout the enclosing quotes e.g.:N1200(MSG,ROUGH THE...

  • Page 326

    A2100Di Programming ManualChapter 10Publication 912044526- 0016May 20026 INP (Operator Input) BlockOperator Input (INP) block allows the NC program to display a prompt message in adialog box on the operator station, and request a numeric response from the machineoperator. When the INP block is ...

  • Page 327

    A2100Di Programming ManualChapter 10Publication 91204426- 0017May 2002G N0180 (CLS,”PART_AB2345”)G N0190 [#GOOD_INPUT] = 1G N0210 (CASE 2)G N0220 (CLS,”PART_AB2369”)G N0230 [#GOOD_INPUT] = 1G N0240 (CASE 3)G N0250 (CLS,”PART_AB2388”)G N0260 [#GOOD_INPUT] = 1G N0270 (CASE ELSE)G N0280...

  • Page 328

    A2100Di Programming ManualChapter 10Publication 912044526- 0018May 2002G N0110 (DO WHILE NOT [#GOOD_INPUT])G N0120 (INP,[#SELECTION] =”Enter 1 for part #ab2345, 2 for part #ab2369, or 3 forpart #ab2388:” T45)G N0130 (SELECT CASE INT([#SELECTION]))G N0140 (CASE 0) ; TIMEOUTN0150 (ALM, ”No r...

  • Page 329

    A2100Di Programming ManualChapter 10Publication 91204426- 0019May 2002For example:A PAG block specifying T5 means that a print line starting with two HT characters startsprinting in the 10th column position. The parameters set by the PAG block are activeuntil a PRT block specifying F2 (end of p...

  • Page 330

    A2100Di Programming ManualChapter 10Publication 912044526- 00110May 2002G Nxxxx is the optional sequence number for the JRN block.G <message> is an NC program message string. The string is limited to 132characters; any characters in excess of 132 are truncated. The string can containmess...

  • Page 331

    A2100Di Programming ManualChapter 10Publication 91204426- 00111May 200212 WTF (Write To File) BlockThe Write to File (WTF) block causes one record to be written to the file specified by themost recent File Pathname (FIL) block. The FIL block with F2 specified is used to closethe file when all o...

  • Page 332

    A2100Di Programming ManualChapter 10Publication 912044526- 00112May 2002The format of the DWG block is:[<label>] [Nxxxx] (DWG,<program>)Where:G <label> is an optional label on the DWG block.G Nxxxx is the optional sequence number for the DWG block.G <program> is either a ...

  • Page 333

    A2100Di Programming ManualChapter 11Publication 91204426- 0011May 2002Chapter 11DATA ACQUISITIONContents1Data Acquisition ........................................................................... 3 335,1.1 335,Overview................................................................................

  • Page 334

    A2100Di Programming ManualChapter 11Publication 91204426- 0012May 2002Intentionally blank

  • Page 335

    A2100Di Programming ManualChapter 11Publication 91204426- 0013May 20021 Data Acquisition1.1 OverviewThe machine control provides a facility for collecting machine and process data in realtime and either storing the data in a file for later processing, or displaying the data on theworkstation scre...

  • Page 336

    A2100Di Programming ManualChapter 11Publication 91204426- 0014May 2002The format of the DAI block is:[<label>] [Nxxxx] (DAI, <data sample specifiers> T<sample period> S<sample time>V<trigger variable> P<pretrigger time> L<trigger level> R<trigger dire...

  • Page 337

    A2100Di Programming ManualChapter 11Publication 91204426- 0015May 2002The NC program can write to this item just prior to starting data acquisition to control theblock number captured. The DATA_CAPTURE (xx) information is an array of floatingpoint variables. The array is a system variable named...

  • Page 338

    A2100Di Programming ManualChapter 11Publication 91204426- 0016May 2002from low to high values. If the R word is negative, the trigger event occurs when thetrigger variable value crosses the trigger level going from high to low values.Fig. 1 Interaction of P and S Triggers to Specify Data Colle...

  • Page 339

    A2100Di Programming ManualChapter 11Publication 91204426- 0017May 20021.3 DAS (Data Acquisition Save)The Data Acquisition Save (DAS) block causes the information previously collected by aData Acquisition Initialisation (DAI) block and the M34 and M35 Data Acquisition On/Offcodes, to be written to...

  • Page 340

    A2100Di Programming ManualChapter 11Publication 91204426- 0018May 2002M35(DAS)(FIL,F2)M2Execution of this program results in the data file ”test.dat” being created on the usersdirectory. This file can be accessed using the control file manager utility. The file can beimported into third pa...

  • Page 341

    A2100Di Programming ManualChapter 11Publication 91204426- 0019May 200235 +550.28992 +294.62340 +6079.46667 +9.36 +550.34338 +294.15016 +6349.86667 +9.37 +550.40392 +293.65734 +6620.26667 +9.38 +550.47212 +293.14508 +6890.66667 +9.39 +550.54862 +292.61346 +7161.06667 +9.40 +550.63402 +292.06270 +7...

  • Page 342

    A2100Di Programming ManualChapter 11Publication 91204426- 00110May 2002452 +550.08162 +302.85584 +4385.60000 +9.453 +550.06474 +302.54360 +4169.33333 +9.454 +550.05054 +302.24746 +3953.06667 +9.455 +550.03872 +301.96746 +3736.80000 +9.456 +550.02904 +301.70360 +3520.53333 +9.457 +550.02130 +301....

  • Page 343

    A2100Di Programming ManualChapter 12Publication 91204426-0011May 2002Chapter 12PROGRAM TRANSLATIONContents1Overview............................................................................................... 3 345,1.1 345,Fanuc 345, Translation 345,..............................................

  • Page 344

    A2100Di Programming ManualChapter 12Publication 91204426-0012May 2002Intentionally blank

  • Page 345

    A2100Di Programming ManualChapter 12Publication 91204426-0013May 20021 OverviewThe program translation function translates correct part programs, using standardfeatures written for Fanuc Series 0 MC, and Acramatic 850SX MC controls, intoprograms that are compatible with the A2100 control system ...

  • Page 346

    A2100Di Programming ManualChapter 12Publication 91204426-0014May 2002must be properly set-up to ensure accurate translation. The following is a list of theTRANSLATION PARAMETERS table items and the corresponding Fanuc SYSTEMPARAMETER number.TRANSLATION PARAMETERSFanuc® SYSTEMPARAMETERS1One-Dig...

  • Page 347

    A2100Di Programming ManualChapter 12Publication 91204426-0015May 2002Example:FanucG-SUB NUMBERA2100TRANSLATION TEXT(Numeric Field)(Text Field)25G1259993 Fanuc System Registers TableThe purpose of the machine control configuration table is to match the Fanuc® systemvariables with the appropriate...

  • Page 348

    A2100Di Programming ManualChapter 12Publication 91204426-0016May 2002will be a single block containing ”(INV,X1)”. Any items before the M21 code would be inthe block previous to ”(INV,X1)” and any items after the Fanuc M21 code would be in theblock following the ”(INV,X1)”.Fanuc pro...

  • Page 349

    A2100Di Programming ManualChapter 12Publication 91204426-0017May 2002The translation always starts from the beginning of the program, and the translatedprogram is stored in the second edit buffer. If the translation is successful, the translatedprogram should be saved with a new filename by the...

  • Page 350

    A2100Di Programming ManualChapter 12Publication 91204426-0018May 2002Fanuc (3) N3 G00 G80 G90 G40 G49 G17 G20A2100 (3) N3 G80A G80 code will always be placed in a separate block. Earlier softwareversions included an R plane assignment to the current position of the Z axisR[$CURPOS_PGM(Z)]...

  • Page 351

    A2100Di Programming ManualChapter 12Publication 91204426-0019May 2002Fanuc (8) N8 G43 Z.1 H01 S2000 M03A2100 (8) N8 Z0.1 O1 S2000. M3The Fanuc Offset Table entry 01 (H word) is translated to a machine controlProgrammable Tool Offset Table entry (O word). The G43 code is used todesignate t...

  • Page 352

    A2100Di Programming ManualChapter 12Publication 91204426-00110May 20026 Degree Of Fanuc® CompatibilityThis translation feature is designed to translate part programs written for the standardFanuc 0-MC control. If the part program falls outside of the following specification somemanual modifica...

  • Page 353

    A2100Di Programming ManualChapter 12Publication 91204426-00111May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsPolar Co-ordinatesCommandG16E-wordand L-wordfmDepending on the plane selected by G17, G18, orG19; Fanuc uses the X-word for the Command Radiusin...

  • Page 354

    A2100Di Programming ManualChapter 12Publication 91204426-00112May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsThe machine control reference point is specified by theP-word:P1 or no P-word = Automatic Tool Change Position.P2 = Manual Tool Change Position....

  • Page 355

    A2100Di Programming ManualChapter 12Publication 91204426-00113May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsCutterCompensationLeftG41G41fFanuc G41 and G42 use H-words (or D-words) whosevalues are indexes into an offset table where the offsetamount to b...

  • Page 356

    A2100Di Programming ManualChapter 12Publication 91204426-00114May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsWork Co-ordinateSystem 5SelectG58H5fmFanuc allows up to 6 different co-ordinate systemsselected by the respective G-code.Select Fixture Offset 5...

  • Page 357

    A2100Di Programming ManualChapter 12Publication 91204426-00115May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsPeck DrillingCycleG73G83m This Fanuc G-code translates to a machine controlG83 code with the J-word set for chip breaking.CounterTapping Cycle(F...

  • Page 358

    A2100Di Programming ManualChapter 12Publication 91204426-00116May 2002Fanuc G-codes Supported in the Machine ControlFunctionFanuc®CodeA2100CodeCommentsFeed perMinuteG94G94fmThe Fanuc F-word format is xxx.xx inch and xxxxxxmetric.Note: Fanuc also allows a one-digit F code feed (i.e.F1-F9) which ...

  • Page 359

    A2100Di Programming ManualChapter 12Publication 91204426-00117May 20027 Fanuc M-CodesThe following M-codes will always be translated as follows and should not be enteredinto the M-CODE TRANSLATION table.FunctionFanuc®CodeA2100CodeCommentsSubroutineM98”(CLS,”fmFanuc uses an M98 with a P-word...

  • Page 360

    A2100Di Programming ManualChapter 12Publication 91204426-00118May 20028 Fanuc CommentsFunctionFanucCodeA2100CodeCommentsComment/MSGDelimiters(.......) ”(MSG,” fmFanuc uses parentheses to encompass aprogram comment.The machine control translator inserts an ”MSG,”immediately following the ...

  • Page 361

    A2100Di Programming ManualChapter 12Publication 91204426-00119May 2002Fanuc G65H-CodeFanuc FunctionFanuc DefinitionFanuc Program Example81Conditional Branch 1IF #j = #k, GO TO nG65 H81 P120 Q#101R#10282Conditional Branch 2IF #j <> #k, GO TO nG65 H82 P220 Q#101R10.083Conditional Branch 3IF ...

  • Page 362

    A2100Di Programming ManualChapter 12Publication 91204426-00120May 200211.2 Acramatic 850SX G-CODE Translation TableThis machine control set-up table allows Acramatic 850SX G-code values to be inputinto the ”NUMBER” column. The ”TRANSLATION TEXT” column is a text field of 32characters to...

  • Page 363

    A2100Di Programming ManualChapter 12Publication 91204426-00121May 2002The following table lists those items which are, and which are not supported by thetranslation function on the machine control. The comments column in this list describesthe Acramatic 850SX and machine control operations.The ...

  • Page 364

    A2100Di Programming ManualChapter 12Publication 91204426-00122May 2002A850SX G-Codes Supported in the Machine ControlFunctionA850sxCodeA2100 CodeCommentsRectangular HolePatternG38G38mSameCircular HolePatternG39G39mSameCutter DiameterCompensation-CancelG40G40mSameCutter DiameterCompensation- Cutt...

  • Page 365

    A2100Di Programming ManualChapter 12Publication 91204426-00123May 2002A850SX G-Codes Supported in the Machine ControlFunctionA850sxCodeA2100 CodeCommentsSurfaceMeasurement -Locate InternalCornerG75G75mSameSurfaceMeasurement -Locate ExternalCornerG76G76mSameSurfaceMeasurement -Locate SurfaceG77G7...

  • Page 366

    A2100Di Programming ManualChapter 12Publication 91204426-00124May 2002A850SX G-Codes Supported in the Machine ControlFunctionA850sxCodeA2100 CodeCommentsIncrementalDimension InputG91G91mSame.Position SetG92G92mSame.Inverse TimeFeedrate ModeG93G93amSame for linear spans.For a circular span, the A...

  • Page 367

    A2100Di Programming ManualChapter 12Publication 91204426-00125May 2002A850SX G-Codes Supported in the Machine ControlFunctionA850sxCodeA2100 CodeCommentsSpindle Axis FullRetractM26M26mSameCoolant #3 ONM29M27mTranslated into a different M-codeEnd of SegmentM30(CHN,n)mThe M code is changed to a CH...

  • Page 368

    A2100Di Programming ManualChapter 12Publication 91204426-00126May 2002A850SX Type II Blocks Supported in the Machine ControlOperator MessageMSGMSGmSameRotate Co-ordinateSystemROTROTmSameSet Low LimitsSLOSLOmSameSet High LimitsSHISHImSameA850SX Type II Blocks Not Supported in the Machine ControlF...

  • Page 369

    A2100Di Programming ManualChapter 12Publication 91204426-00127May 2002A850SX G10 Table Assignments Supported by the Machine ControlA850SXTable/FieldFunctionA850SX ValueA2100 Table/FieldAssignmentXX OffsetXYY OffsetYZZ OffsetZTDA$TOOL_DATAA Tool Tip AngleTIP_ANGLESameD Tool DiameterNOM_DIASameE N...

  • Page 370

    A2100Di Programming ManualChapter 12Publication 91204426-00128May 2002A850SX G10 Table Assignments Supported by the Machine ControlA850SXTable/FieldFunctionA850SX ValueA2100 Table/FieldAssignment3=Stop0=DIR_STOPT Threads perInchTPISameTLDTool Location$TOOL_DATAT Tool IdentifierIDENTIFIERSameTWRT...

  • Page 371

    A2100Di Programming ManualChapter 12Publication 91204426-00129May 2002The following sub-routine parameter variables exist in an internal translation table:A850sxParameterA2100VariableP1&G *P2&XP3&YP4&ZP5&A, B, or CP6&IP7&JP8&KP9&FP10&SP11&TP12&M *P...

  • Page 372

    A2100Di Programming ManualChapter 12Publication 91204426-00130May 2002A950 MC Parameters Translation TableTranslation ParametersA950 Commissioning DataItem Number2Interpolation State0 = G00 (rapid traverse)1 = G0143Feedrate State94 = G94 (FPM)93 = G93 (1/T)95 = G95 (FPT)54Contouring/Positioning ...

  • Page 373

    A2100Di Programming ManualChapter 12Publication 91204426-00131May 200240*999* The machine application group will supply the information for M-Codes 40 through 47and M-Codes 50 through 199.16.1 Acramatic 950 Machine Register TableThe purpose of this A2100 table is to match A950 Machine State regi...

  • Page 374

    A2100Di Programming ManualChapter 12Publication 91204426-00132May 2002The following table lists those items that are and are not supported by the translationfunction on the Cincinnati Milacron A2100 control. The ”Comments” column in this listdescribes the Acramatic 950 and A2100 operations....

  • Page 375

    A2100Di Programming ManualChapter 12Publication 91204426-00133May 2002A950 G-Codes Supported in the Machine ControlFunctionA950CodeA2100CodeCommentsAcceleration/Deceleration -DISABLEDG46G46mSameShort Look AheadG47-mThis mode is not required in A2100 andwill be ignored.Long Look AheadG48-mThis mo...

  • Page 376

    A2100Di Programming ManualChapter 12Publication 91204426-00134May 2002A950 G-Codes Supported in the Machine ControlFunctionA950CodeA2100CodeCommentsInverse Time FeedrateModeG93G93amThe F - word is modal in A950.For a circular span, the A950 F-wordcontains the inverse time to traverse thearc leng...

  • Page 377

    A2100Di Programming ManualChapter 12Publication 91204426-00135May 2002A950 M-Codes Supported in the Machine ControlFunctionA950CodeA2100CodeCommentsTool ChangeM6M6mSame.Coolant #2 ONM7M7mSame.Coolant #1 ONM8M8mSame.Coolant OFFM9M9mSame.ClampM10M10.1mSame.UnclampM11M11.1mSame.Spindle CW and Coola...

  • Page 378

    A2100Di Programming ManualChapter 12Publication 91204426-00136May 2002A950 M-Codes Supported in the Machine ControlFunctionA950CodeA2100CodeCommentsEnd of Last SegmentM32M30amThe current program segment is endedand the first program segment isloaded.The current program segment is endedand a mess...

  • Page 379

    A2100Di Programming ManualChapter 12Publication 91204426-00137May 2002Page FormatPAGPAGmThe A2100 lacks the “Lines per form”parameter, which the A950 has, this will beinterpreted as “Line per page”.Program Identification PGMPGMmThe “Name”, “ID”, “Count”, and “Status”field...

  • Page 380

    A2100Di Programming ManualChapter 12Publication 91204426-00138May 2002A950 Type II Blocks Not Supported in the Machine ControlFunctionA950CodeCommentsTool Data TableTDA*Tool Location TableTLD*Timer BlockTMRNot available in A2100Tool Wear TableTWR**No provision exists for A2100 tables to be loade...

  • Page 381

    A2100Di Programming ManualChapter 12Publication 91204426-00139May 2002A950 Table Assignments Supported by the Machine ControlA950Table/FieldFunctionA950 ValueA2100 Table/FieldAssignmentSPart Status0=AbsentSETUP_STATE0=Absent1=PresentSETUP_STATE1=Present2=LastSETUP_STATE2=Last3=CompletePART_STATU...

  • Page 382

    A2100Di Programming ManualChapter 12Publication 91204426-00140May 2002A950 Table Assignments Supported by the Machine ControlA950Table/FieldFunctionA950 ValueA2100 Table/FieldAssignmentELinear 3 axisZFLinear 4 axisAGLinear 5 axisBHLinear 6 axisCJRotary 1 axisJKRotary 2 axisKPOFProgrammable Offse...

  • Page 383

    A2100Di Programming ManualChapter 12Publication 91204426-00141May 2002A950 Table Assignments Supported by the Machine ControlA950Table/FieldFunctionA950 ValueA2100 Table/FieldAssignment13=Back Bore17=Back Bore14=Probe18=Probe15=Spot Drill11=Spot Drill16=Thread Mill9=Thread Mill17=Special 119=Spe...

  • Page 384

    A2100Di Programming ManualChapter 12Publication 91204426-00142May 200219 A950 Machine State Registers Supported in the Machine ControlMachine state registers not found in the following internal table may be entered in theMACHINE REGISTERS translation table when there is an equivalent A2100 syste...

  • Page 385

    A2100Di Programming ManualChapter 12Publication 91204426-00143May 2002A950RegisterA950Machine StateA2100System VariableM161Active Tool Type$TOOL_DATA(0)TYPEM162Active Tool Tip Angle$TOOL_DATA(0)TIP_ANGLEM163Active Tool Pocket$TOOL_DATA(0)POCKETM164Active Tool Nominal Diameter$TOOL_DATA(0)NOM_DIA...

  • Page 386

    A2100Di Programming ManualChapter 12Publication 91204426-00144May 200222 A950 Sub-routine Parameter Variables Supported in the MachineControlThe following sub-routine parameter variables exist in an internal translation table:A950 ParameterA2100 VariableP1&GP2&XP3&YP4&ZP5&BP6...

  • Page 387

    A2100Di Programming ManualChapter 12Publication 91204426-00145May 200224.1 Translation Errors and RecoveryIf an error occurs while performing a translation, the translation will stop at that block, adialog box will display the related error message, and the cursor will be positioned at theword w...

  • Page 388

    A2100Di Programming ManualChapter 12Publication 91204426-00146May 2002Error: TRN_ERR_BAD_GRAMMAR_P1 ErrorA Translator program error occurred on the first pass of the translation.Solution:This is a problem within the Translator Program software. Report this error tothe manufacturer with the speci...

  • Page 389

    A2100Di Programming ManualChapter 12Publication 91204426-00147May 2002Error: TRN_ERR_A850_ASSIGN_TABLE_VALUEThe assignment value is invalid for the designated field.Solution:G Reference the A850SX or A950 G10 Table Assignments chart for validvalues for that field. Edit the original part program...

  • Page 390

    A2100Di Programming ManualChapter 12Publication 91204426-00148May 2002Error: TRN_ERR_NO_TRN_CYC_PARMIndicated cycle parameter is not defined in the cycle parameter translationtable.Solution:G Add the indicated cycle parameter to the translation table with theappropriate A2100 system variable, or...

  • Page 391

    A2100Di Programming ManualChapter 13Publication 9204426- 0011May 2002Chapter 13POSITION/CONTOURING ROTARY AXIS (OPTIONAL)Contents1Rotary A-axis........................................................................................ 3 393,2 393,Rotary 393, Axis 393, Motion 393, Codes 393,..........

  • Page 392

    A2100Di Programming ManualChapter 13Publication 91204426- 0012May 2002Intentionally blank

  • Page 393

    A2100Di Programming ManualChapter 13Publication 9204426- 0013May 20021 Rotary A-axisThe rotary A-axis code is an eight-digit number preceded by the letter A.. Leading andtrailing zeros may be omitted. The decimal point is only necessary if the end point is notin whole degrees, and if no sign is...

  • Page 394

    A2100Di Programming ManualChapter 13Publication 91204426- 0014May 2002The direction of rotation, illustrated above, is said to be positive when the tool movescounterclockwise around a stationary workpiece. On machining centre installations,however, the tool is stationary, and the rotary table r...

  • Page 395

    A2100Di Programming ManualChapter 13Publication 9204426- 0015May 2002G93 G01 X-Y-Z-A-F2.3 Rotary axis rotation will start with the linear slide motion andthe move will be fully interpolated so that all motion will stop inthe span time specified in the programmed inverse time (G93)feedrate word -...

  • Page 396

    A2100Di Programming ManualChapter 13Publication 91204426- 0016May 2002Fig. 3.2 Linear Interpretation of Rotary MovementFig. 3.2 shows how a series of 90º indexes has brought the A axis to the 450º position -see inset program N10 - N50. The “A+90” command in block N60 rotates the faceplat...

  • Page 397

    A2100Di Programming ManualChapter 13Publication 9204426- 0017May 2002SL = 22)ASL(X+Where:X= X-Axis Span Length in mm (ins).ASL= A-Axis Span Length in mm (ins).The X-Axis Span Length is the distance between the point where the move starts in Xand where the move stops.The A-axis Span Length is the...

  • Page 398

    A2100Di Programming ManualChapter 13Publication 91204426- 0018May 2002Feedrate Number CalculationFRN=V 60 x SLFRN=125 60 x 139FRN = F0.015Execution Time CalculationFRN = 1 SecondsExecution Time (Seconds)= 1 FRN= 1 0.015= 66.7 SecondsWhen a rotary axis motion is comb...

  • Page 399

    A2100Di Programming ManualChapter 13Publication 9204426- 0019May 2002If the calculated rotary rate of 18 degrees/minute does not exceed the feedrate range ofa rotary axis, then an adjustment to the linear feedrate is unnecessary.The following table and example show how to convert minutes and sec...

  • Page 400

    A2100Di Programming ManualChapter 13Publication 91204426- 00110May 2002Fig. 5.1 Rotary B-axis. Normal Direction of ViewFrom the operators position, a positive B-axis command (e.g.: B0.000 to B+90.000) isseen as a CCW rotation of the faceplate. As indicated within the A-axis description, thedir...

  • Page 401

    A2100Di Programming ManualChapter 13Publication 9204426- 00111May 20026 Dual Rotary Axis ApplicationsA dual rotary axis device usually takes the form of a tilting axis, integrated with a rotaryaxis. Both axes may interpolate together with the linear axes of the machine. The rotaryaxis is norma...

  • Page 402

    A2100Di Programming ManualChapter 13Publication 91204426- 00112May 2002device such that the tilting axis is parallel to the X-axis, with the rotary axis facing alongthe Y-axis. Such an arrangement is shown in Fig. 6.2.Fig. 6.2 Table Arrangement for Larger Versions of Dual Rotary Axis DriveFrom...

  • Page 403

    A2100Di Programming ManualChapter 13Publication 9204426- 00113May 2002will cause Y and Z offsets to rotate. Similarly, B-axis rotation causes the X and Z offsetsto rotate.The system will rotate offsets about one rotary axis, either A, B or C. In dual rotary axisapplications, the machine will b...

  • Page 404

    A2100Di Programming ManualChapter 13Publication 91204426- 00114May 20028.1 Rotary Clamp/Unclamp ExamplesMilling ExampleHole Making ExampleN456 G0 A180 M10N567 G80 A180-M10N457 G1 Y---N568 G81 XYZRFSMN458 G0 Y--- Z---M11N569 G80 A210 M10N459 A270 M10N570 G81 XYZRWN460 G1 Y--- ETCN571 G80 A240 M10...

  • Page 405

    A2100Di Programming ManualChapter 14Publication 91204426-0011May 2002Chapter 14PROGRAMMERS QUICK REFERENCEContents1Introduction.......................................................................................... 3 407,2 407,Terms 407, and 407, Definitions 407,.................................

  • Page 406

    A2100Di Programming ManualChapter 14Publication 91204426-0012May 2002Intentionally blank

  • Page 407

    A2100Di Programming ManualChapter 14Publication 91204426-0013May 20021 IntroductionThis Chapter provides:G A summary of the Type I and Type II word formats.G A summary of information about the G and M codes.G The programmable parameters used by G80 fixed cycles.G The programmable parameters used ...

  • Page 408

    A2100Di Programming ManualChapter 14Publication 91204426-0014May 2002AddressFunctionI J KAxis Interpolation Parameter with G2/G3, Circle Centre and Helix Lead withG75 - G79, Nominal Axis Position Spline Interpolation Parameters.FFeedrate.Dwell Time.P Q RCutter Diameter Compensation Normal Vecto...

  • Page 409

    A2100Di Programming ManualChapter 14Publication 91204426-0015May 2002MnemonicNameFunctionPGMProgramSpecifies Program Name and Attributes.PRT (Option) PrintWrites a Line to a Printer.OPR (Option) Operator QueryRequest YES/NO Answer from Operator.ROTRotateRotates NC Program Co-ordinates in Selected...

  • Page 410

    A2100Di Programming ManualChapter 14Publication 91204426-0016May 2002G CodeDescriptionGroupG15.2*Polar Co-ordinate Programming, partcontourPolar Program.G17*XY Plane SelectPlane Select.G18*ZX Plane SelectPlane Select.G19*ZX Plane SelectPlane Select.G22, 22.1 Milling Cycle Rectangular FaceInterpo...

  • Page 411

    A2100Di Programming ManualChapter 14Publication 91204426-0017May 2002G CodeDescriptionGroupG51.5Measure Feature-to-Feature in Z PlaneNon-modal (Probe Option)1.G52Local Co-ordinate SystemLocal Co-ordinates.G52.1Spindle Normal Co-ordinate SystemPolar Co-ordinate Interpolation.G60*Positioning ModeCo...

  • Page 412

    A2100Di Programming ManualChapter 14Publication 91204426-0018May 2002G CodeDescriptionGroupG151Scaling OnScaling.Note Codes marked (*)are configurable reset states.5 M CodesEach M code is shown as a member of a group. At most one M code from each groupcan appear in a block. Two or more M codes ...

  • Page 413

    A2100Di Programming ManualChapter 14Publication 91204426-0019May 20026 Cycle ParametersThe Cycle Parameters tables provides a means of entering and modifying parametersassociated with fixed cycle operations. To view the Cycle Parameters tables:G Select the Cycle Parameters Menu (under the Displa...

  • Page 414

    A2100Di Programming ManualChapter 14Publication 91204426-00110May 2002Drilling CycleProgramReferencesRangeCommentsG83Deep HoleDrill (PeckDrill) RetractDistanceG83_RET_DIST0 to 99.99999 inch0 to 999.9999 mmRapid retract distance to break chip.Used with J word 1 or 11.G83Deep HoleDrill (PeckDrill)...

  • Page 415

    A2100Di Programming ManualChapter 14Publication 91204426-00111May 20026.2 Milling Cycle ParametersMilling CycleProgramReferenceRangeFunctionMilling CycleDepthProgrammingMIL_DEPTH0 or 1Controls spindle axis machiningdepth. Setting this field to 0 selectsabsolute bottom surfaceprogramming. Settin...

  • Page 416

    A2100Di Programming ManualChapter 14Publication 91204426-00112May 20026.3 Tool Table FieldsNotes1. The unique Tool Reference Number is not a visible field in the Tool Manager,however it is accessible from a part program via a READ ONLY Program FieldName called REF_NUMBER.2. To ensure that modifi...

  • Page 417

    A2100Di Programming ManualChapter 14Publication 91204426-00113May 2002Tool ManagerField NameProgram FieldNameDescriptionLoad MethodLOAD_METHOD Defines how the tool is loaded into the spindle:Auto = 0Manual = 1Cradle = 2Heavy Auto = 3TypeTYPESpecifies the type of tool. The following are the defin...

  • Page 418

    A2100Di Programming ManualChapter 14Publication 91204426-00114May 2002Tool ManagerField NameProgram FieldNameDescription# TeethTEETHUsed in feed per tooth calculations. Range is 1-99 teeth, 1tooth specifies FPR mode. Must be non-zero with SFPOption.Diam OffsetDIA_OFFSETUsed for CDC compensatio...

  • Page 419

    A2100Di Programming ManualChapter 14Publication 91204426-00115May 2002Tool ManagerField NameProgram FieldNameDescriptionUsage LimitUSAGE_LIMITMaximum number of uses per tool (0 - 9999) (Tool CycleTime and Count Option).Usage ModeUSAGE_MODEIndicates whether usage count should accumulate (ToolCycle...

  • Page 420

    A2100Di Programming ManualChapter 14Publication 91204426-00116May 2002Variable NameDefinitionArray IndexRange[$CUR_SETUP]The number of thecurrently active set-up,or -1 if there is no set-up active.N/A[$CURPOS_MCH]Current Position inMachine Co-ordinates.Machine Co-ordinatevalues are the actualmac...

  • Page 421

    A2100Di Programming ManualChapter 14Publication 91204426-00117May 2002Variable NameDefinitionArray IndexRange[$PLUNGE_PCT]Used in contour millingto control plunge feedrate where feed ratelimitation is require.N/A1 to 100 representing 1%to 100% of theprogrammed feed rate.[$POSITION_OFS]Position of...

  • Page 422

    A2100Di Programming ManualChapter 14Publication 91204426-00118May 2002ExampleProgram SegmentFunctionMachine Offsets[$MACH_OFFSET(1)X] = .5In the Machine Offset Table, thevalue 0.5 will be loaded into record1 in column X.Cycle Parameters[$CYCLE_PARAMS(2)G82_FIN_DPTH] = .25In the Cycle Parameter T...

  • Page 423

    A2100Di Programming ManualChapter 14Publication 91204426-00119May 20027.1 Program Examples (Parameter Variables)NoteThe following Parameter Variables contain values of the parent (calling) program or sub-routine, not the current sub-routine. For the main program, the values are the ModalReset va...

  • Page 424

    A2100Di Programming ManualChapter 14Publication 91204426-00120May 2002Modal StateVariable NameModal GroupStates[&PATTERN]Pattern0 - No pattern active (G37)1 - Rectangular pattern active (G38)2 - Circular pattern active (G39)[&POLAR_PGM]Polar programming mode 0 - Bolt circle (G15.1)1 - Pa...

  • Page 425

    A2100Di Programming ManualChapter 14Publication 91204426-00121May 20027.2 Mathematical FunctionsFunctionArgument RangeValue ReturnedSIN-1.7 x 10308 [ ARG [ +1.7 x 10308 ARG isin DEGREESSine of ARG, where:-1 [ SIN (ARG) [ +1COS-1.7 x 10308 [ ARG [ +1.7 x 10308 ARGis in DEGREESCosine of ARG, where:...

  • Page 426

    A2100Di Programming ManualChapter 14Publication 91204426-00122May 2002Intentionally blank

  • Page 427

    A2100Di Programming ManualChapter 15Publication 91204426-0011May 2002Chapter 15SYSTEM CONFIGURATIONContents1Configuration Overview .......................................................................3 429,1.1 429,Security 429,.....................................................................

  • Page 428

    A2100Di Programming ManualChapter 15Publication 91204426-0012May 2002Intentionally blank

  • Page 429

    A2100Di Programming ManualChapter 15Publication 91204426-0013May 20021 Configuration OverviewThe Acramatic 2100 NC control system is configured by setting various systemconfiguration parameters, by means of icon menu buttons displayed when theconfiguration window is opened. The following items a...

  • Page 430

    A2100Di Programming ManualChapter 15Publication 91204426-0014May 20021.2.2 Cutter Diameter Compensation (CDC)Report CDC ErrorWhen checked, CDC errors will be displayed and reported in the Alarms Journal. Whenunchecked, CDC errors will not be displayed or reported in the Alarms Journal.Constant ...

  • Page 431

    A2100Di Programming ManualChapter 15Publication 91204426-0015May 2002Figure 1.1 CDC Glide On/Glide OffWhen unchecked, CDC Glide On/Glide Off is not performed, and the cutter radiusdeviation bisects the angle between two spans.Figure 1.2 CDC Glide On/Glide Off1.2.4 Report Alarms1.2.4.1 Report PRT...

  • Page 432

    A2100Di Programming ManualChapter 15Publication 91204426-0016May 20021.2.6 ModesUsed to set the Modal G Code Default state used when Data Reset is activated, a colonblock is executed, or end of program is encountered.Default Modal G Codes selections are as follows:G0 RapidG91 IncrementalG1 L...

  • Page 433

    A2100Di Programming ManualChapter 15Publication 91204426-0017May 2002G NC program execution can be held until the function is complete (a fixed time, orsignalled by an external input signal) or NC program execution can be allowed tocontinue.G The output signal can be configured to be normally on...

  • Page 434

    A2100Di Programming ManualChapter 15Publication 91204426-0018May 2002Hold ProgramWhen checked (On), Program Execution will wait for feedback, or if pulsed selected, willwait for pulse to time-out.When unchecked (Off), Program Execution will continue and will not wait for feedback orpulse time-ou...

x