Computer Integrated Manufacturing Notes
Computer Integrated Manufacturing Notes
Computer Integrated Manufacturing Notes
100 + 50 3 0 2 Credits: 04 Course Learning Objective: Unit I Introduction to CAD/CAM: Evolution of CAD/CAM, Need for CAD System, CAD/CAM in Automation, benefits & advantage of CAD/CAM. NC, CNC & DNC Technologies: Co-ordinate systems, basic motion control system. Application of NC System, Advantages and limitations of NC Machines. Need for CNC, CNC system, Functions and advantages of CNC System. Components of DNC system, Functions and advantages of DNC System Unit II CNC Machines: Horizontal machining center(HMC), Vertical machining center(VMC), Universal machining center(UMC), Turn mill centers, Vertical turning centers, High speed Machining center, Machine control Unit(MCU) CNC Programming: Steps in Part Programming, NC manual part programming, G & M codes for turning and milling, Canned Cycles, Problems on Milling and turning using G & M codes. Unit III Automation: Introduction, Types of Automation, Organization & information processing in manufacturing, Production concepts, Automation Strategies. High Volume Production System: Automated flow lines, work part Transport, Transfer Mechanism, and Buffer Storage. Unit IV Automated Assembly System: Types, Parts feeding Devices, Analysis of Single Station Assembly Machine, Analysis of Multi station Assembly machine, Automated Material handling System, Automated guided vehicle system. Unit V Computerized Manufacturing Planning System: Computer Aided Process Planning, retrieval types, Generative type. Flexible Manufacturing Systems: Definition, FMS workstations, Materials handling & storage system, Computer control, Applications & benefits Shop Floor Control: Factory Data Collection System, Bar code technology, bar code symbol, bar code reader. Unit VI (Laboratory Work) Part I 1. 2. 3. Creation of Orthographic views. Conversion of Isometric view to Orthographic Views. Conversion of orthographic views to Isometric View. 06 Hrs 06 Hrs 06 Hrs SEE : 3 Hrs
06 Hrs
06 hrs
Part II Analysis of Simple & Compound bars Subjected to Axial Loads. Analysis of Trusses subjected to point loads. Analysis of Beams Subjected to concentrate & UDL loads. Analysis of Shafts subjected to twisting moment. Part - III 8. Turning & Milling operation on CNC Train Software. 9. Demonstration of Flexible manufacturing system. Suggested Software Packages: Auto-CAD, ANSYS, CADEM 4. 5. 6. 7. Note: A minimum of 10 experiments to be conducted covering the entire syllabus in Unit VI. Reference Books: 1. Mikell. P. Grover & E.W. Zimmer, CAD / CAM, by PHI, New Delhi 2003, ISBN: 0131101307 2. 3. Ibrahim Zeid, CAD / CAM, McGraw Hill. 2000, ISBN 0070728577. Mikell.P.Groover, Automation, Production system and Computer Integrated Manufacturing, PHI New Delhi, 2007, ISBN 0132393212
Scheme of Continuous Internal Evaluation: CIE consists of Three Tests each for 45 marks (15 marks for Quiz + 30 marks for descriptive) out of which best of two will be considered. In addition there will be one seminar on new topics / model presentation etc. for 10 marks. Scheme of Semester End Examination: The question paper consists of Part A and Part B. Part A will be for 20 marks covering the complete syllabus and is compulsory. Part B will be for 80 marks and shall consist of five questions carrying 16 marks each. All five from Part B will have internal choice and one of the two have to be answered compulsorily. Scheme of Semester End Evaluation (SEE) (Laboratory Work, Unit VI): 50 Marks Question I : 20 marks Question II : 20 marks Viva Voce : 10 marks
AN OVERVIEW OF CNC MACHINES ( 1 ) Historical Perspective The word NC which stands for numerical control refer to control of a machine or a process using symbolic codes consisting of characters and numerals. The word CNC came into existence in seventies when microprocessors and microcomputers replaced integrated circuit IC based controls used for NC machines. The development of numerical control owes much to the United States air force. The concept of NC was proposed in the late 1940s by John Parsons who recommended a method of automatic machine control that would guide a milling cutter to produce a curvilinear motion in order to generate smooth profiles on the work-pieces. In 1949, the U.S Air Force awarded Parsons a contract to develop new type of machine tool that would be able to speed up production methods. Parsons sub-contracted the Massachusetts Institute of Technology (MIT) to develop a practical implementation of his concept. Scientists and engineers at M.I.T built a control system for a two axis milling machine that used a perforated paper tape as the input media. This prototype was produced by retrofitting a conventional tracer mill with numerical control servomechanisms for the three axes of the machine. By 1955, these machines were available to industries with some small modifications. The machine tool builders gradually began developing their own projects to introduce commercial NC units. Also, certain industry users, especially airframe builders, worked to devise numerical control machines to satisfy their own particular production needs. The Air force continued its encouragement of NC development by sponsoring additional research at MIT to design a part programming language that could be used in controlling N.C. machines. In a short period of time, all the major machine tool manufacturers were producing some machines with NC, but it was not until late 1970s that computer-based NC became widely used. NC matured as an automation technology when electronics industry developed new products. At first, miniature electronic tubes were developed, but the controls were big, bulky, and not very reliable. Then solid-state circuitry and eventually modular or integrated circuits were developed. The control unit became smaller, more reliable, and less expensive. (2) Computer Numerical Control Computer numerical control (CNC) is the numerical control system in which a dedicated computer is built into the control to perform basic and advanced NC functions. CNC controls are also referred to as soft-wired NC systems because most of their control functions are implemented by the control software programs. CNC is a computer assisted process to control
general purpose machines from instructions generated by a processor and stored in a memory system. It is a specific form of control system where position is the principal controlled variable. All numerical control machines manufactured since the seventies are of CNC type. The computer allows for the following: storage of additional programs, program editing, running of program from memory, machine and control diagnostics, special routines, inch/metric, incremental/absolute switchability. CNC machines can be used as stand alone units or in a network of machines such as flexible machine centres. The controller uses a permanent resident program called an executive program to process the codes into the electrical pulses that control the machine. In any CNC machine, executive program resides in ROM and all the NC codes in RAM. The information in ROM is written into the electronic chips and cannot be erased and they become active whenever the machine is on. The contents in RAM are lost when the controller is turned off. Some use special type of RAM called CMOS memory, which retains its contents even when the power is turned off.
1.3
Direct
Numerical
Control
In a Direct Numerical Control system (DNC), a mainframe computer is used to coordinate the simultaneous operations of a number NC machines as shown in the figures 21.2 & 21.3. The main tasks performed by the computer are to program and edit part programs as well as
download part programs to NC machines. Machine tool controllers have limited memory and a part program may contain few thousands of blocks.So the program is stored in a separate computer and sent directly to the machine, one block at a time. First DNC system developed was Molins System 24 in 1967 by Cincinnati Milacron and General Electric. They are now referred to as flexible manufacturing systems (FMS). The computers that were used at those times were quite expensive.
DNC system
DNC system
Computer Controlled Milling Machine Some of the dominant advantages of the CNC machines are: CNC machines can be used continuously and only need to be switched off for occasional maintenance. These machines require less skilled people to operate unlike manual lathes / milling machines etc.
CNC machines can be updated by improving the software used to drive the machines. Training for the use of CNC machines can be done through the use of 'virtual software'. The manufacturing process can be simulated virtually and no need to make a prototype or a model. This saves time and money. Once programmed, these machines can be left and do not require any human intervention, except for work loading and unloading. These machines can manufacture several components to the required accuracy without any fatigue as in the case of manually operated machines. Savings in time that could be achieved with the CNC machines are quite significant.
CNC machines are generally more expensive than manually operated machines. The CNC machine operator only needs basic training and skills, enough to supervise several machines. Increase in electrical maintenance, high initial investment and high per hour operating costs than the traditional systems.
Fewer workers are required to operate CNC machines compared to manually operated machines. Investment in CNC machines can lead to unemployment. ( 5 ) Applications of NC/CNC machine tools CNC was initially applied to metal working machinery: Mills, Drills, boring machines, punch presses etc and now expanded to robotics, grinders, welding machinery, EDM's, flame cutters and also for inspection equipment etc. The machines controlled by CNC can be classified into the following categories: CNC mills and machining centres. CNC lathes and turning centers CNC EDM
CNC grinding machines CNC cutting machines (laser, plasma, electron, or flame) CNC fabrication machines (sheet metal punch press, bending machine, or press brake) CNC welding machines CNC coordinate measuring machines Coordinate Measuring Machines:
CNC
A coordinate measuring machine is a dimensional measuring device, designed to move the measuring probe to determine the coordinates along the surface of the work piece. Apart from dimensional measurement, these machines are also used for profile measurement, angularity, digitizing or imaging. A CMM consists of four main components: the machine, measuring probe, control system and the measuring software. The control system in a CMM performs the function of a live interaction between various machine drives, displacement transducers, probing systems and the peripheral devices. Control systems can be classified according to the following groups of CMMs. 1. 2. 3. Manually CMMs computer driven automatic controlled CMMs systems CMMs
Motorized Direct
with
probing (DCC)
4. CMMs linked with CAD, CAM and FMS etc. The first two methods are very common and self explanatory. In the case of DCC CMMs, the computer control is responsible for the movement of the slides, readout from displacement transducers and data communication. CMM are of different configurations-fixed bridge, moving bridge, cantilever arm figure 21.5(a), horizontal arm and gantry type CMM as shown in figure 21.5(b).
4 axis CNC Tig welding machine The salient features of CNC welding machines are: Superior quality and weld precision. These machines are also equipped with rotary tables.
Weld moves, welding feed rate, wire feed, torch heights & welding current can be programmed. CNC welding machines are used for laser welding, welding of plastics, submerged arc welding, wire welding machines, butt welding, flash butt welding etc. These machines are generally used in automobile work shops
Cost of these machines will be twice than the conventional welding machines. CNC EDM & WEDM machines: EDM is a nontraditional machining method primarily used to machine hard metals that could not be machined by traditional machining methods. Material removal will be taking place by a series of electric arcs discharging across the gap between the electrode and the work piece. There are two main types- ram EDM & wire cut EDM. In wire-cut EDM, a thin wire is fed through the work piece and is constantly fed from a spool and is held between upper and lower guides. These guides move in the x-y plane and are precisely controlled by the CNC. Wire feed rate is also controlled by the CNC.
Ram EDM
CLASSIFICATION OF CNC MACHINE TOOLS (1) Based on the motion type ' Point-to-point & Contouring systems There are two main types of machine tools and the control systems required for use with them differ because of the basic differences in the functions of the machines to be controlled. They are known as point-to-point and contouring controls. (1.1) Point-to-point systems Some machine tools for example drilling, boring and tapping machines etc, require the cutter and the work piece to be placed at a certain fixed relative positions at which they must remain while the cutter does its work. These machines are known as point-to-point machines as shown in figure 22.1 (a) and the control equipment for use with them are known as point-to-point control equipment. Feed rates need not to be programmed. In theses machine tools, each axis is driven separately. In a point-to-point control system, the dimensional information that must be given to the machine tool will be a series of required position of the two slides. Servo systems can be used to move the slides and no attempt is made to move the slide until the cutter has been retracted back. (1.2) Contouring systems (Continuous path systems) Other type of machine tools involves motion of work piece with respect to the cutter while cutting operation is taking place. These machine tools include milling, routing machines etc. and are known as contouring machines as shown in figure 22.1 (b) and the controls required for their control are known as contouring control. Contouring machines can also be used as point-to-point machines, but it will be uneconomical to use them unless the work piece also requires having a contouring operation to be performed on it. These machines require simultaneous control of axes. In contouring machines, relative positions of the work piece and the tool should be continuously controlled. The control system must be able to accept information regarding velocities and positions of the machines slides. Feed rates should be programmed.
Point-to-point
Contouring Systems
Contouring systems 22.2 Based on the control loops ' Open loop & Closed loop systems 22.2.1 Open loop systems: Programmed instructions are fed into the controller through an input device. These instructions are then converted to electrical pulses (signals) by the controller and sent to the servo amplifier to energize the servo motors. The primary drawback of the open-loop system is that there is no feedback system to check whether the program position and velocity has been achieved. If the system performance is affected by load, temperature, humidity, or lubrication then the actual output could deviate from the desired output. For these reasons the open -loop system is generally used in point-to-point systems where the accuracy requirements are not critical. Very few continuous-path systems utilize open-loop control.
Figure 22.2 (a) Open loop control system Figure 22.2 (b) Closed loop control system
Courtesy: http://jjjtrain.kanabco.com/vms/Media/glossary_o/cnc_opencloseloop.gif Courtesy: http://jjjtrain.kanabco.com/vms/Media/glossary_o/cnc_opencloseloop.gif
Figure 22.2 (c) Open loop system 22.2.1 Closed loop systems: The closed-loop system has a feedback subsystem to monitor the actual output and correct any discrepancy from the programmed input. These systems use position and velocity feed back. The feedback system could be either analog or digital. The analog systems measure the variation of physical variables such as position and velocity in terms of voltage levels. Digital systems monitor output variations by means of electrical pulses. To control the dynamic behavior and the final position of the machine slides, a variety of position transducers are employed. Majority of CNC systems operate on servo mechanism, a closed loop principle. If a discrepancy is revealed between where the machine element should be and where it actually is, the sensing device signals the driving unit to make an adjustment, bringing the movable component to the required location. Closed-loop systems are very powerful and accurate because they are capable of monitoring operating conditions through feedback subsystems and automatically compensating for any variations in real-time.
(3 ) Based on the number of axes ' 2, 3, 4 & 5 axes CNC machines. ( 3.1) 2& 3 axes CNC machines: CNC lathes will be coming under 2 axes machines. There will be two axes along which motion takes place. The saddle will be moving longitudinally on the bed (Z-axis) and the cross slide moves transversely on the saddle (along X-axis). In 3-axes machines, there will be one more axis, perpendicular to the above two axes. By the simultaneous control of all the 3 axes, complex surfaces can be machined. ( 3.2 ) 4 & 5 axes CNC machines: 4 and 5 axes CNC machines provide multi-axis machining capabilities beyond the standard 3-axis CNC tool path movements. A 5-axis milling centre includes the three X, Y, Z axes, the A axis which is rotary tilting of the spindle and the B-axis, which can be a rotary index table.
Figure 22.3 Five axes CNC machine Importance of higher axes machining : Reduced cycle time by machining complex components using a single setup. In addition to time savings, improved accuracy can also be achieved as positioning errors between setups are eliminated. Improved surface finish and tool life by tilting the tool to maintain optimum tool to part contact all the times. Improved access to under cuts and deep pockets. By tilting the tool, the tool can be made normal to the work surface and the errors may be reduced as the major component of cutting force will be along the tool axis.
Higher axes machining has been widely used for machining sculptures surfaces in aerospace and automobile industry.
(3.3) Turning centre: Traditional centre lathes have horizontal beds. The saddle moves longitudinally and the cross slide moves transversely. Although the tools can be clearly seen, the operator must lean over the tool post to position them accurately. Concentration of chips may be creating a heat source and there may be temperature gradients in the machine tool. Keeping the above points in view, developments in the structure of the turning centres lead to the positioning the saddle and the cross slide behind the spindle on a slant bed as shown in the figure 22.4. Chips fall freely because of slant bed configuration which is more ergonomically acceptable from operator's point of view.
Figure 22.4 Slant bed turning centre 22.4 Based on the power supply ' Electric, Hydraulic & Pneumatic systems Mechanical power unit refers to a device which transforms some form of energy to mechanical power which may be used for driving slides, saddles or gantries forming a part of machine tool. The input power may be of electrical, hydraulic or pneumatic.
22.4.1 Electric systems: Electric motors may be used for controlling both positioning and contouring machines. They may be either a.c. or d.c. motor and the torque and direction of rotation need to be controlled. The speed of a d.c. motor can be controlled by varying either the field or the armature supply. The clutch-controlled motor can either be an a.c. or d.c. motor. They are generally used for small machine tools because of heat losses in the clutches. Split field motors are the simplest form of motors and can be controlled in a manner according to the machine tool. These are small and generally run at high maximum speeds and so require reduction gears of high ratio. Separately excited motors are used with control systems for driving the slides of large machine tools. 22.4.2 Hydraulic systems: These hydraulic systems may be used with positioning and contouring machine tools of all sizes. These systems may be either in the form of rams or motors. Hydraulic motors are smaller than electric motors of equivalent power. There are several types of hydraulic motors. The advantage of using hydraulic motors is that they can be very small and have considerable torque. This means that they may be incorporated in servosystems which require having a rapid response. ( 1 ) Different components related to CNC machine tools Any CNC machine tool essentially consists of the following parts: ( 1.1 ) Part program: A part program is a series of coded instructions required to produce a part. It controls the movement of the machine tool and on/off control of auxiliary functions such as spindle rotation and coolant. The coded instructions are composed of letters, numbers and symbols. ( 1.2 ) Program input device: The program input device is the means for part program to be entered into the CNC control. Three commonly used program input devices are punch tape reader, magnetic tape reader, and computer via RS-232-C communication. ( 1.3 ) Machine Control Unit: The machine control unit (MCU) is the heart of a CNC system. It is used to perform the following functions: To read the coded instructions. To decode the coded instructions.
To implement interpolations (linear, circular, and helical) to generate axis motion commands.
To feed the axis motion commands to the amplifier circuits for driving the axis mechanisms. To receive the feedback signals of position and speed for each drive axis.
To implement auxiliary control functions such as coolant or spindle on/off and tool change. ( 1.4 ) Drive System: A drive system consists of amplifier circuits, drive motors, and ball lead-screws. The MCU feeds the control signals (position and speed) of each axis to the amplifier circuits. The control signals are augmented to actuate drive motors which in turn rotate the ball lead-screws to position the machine table. ( 1.5 ) Machine Tool: CNC controls are used to control various types of machine tools. Regardless of which type of machine tool is controlled, it always has a slide table and a spindle to control of position and speed. The machine table is controlled in the X and Y axes, while the spindle runs along the Z axis. ( 1.6 ) Feed Back System: The feedback system is also referred to as the measuring system. It uses position and speed transducers to continuously monitor the position at which the cutting tool is located at any particular instant. The MCU uses the difference between reference signals and feedback signals to generate the control signals for correcting position and speed errors. ( 2 ) Machine axes designation Machine axes are designated according to the "right-hand rule", When the thumb of right hand points in the direction of the positive X axis, the index finger points toward the positive Y axis, and the middle finger toward the positive Z axis. Figure 10 shows the right-hand rule applied to vertical machines, while Figure 23.1 applies to horizontal machines.
Figure 23.1: Right hand rule for vertical and horizontal machine
(1) Tool changing arrangements There are two types of tool changing arrangements: manual and automatic. Machining centres incorporate automatic tool changer (ATC). It is the automatic tool changing capability that distinguishes CNC machining centres from CNC milling machines. (1.1) Manual tool changing arrangement:
Tool changing time belongs to non-productive time. So, it should be kept as minimum as possible. Also the tool must be located rigidly and accurately in the spindle to assure proper machining and should maintain the same relation with the work piece each time. This is known as the repeatability of the tool. CNC milling machines have some type of quick tool changing systems, which generally comprises of a quick release chuck. The chuck is a different tool holding mechanism that will be inside the spindle and is operated either hydraulically or pneumatically. The tool holder which fits into the chuck can be released by pressing a button which releases the hydraulically operated chuck. The advantage of manual tool changing is that each tool can be checked manually before loading the tools and there will be no limitation on the number of tools from which selection can be made. (1.2) Automatic tool changing arrangement Tooling used with an automatic tool changer should be easy to center in the spindle, each for the tool changer to grab the tool holder and the tool changer should safely disengage the tool holder after it is secured properly. Figure 27.1 shows a tool holder used with ATC. The tool changer grips the tool at point A and places it in a position aligned with the spindle. The tool changer will then insert the tool holder into the spindle. A split bushing in the spindle will enclose the portion B. Tool changer releases the tool holder. Tool holder is drawn inside the spindle and is tightened.
28. CNC WORK HOLDING DEVICES With the advent of CNC technology, machining cycle times were drastically reduced and the desire to combine greater accuracy with higher productivity has led to the reappraisal of work holding technology. Loading or unloading of the work will be the non-productive time which needs to be minimized. So the work is usually loaded on a special work holder away from the machine and then transferred it to the machine table. The work should be located precisely and secured properly and should be well supported. 28.1 Turning center work holding methods: Machining operations on turning centers or CNC lathes are carried out mostly for axisymmetrical components. Surfaces are generated by the simultaneous motions of X and Z axes. For any work holding device used on a turning centre there is a direct "trade off" between part accuracy and the flexibility of work holding device used.
Disadvantages High cost of jaw/chuck changing automation. Resulting in a more complex & higher cost machine tool
Very quick loading and Expensive optional equipment. Barunloading of the workpiece can feeders cannot be incorporated. be achieved. Reasonable range of Short/medium length parts only can be work piece sizes can be loaded incorporated. Heavy chucks. automatically Limited to a range of flat parts with little overhang. Bar-feeders cannot be incorporated. Parts on magnetic chucks must be ferrous. Heavy cuts must be avoided.
Simple in design and relatively Pneumatic/Magnetic inexpensive. Part automation is chucks possible. No part distortion is Figure 28.3 caused due to clamping force Automatic Chucks with soft jaws
Adaptable to automation. Heavy Jaws must be changed manually & cuts can be taken. Individual bared, so slow part change-overs. A parts can be small or large in range of jaw blanks required. diameter
Long & short parts of reasonably Expanding mandrels large size accommodated. Limitation on part shape. Heavy cuts & collets Automation can be incorporated. should be avoided. Figure 28.2 Clamping forces do not distort part. Simple in design Dedicated Chucks Excellent restraint & location of Expensive & can only be financially a wide range of individual & justified with either large runs or when
extremely complex & accurate parts are required. Tool making facilities required. Large storage space.
(1.2 ) Axis Designation An object in space can have six degrees of freedom with respect to an imaginary Cartesian coordinate system. Three of them are liner movements and other three are rotary. Machining of simple part does not require all degrees of freedom. With the increase in degrees of freedom, complexity of hardware and programming increases. Number of degree of freedom defines axis of machine. Axes interpolation means simultaneous movement of two or more different axes to generate required contour.
For typical lathe machine degree of freedom is 2 and so it called 2 axis machines. For typical milling machine degree of freedom is , which means that two axes can be interpolated at a time and third remains independent. Typical direction for the lathe and milling machine is as shown in figure 12 and figure 13. (1.2) Setting up of Origin In case of CNC machine tool rotation of the reference axis is not possible. Origin can set by selecting three reference planes X, Y and Z. Planes can be set by touching tool on the surfaces of the work piece and setting that surfaces as X=x, Y=y and Z=z. (1.3) Coding Systems The programmer and the operator must use a coding system to represent information, which the controller can interpret and execute. A frequently used coding system is the BinaryCoded Decimal or BCD system. This system is also known as the EIA Code set because it was developed by Electronics Industries Association. The newer coding system is ASCII and it has become the ISO code set because of its wide acceptance. (2) CNC Code Syntax The CNC machine uses a set of rules to enter, edit, receive and output data. These rules are known as CNC Syntax, Programming format, or tape format. The format specifies the order and arrangement of information entered. This is an area where controls differ widely. There are rules for the maximum and minimum numerical values and word lengths and can be entered, and the arrangement of the characters and word is important. The most common CNC format is the word address format and the other two formats are fixed sequential block address format and tab sequential format, which are obsolete. The instruction block consists of one or more words. A word consists of an address followed by numerals. For the address, one of the letters from A to Z is used. The address defines the meaning of the number that follows. In other words, the address determines what the number stands for. For example it may be an instruction to move the tool along the X axis, or to select a particular tool.
Most controllers allow suppressing the leading zeros when entering data. This is known as leading zero suppression. When this method is used, the machine control reads the numbers from right to left, allowing the zeros to the left of the significant digit to be omitted. Some controls
allow entering data without using the trailing zeros. Consequently it is called trailing zero suppression. The machine control reads from left to right, and zeros to the right of the significant digit may be omitted. (3) Types of CNC codes (3.1) Preparatory codes The term "preparatory" in NC means that it "prepares" the control system to be ready for implementing the information that follows in the next block of instructions. A preparatory function is designated in a program by the word address G followed by two digits. Preparatory functions are also called G-codes and they specify the control mode of the operation. (3.2) Miscellaneous codes Miscellaneous functions use the address letter M followed by two digits. They perform a group of instructions such as coolant on/off, spindle on/off, tool change, program stop, or program end. They are often referred to as machine functions or M-functions. Some of the M codes are given below. M00 Unconditional stop M02 End of program M03 Spindle clockwise M04 Spindle counterclockwise M05 Spindle stop M06 Tool change (see Note below) M30 End of program In principle, all codes are either modal or non-modal. Modal code stays in effect until cancelled by another code in the same group. The control remembers modal codes. This gives the programmer an opportunity to save programming time. Non-modal code stays in effect only for the block in which it is programmed. Afterwards, its function is turned off automatically. For instance G04 is a non-modal code to program a dwell. After one second, which is say, the programmed dwell time in one particular case, this function is cancelled. To perform dwell in the next blocks, this code has to be reprogrammed. The control does not memorize the non-modal code, so it is called as one shot codes. One-shot commands are non-modal. Commands known as "canned cycles" (a controller's internal set of preprogrammed subroutines for generating commonly machined features such as internal pockets and drilled holes) are non-modal and only function during the call. On some older controllers, cutter positioning (axis) commands (e.g., G00, G01, G02, G03, & G04) are non-modal requiring a new positioning command to be entered each time the cutter (or axis) is moved to another location.
Command group
G-code
Illustration
G00
G01
Command group
G-code
Illustration
G17
XY - Plane selection
Plane Selection
G18
ZX - Plane selection
G19
YZ - plane selection
Command group
G-code
Illustration
Command group
Gcode
Illustration
Command group
G-code
Illustration
G00
G01
G02
G03
Example Program A contour illustrated in figure 29.3 is to be machined using a CNC milling machine. The details of the codes and programs used are given below. Example:
O5678 N02 G21 N03 M03 S1000 N04 G00 X0 Y0 N05 G00 Z-10.0 N06 G01 X50.0 N07 G01 Y20.0 N08 G02 X25.0 Y45.0 R25.0 N09 G03 X-25.0 Y45.0 R25.0 N10 G02 X-50.0 Y20.0 R25.0 N11 G01 Y0.0 N12 G01 X0.0 N13 G00 Z10.0 N14 M05 M09
Program number Metric programming Spindle start clockwise with 1000rpm Rapid motion towards (0,0) Rapid motion towards Z=-10 plane Linear interpolation Linear interpolation Circular interpolation clockwise(cw) Circular interpolation counter clockwise(ccw) Circular interpolation clockwise(cw) Linear interpolation Linear interpolation Rapid motion towards Z=10 plane Spindle stop and program end
30. CNC Part Programming II In the previous section, fundamentals of programming as well basic motion commands for milling and turning have been discussed. This section gives an overview of G codes used for changing the programming mode, applying transformations etc., 30.1 Programming modes Programming mode should be specified when it needs to be changed from absolute to incremental and vice versa. There are two programming modes, absolute and incremental and is discussed below. 30.1.1 Absolute programming (G90) In absolute programming, all measurements are made from the part origin established by the programmer and set up by the operator. Any programmed coordinate has the absolute value in respect to the absolute coordinate system zero point. The machine control uses the part origin as the reference point in order to position the tool during program execution (Figure 30.1).
30.1.2 Relative programming (G91) In incremental programming, the tool movement is measured from the last tool position. The programmed movement is based on the change in position between two successive points. The coordinate value is always incremented according to the preceding tool location. The programmer enters the relative distance between current location and the next point ( Figure 30.2).
The spindle speed is programmed by the letter 'S' followed by four digit number, such as S1000. There are two ways to define speed. 1. Revolutions per minute (RPM) 2. Constant surface speed The spindle speed in revolutions per minute is also known as constant rpm or direct rpm. The change in tool position does not affect the rpm commanded. It means that the spindle RPM will remain constant until another RPM is programmed. Constant surface speed is almost exclusively used on lathes. The RPM changes according to diameter being cut. The smaller the diameter, the more RPM is achieved; the bigger the diameter, the less RPM is commanded. This is changed automatically by the machine speed control unit while the tool is changing positions. This is the reason that, this spindle speed mode is known as diameter speed. 30.3 Loops and Unconditional jump (G25) The unconditional jump is used to repeat a set of statements a number of times. Example: N10
In the above example, the program statements from N70 to N100 are repeated once when the statement N160 is executed. Usually the G25 is used after a mirror statement. Illustrative example geometry and its program are given below (Figure 30.3). Example:
30.4 Mirroring The mirroring command is used when features of components shares symmetry about one or more axes and are also dimensionally identical. By using this code components can be machined using a single set of data and length of programs can be reduced. G10 cancellation of mirroring image G11 Mirror image on X axis G12 Mirror image on Y axis G13 Mirror image on Z axis Example:
30.5 Shifting origin G92 code is used to temporarily shift the origin to the reference point specified.
Example: G92 X-100 Y-80 In the above statement the x and y values gives the present values of original origin after shifting it. This is illustrated through an example (Figure 30.5).
Example:
30.6 Scaling Scaling function is used to program geometrically similar components with varying sizes. Syntax: G72 Kk, where k is the scaling factor. The scaling command can be cancelled by using the statement G72 K1.0. Example:
Pattern rotation is used to obtain a pattern of similar features. G73 code is used to rotate the feature to form a pattern. Syntax G73 Aa, where 'a' is the angle of rotation. This command is cumulative, and the angle gets added up on time the program is executed. So all the rotational angle parameters should be cancelled using the code G73. The unconditional jump code G25 is used in conjunction with this code to achieve the desired rotation. The following example (Figure 30.7) depicts the case of a pattern which needs to be programmed through G73. Example:
30.8 Tool selection Tool selection is accomplished using 'T' function followed by a four digit number where, first two digits are used to call the particular tool and last two digits are used to represent tool offset in the program. The tool offset is used to correct the values entered in the coordinate system preset block. This can be done quickly on the machine without actually changing the values in the program. Using the tool offsets, it is easy to set up the tools and to make adjustments Feed rate control Cutting operations may be programmed using two basic feed rate modes: 1. Feed rate per spindle revolution 2. Feed rate per time The feed rate per spindle revolution depends on the RPM programmed.
31.1 Tool radius Compensation The programmed point on the part is the command point. It is the destination point of the tool. The point on the tool that is used for programming is the tool reference point. These points may or may not coincide, depending on the type of tool used and machining operation being performed. When drilling, tapping, reaming, countersinking or boring on the machining center, the tool is programmed to the position of the hole or bore center - this is the command point. When milling a contour, the tool radius center is used as the reference point on the tool while writing the program, but the part is actually cut by the point on the cutter periphery. This point is at 'r' distance from the tool center. This means that the programmer should shift the tool center away from the part in order to perform the cutting by the tool cutting edge. The shift amount depends upon the part geometry and tool radius. This technique is known as tool radius compensation or cutter radius compensation. In case of machining with a single point cutting tool, the nose radius of the tool tip is required to be accounted for, as programs are being written assuming zero nose radius. The tool nose radius center is not only the reference point that can be used for programming contours. On the tool there is a point known as imaginary tool tip, which is at the intersection of the lines tangent to the tool nose radius. Cutter compensation allows programming the geometry and not the toolpath. It also allows adjusting the size of the part, based on the tool radius used to cut part. This is useful when cutter of the proper diameter is not found. This is best explained in the Figure 31.1.
The information on the diameter of the tool, which the control system uses to calculate the required compensation, must be input into the control unit's memory before the operation. Tool diameter compensation is activated by the relevant preparatory functions (G codes) as shown in Figure 31.2. Compensation for tool radius can be of either right or left side compensation. This can be determined by direction of tool motion. If you are on the tool path facing direction of tool path
and if tool is on your left and workpiece is on your right side then use G41 (left side compensation). For, reverse use other code G42 (Right side compensation). Both the codes are modal in nature and remain active in the program until it is cancelled by using another code, G40.
Offset Direction = Left (G41)
When activating cutter radius compensation, it must be ensured that the slides will first make a non-cutting move to enable the correct tool and workpiece relation to be established. A similar move is necessary prior to cancellation of the radius compensation. These non-cutting moves are referred as "ramp on" and "ramp off" respectively. Figure 31.3 shows the ramp on motion for different angles of approach.
31.3 Subroutines
Any frequently programmed order of instruction or unchanging sequences can benefit by becoming a subprogram. Typical applications for subprogram applications in CNC programming are Repetitive machining motions Functions relating to tool change
Structurally, subprograms are similar to standard programs. They use the same syntax rules. The benefits of subroutines involve the reduction in length of program, and reduction in program errors. There is a definition statement and subroutine call function. Standard sub-routine N10 N20 N30 . N70 G22 N5 N80 N90 . N100 G24 . N160 G20 N5 In the above example G22 statement defines the start block of the sub-routine and G24 marks the end of the sub-routine statement. The subroutine is called by another code G20 identified by the label N5. Parametric subroutine .. .. .. G23 N18 G01 X P0 Y P1 .. .. G21 N18 P0=k10 P1=k20 In the above example G23 starts the subprogram label and starts the definition, and the parameters P0 , P1 are defined for values of x and y. The G21 statement is used to call the subroutine and to assign the values to the parameters.
31.4 Canned Cycles A canned cycle is a preprogrammed sequence of events / motions of tool / spindle stored in memory of controller. Every canned cycle has a format. Canned cycle is modal in nature and remains activated until cancelled. Canned cycles are a great resource to make manual programming easier. Often underutilized, canned cycles save time and effort. 31.4.1 Machining a Rectangular pocket This cycle assumes the cutter is initially placed over the center of the pocket and at some clearance distance (typically 0.100 inch) above the top of the pocket. Then the cycle will take over from that point, plunging the cutter down to the "peck depth" and feeding the cutter around the pocket in ever increasing increments until the final size is attained. The process is repeated until the desired total depth is attained. Then the cutter is returned to the center of the pocket at the clearance height as shown in figure 31.4
The overall length and width of the pocket, rather than the distance of cutter motion, are programmed into this cycle. The syntax is : G87 Xx Yy Zz Ii Jj Kk Bb Cc Dd Hh Ll Ss (This g code is entirely controller specific and the syntax may vary between controller to controller). Description: x,y - Center of the part z - Distance of the reference plane from top of part i - Pocket depth j,k - Half dimensions of the target geometry (pocket) b - Step depth c - Step over d - Distance of the reference plane from top of part h - Feed for finish pass l - Finishing allowance s - Speed For machining a circular pocket, the same syntax with code G88 is used. 31.4.2 Turning Cycles The G80 command will make the tool move in a series of rectangular paths cutting material axially until the tool tip reaches target point P1 where the cycle ends as shown in figure 31.5. Cutting movements will be at the cutting feed rate. All other movements will be at rapid traverse rate.
Figure 31.5 Turning cycle (Straight cutting) The syntax is G80 Xx Zz Ff 31.4.3 Roughing Cycle In roughing cycle, the final finishing cycle profile is used to perform the roughing operation for the higher material removal rate. The syntax for the roughing cycle is given below.
G81 Pp Qq Uu Ww Dd Ff Ss
31.5 The APT Programming Language The APT (Automatically Programmed Tool) programming language was developed in early 1960s to assist engineers in defining the proper instructions and calculations for NC part programming. A great strength of APT is its ability to perform precise calculations for complicated tool paths when contouring on a three dimensional surface in a multi- axis programming mode. Now APT has become obsolete. Please click here to know more about APT. Automatic generation of NC code is dealt in this page Part Programming for machining curved surfaces With increased demand for aesthetic form and functional surface shape in many industrial products, the need for a method of CNC machining of curved and intricate surfaces is required. One of the most important features in determining CNC machining efficiency and productivity is cutter path motion. This cutter motion on compound-curvature surfaces determines the time for machining as well as determines the surface roughness (or cusp height or scellop height). Surface roughness always exists because of the lack of geometry matching between cutter and surface. ( 1 ) Representation of Curves Description of geometry of curves and surfaces may be done in several ways. It can be both analytical and parametric. It can be described mathematically by nonparametric or parametric equations. Nonparametric equations can be explicit or implicit. For a nonparametric curve, the coordinates y and z of a point on the curve are expressed as two separate functions of third coordinate x as the independent variable.
CNC MACHINES: Most CNC milling machines (also called machining centers) are computer controlled vertical mills with the ability to move the spindle vertically along the Z-axis. This extra degree of freedom permits their use in die sinking, engraving applications, and 2.5D surfaces such as relief sculptures. When combined with the use of conical tools or a ball nose cutter, it also significantly improves milling precision without impacting speed, providing a cost-efficient alternative to most flat-surface hand-engraving work. Five-axis machining center with Rotating table and computer interface
CNC machines can exist in virtually any of the forms of manual machinery, like horizontal mills. The most advanced CNC milling-machines, the multiaxis machine, add two more axes in addition to the three normal axes (XYZ). Horizontal milling machines also have a C or Q axis, allowing the horizontally mounted work piece to be rotated, essentially allowing asymmetric and eccentric turning. The fifth axis (B axis) controls the tilt of the tool itself. When all of these axes are used in conjunction with each other, extremely complicated geometries, even organic geometries such as a human head can be made with relative ease with these machines. But the skill to program such geometries is beyond that of most operators. Therefore, 5-axis milling machines are practically always programmed with CAM. With the declining price of computers and open source CNC software, the entry price of CNC machines has plummeted.
A horizontal mill has the same sort of xy table, but the cutters are mounted on a horizontal arbor (see Arbor milling) across the table. Many horizontal mills also feature a built-in rotary table that allows milling at various angles; this feature is called a universal table. While end mills and the other types of tools available to a vertical mill may be used in a horizontal mill, their real advantage lies in arbor-mounted cutters, called side and face mills, which have a cross section rather like a circular saw, but are generally wider and smaller in diameter. Because the cutters have good support from the arbor and have a larger cross-sectional area than an end mill, quite heavy cuts can be taken enabling rapid material removal rates. These are used to mill grooves and slots. Plain mills are used to shape flat surfaces. Several cutters may be ganged together on the arbor to mill a complex shape of slots and planes. Special cutters can also cut grooves, bevels, radii, or indeed any section desired. These specialty cutters tend to be expensive. Simplex mills have one spindle, and duplex mills have two. It is also easier to cut gears on a horizontal mill. Some horizontal milling machines are equipped with a power-take-off provision on the table. This allows the table feed to be synchronized to a rotary fixture, enabling the milling of spiral features such as hypoid gears