Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
Open navigation menu
Close suggestions
Search
Search
en
Change Language
Upload
Sign in
Sign in
Download free for days
0 ratings
0% found this document useful (0 votes)
305 views
Chapter-13 (CNC Programming)
Uploaded by
Ami Apurba
AI-enhanced title
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save Chapter-13(CNC Programming) For Later
Download
Save
Save Chapter-13(CNC Programming) For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
0 ratings
0% found this document useful (0 votes)
305 views
Chapter-13 (CNC Programming)
Uploaded by
Ami Apurba
AI-enhanced title
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
Download now
Download
Save Chapter-13(CNC Programming) For Later
Carousel Previous
Carousel Next
Save
Save Chapter-13(CNC Programming) For Later
0%
0% found this document useful, undefined
0%
, undefined
Embed
Share
Print
Report
Download now
Download
You are on page 1
/ 48
Search
Fullscreen
mir Arndt CAD | f i] li] Second Edition PS MUM) ltr ClayAa CNC Programming Objectives CNC part program is a detailed list of instructions that need to be executed by the machine control unit (MCU) to achieve the final component shape. The machining sequence needed to manufacture a given part is broken down into small elements and written in a specific format understood by the MCU. The programming language needs to be studied to develop meaningful part programs. After completing the snidy of this chapter the reader should be able to © Understand the fundamentals of part programming in terms of the various steps needed to be taken for completing a successful CNC part program Comprehend the elements of manual part programming methods using word address format and the ISO G-coding systems Learn the part programming fundamentals related to the use of various word addresses. Appreciate different preparatory (G codes) and miscellaneous functions (M codes) as used in CNC part programs Write and prove sample part programs for CNC machining centres in planar milling operations using the word address format Understand the concept of canned or fixed cycles for the hole making operations Learn the use of cutter diameter and length compensation while using with multiple cutting tools {ST PART PROGRAMMING FUNDAMENTALS ST To be a good CNC programmer, one should have a fair knowledge about the machine tools, cutting tools and fixtures to be used and the manufacturing process. He also should have a good understand- ing of geometry, algebra and trigonometry. In fact, machine shop experience is the prerequisite for a 00d programmer as only careful process planning can lead to efficient and practical programs.Ea Manufacturing Aspects of Industrial Products The total steps involved in the development of a part program and its proving is shown in Fig. 13.1. The following are some of the steps that are detailed below: Process planning ‘© Job and tool setup planning ‘© Axes selection ‘© Machining path planning © Tool selection ‘Part program writing ; © Cutting process parameters planning ‘© Part program proving ——__—— Study Part Print - Identity Machine Too! }~ Teentify Operations ) Sapam | i -+——_r_4 Scan and Tooling Toole Determine Feeds, | __ Speeds, Depts, Power ability Database Prepare Set up Sheet -———_ wiih Work Setting and Tooling Assembly L Develop Part Program ‘Simulate Too! Path 7 ae Dry Run er (Cut the First Part I Inspect the Pat = {>} Proven Part Bl Fig. 13.1. Steps Involved in the Development of a Proven Part Program in NC Machiningwc Programming P33] Process plan is a detailed plan of the steps involved in manufacturing (machining) a given part. The following are the contents of a process plan: Machine tool used = Fixture(s) required * Sequence of operations * For cach of operation ™ Cutting tools required = Process parameters A programmer is supposed to carry out a careful study of the part drawing to prepare the process Plan. The choice of the machine tool used depends upon the operations required, accuracy require- ments, machine tool capability and availability, cutting tool availability and the shop practices. A careful choice of various options at this stage would decide on the final cost of manufacture of the Part. A typical process plan is shown in Table 13.1 for the part to be machined as shown in Fig. 13. 13.1.1 Process Planning Table 13.1. Process Plan for the Component Shown in Fig. 13.2 Op. No. Description Tools 10 End mill the top face, 100 » 100 mm Shell end mill, $60 mm 20 End mill the steps, 20 x 100 x $ mum Shell end mill, $60 mm 30 Mill pocket, 40 x 40 x 8 mm HSS End mill, $10 mm 40 Drill the six holes, 96 x 15 mm HSS twist drill, 96 mm pis : By 10 +204 + p ] : 6 10-4 on Leope! b+-—ao—+1 opts i 13.2 A Typical Component for NC MachiningManufacturing Aspects of Industrial Products 13.1.2 Axes Selection All the CNC machine tvols rely on the axes system for describing the axes motion. To correctly describe the motion, it is therefore necessary to establish the axes system to be followed with the Particular part, The ISO designation of axes was discussed in Chapter 10. In tune with that axes system, one has to choose the axes. However, it is also necessary for one to choose the axes system as appropriate to the machine tool coordinate system in question. The axes system of all the CNC machine tools would generally have a fixed datum position as designated by the machine tool manufacture, It may be called as reference position, fixed datum or home position. This absolute datum position of the CNC machine tool may not be very convenient for setting the job, Hence. most of the CNC machine tools come with “Floating Datum’. In this case the Programmer can select the part datum anywhere in the machining limits of the machine tool based on the geometry of the part being machined The reference axes should be chosen so that coordinates for various features can be determined (Fig. 13.3), Here, X and Y are the reterence axes. For the sake of convenience, the orthographic views of the component are shown, L— ss, ‘50 —>4 > x so—+! -9— T T L BS] Fig. 13.3 Part for NC Machining Shown with Axes System at the Centre The basis for choosing the axes system is more to do with the part geometry and the type of machine tool being used. When the operator is developing the program. it becomes extremely impor: tant to choose the right type of datum, since a careful selection climinates a large amount of calcula- tion process. Also the part program becomes simple, being able to make use of the advanced software facilities such as mirror imaging, etc.HC trae Ea The first principle w be used while arriving at the datuin is that: if pansible Keep all the part in the first quadrant OF the coordinate system, This would help in having all the courdinate values as positive. I helps the fist thine programmer in eliminating ax many errors ax possible. Once enoughs experience is gained, it would be possible for the programmer to carefully adjust the values, Similarly touching the two sides of the pre-machined workpiece can easily do the setting of the tool, ‘The Zaxis datuin is kept ly to match with the top surface of the workpiece. This helps in two ways, First all positive values of % coordinate would keep the tool away from the workpiece, #0 that the collision of tool With the work is avoided, Secondly when the tool is to be set, the tool tip can be casily matched with the workpicce twp surface. Sometimes the could be choxen as the geometric centre of the workpiece if all the xeometry is symmetrical as shown in Fig. 13.3, In such a choice. the geometry calculation effort reduces to 4 minimum, Also the mirror image facility available in the controller can be effectively exploited. The H nuinber of dimensions required to describe the component. All the other al about the axes system chosen, For the same component choosing the left is the datum reader ean nolice the s 100 a 2S Lc +-—s0 [) Fig. 13.4 Same Part as in Fig. 13.3 but wlth Axes System at the Bottom Left Corner 13.1.3 Tool Selection The choice of cutting tools is a very important function, since for a given operation many a tools are feasible, but some of them would be more economical than others, Therefore, in the economy of Manufacture, it is essential to choose the right tool for the job. As a rule, we will only select the ‘egular cutting tuls for using in CNC machine tools. No special tooling is gencrally suggested, since ‘he geometry can very well be generated by the CNC control,Eg Manufacturing Aspects of Industrial Products As an example when a contour is being milled, the choice can be an end mill or a slot drill. End mill is stronger and can take deeper cuts than a corresponding slot drill. However, slot drill can enter into a solid material, but an end mill cannot in view of the fact that the cutting edge in the bottom does not extend to the centre of the tool. As a result, an end mill should always approach the workpiece from the side while the slot drill ean approach from the side or from the top. Also the size of an end mill or stot drill depends on the contour to be machined. You should choose the largest size of end mill available for better surface finish and higher material removal rate, However, the tool radius may be limited often by the radius of curvature b generated, For example, some times a tapered end mill or slot drill would make the machining very simple in generating the draft surfaces of dies and moulds. Otherwise, generating a draft angle may take a large amount of programming. Details of tooling were covered in Chapter 11 13.1.4 Cutting Process Parameters Planning For a given tool and the operation selected, the appropriate process parameters arc to be selected. These are to be generally taken from the handbooks supplied by the cutting tool manufacturers or based on the shop experience. It is important in the context of CNC manufacture that the feeds and speeds selected should be as high as possible to reduce the machining time consistent with the product quality achieved. Details of process parameter selection were covered in Chapter 11 13.1.5 Job and Tool Setup Planning This is basically aimed at setting the job on the machine tool and adjusting the cutting tool to the correct position. This is important since the accuracy of the geometry generated by the CNC machine tool is dependent on the initial position carefully defined. 13.1.6 Machining Path Planning ‘This is a very important aspect of programming wherein the knowledge of machining operations plays a vital rule. A careful planning of the tool path cnsurcs that the requisite manufacturing specifications are achieved at the lowest cost. With the availability of complex canned cycles with many of the present day controllers, this aspect has been simplified for the programmer by the careful choice of the cycles. The details of stock removal cycles are covered in Chapters 14 and 15. 13.1.7 Part Program Writing This aspect deals with the actual writing of the part programs undertaking the furiuat and syntax restrictions into account. 13.1.8 Part Program Proving This is another aspect, which the programmer should very carefully undertake before the part program is released to the shop. Once the program is made, it should be verified before it can be loaded on the machine tool controller for the manufacture of the component. It is obvious that a faulty program can cause damage to the tool, workpiece and the machine tool itself. Sometimes, these accidents can prove grave tor the operator and others around. One of the preliminary ways of avoiding such possibilities is to carry out a visual check of the program manuscript and of the displayed program 0D the VDU of the controller. But this is understandably not enough in itself. A trial run can be carried out with or without the tool or workpiece to enable visualisation of movements taking place and of any collisions possible between the tool, the workpiece and the clamping device. At this stage. it is worthwhile stressing theCNC Programming El point that while the program js being prepared, the positions of the clamps should have been taken into account and that they be clearly indicated in instructions to the operator. This is vital for climinating the possibility of collisions gccurring during machining. During trial runs, feed and speed override control should be used so that the operator works at such values that enable him to exercise manual control comfortably and operate the emergency switch well in time. The program is run block by block, i.e. after execution of each block, the machine waits till the operator manually presses the switch on the machine console for execution of the next block. With the job and tool in position, dry runs are made, ie. keeping a safe distance in between the tool and the job; the motions can be visualised for correctness. If during these trials, any mistakes are noticed, the program is examined and the necessary corrections made. After this, one component is made and checked. Based on this, speeds and feeds ure modified and further corrections carried out so that correct profiles are obtained. Sometimes only one job, which may be quite complex and precise, needs to be made. This could even be of an expensive material. In such cases, the program is tried first on a cheap material, say wood, Perspex etc. Only when the first uials are approved, the updated program is permitted to be used for further production. Today, graphical simulation packages are ayailable on CNC systems, which facilitate a graphical ‘output on the VDU screen. This output shows the workpiece and the tool, the motion of the tool and > semoval of material as the program proceeds. Visualisation of this animation of the the progressive 1... : m ¢ e * wert program before any actual mact is yu. verifications are carried out at a fast speed and thus the proving v1 we nah much loss of time. A typical example is shown in Fig. 13.5, which shows in two dimensions tne paws taken by the cutting tool centre. 1G) Fig. 13.5 Tool Path of the Part for Proving the NC Part Program Itis also possible that the verification can be carried out on a microcomputer screen. Through this, "is possible to see how the tool path is programmed, A more advanced version is the programs, Which can shaw how the material is heing removed, so that the actual geometry generated can also be Seen in these systems, This enables a fast detection of mistakes and their correction without loss of Production time of the CNC machine tools. Many of these systems have the capability of showing the Clamps and other elements, which are likely to interfere with the tool movement. Also some systemsLy Manufacturing Aspects of Industrial Products have the capability of dynamically simulating the actual sized tool through the work material to make the simulation more realistic. A typical example is shown in Fig. 13.6, which shows visually the Femoval of material by the tool and consequent generation of the geometry from the blank geome Another simple method of verifying the program is that of plotting. However, it should be under Stood that this would give only a two dimcusiunal picture. The plotter is connected through an. interface for obtaining the plot. The plot can be examined and compared with the component drawing for any cur in the tool path, ee G6, ew realy Poca San psc) Hee Wy i 13.6 Shaded 3D Image of the Tool Cutting the Part for Providing more Realistic Proving of the NC Part Program (Courtesy: Viral Gibbs Inc.) 13.1.9 Documentation for NC 1 would now be amply clear that documentation is the most essential aspect of the CNC manufactur: ing practice. Therefore, it is worthwhile to list these as a checklist. 1. Component drawing 2. Process planning sheet: As discussed earlict, this should contai operations, the machine tool used, the tools used wit 3. Tool cards: These should show each tool in assembl numbers for each element (tool, callet, chuck etc.), 4. Setup sheet: This would show all tools required, with their identification numbers, and the seiting instructions for the component on the machine tool table as shown in Fig. 13.7 5. Prugrauming sheets, 6. Punched paper tape, if this is the input form used, in details of the sequence of the ith their numbers, speeds, feeds ete. led form with dimensions and identification‘CNC Programming Setup Sheet Op. Tool Description Catalogue | Insert | Comment No. number 10 Slot drill HSS VRT-123456 6 mm dia 20 Twist drill HSS VRT-156756 12 mm dia 30 Twist drill HSS VRT-234589 3mm dia Set up Instructions Set up Sketch The blank to be machined to the 80 x % 80 mm size is to be mounted in a machine vice fixed to the machining centre table as shown. eee & OR Vice (5) Fig. 13.7 Setup Sheet for a Machining Cenire Part ‘The originals of these documents are kept in the programming room records cabinet while copies are sent to the shop floor as per the production planning. Whenever any changes are to be made, all issued copies are recalled and destroyed. The originals are updated (or made afresh) and copies are released accordingly. Inthe earlier days, a number of formats for NC part programs were used such as fixed sequence or tab sequential, These systems required giving a large number of unwanted or duplicate information in cach block of a part program. These are now replaced by means of a system called ‘Word Address Format’ in which each of the information or data to be input in the form of numerical digits is Preceded by a word address in the form of an English alphabet. For example N105 means that N is theF330 | Mansoing Apes of Inds Prods address for the numerical data 105. Thus the controller can very casily and quickly process all the data entered in this format. A typical block of word address format may look as follows: 4 N115 G81 X120.5 ¥55.0 Z-12.0 R2.0 F150 M3 ? tar ASO Standards for Coding In the early years of development of Numerical Control standardisation has been given due impor- (ance, As a result many of the things that we use in NC are standardised and many of the manufactur- ers follow the standards to a great extent. One of the first thing to be standardised is the word addresses to be used in programming. All the 26 letters of the English alphabet was standardised and given meaning as follows: Character Address For Angular dimension around X axis Angular dimension around Y axis Angular dimension around Z axis Angular dimension around special axis or third feed function* Angular dimension around special axis or second feed function* Feed function Preparatory function Unassigned Distance to arc centre or thread lead parallel to X Distance to arc centre or thread lead parallel to ¥ Distance to are centre or thread lead parallel to Z Do not tise es : Miscellaneous function \ ’ . Sequence number tris 2% Reference rewind stop ‘Third rapid trayerse dimension or tertiary motion dimension parallel to X* ~ Second rapid traverse dimension or tertiary motion dimension parallel to ¥* First rapid traverse dimension or tertiary motion dimension parallel to Z* 5 Spindle speed function ’ Tool function Secondary mation dimension parallel to X* & Secondary motion dimension parallel to Y* ar; Secondary motion dimension parallel to Z* yo: Primary X motion dimension arom Primary Y motion dimension e {: Primary Z motion dimension * where D, E, P, Q, 8. U. V, and W are not used as indicated, they may be used elsewhere.
*Gl7 XY Plane selection + Gis XZ Plane selection + om YZ Plane selection Cutter compensation group * 4640 Cutter compensation, Cancel * G41 Cutter radius Compensation left tm. G42 Cutter radius Compensation right Units group 1 *610 Inch units . on Metric units Hole making canned cycle group G80 Canned Cycle Cancel G81-G89 Canned Cycles definition and ON Coordinate system group + *G90 ‘Absolute coordinate system d GOL Incremental coordinate system Preset « G92 Absolute pre-set, Change the damm positiona a The * sign indicates the generally accepted default or tum on code in operation. However, some control manufacturers allow this to be modified to whatever suits them. The above is only a possible indication but not in any way standardised by ISO. In the following sections we will give a description of the way to use these G codes. 13.3.1 Coordinate System Group, G90 and G91 ‘The input of dimensional information can be done either in the absolute or in the incremental system, ‘The preparatory function G90 is used for absolute programming. In absolute system, the dimensions are given with respect to a common datum chosen by the programmer. It must be programmed and can be cancelled by function G91 (and also when the program statement has the word M02 or M30). In Fig. 13.8, OX and OY are the datum. Y 5 2 35 x BBY Fig. 13.8 Absolute (G90) and Incremental (G91) Systems Whatever may be the route of the move, the programmed X and Y values of each position remain the same. Suppose the route to be 0-A-B-C, then NOO7 G90 GO1 x5.0 Y10.0 F200 NOO8 X25.0 Y15.0 NOO9 X35.0 Y5.0 This system is generally advisable for programming, as there are few chances of errors. When the tool is in a particular quadrant, such as the first, then all the coordinate values would be positive. Similarly with all the other quadrants of geometry. Thus it is suggested that the new programmers should always make use of the absolute system till they become familiar with the programming system. The incremental type, denoted in the program by the word G91, is also available on all NC equipments. This is generally the “Turn on mode" and can be cancelled by the word G90. The end of the program words M02 or M30 also sels it. In the incremental system, the data is incremental to the previous block. Unlike as with G90, the programmed data changes only if the route of the move is altered. Referring to the same figure (Fig. 13.8), the program for route 0-A-B-C would be NOO7 G91 G01 Xx5.0 Y10.0 F200 NOOB X20.0 Y5.0 NoO9 X10.0 Y-10.0Cx Propnnin If the route is changed. then the program changes accordingly. Incremental programming is useful when the features are dimensioned in a continuous chain, e.g., 5 holes, 31.250 mm apart along X axis would simply be programmed for each feature as X31.25; while in absolute programming, one would have to calculate the value for each position, i.e., X31.25, X62.5, X93.75, ... It is also important while one follows the incremental programming system, to take care of the direction in which the movement is taking place, irrespective of the quadrant in which the tool is moving. In a program, both the systems may be followed but it should be done carefully. The incremental system any error done in a single block carry forward and nv correction can be donc. Also the crrors in the transmission system would result in having the errors accumulated, while that does not happen in the case of absolute coordinate system. 13.3.2. Units Group, G70, G71 This group of codes specifies the units in which the program is to be interpreted. G70 stands for programming in inch units while G71 stands for programming in mm units. Any one of these can be made as turn on code depending upon the default units likely to be used. Most of the controls destined for areas other than North America would generally have default G71. This can be easily changed when necessary. In any case, it would be a better practice to make the habit of giving this code as the very first code in the part program. A given program should be written only in either inch or mm units, but not both. Hence, only one of the two codes should be present in one program. In Fanuc controls normally G20 and G21 are used for the units in place of G70 and G71. This can be changed optionally to 70 and 71 using the pro- ‘grammable functions of the control system. 13.3.3 Active Plane Solection Group, G17, G18, G19 ‘Some of the functions in NC control can only work in a plane rather than in all the 3 possible coordinate axes. This there- fore requires the selection of active plane. This can be done by using these codes. The typical coordinate system and the corresponding plane labelling are shown in Fig. 13.9. G17 __XY Plane selection This is the default tun un code. This allows fur Ue working to be carried out in the horizontal plane in case of vertical axis milling machines as shown in Fig. 13.9. In the case of 2.5 axes machines, in a given block only X and Y coordinates are to be speci- fied while the Z coordinates are to be specified in a separate block. For a horizontal axis machine, the working plane is the vertical plane perpendicular to the spindle axis. Similar XY plane selection for horizontal axis machining centres is shown in jag Fig, 13.10 XY Plane Selection Fig. 13.10. for Horizontal Axis Milling Machines Fig. 13.9 XY Plane Selection or Vertical Axis Mill- ing Machines xManufacturing Aspects of Industrial Products GI8 XZ Plane selection This allows the working to be carried out in XZ plane (Fig. 13.11). In the case of 2.5 axes machines, in a given block only X and Z coordinates are to be specified while the Y coordinates are to be specified in a separate block. BB] Fig. 13.11 Xz Plane Selection for Hori- _|&5) Fig. 13.12 YZ Plane Selection for Hori- zontal Axis Milling Machines zontal Axis Milling Machines Gia YZ Plane selection ‘This allows the working to be carried out in YZ plane (Fig. 13.12). In the case of 2.5 axes machines, in a given block only Y and Z coordinates are to be specified while the X coordinates are to be specified in a separate block. 13.3.4 Preset, G92 As described earlier, each of the machine tool has a separate machine reference point. However, this point is not very convenient to use as a coordinate datum for the part. Most of the NC machine tools allow for a ‘Floating Datum’ to be fixed anywhere in the machining envelope of the machine tool. AS a result, the programmer can choose a convenient position on the part as datum, which may be referred to as ‘Program Zero Point’. The same will have to be communicated to the NC controller as datum. The choice of the datum as explained earlier to suit either the setting of the component or to simplify the coordinate calculations. It is necessary in the beginning to make the system understand the coordinate datum position of the part, which is different from the machine reference point. To do this, we make use uf the G92 cude. ‘The part, which was pre machined, is clamped at a suitable position on the machine table, A known tool or a setting uraudiel of kuown diameter is kept in the machine spindle. This tool is then brought to a known position near or on the workpiece blank, called the set point. The same is then pro- grammed in the part program using the G92 code. For example, in Fig. 13.13, the workpiece of dimensions 200 x 170 x 30 mm is located on machine bed with the longer edge along X-axis, The tip of the setting tool, held in the spindle, is made to touch the point A, i.e., the setting position. At that instant, the program block entered is NO1S G92 X200.0 Y170.0 Z50.0 Depending upon the point being touched, the coordinate can be specified, taking the diameter of the probe touching the workpiece. The tool tip is to be set at a distance of 50 from the top surface by means of a suitable gage.NC Programming Machine Zero Point KO ~OO alias Program Zero Point IS) Fig. 13.13. Setung the Workpiece on the Machine Table G53 to G56 are the other codes used for setting the programmable datum positions. These would allow for fixing a number of positions on the machine table whose coordinates can be entered into the controller as a permanent memory, When required, their positions can be simply called by giving the particular G code in the program. This would also be useful for machining a batch of components all ‘of which are located on the machine table each at the positions indicated by G93, G54, etc. 13.3.5 Motion Group, G00, G01, G02, G03 ‘This is the most important group of codes used in part programming. G00 is the turn on code from this list. More explanation is given below: Rapid Positioning, GOO This is used for moving the woul at a rapid sate (normally the maximum available feed rate such as 8000 or 40 000 mnvmin) along the axes involved for achieving the posi- tion programmed. It is not important for this code, the path taken by the tool to reach the programmed point. This is a modal (stays active till cancelled by any other function of its family, i.e., G01, G02, G03) func- tion and is also the ‘tum on mode’ (available as soon as, the system is switched on or when a new program starts). Referring to Fig. 13.14, from position A, itis required to achieve position B. This is typical to all machining situations when the tool has to he bronght close to the component before any vy BB) Fig. 13.14 Positivning, Preparatory Function GOOaa Manufacturing Aspects of Industrial Products ‘eutting commences. It is obvious that this movement is in the air (cutting air) and so to minimise the idle time, it should take place at the maximum feed rate of various slides involved. For this, the Program block would be N105 G90 GOO X150.0 30.0 It can be noticed that the initial path is at 45 degrees because both the X and Y slides move at the same feed rate (assuming the motors are of the same rating) till the required Y ordinate value is achieved, after which only the X slide moves till position B is achieved. This is one way of achieving the final position. There cuuld Le uilie: pussible methods implemented by different controllers The rapid positioning is actually a 3D positioning, such that positioning can be achieved simultaneously in all the 3 axes as shown in Fig. 13.15 Absolute programming A to B N110 G90 GOO X50.0 45.0 Z 40.0 N120 X90.0 Y90.0 270.0 Incremental programming A to B N110 G90 GOO X50.0 45.0 Z 40.0 N120 G91 X40.0 Y45.0 230.0 Incremental programming B to A N110 G90 GOO x90.0 Y90.0 Zz 70.0 N120 G91 X-40.0 Y-45.0 2-30.0 Linear or Straight line Interpolation, GO1 This code is generally used when the material is to be cut using a feed rate When the motion is desired along a straight line at a given feed rate, this function is used. It [88] Fig. 13.15 Positioning, Prepara- is modal. If a cut has to be made from D to E (Fig. 13.16) tory Function GOO in 3 at a feed rate of 250 mm per minute, then the block Dimensions would be D N115 GO1 X110.0 Y30.0 F250 fie le tS In this case the controller moves all the three axes at a rate such that the resultant velocity along the line matches \ \ the programmed feed rate. i 100 ! WN ‘Similarly for the motion command Shown in Fig. 13.15, ' le Absolute programming A to B ia = N110 G90 G00 X50.0 Y45.0 2 40.0 Pale | 1 N120 GO1 X90.0 Y90.0 270.0 F350 et Incremental programming A to B Day N110 690 GOO Xx50.0 Y45.0 Z 40.0 BS] Fig. 13.16 Linear Interpolation, N120 G91 GO1 X40.0 Y45.0 230.0 F350 Preparatory Function 1CNC Programming Incremental programming B to A NI1U GYU GU X¥U.0 Y90.0 Z 70.0 N120 G91 GO1 X-40.0 Y-45.0 Z-30.0 F350 Circular Interpolation, G02 / G03 When an arc is to be traversed in a plane, the function G02 or G03 is used if the direction of the motion is clockwise or anti- clockwise respectively, looking in the negative direction of the axis perpendicular to the plane. Referring to Fig. 13.17, when the motion is from F to G in XY plane, the program block would be, as per ISO, J N125 G02 X65.0 Y60.0 135.0 J-10.0 F250 But, if the motion were from G to F, then it would be 4 130 GO3 x15.0 ¥20.0 1-15.0 J-40.0 F250 Here, (X, Y) are the coordinates of the destination and (L, J) the distances, along the reference axes of the centre of the are from the starting point of the arc. It is essential that the Circular inerpola- coordinates of the destination should be correct and within the tion, Preparatory prescribed limits. In some systems, (I, J) are the coordinates of Function G02/G03 the centre of the arc. ‘Some systems carry out circular interpolation when the value of the arc radius is given, being positive if the angle subtended by the arc at the centre is less then 180 degrees, and negative, if otherwise. Assuming the radius and the angle subtended to be 40 mm and 100 degrees respectively, then 4-130 G02 X65.0 Y60.0 R40.0 F250 Itis possible to draw a complete circle, which would mean that the destination coincides with the starting point. Then ~ 310 G02 135.0 J-10.0 F250 It will be noted that the destination need not be stated, since its coordinates are the same as that of the starting point already entered in the previous block. One should check up from the controller programming manual as to which proce- dure is to be followed. It may be noted that a full circle cannot be obtained with R-val The circular interpolation is 2D interpolation and can only be carried out in any plane. For example, in Fig. 13.18 is Mx shown a typical circular slot in the XY-plane which can be [GJ Fig. 13.18 Circular Interpola- machined using a slot drill in a vertical axis milling machine, tion in XY Plane This will be the most common form of usage. However, some Using G17 Plane times it may be necessary to machine circular profiles in other SelectionPlanes as well. An example is shown in Fig. 13.19 for XZ Plane. In such cases it becomes necessary to specify the plane to be used with G17, G8 or G19 codes. Dwell, G04 This is to give a delay in the program. When the G04 code is encountered, the controller stops at that particular point for a specified time mentioned in the block. After that time the controller continues to execute the next block in the program. The delay time is normally weutivued iu Manufacturing Aspects of Industrial Products seconds using the X word address. In some controls, other than X may also be used. For example in Fanuc controls, P word address is used to specify the dwell time in milli- seconds. An example is shown below: a NO45 GO4 X3.0 This calls for a stoppage of the [&3] Fig. 13.19 Circular Interpolation control for a period of 3 seconds. in XZ Plane using NO45 G04 P3000 This calls for a stoppage of the GI8 Plane Selection control for a period of 3 seconds. No decimal point programming with P word address in Fanuc controls. These functions actually operate some controls on the machine tool and thus affect the running of the machine. Gencrally only onc-M cude is supposed to be given in a single block. However, some controllers allow for two or more M codes to be given in a block, provided these are not mutually exclusive, ¢.g., coolant ON (MO7) and OFF (M09) cannot be given in one block. Less number of M codes have been standardised by ISO compared to G codes in view of the direct control exercised by these on the machine tool. The ISO standard M codes are shown below: CODE ‘M00 Vio M02 * M03 * M04 + MOS M06 “M07 * M08 + M09 M10 MUL M12 M13 FUNCTION Program stop, spindle and coolant off Optional programmable stop End of program-often interchangeable with M30 Spindle on, CW Spindle on, CCW Spindle stop Tool change Coolant supply No. 1 on Coolant supply No. 2 on Coolant off Clamp Unclamp Unassigned Spindle on, CW + coolant onCNC Programming Mi4 Spindle on, CCW + coolant on MIS Rapid traverse in + direction M16 Rapid traverse in — direction MIT-MI8, Unassigned M19 Spindle stop at specified angular position M20-M29 Unassigned + M30 Program stop at end tape + tape rewind M31 Interlock by-pass ‘M32-M35 Constant cutting velocity ‘M36-M39 Unassigned ‘MA0-MAS Gear changes; otherwise unassigned M46-M49 Unassigned ‘M50 Coolant supply No. 3 on M51 Coolant supply No. 4 on MS52-M54 Unassigned MSS Linear cutter offset No. 1 shift MS6 Linear cutter offset No, 2 shift ‘MS7-MS9 Unassigned M60 Piece part change MOL Linear piece part shift, location 1 M62 Linear piece part shift, location 2 M63-M67 Unassigned M68 Clamp piece part M69 ‘Unclamp piece part M70 Unassigned mq Angular piece: part shift, location 1 MI2 Angular piece part shift, location 2 M73-M77 Unassigned MIB Clamp non-activated machine bed-ways M719 Unclamp non-activated machine bed-ways ‘M80-M99 Unassigned ‘Some of the common miscellaneous functions ofien found in many a conuoller are: 7MO00 This would terminate the auto operation of the machine after completing the instructions in the block in which it has been programmed. This is called ‘Program stop’ and if it is required to continue with the rest of the program. the ‘start’ button on the console is to be pressed. This is useful for changing the clamp position or to carry out inspection of a particular dimension after a machining cut is taken. This being a pause function, calls for the attention of the operator, delays the completion of the program and therefore should be avoided as far as possible. MO1 This is ‘Optional stop’ and stops the machine, as in the case of M00, only if the “Optional stop” switch on the controller console is ‘ON’. This is useful when inspection is to be carried out on some components and not all in a given hatch M02 This is ‘End of program’ and it causes the stopping of the machine and clearing of all the control registers. Another code 30 also does the same function.‘Manufacturing Aspects of Industrial Products M03 the miscellaneous function for machine spindle control for clockwise rotation. This starts the spindle tv muve in the clockwise directiu at the speed set earlier using the $ word address. When it is given in a block would be the first code to be executed before all the other codes in a block are acted upon. M04 the miscellaneous function for machine spindle control for counter clockwise rotation, This starts the spindle to move in the counter clockwise direction at the speed set earlier using the S word address. When it is given in a block would be the first code to be executed before all the other codes in a block are acted upon. MOS is the miscellaneous function for stopping the machine spindle. When it is given in a block would be the last code to be executed afier all the other codes in a block are acted upon. M06 ~ is for tool change. ' MO7 are for ‘Coolant 1 On’ M08 are for ‘Coolant 2 On’ M09 is for ‘Coolant Off", M13 the miscellaneous function for machine spindle control for clockwise rotation and the start- ing of the coolant simultancously. This starts the spindle to move in the clockwise direction at the speed set earlier using the $ word address. When it is given in a block would be the first code to be executed before all the other codes in a block are acted upon, M30 is similar to M02. It indicates ‘End of tape’ and ‘tape rewind’. If a paper tape is used, the tape is rewind till the % sign is encountered. For machines working with RAM, the active Program comes to the beginning. Many a times M02 and M30 are synonymous in operation in modem day controllers. PISSPROCRAM NUMBER In many of the latest CNC systems, there is a provision for labelling the program at the start itself which facilitates searching from stored programs. The symbol used for the program number in Fanuc controls is “O” or “:”, followed by its number. For example, 0238 or :238. Such information does not interfere with the NC program. Invariably, in most of the components there are a number of repetitive features, ¢.g., pattem of holes, profiles etc. Instead of writing blocks for each of them repeatedly in the program as per process plan, the facility exists for writing the sub programs for each feature and entering them with labels at the end of the main program. In the main program where these are required, they are called by an appropriate block e.g. in Fanuc controls, MY8 PI0UL, i.e., miscellaneous function 98 is call for sub program (also called subroutine), the number after ‘P’ referring to the sub program being called. The sub programs are ended with the word ‘M99" in Fanuc controls ie component to be machined is shown in Fig. 13.20. It is assumed that the pocket is through and hence only outside is to be machined as a finish cut of the pocket. The tool to be used is a 20 mm diameter slot drill. If an end mill is to be used the program should be modified with a hole to be _ drilled at B first, before the end mill is used. The setting is done with point A as reférence (0, 0.0). and the reference axes are along X and Y directions. A typical program, as per ISO (except the ' decimal point), for this would be:CNC Programming x Sears | 4 I 40 + [SI Fig. 13.20. Example of a Component to be Machined NOO1 G92 XO YO z0 absolute presetting at A. N002 G90 absolute programming | NOO3 GOO X25.0 25.0 22.0 TO1 $3000 MO3 tool brought rapidly at B, 2 mm above XY plane GO1 Z-12.0 F120 tool gocs down to full depth. Y75.0 aa proceeds to C. X65.0 745, proceeds towards right to D. G02 Y25.0 10 J-25.0e “Qo 245 cuts curved profile till E. G01 x25.0 we proceeds to B. 22.0 tool moves 2 mm above the XY plane G00 250.0 MOS spindle stops and rapidly moves up i Noll XO YO rapid move to start position 0.0 No12 M30 end of program and tape rewind The graphical simulation of the above is shown in Fig. 13.21, simulating the material removal process on the machine tool. apie 13.2 “pe component to be machined is shown in Fig: 13.22. The outer profile needs to be machined using a slot drill of #16 mm. ‘The axes system chosen for the component is given in Fig. 13.23. The path to be taken by the tool is shown as centreline. The complete part program with all the necessary M codes is given below: 4 bs 01002 (Program number) NO10°G71 G92 x0 YQ 250 (Set point)Manufacturing Aspects of Industrial Products [8] Fig. 13.21 Simulation of the Ahove Part Program for Component Shown in Fig. 13.20 jhe — 1% ——1 wi] (oF "3, The hots 9° i so {100 4 —-— onl =] Pye : {%) Fig. 13.22 Component for Example 13.2 NO15 G90 (Absolute programming) No20 TO1 $500 M06 (Tool change speed setting) NO25 GOOx¥2.0 M03 (Rapid move to clearance plane) NO30 GO1 2-5.0 F100 (Feed to the required depth) NO35 Y80.0 F120 iN (Cut along straight line) NO40 G02 X20.0 Y98.0 R20.0 F100 (Circular move) NO45 GO1 x98.0 (Cut along straight line) NO5O Y20 (Cut along straight line) NOS5 G02 x80.0 Y2.0 R18.0 (Circular move) NO6O G01 X18.757 (Straight line to the intersection M065 X2.0 Y18.757 (Straight line to the intersection point)ENC Progranuning 5-798 ——. > ns (8) Pig. 13.23 Toot Pash for Machining the Component for Exumple 13.22 NO70 22.0 MOS (Feed to clearance plane Stop spindle) NO75 GO XO YO 250 (Rapid to set point) NO80 M02 (End of program) i / The reader would have noticed that the tool has been moved along a path which is offset from the original contour by a value equal to the radius of the cutter. Further, it became necessary to calculate the new intersection points which sometimes require the use of wigonometry. For example see the path taken by a cutter of radius R as shown in Fig. 13.24. To calculate the actual cutter path, it is necessary to evaluate the (AX and AY using the following formulae. | w 'L ee Me BS] Fig. 13.24 ogser Tool Pash for Machining Conours shat are not Paraltel to the Principal ods Ates a0 wre wn GO ae Mewes q7 she z ae FigMansacaring Aspects of Industrial Prout abe rtan s) (3 ¥ = At fan *: 2) ILis possible to derive similar formulae for other contour situations as well. Further, most of the hew controllers are provided with cutter radius compensation options. In such cases, it is not neces- Sary to calculate such intersection values. The details are given later. The graphical simulation of the above is shown in Fig. 13.25, simulating the material removal Process on the machine tool % Fig, 13.25 Simulation of the Above Part Program for Component Shown in Fig. 13.22 "iBI9”“TOOL LENGTHY COMPENSATION” SRERRAUEEEEECEe In the programs discussed so far. only ane tool was used to perform the machining function. Hence, the workpiece setting is performed with the single tool. However, in cases where there is more than one tool, then programming becomes cumbersome, if the programmer has to take care of the indi. vidual tool lengths for the purpose of programming the Z depth in each case. Jn NC practice, al tots are measured in the assembled state using a tool presetter as explained in Chapter 11, and this information is always kept up to date (Fig. 13.26). For the tools being used, the difference in length, with respect to the pre-setting tool, is recorded and is manually entered and stored with the associated tool number. Whenever these twols are called into action by programmed instruction, the respective compensation values are activated and automatically taken into account in the tool motion. The following program example explains how tool length compensation is automati- cally taken care of. . NOO3 MOé TOL W NoO6 Moe TOCNC Programming 2 Tool la oe 1 x [SS] Fig. 13.26 Too! Length Compensation In these program blocks, M06 refers to tool change and TO1, TO2,.... refer to the tools to be loaded. ‘Whenever the tool is ground or replaced, the new values are entered to replace the earlier ones and thus the program remains unchanged. This is an essential facility, without which the multiplicity of the programs for each job/tool combination would be enormous and futile. It will be understood that the values entered compensate for the difference in lengths and thus all tools “effectively” become independent of tool dimensions, if the dimensions of all the tools are stored. When programming, the tool dimensions are not considered since the compensation values are calculated by the control system itself during manufacturing. It is found that a series of motions are to be repeated a number of times, many of which are fairly common to’all the positions. For example, in the case of drilling operation the tool (twist drill) has to position a little above the hole in rapid position, then move to the required depth with the given feed rate and then the tool has to return to the top of the hole as shown in Fig. 13.27. The same actions are to be repeated for each of the holes. For each of the operation 3 NC blocks to be written, out of which two blocks need to be repeated without any change for each of the hole to be drilled in the same plane. It is therefore possible to define a canned cycle or fixed cycle which can repeat all these motions without having to repeat the same information for each of the hole. The most common cycles that would be useful are for the hole making operations such as drilling. reaming, tapping, etc. The advantages to be derived in using the canned cycles can be gauged by looking at the part programs below for the component shown in Fig. 13.28. For the component shown in Fig. 13.28, the NC program for drilling the three holes without using canned cycles is shown below: NO10 GOO X25.0 ¥35.0 22 * NO15 GOl Z-18.0 F125 * No20 GOO 22.0 *Manufacturing Aspects of Industrial Products Clearance Plane Breakthrough Distance x a Bl Fig. 13.28 Example for Canned Cycles NOZ5 X55.0 50.0 * NO35 GO1 Z-18.0 F125 * i No40 GOO 22.0 * NO45 X75.0 Y70.0 * NOSO GO1 Z-18.0 F125 * NO55 GOO 22.0 * NO65 XO YO 250 *CNC Programming 351 For the same component the NC program using canned cycles is shown below: NO1O G81 X25.0 Y35.0 2-18.0 R2.0 F125 * t NO15 X55.0 Y50.0 + 5 NO2O X75.0 70.0 * ND 6 NO25 G80 XO YO z50 * (x Bo In the canned cycles the additional data such as the clearance plane position will have to be specified. For example, G81 canned cycle is used for carrying out the drilling operations for through holes. The actual operations embedded in G81 canned cycle are shown in Fig. 13.27. The format to be used as follows: NGBl1XYZR X, ¥ Refer to the centre coordinates of the point where the drilling is to be carried out. Z Refers to the final depth of the hole to be drilled R Refers to the position of the clearance plane (same as the Z-axis position of the clearance plane) G81 is a canned cycle, which is modal. As a result, any point specified when G81 is in force the drilling action will be repeated. As a result, to cancel the canned cycle, it is necessary to use the code G80. The effect of G80 is to cancel the existing canned cycle in force and make GOO operational, Any coordinates to which the spindle should move can be programmed in G80 block, There are a number of canned cycles identified by ISO in this category. The typical motions embedded in various canned cycles as per ISO are shown in Table 13.2. Table 13.2 Standard Canned Cycle Motions Canned cycle Feed from At programmed depth (end of fe Used for surface ell Spindle speed Spindle ré or = Stop = Cancel eanned eyele Constant — ~ Ropid Drilling, centre drilling Constant = Yess — Rapid Counter sinking, Counter boring Intermittent — = Rapid Decp hole drilling Constant == — Reverse Feed Tapping Constant = — = Feed Reaming Constam = — Stop Rapid Boring Constant = — Stop Manual Multiple Boring Constam —--Yes_—«—= Stop Manual Boring Constant____Yes_ = Feed Boring Example 13.3 ‘The component to be machined is shown in Fig. 13.29. All the hole making operations are to be ‘machined using the tools specified. ‘The point to be noted in the above component is that the top surface is at three different levels and as such the clearance plane will be different for each of these planes. Hence, the part program | will have to take this into account while using the appropriate canned cycle. Following part program machines the part completely.a 01245 NO10 NO15 NO20 NO25 N030 NO35 NO40 NO45 NOSO NOSS NO6O NO6S NU/U NO75 No8so NO85 No90 NO9S N100 N105 N110 N115 Manufacturing Aspects of Industrial Products ¥ p-———_115 ——___+} ____ 95 >| {HHT tatty EL? oP Tie i) 20, ban —+| Cutting tools: eal 1 1. Gente dil TAB Fray — emmetvoom 0 + 2. Twiot drill g8.5 mm. J 7 BS) Fig. 13.29 Component for NC Program in Example 13.3 G71 G92 x0 YO z50 G90 TO1 S800 M06 (Centre drill all holes) GB2 X20 Y34 2-5 R2 F125 MO3 x20 Y84 G80 x60 Y16 G82 X60 Y16 2-25 RIB F125 Y40 y6o ved G80 76 GB2 X95 Y16 Z-13 Rb F125 yea X115 Y84 G80 22 M05 T02 S800 M06 Finish Drill the 96 holes) G81 X60 Y16 Z-43 R18 F125 Y40 y60 ve4 G80 22 M05N120 TO3 S800 M06 N125 G81 X20 Y34 2-15 R2 F125 NO3 yaa N130 X20 N135 G80 X95 Y16 N140 G81 X95 Y1G 2-23 R-6 F125 N145 84 N150 X115 N155 Y16 N160 G80 22 MOS N165 TO4 S200 M06 N175 G84 X20 Y34 Z-15 RZ F300 M03 Y84 N180 X20 N185 G80 X95 Y16 N190 G84 X95 Y16 2-23 R-6 F300 NL9S Y84 N200 X115 N205 Y16 N210 G80 22 MOS N?15 TOO MO6 N220 GO 750 N225 x0 YO N230 M02 ‘The graphical simulation of the above is shown in Fig. 13.30, simulating the material removal process on the machine tool. In contouring operations, it becomes necessary to calcu late the tool path for preparing the program by affset- ting the contour by an amount equal to the radius of the cutter. Figure 13.31 shows the part contour and the tool path for a typical component. Apart from the problem of calculating, one should realise that whenever the cut- ter size changes, the program would need editing. How- ever, if a compensation equal to the radius of the cutter is entered and stored in the control system, then the (Pre-drill the tapped holes) (Tap all the holes) QS) Fig. 13.30 Simulation of the Above Part Program for Compo- nent Shown in Fig. 13.29 program could be written for the component profile and thus no change in program would be required. It is as it the program is written with a cutter uf cero radius, ‘The preparatory functions G4U, G41 and G42 are used for radius compensation and form one group. These are modal and the one programmed in any block remains active till cancelled by the other.Manufacturing Aspects of Industrial Products Programmod Path Offset Path of Cutter [SB] Fig. 13.31 Cutter Radius Compensation G40 Compensation ‘off’. G41 _ used when the cutter is on the left of the programmed path when looking in the direction of } the tool movement, i.c. the radius compensation is considered to the left of the programmed profile. | G42__used when the cutter is on the right of the programmed path when looking in the direction i of the tool movement i.e. radius compensation is to the right of the programmed profile (In some systems, cutter diameter compensation is possible and in these cases, the value of the | diameter is entered as the compensation value). The tool radius entry is always positive. If : the programmed path is determined for a particular size of the cutter, the compensation | value would be ‘+" or ‘—" depending on whether the cutter used for machi ing is oversized or undersized. During the operation with cutter radius compensation on, the control automatically calculates the tool path as offset in the correct direction by the radius of the tool in the spindle, However, during the startup and cancelling of the compensation the actual position is dependent upon the next or previous move. Consider the cutter moves as shown in Fig, 13.32. The program, which actually shows the actual coordinates is given in the part print. The actual motion of the tool during the machining process is shown with a centre line, NO30 G42 GOO X110 Y140 (Startup command A - 1) p> NO35 GO1 XO F120 (Move | - 2) NO40 YO (Move 2 - 3) NO45 X60 (Move 3 - 4) NOSO x110 (Moye 4 - 5) NOSS Y140 (Move 5 - 6) No60 G40 GRO x160 Y170 (Cancel compensation, 6 - A) | | |CNC Programming Sot point [WB] Fig. 13.32. Ecample Showing ine Cuter Radius Compensauion using the G Codes G42 During the startup move (A-1), the tool is actually positioned at a point which is normal to the next move, which is shown in Fig. 13.32 as 1. This move is called the ramp-on move. Similarly, when the” compensation is cancelled, the tool will be positioned at a point normal to the previous move shown as 6 in Fig, 13.32. This is termed as ramp-off move. | Example 13.4 To following program will illustrate the use of these preparatory functions. Figure 13.33 shows the top view and the top of the component surface is taken as Z = 0, M SSS, 200. igs 13.33 Example Showing the Cutter Radius Compensation using the G Codes G41 and Ga% NOlO G71 G92 XO YO Z250.0 (Absolute preset at A, 50: mm above work surface) 'NO20 690 (Absolute programming) NO30 TOL MOG + NO40 GOO 22 M03 S600 + (Rapid plane positioning) NOSO G41 GO1 x100 Y-60 F100 (culter compensation ON; tool moves along the path left of the programmed contour) NOSS 25.0 (Move to required depth) NO6O ¥300.0 NO70 Y-260.0 NO80 X100.0 NO90 Y-60.0 . N100 G40 GOO xO YU (culter radius compensation OFF) N10 250.0 TO MOS (compensation value for tool 71 sancelled) N120 MOG ToO2 (Second tool for internal profile) N130 X200.0 Y-120.0 22.0 S600 M03 N140 GOl 2-5.0 F100 N1S0 G42 Y-100.0 (cutter compensation ON; tool path right of programmed contour) N160 G02 10 J-60.0 N170 GOO 250.0 N180 G40 XO YO M05 N190 TO M06 N200 M02 In the block 050, the programmed position Is 8, but the cutter centre comes to the position F such that BF is perpendicular to the next move BC (Block NU60), programmed in the next block. AF is some times called *Ramp-on-move in view of its shape. Similarly, in the block 1V150, the programmed position is L but the cutter centre attains the position M, such that LM is perpendicular to the direction Of the next move i.e. tangent to the circle (Block V160). In the block N10O, the compensation is deactivated by the word G40, which is entered after the programmed position B. The cutter stops at K, such that KB is perpendicular to the direction of the previous move i.e. EB. KA is called ‘Ramp - off + move". In the blocks 110 and W180, TO causes cancellation of the compensation values for the tool in action at that time. Radius compensation is also used when similar profiles are to be cut with different depths of cut e.g, rough cut and finish cut. When a rough cut is made, a compensation equal to the thickness of the material to be left for finish is entered and during the finish cut this compensation is taken off. In view of identical programmed paths in roughing and finishing, such programming is done by using subroutines. For the roughing cut, the subroutine is called in the main Program using the compensation and for the finish cut, the same subroutine is called using the same tool without compensation.CNC Programming ‘Compensation for tool length and radius can be specific to a tool and if so, when the word 703 occurs in a block, it calls the tvul number 3 into action with the compensatjon pre-registered for it. However, in many CNC systems the compensation values (MDI entry) are stored separately, irrespec- tive of the tools being used. This helps in calling different compensation values even with the same tool when used on different occasions. For example, 70104 word would mean that tool number 01 would be used with the compensation value, entered in the register against identificr 04. Before commencing Work on the machine, the operator must examine the compensation values stored and verify them with the list of values supplied to him. Negligence on this count could be very serious. In some of the popular control systems, the pre-registered compensation values are called in the program block by the words D ... and H... which refer to the tool radius and length compensations respectively. For example, NO17 MO6 TO2 NO18 G81 X170.0 100.0 265.0 R48.0 HO7 F100 M03 would mean that the drilling operation will take place with tool Number 02 with a length compensa- tion corresponding to the entry against the identifier 07. Similarly, NO74 MO6 TO6 NO75 GO1l X70.0 DO3 F150 MO3 would mean that milling will take place with tool number 06 with a radius compensation correspond- ing to the entry in the register against the identifier 03. Example 13.5 | A complete part program using the ISO codes for the following component for the external contour » for the component shown in Fig. 13.34 using the cutter radius compensation. j— 70.432 —»| 10 [84.574 “bpita” | ecb | Fo |. 124,853 ————>] [+ 134.7099 ————>} Lo Be [B) Fig. 13.34 Example for Contour Programming using the Cutter Radius CompensationEJ Manfecing Apc of Ids Pradcts G71 G92 X-100 Y-100 250 G90 TOl M06 G42 GOO x0 YO 22 D1 GO1 2-10 F120 M03 GO Y15 G02 X4.393 ¥25.607 RIS G01 X70.432 Y91.645 G02 X 84.574 ¥77.503 R10 GO] x46.642 39.571 GO3 X53.713 ¥22.5 R10 G1 x120 G02 x134.8 Y10 R15 Gol x124.853 ¥o xo 0 zz G40 GOO X-100 Y-100 250 MOS : TOO M06 M02 The graphical simulation of the above is shown in Fig. 13.35, simulating the material removal Process on the machine tool. | Fig. 13.35 Simulation of the Above Part Program for Component Shown in Fig. 13.34 Summary )- Part programming ‘for CNC machine tools is an activity that requires knowledge of the ‘machine tool characteristics as well as the machining practices. A lot of previous knowledge and experience in these arcas will improve the part programming ability. (Contd)CNC Programming (Contd) a Part programming is @ systematic activity and following the steps in proper sequence will help in developing efficient part programs, Selection of the part coordinate axes system with respect to the part geometry help in reducing the mathematical calculations that are needed to write the part program. + ISO standard for part programming utilises all the 26 characters of English alphabet as. word addresses in a part program. «Preparatory functions or G-codes control the geometrical nature of the data input as well aS operation of some of the data in a program. A large number of these codes are standardised by ISO. * Motion commands are the most important part of the G-codes used to control the motion in rapid (G00). linear interpolation (G01) and Circular interpolation (G02 and G03) * Miscellaneous functions or M-codes are used to specify the machine tool functions in the program. Less number of codes are standardised in view of these being machine specific. * For programs involving multiple tools, tool length compensatiun can be activated by the use of tool offset registers. ‘* Canned or fixed cycles offer the facility to reduce the bulk of program by canning the often repeated commands into a single G-code. Examples are for the drilling of holes (G81). + In milling of contours large amount of complex calculations are often required to take multiple cuts. This can be reduced by the use of cutter diameter compensation (G41 and G42). Z 13.1 What is the knowledge that a Computer Numerical Control programmer should have for developing the programs? poten 13.2 What are the most important functions that would be used for program ming? Questiony 135 Explain the function of the preparatory functions. Give the functioning of — any one G code used for the purpose. 13.4 What is dwell? Fxplain its function and how it is specified in part pro- gram, 13.5 Explain the method used for specitying the tool specification in a CNC part program. 13.6 Explain the concept of ‘Floating Datum’ and ‘Sct Point’ with reference to CNC Part programming, What is their relationship? Explain how they are used in programming in ISO Format. 13.7 How is the tool length compensation specified in a machining centre? 13.8 Explain with neat sketch the operation of the canned cycle G81 as per Iso. 13.9 What are the various functions embedded in the G82 canned cycle? Ex- plain their use with examples in ISO Format.wPractice ProMems Aaanigcenegg tyne oF Dastsinasd Puungns ARQ WAG A year Banderstant AY thy wpAL OUNNT CVERE AL ENN ARE PO: geunannag PAQUAAL WA AE MboAETIN A eToEINDE NAMEN AN ANA: DARE OE ANS ORAL VERE GAT ANT GR ARLE RW is CREE QNNRANALTNL GAVE OL ANE OE OF A MNATANNE ovine” NaI WDE AAMUAIONRE, QUAL AY a UO, coe AERA CAAT? AAD Boe rhe BMWS CORRE CA. EST ELE A RT NERO ARAL OER QQRAL WRN INO) seh Oot TR: wed RAMEE BS ATST LOM) stack CR). OW Ee See POE NE kee et ES SKE OF EE UE, Drogaaee addy the pa ADA at th ENS Eee I. SR all ado caatoarkatlonts HE OLA, WSS vot Y dete oat 2 Nast ona a one RWSL Ht ND ak AS aE AND ASD Branine the tathowing CNC pat prgean fe a aahdaiay oowere I WA a cont Alloy IND stantand, Wenn ay ape fun ae ‘Program and also explain the ems, % NPQOL s Re G7] * NP G90 *CNC Programming N3 Tl M6 * N4 GO X75.0 Y100.0 * NS Gl 2-3 * N6 X175.0 Floo * N7 25.0 * NS X75.0 * NO Y100.0 * N10 M30* For the above program prepare the gcometry of the part generated, if the diameter of the slot drill used is 10.0 mm. 13.3 For the program shown in Question 2 above, prepare the geometry of the part generated, if the diameter of the slot drill used is 5 mm. 13.4 For the following component (Fig. 13.37) make a part program on a Vertical axis machining centre, Clearly show the set point and axes on the sketch of the part, Prepare also the planning sheet as used in the labora- ad ; [| { Four Holes Drill through Dia 4.0 CBore Dia } 9.0 x 5.0 Deep vso0 f 2500 >) a om + L = ! fag Os } - +006 L— zo00'o00 1000-1 BS Fe. 13.37 13.5 Examine the following CNC part grams and also explain the errors. @ % 07001 * N2 GO X3.0 Y4.0 * N3 Gl X7.0 F100 * programs. Give the errors in the pro-Manufacturing Aspects of Industrial Products Na Y1.0 * N5 X3.0 * N6 Y4.0 * N10 MO2 * () % o94ani* Nl G17 Tl M6 * N2 692 x90.0 Y70.0 + N3 G81 2.0 Z-10.0 F200 S500 M3* NS GOl X4.0 Y12.0 F150 * N10 Moz * 13.6 Explain the mistakes found in the following statements. (a) NOS GO1 X12.3 Y23.0 F120 * (b) N25 G04 X?.0 1234 * () N45 GOO T1001 S400 * (@) N75 G03 x0 20 F120 + (©) N60 M01 T1000 Yo * 13.7 For the component shown in Fig, 13.38 make a part program on a ma- shining centre equipped with the ISO controller. Clearly show the set point and axes on the sketch of the part. Show all the necessary ealcula- tions, ce. LO) OT Lo #6 £25 Stoo! + BH Fe. 13.38 13.8 For the components shown in Fig. 13.39 to Fig. 13.49 make part pro- ‘grams for machining on a CNC machining centre equipped with the ISO Controller. Clearly show the set point and axcs om the sketch of the part, Shaw all the necessary calculations,Se ee Manufacturing Aspects of Industrial Products ot BS) Fig. 13.42 y +80» 15>} Bi mo J ea 30 rer — poy 3 1 a 27 {Took End mail 9 10 mm BS) Fie. 13.43CNC Programming Cutting Tools 1, Contro dill 2 Twist dail 06 mm 10 100 3, Slot drill @10 mm i io Ded ® 1S F [SI Fig. 13.44 a0 Soy 8 —— 28 | Eee re ae }-—t-—- “10 Drill 18 C'Bore 4.5 Doop - 2 Holos 19Manufacturing Aspects of Industrial Products RSI Fig. 13.47 -8 $8 Be [ & er 2 7 ef ‘ Her - sf _f 7 el] Oy Ts lle eo = @367 NC Programming +30 foram T a I Fofolle %) Fig. 13.48 Q | ee Sy) Fig. 13.49 Lp ti az ety peeberg tb bLG eee
You might also like
The Subtle Art of Not Giving a F*ck: A Counterintuitive Approach to Living a Good Life
From Everand
The Subtle Art of Not Giving a F*ck: A Counterintuitive Approach to Living a Good Life
Mark Manson
4/5 (6125)
Principles: Life and Work
From Everand
Principles: Life and Work
Ray Dalio
4/5 (627)
The Gifts of Imperfection: Let Go of Who You Think You're Supposed to Be and Embrace Who You Are
From Everand
The Gifts of Imperfection: Let Go of Who You Think You're Supposed to Be and Embrace Who You Are
Brene Brown
4/5 (1148)
Never Split the Difference: Negotiating As If Your Life Depended On It
From Everand
Never Split the Difference: Negotiating As If Your Life Depended On It
Chris Voss
4.5/5 (932)
The Glass Castle: A Memoir
From Everand
The Glass Castle: A Memoir
Jeannette Walls
4/5 (8214)
Grit: The Power of Passion and Perseverance
From Everand
Grit: The Power of Passion and Perseverance
Angela Duckworth
4/5 (631)
Sing, Unburied, Sing: A Novel
From Everand
Sing, Unburied, Sing: A Novel
Jesmyn Ward
4/5 (1253)
The Perks of Being a Wallflower
From Everand
The Perks of Being a Wallflower
Stephen Chbosky
4/5 (8365)
Shoe Dog: A Memoir by the Creator of Nike
From Everand
Shoe Dog: A Memoir by the Creator of Nike
Phil Knight
4.5/5 (860)
Her Body and Other Parties: Stories
From Everand
Her Body and Other Parties: Stories
Carmen Maria Machado
4/5 (877)
Hidden Figures: The American Dream and the Untold Story of the Black Women Mathematicians Who Helped Win the Space Race
From Everand
Hidden Figures: The American Dream and the Untold Story of the Black Women Mathematicians Who Helped Win the Space Race
Margot Lee Shetterly
4/5 (954)
The Hard Thing About Hard Things: Building a Business When There Are No Easy Answers
From Everand
The Hard Thing About Hard Things: Building a Business When There Are No Easy Answers
Ben Horowitz
4.5/5 (361)
Steve Jobs
From Everand
Steve Jobs
Walter Isaacson
4/5 (2922)
Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
From Everand
Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
Ashlee Vance
4.5/5 (484)
The Emperor of All Maladies: A Biography of Cancer
From Everand
The Emperor of All Maladies: A Biography of Cancer
Siddhartha Mukherjee
4.5/5 (277)
Brooklyn: A Novel
From Everand
Brooklyn: A Novel
Colm Toibin
3.5/5 (2061)
A Man Called Ove: A Novel
From Everand
A Man Called Ove: A Novel
Fredrik Backman
4.5/5 (4972)
Angela's Ashes: A Memoir
From Everand
Angela's Ashes: A Memoir
Frank McCourt
4.5/5 (444)
The Art of Racing in the Rain: A Novel
From Everand
The Art of Racing in the Rain: A Novel
Garth Stein
4/5 (4281)
The Yellow House: A Memoir (2019 National Book Award Winner)
From Everand
The Yellow House: A Memoir (2019 National Book Award Winner)
Sarah M. Broom
4/5 (100)
The Little Book of Hygge: Danish Secrets to Happy Living
From Everand
The Little Book of Hygge: Danish Secrets to Happy Living
Meik Wiking
3.5/5 (447)
The World Is Flat 3.0: A Brief History of the Twenty-first Century
From Everand
The World Is Flat 3.0: A Brief History of the Twenty-first Century
Thomas L. Friedman
3.5/5 (2283)
Bad Feminist: Essays
From Everand
Bad Feminist: Essays
Roxane Gay
4/5 (1068)
Yes Please
From Everand
Yes Please
Amy Poehler
4/5 (1987)
Devil in the Grove: Thurgood Marshall, the Groveland Boys, and the Dawn of a New America
From Everand
Devil in the Grove: Thurgood Marshall, the Groveland Boys, and the Dawn of a New America
Gilbert King
4.5/5 (278)
The Outsider: A Novel
From Everand
The Outsider: A Novel
Stephen King
4/5 (1993)
The Woman in Cabin 10
From Everand
The Woman in Cabin 10
Ruth Ware
3.5/5 (2619)
A Tree Grows in Brooklyn
From Everand
A Tree Grows in Brooklyn
Betty Smith
4.5/5 (1936)
The Sympathizer: A Novel (Pulitzer Prize for Fiction)
From Everand
The Sympathizer: A Novel (Pulitzer Prize for Fiction)
Viet Thanh Nguyen
4.5/5 (125)
A Heartbreaking Work Of Staggering Genius: A Memoir Based on a True Story
From Everand
A Heartbreaking Work Of Staggering Genius: A Memoir Based on a True Story
Dave Eggers
3.5/5 (692)
Team of Rivals: The Political Genius of Abraham Lincoln
From Everand
Team of Rivals: The Political Genius of Abraham Lincoln
Doris Kearns Goodwin
4.5/5 (1912)
Wolf Hall: A Novel
From Everand
Wolf Hall: A Novel
Hilary Mantel
4/5 (4074)
On Fire: The (Burning) Case for a Green New Deal
From Everand
On Fire: The (Burning) Case for a Green New Deal
Naomi Klein
4/5 (75)
Fear: Trump in the White House
From Everand
Fear: Trump in the White House
Bob Woodward
3.5/5 (830)
Rise of ISIS: A Threat We Can't Ignore
From Everand
Rise of ISIS: A Threat We Can't Ignore
Jay Sekulow
3.5/5 (143)
Manhattan Beach: A Novel
From Everand
Manhattan Beach: A Novel
Jennifer Egan
3.5/5 (901)
John Adams
From Everand
John Adams
David McCullough
4.5/5 (2530)
The Light Between Oceans: A Novel
From Everand
The Light Between Oceans: A Novel
M L Stedman
4.5/5 (790)
The Unwinding: An Inner History of the New America
From Everand
The Unwinding: An Inner History of the New America
George Packer
4/5 (45)
Little Women
From Everand
Little Women
Louisa May Alcott
4/5 (105)
The Constant Gardener: A Novel
From Everand
The Constant Gardener: A Novel
John le Carré
3.5/5 (109)
Related titles
Click to expand Related Titles
Carousel Previous
Carousel Next
The Subtle Art of Not Giving a F*ck: A Counterintuitive Approach to Living a Good Life
From Everand
The Subtle Art of Not Giving a F*ck: A Counterintuitive Approach to Living a Good Life
Principles: Life and Work
From Everand
Principles: Life and Work
The Gifts of Imperfection: Let Go of Who You Think You're Supposed to Be and Embrace Who You Are
From Everand
The Gifts of Imperfection: Let Go of Who You Think You're Supposed to Be and Embrace Who You Are
Never Split the Difference: Negotiating As If Your Life Depended On It
From Everand
Never Split the Difference: Negotiating As If Your Life Depended On It
The Glass Castle: A Memoir
From Everand
The Glass Castle: A Memoir
Grit: The Power of Passion and Perseverance
From Everand
Grit: The Power of Passion and Perseverance
Sing, Unburied, Sing: A Novel
From Everand
Sing, Unburied, Sing: A Novel
The Perks of Being a Wallflower
From Everand
The Perks of Being a Wallflower
Shoe Dog: A Memoir by the Creator of Nike
From Everand
Shoe Dog: A Memoir by the Creator of Nike
Her Body and Other Parties: Stories
From Everand
Her Body and Other Parties: Stories
Hidden Figures: The American Dream and the Untold Story of the Black Women Mathematicians Who Helped Win the Space Race
From Everand
Hidden Figures: The American Dream and the Untold Story of the Black Women Mathematicians Who Helped Win the Space Race
The Hard Thing About Hard Things: Building a Business When There Are No Easy Answers
From Everand
The Hard Thing About Hard Things: Building a Business When There Are No Easy Answers
Steve Jobs
From Everand
Steve Jobs
Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
From Everand
Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
The Emperor of All Maladies: A Biography of Cancer
From Everand
The Emperor of All Maladies: A Biography of Cancer
Brooklyn: A Novel
From Everand
Brooklyn: A Novel
A Man Called Ove: A Novel
From Everand
A Man Called Ove: A Novel
Angela's Ashes: A Memoir
From Everand
Angela's Ashes: A Memoir
The Art of Racing in the Rain: A Novel
From Everand
The Art of Racing in the Rain: A Novel
The Yellow House: A Memoir (2019 National Book Award Winner)
From Everand
The Yellow House: A Memoir (2019 National Book Award Winner)
The Little Book of Hygge: Danish Secrets to Happy Living
From Everand
The Little Book of Hygge: Danish Secrets to Happy Living
The World Is Flat 3.0: A Brief History of the Twenty-first Century
From Everand
The World Is Flat 3.0: A Brief History of the Twenty-first Century
Bad Feminist: Essays
From Everand
Bad Feminist: Essays
Yes Please
From Everand
Yes Please
Devil in the Grove: Thurgood Marshall, the Groveland Boys, and the Dawn of a New America
From Everand
Devil in the Grove: Thurgood Marshall, the Groveland Boys, and the Dawn of a New America
The Outsider: A Novel
From Everand
The Outsider: A Novel
The Woman in Cabin 10
From Everand
The Woman in Cabin 10
A Tree Grows in Brooklyn
From Everand
A Tree Grows in Brooklyn
The Sympathizer: A Novel (Pulitzer Prize for Fiction)
From Everand
The Sympathizer: A Novel (Pulitzer Prize for Fiction)
A Heartbreaking Work Of Staggering Genius: A Memoir Based on a True Story
From Everand
A Heartbreaking Work Of Staggering Genius: A Memoir Based on a True Story
Team of Rivals: The Political Genius of Abraham Lincoln
From Everand
Team of Rivals: The Political Genius of Abraham Lincoln
Wolf Hall: A Novel
From Everand
Wolf Hall: A Novel
On Fire: The (Burning) Case for a Green New Deal
From Everand
On Fire: The (Burning) Case for a Green New Deal
Fear: Trump in the White House
From Everand
Fear: Trump in the White House
Rise of ISIS: A Threat We Can't Ignore
From Everand
Rise of ISIS: A Threat We Can't Ignore
Manhattan Beach: A Novel
From Everand
Manhattan Beach: A Novel
John Adams
From Everand
John Adams
The Light Between Oceans: A Novel
From Everand
The Light Between Oceans: A Novel
The Unwinding: An Inner History of the New America
From Everand
The Unwinding: An Inner History of the New America
Little Women
From Everand
Little Women
The Constant Gardener: A Novel
From Everand
The Constant Gardener: A Novel