You are on page 1of 10
ral PATTERN OF HOLES In the point-to-point machining operations. consisting of drilling, reaming, tapping, boring, etc., we are often re- quired to machine either a single hole or a series of holes, ‘with the same too, usually followed by olher tools. In prac- tice, several holes are much more common than a single hole. Machining several holes with the same tool means ‘machining a pattern of holes or a hole partern. An English ictionary defines the word ‘pattern’ as a ‘characteristic or Consistent arrangement or design’. Translated to the hole ‘machining terms, any two or more holes machined with the same tool establish a pattern. The desired hole pattern is laid out in the part drawing either randomly (characteristic arrangement or design) or in a certain order (consistent ar- rangement or design). Camenstoning of a nole pattern fol- lows standard dimensioning practices. “This chapter describes some typical hole pattern laid out ‘on a flat part and the various methods of their program- ming. To make matters simple, all programming examples related tothe hole patterns will assume acenter drilling op- eration, using a #2 center drill, with chamfer diameter 150, to the depin of .163 (progranmed us Z-0.163). The pro gram zero (program reference point Z0) isthe top face of part and the tool i assimee to he alrealy’in the spindle. For the purposes of clarity, no hole diameters or material size and thickness are specified in the examples From the dictionary definition above, we have to estab- lish what makes a hole pattern characteristic or consistent Simply, any series of holes that are machined with the same tool, one hole after another, usually in the order of conven- ence. That means all holes within a single pattern have the same nominal diameter. It also means that all machining must start atthe same R level and end at the same Z depth. Overall, it means that all holes within a pattern are ma- chined the same way for any single tool TYPICAL HOLE PATTERNS Hole patterns can be categorized into several typical groups, each group having the same character. Every hole pattern’ encountered im CNC programming belongs into cone of the following pattern groups: 2 Random pattern © Straight row pattern {Angular row pattern a Corner pattern Grid pattern Are pattern Bott circle pattem Some groups may be divided further into smaller sub- ‘groups. A thorough understanding of each pauern group should help you to program any similar hole pattern ‘There are several control systems available that have built-in hole pattern programming, for example for a bolt circle pattern. These programming routines simplify the hole pattern programming quite substantially, but the pro- ‘gram structure is usually unique to that particular brand of Control and cannot be applied to other controls RANDOM HOLE PATTERN ‘The must eon nom pattern used in programming holes is a random pattern, Random pattern of holes is a ‘where all holes share the same machining character but the X and Y distances between them are inconsistent. In other words, holes within a random pattern share the same tool, the same nominal diameter, usually the same depth, but a variable distance from each other - Figure 27-1. a 62 = Le 44 “4 Figure 27-1 Rondom pattem of hoes program example 02701 ‘There are no special time saving techniques used in pro- gramming a random pattern - only a selected fixed cycle Used at individual hole locations, AL XY coordinates within the hole pattern have to be programmed manuall the control system features will be no help here at all 217 218 02702 (mao HOLE ATTEN) 1 G20 2 G17 G40 G30 ¥2 cD0 C54 C00 x14 ¥0.e £900 402 M4 G43 21.0 HO1 MOB NS G99 Goi RO.1 2~ NG _X3.0 ¥2-0 WT x4.4 V1.6 NB X5.2 ¥2.4 NS GEO MOS wo 628 20.1 Mos Wi G28 X5.2 ¥2.4 m2 150 5 STRAIGHT ROW HOLE PATTERN 163 F3.0 Hole patterns parallel to the X or Y axis with an equal pitch isa straight row pattern, Figure 27-2 shows a 10 hole pattern along the X axis, with a pitch of 950 inch, “= 095 TYP @000000000 }! - = 118 oe Figure 27.2, ‘Straight row hole pattern - program example 02702 ‘The programming approach takes advantage of a fixed cycle repetition feature, using the L or K address. It would be inefficient to program each hole individually. Asalways, the tool will be positioned at the first hole in G90 mode, then the eyele will machine the first hole in block NS. For the remaining holes, G90 mode must be changed to incremental mode G91, which instructs the control to ma- chine the other nine holes incrementally, along the X axis only. The same logic would also apply for a vertical pattern along the Y axis. In that case, the pitch increment would be programmed along the Y axis only. Note that the repetition ‘count is always equal to the number of spaces, not the num. ber of holes. The reason? The first hole has already been machined in the eycle call block. 02702 (STRAIGHT ROW HOLE PATTERN) m1 aan N2 G17 G40 G80 M3 G90 G54 GOO x1.18 ¥0.6 $900 NO3 M4 43 31-0 Ho1 400 NS G99 G81 RO.1 2-0.163 F3.0 NS G91 x0.95 19 7 90 M03 N@ G28 20 MOS N9 G28 x0 YO mio 130 s Chapter 27 ‘Two features of program 02702 should be emphasized, In block N6, the dimensioning mode was changed from the absolute G90 to the incremental G91, to take advantage of the equal pitch distance. When all ten holes have been ma- cchined, the program has to inclide return to the machine zero porition motion, in the example, along all three axcs. However, without a calculation, we do not know the abso- lute position atthe tenth hole for the X axis (the Y axis re- ‘mains unchanged at the position of OU inches = YU.6). 10 solve this *problem’, cancel the cycle with G80, leave the ‘G91 mode in effect and move to the machine zero position in the Z axis first (for safety reasons). Then - still in the in- ccremental mode G91 - return both X and Y axes to the ma- chine zero simultaneously. Normally, this first tool of the example would be fol- lowed by other tools to complete the hole machining. To protect the program and machining from possible prob- lems, make sure that the G90 absolute command is rein- stated for every too! that follows. ANGULAR ROW HOLE PATTERN Pattein of holes in a row at an angle is a variation of a straight line pattern, The difference between the two is that the incrensental pitch applies co both X and Y axes. A hole pattern of this type will be established on the part drawing as one of the two possible dimensioning methods: 2 Xand ¥ coordinates are given forthe fist and the last hole In this method, the pattern angular position isnot spe fied and no pitch between holes is given (2 X.and ¥ coordinates are given forthe frst hole only In this method, pattern angular position is specified and itch between the holes is given, In cther case, all the necessary X and ¥ dimensions are available to write the program. However, the programming, approach will be different for each method of drawing dimensioning ‘© Pattern Defined by Coordinates ‘This method of programming is simitar to the straight row pattem. Since the pitch between holes is not given, the increment between holes along each of the two axes must be calculated. This axial distance is commonly known as the detta distance (delta X is measured along the X axis, delta ¥ is measured along the Y axis), Such a calculation cean be done in two equally accurate ways The first calculation method can use a trigonometric method, but it is much easier to use the ratio of sides in stead, In the Figure 27-3, the pattern length along the X axis is 10.82 and alon; (2625 - 625 = 20) PATTERN OF HOLES 10.82 - Figure 27-3, ‘Angutar hole pattem with two sets of coordinates - program 02703 Pattern ofthis kind has all the holes spaced by equal dis- tances along X and ¥ axes. As all holes are equally spaced, the ratio of the sides for individual holes is identical to the ratio ofthe whole pattern. When expressed mathematically, the inerement hetween holes along the X axis is equal tothe overall distance of 10.82 divided by the number of X axis spaces; the increment along the Y axis is equal to the over- all distance of 2.0 divided by the number of Y axis spaces, ‘The number of spaces fora six hole pattern is five, so the X axis increment (the delta X) i: 10.82 / 5 = 2.1640 and the Y axis increment (the delta Y) is: 20/554 ‘The other calculation method uses trigonometric func tions, which may also be used as a confirmation ofthe frst method, and vice versa, Both results must be identical, or there is & mistake sourewhere it the calculation, Fitst e9- tablish some temporary values: Ae tan*(2.0 / 10.82) = 10.47251349° © = 2.0 / ima = 11.00329063 cl = C/ 5 = 2.20065813 Now, the actual increment along the two axes can be cal- culated, using C1 dimension as the distance between holes: X increment = Cl x cosA = 2.1640 x increment = Cl x sina = .4000 ‘The calculated increments match in both methods, calcu- lation 1s correct, and can now be used to write the program (02703) - block N6 contains the values: 02703 (ANGULAR ROW 1) NI G20 Na 017 G10 coo 3 G90 G54 GOO x1.0 ¥0.625 $900 M03 Nd 43 21.0 HOI M08 NS G99 GEi RO.1 Z-0.163 F3.0 NG G91 x2.164 ¥O.4 LS (x5) 219 7 cao we NB G28 20 MOS N9 G28 x0 ¥O wia wa. [Note that the program structure is identical to the exam= ple of the straight row pattern, except the incremental move with L5 (KS) address is along two axes instead of one, Pattern Defined by Angle Anangular line patters can also be defined in the drawing by the X and Y coordinates of the first hole, the number of caqually spaced hives, de distance between lnoles aul the angle of pattern inclination - Figure 27-4 20 i - = 20 gure 27-4 Angular hole pattem with coordinates, pitch and angle - 02704 In order to calculate the X and Y coordinate values, use trigonometric functions in this case: X= 4.0 x cosls = 3.863703305, ¥ = 4.0 x sinl5 = 1.03527618 Program can be written after you round off the calculated values - program 02704 02704 (ANGULAR ROW 2) ™ zo 2 G17 Gto ceo NB G90 G54 G00 x2.0 ¥2.0 $900 MO3 Na G43 21.0 HOL mos N5 G99 GB1 RO.1 2-0.163 F3.0 N6 G91 X3.8637 ¥1.0353 L6 (K6) N7 G80 M03 N@ G28 ZO MOS No @2e x0 ¥0 N10 130 % Since the calculated increments are rounded values, a certain ‘accumulative eror is inevitable. n most cases, any eror will De well concained within the required crawing tolerances However, for the projects quiring the highest precision tis error may be important and must be taken into consideration. 220 ‘To make sure all calculations are correct, a simple check ing method can be used to compare the calculated values: © sept Find the absolute coordinates XY of the fast hole: X = 2.04 (4.0 x 6 x cosis) 25,10221909 - 225.2022 Y= 2.04 (4.0 x 6 x ints) 8,211657082 = v8.2117 © Stop 2 ‘Compare these new XY coordinates with the previously. calculated increments as they relate to the last hole of the. pattern (using rounded values): X= 2.0 + 3.8637 x 6 = 25.1822 Yo = 2.04 1.0353 x 6= 8.2118 Note that both X and ¥ values are accurate. When round: ing, particularly when a large number of holes is involved, the’ accumulative error may cause the hole pattern out of tolerance. In that case, the only correct way to handle the programming is to calculate the coordinates of each hole as absolute dimensions (that means from a common point rahe than a previous poin, The programming process will take a little longer, but it will be much more accurate. CORNER PATTERN Paitcin uf holes can be arranged as a earner ~ which is nothing more than a pattern combining the straight and/or angular hale patterns » Figure 27-5. Chapter 27 comer hole will be machined price. Visualize the: whole process - the last hole of one row patter is also the first hole of the next pattern, duplicated. Creating a special cus- {om macro 1s worth the time tor many corner patterns. ‘The normal solution isto move the tool tothe first position, call the required eyele and remain within that cycle: (02705 (CORNER PATTERN) ma 20, N2 G17 G40 G80 NB G90 G54 G00 x2.2 ¥1.9 5900 M03 Na G43 21.0 HO2 MOS N5 G99 GB1 RO.1 2-0.163 F3.0 N6 G91 _X1.5 ¥i.8 12. (K2) M7 X1.8 6 (X6) NO ¥-1.8 12 (2) wa cao Mos M10 G28 20 MoS WIL G28 x0 YO m2 10 * ‘The program offers nv special challenges. In bluck N6, the angular row of holes is machined, starting from the lower left hole, in N7 iti the horizontal row of holes, and, in NB the vertical row of holes is machined. The order is continuous. Just like in the earlier examples, keep in mind that the repetition count L oF K is for the number of moves (spaces), not the number of holes, GRID PATTERN Basic straight grid pattern can also be defined as a set of equally spaced vertical and horizontal holes, each row hav- ng equally spaced holes. Ifthe spacing vf al yeitival hules is the same as the spacing of all horizontal rows, the final arid pattern will be a square. If the spacing of all vertical holes is not the same as the spacing of all horizontal rows, the resulting grid pattern is a rectangle, A grid pattern is 1B = 15 sometimes called a rectangular hole patter = Figure 27-6. GoococesG a “Ti 3 of |e eit ©0000 19 0000044 SS 0000044 ol gia |e 00000 C9000 Fowe 7-5 00000 Comer patom of hele program example 02705 e000} All rules mentioned for the straight and angular hole pat- = teins apply for acorner patern as well. The most important a tam difference isthe comer hole, which is common to two rows, A comer pattern can be programmed by calling a fixed cy- cle for each row. Soon, it will become apparent that each Figure 27-8 Rectangular grid hole pattern - program example 02706 PATTERN OF HOLES A guid pater is very similar toa series of comer patterns, using similar programming methods. The major considera tin for grid pattem programming ini ficiency Bach row can be programmed as a single row patter, starting, for example, from the left side of each row. Technically, that is correct, although not very efficient duc tothe loss of time, when the tool has to travel from the last hole of one row, 10 the first hole of the next row. ‘More efficient method will look like a zigeag motion, To program a 7igzag motion, program the first row or column starting at any corner hole. Complete that row (column), then jump to the nearest hole of the next row (column) and repeat the piucess until all ows and columns are done. The wasted time of the rapid motion is kept to the minimum, 02706 (STRAIGHT GRID PATTERN) G20 G17 G40 G80 G90 G54 GOO x1.7 ¥2.4 $900 M03 G43 Z1.0 W021 08 989 03 RO.3 5-0.369 79.0 G91 ¥2.1 LE (K6) 1.8 ¥-2.2 Le (xs) x18 ¥2.2 L6 (K6) x18 ¥-2.1 16 (K6) 1.8 211 Le (x6) G30 M09 N17 @28 20 MOS N18 G26 x0 YO mis 130 * BS5582588 BERGER ‘Two features of the program are worth noting - one is the Jump from one row of the patter to another - thas no repe- tition address L or K, because only one hole is being ma- cchined at that location. The second feature may not be so obvious right away. To make the program shorter, start along the axis that contains the larger number of holes (the * axis Inthe program example 02706). This exauuple is « variation on the previous examples and also adheres to all the rules established so far. A special subprogram made for a grid pattern is also acommon programming approach and can be used as wel. ‘© Angular Grid Pattern Aldiouglt the suaight grid pattern is the most common pattern for square and rectangular hole arrangement, grid pattern may also be in the shape of a parallelogram, called an angular grid pattern - Figure 27-7. Again, the programming approach remains the same as for the rectangular grid patter, the only extra work re- quired is the calculation of the angular inerements, similar to previous methods: 221 + 40— 32— Figure 27-7 “Angular grid hale patter - program example 02707 ‘The unknown increment in the drawing 1s the distance ‘measured along the X axis, from a hole in one horizontal row to the next hole in following horizontal row: 2 4.6 x tanl6 = 1.319028774 (1.319) ‘The program can be written in a similar way as for the straight row grid, except the extra ‘jump’ between rows will take place along both axes: (02707 (ANGULAR GRID) mi G20 Nz G17 G40 G80 3 G30 G54 G00 24.0 ¥9.5 9900 M09 N4 G43. 21.0 #01 MOB NS G99 GBi_RO.1 2-0.163 F3.0 NG G91 X3.2 15 (KS) 1.319 Y4.6 X-3.2 15 (5) N9 X1.319 Y4.6 Mio x3.2 15 (x5) wii vi 218 va & M12 X-3.2 LS (KS) 13 ¢80 M09 wad 28 20 MDS ms G28 xo YO Nis 160 Many experienced programmers will consider even more efficient way of approaching the programs fr grid patterns by using subprograms or even User Macros, Subprograms are especially useful for grid patterns consisting of a large ‘number of rows or a large number of columns. The subject cluding a practical example of a really 1 is covered in Chupler 39. The subject of user macros is not covered in this handbook. 222 Chapter 27 ARC HOLE PATTERN Another quite common liule patie iy a set of equally spaced holes arranged along an arc (not a circle). Such an equally spaced cet of holes along any postion of acirele cir- ‘cumference creates an arc hole pattern, “The approach to pragramming an are hale pattern show be the same as if programming any other hole pattern. Se- lect the first hole as the one that is most convenient. Ist the first hole or the last hole on the are that is easier to find the coordinates for? Perhaps starting at 0° (3 o'clock or East position) won he better? The illustration in Figure 27-8 shows a typical layout of an are hole pattern 1 - 10 28 4 EQSP HOLES ae} 16 be Figure 27-8 Ac hole pattern - program 02708 Inthe pattern, the are center locations are known, 303 the arc radius, angular spacing between holes and the number ‘of equally spaced holes along the circumference. ‘A number of calculations is needed to find the X and Y coordinates for each hole center location within the bolt hole pattern. The procedure is similar to that of an angular line in a grid pattern, but with several more calculations ‘The calculation uses trigonometric Tunctions applied 10 ceach hole separately - all necessary data and other informa- tion are listed in the drawing. For any number of holes, exactly the double number of calculations will be required to get the coordinates for both axes. In the example, there are four holes, therefore cight calculations will be necessary. Initially, it may seem as alot Of work. In terms of calculations, it Is a lot of work, but keep in mind that only two trigonometric formulas are in- volved for any number of holes, sa the calculations will he ‘come a lot more manageable. Incidentally, this observation can be applied to just about any other similar programming application, ‘The best way to illustrate the are pattern programming, is to use the drawing example. First, the programming task will be split into four individual steps: © STEP 1 Start with the calculation of a hole that is nearest to 0° lo- cation (3 o'clock position or East direction), then continue for other holes in the counterclockwise direction of the arc. © STEP 2 {Use trigonometric finnetions 10 calculate the X and ¥ eo ordinates of the first hole: Hole #1 20 = 3.849231552 (x3.8492) 90 = 1.855050358 (v1.8551) g © STEPS Use the same trigonometric formulasas in Step 2 and cal- culate XY coordinates for the 3 remaining holes. For each hole in the pattern, increase the included angle by 20°, so the second hole angle will be 40°, the third 60°, and so on: Hole #2 X= 1.5 + 2.5 x cosdo = 3.415111108 (x3.4151) Y= 1.0 + 2.5 x sindo = 2606969024 (¥2.607) Hole #3 Ke1se 2. 730000000 (xZ.75) 25% Ye104 2.5% Hole #4 sin60 3.165063509 (¥3.1651) cos00 ~ 2.994220444 Ga.9942) x sin80 = 3.462019383 (v3.462) © STEP 4 Ifthe XY coordinates are calculated in the same order as they will appear in the CNC program, the listing ofall hole locations can be used in that order: 33.8492, 33.4151, 22.7500, 1.9341, 1.8552 ¥2.6070 y3.1652 3.4620 Hole #4: Now, the program for the hole are pattern can be written, using the XY coordinates for each hole location from the established caleulations - program 012708: 02708 (ARC PATTERN) mL G20 N2 G17 G40 G80 N3 G90 G54 G00 x3.8492 ¥1.8551 $900 M03 Na G43 71.0 HO MOB N5 G99 G31 RO.1 2-0.163 F3.0 N6 X3.4151 ¥2.607 NT 32.75 ¥3.1652 N8 1.9341 ¥3.462 PATTERN OF HOLES 9 00 09 N10 628 20.1 MOS WIL G28 x1.9341 ¥3.462 312 150 % There are two other methods (perhaps more efficient) to program an are hole pattern, The first method will take an advantage of the local coordinate system G52. deseribed in ‘Chapter 40. The second method will use the polar coordi- nate system (optional on most controls), described later in this chapter - in program 02/10, BOLT HOLE CIRCLE PATTERN A pattern of equally spaced holes along the circumfer- ence of a circle is called a bolt circle pattern ot a bolt hole pattern. Since the circle diameter is actually pitch diameter of the pattern, another name for the bolt circle pattern of holes isa pitch circle pattern. The programming approach is very similar to any other patter, pasticularly to the are hole pattern and mainly depends on the way the bolt circle pattern is oriented and how the drawing is dimensioned. A typical bolt circle in a drawing is defined by XY coor- dinates of the circle center, its radius or diameter, the num- ber of equally spaced holes along the circumference, and the angular orientation of holes, usually in relation tothe X. ‘axis (that i t0 the 2or0 degrees) A bolt cirele can be made up of any number of equally spaced holes, although some numbers are much more com- ‘mon than others, for example, 4,5,0,8, 10, 12, 10, 18, 20, 24 In later examples, the 6-hole and the 8-hole patterns (and. their multiples) have rwo standard angular relationship to the X axis at zero degrees. Figure 27-9is atypical bolt circle drawing. The program- ‘ming approach for a bolt circle is similar to arc pattern. gure 27-9 Bolt circle hole patter - program 02709 223 First, select the machining location (o suart from, usually at program zero. Then find the absolute XY coordinates for the center of the given circle. In the illustration, the bolt pat- tern center coordinates are X7.5Y6.0. There will be no ma- chining at this location, but the center of the circle will be the starting point for calculations of all holes on the bolt cis~ cle. When the circle center coordinates are known, write them down. Each hole coordinate on the circumference ‘must be adjusted by one of these values. When all calcula- tions for the first hole are done (based on the circle center), continue to calculate the X and ¥ coordinates for the other holes on the circle circumference, in an orderly manner. In.cxample 02709 are 6 equally spaced holes on the bolt circle diameter of 10.0 inches. That means there isa 60° in- crement between holes (360/6=60). The most common starting position for machining is at the boundary between quadrants. That means the most likely start will be at a po- sition that corresponds to the 3, 12, 9 oF 6 o'clock on the face of an analog watch, In this example, the start will be at the 3 o'clock position. There is no hole at the selected loca- tion, the nearest one will be at 30° in the counterclockwise direction, A good idea isto identify this hole as a hole num- ber I. Other holes may be identified in a similar way, pref erably in the order of machining, relative to the first hole, Note that each calculation uses exactly the same format. Any other mathematical approach can be used as well, but watch the consistency of all calculations: Hole #1 X= 7.5 + 5.0 x cos30 = 11.830127 (x11.8301) Y= 6.0+5.0 x sin30 = 8.500000 (v8.5) Hole #2 X= 7.5 + 5.0 x coa90 = 7.500000 (X7.5) ¥ = 6.0 + 5.0 x sin90 = 11.0000000 (xi1.0) Hole #3 X= 7.5 + 5.0 x coai50 = 3.16987298 (x3.1699) ¥ = 6.0 + 5.0 x sinl50 = 8.500000 (8.5) Hole #4 A= 1.5 + 5.0 x coszi0 = 3.16987298 (23.1699) ¥ = 6.0 + 5.0 x sinzi0 = 3,50000000 (¥3.5) Hole #9 X= 765 + 5.0 00270 ~ 7,50000000 (7.5) ¥ = 6.0 + 5.0 x sin270 = 1.000000 (v1.0) Hole #6 Xe 7.8 4 §.0 x ooaa30 = 1.820127 (11-201) Y= 6.0 + 5.0 x sin330 = 3.500000 (v3.5) 224 Once all coordinates are calculated, the program 1s writ ten in the same way as for the previous patterns: (02709 (BOLT CIRCLE PATTERN) NL @20 N2 G17 @40 Goo N3 G90 G54 GOO x11.8301 ¥e.5 $900 NOs N4 G43. z1.0 #02 108 HG G99 Goi RO.4 2-0.269 F9.0 yi1.0 Itwould be more logical to select the bolt cirele center as program zero, rather than the lower left corner ofthe part. This method would eliminate modilications of the bolt cr- cle center position for each coordinate value and perhaps reduce a possibility of an error. At the same time, it would make it more difficult to set the work offset G54 on the ma- chine. The best solution is to use G52 local coordinate offset method. This method is especially useful for those {jobs that require translation of the bolt circle pattern (or any other pattern) to other locations ofthe same part setup. For details on the G52. command, see Chapter 40. Bolt Circle Formula In the previous calculations, there are many repetitious lata. The methods are the same, only the angle changes. ‘This type of calculation offers an excellent opportunity for creating a common formula that can be used, for example, as the basis of a computer program, calculator data input, etc, Figure 27-10 shows the basis for such a formula. Chapter 27 Using the following explanation and the formula, coordi- nates for any hole in any bolt circle pattern can be calcu- lated easily. The formula is similar for hath axes: X— cos ((n-1)« BLA) REX Y= sin((n=1) x B+ A)x R+Y, se where. Hole X coordinate = Hole Y coordinate Hole number counter - CCW from 0° Number of equally spaced holes ‘Angle betwveen les = 380/H First hole angle - from 0° Bolt circle radius or bolt circle diameter/2 Bolt circle center from the X origin Bolt circle centr from the Y origin KhmEore

You might also like