COMPUTERS IN INDUSTRIAL MANUFACTURING

CAD/CAM (SUBJECT CODE: A70328) UNIT-1 INTRODUCTION Learning Objectives:  Understand the various spheres of manufacturing activity where computers are...
Author: Brendan Lindsey
11 downloads 0 Views 4MB Size
CAD/CAM (SUBJECT CODE: A70328) UNIT-1 INTRODUCTION Learning Objectives:  Understand the various spheres of manufacturing activity where computers are used  Differentiate between conventional and computer based manufacturing system in product cycle  Explain CAD and its application  Explain various types of manufacturing organisations  Explain CAM and its application

COMPUTERS IN INDUSTRIAL MANUFACTURING The role of computer in manufacturing may be broadly classified into two groups: 1. Computer monitoring and control of the manufacturing process. 2. Manufacturing support applications, which deal essentially with the preparations for actual manufacturing and post-manufacture operations. Second category: The types of support that can be envisaged are: •

Computer aided design and drafting,



Computer aided engineering,



Computer aided manufacturing,



Computer aided process planning,



Computer aided tool design,



Computer aided NC part programming,



Computer aided scheduling,



Computer aided material requirement planning, etc.

OVERVIEW OF CAD/CAM What is CAD? CAD if often defined in a variety of ways and includes a large range of activities. Very broadly it can be said to be the integration of computer science (or software) techniques in engineering design. At one end when we talk of modeling, iIt encompasses the following:     

Use of computers (hardware & software) for designing products Numerical method, optimizations etc. 2D/3D drafting 3D modeling for visualization Modeling curves, surfaces, solids, mechanism, assemblies, etc.

The models thus developed are first visualized on display monitors using avariety of techniques including wire frame displa, shaded image display, hidden surface removed display and so on. Once the designer is satisfied, these models are then used for various types of analysis / applications. thus, at the other end it includes a number of analysis activities. These could be: 

  

Stress (or deflection) analysis, i.e. numerical methods meant for estimating the behaviour of an artifact with respect to these parameters. It includes tools like the Finite Element Method (FEM). Simulation of actual use Optimization Other applications like o CAD/CAM integration o Process planning

These are activities which normally use models developed using one or more of the techniques mentioned above. These activities are often included in other umbrellas like CAM or CAE. A term often used is CAD to include this broad set of activities. They all use CAD models and often the kind of application they have to be used ina determines the

kind of amodel to be developed. Hence, in this course I cover them under the umbrella of CAD. In this course we will strive to give an overview of modelling techniques followed by some applications, specifically CAM. Thus there are three aspects to CAD.   

Modeling Display/ Visualization Applications

MODELING Modelling typically includes a set of activities like     

Defining objects Defining relation between objects Defining properties of objects Defining the orientations of the objects in suitable co-ordinate systems Modification of existing definition (editing).

The figure below explains what a typical CAD model would need to define, what kind of entities need to be defined and what relationships exist between them.

At the highest level we have the volume which is defined by (or "delimited by") a set of surfaces. These surfaces can be either planar or curved / warped. A planar surface can be bounded by a set of curves. A curved surface can be seen as a net of curves. These curves are typically a succession of curve segemnts which define the complete the curve. The curve segment is defined using a set of end points / control points which govern the nature of the curve. Thus a relationship is defined between entities at each level. Once such a relationship is defined, a geometric model of the artifact is available. In any design there might be manysuch artifacts. One then has to define properties of each of these artifacts and define a relationship between them. The properties and the relationships needed are dependent on the application the model is to be used for subsequently. But one common application that all models have to go through is visualization of the model (s).

COMPUTER AIDED MANUFACTURE (CAM) Type of Production 1. Mass production - large lots e.g. automobiles 2. Batch production - medium lot sizes e.g. industrial machines, aircrafts, etc. 3. Job shop production - small lots or one off, e.g. prototypes, aircrafts,etc.

What are the advantages of using CAM? • Greater design freedom: Any changes that are required in design can be incorporated at any design stage without worrying about any delays, since there would hardly be any in an integrated CAM environment. • Increased productivity: In view of the fact that the total manufacturing activity is completely organised through the computer, it would be possible to increase the productivity of the plant. • Greater operating flexibility:

CAM enhances the flexibility in manufacturing methods and changing of product lines. • Shorter lead-time: Lead times in manufacturing would be greatly reduced. • Improved reliability: In view of the better manufacturing methods and controls at the manufacturing stage, the products thus manufactured as well as of the manufacturing system would be highly reliable. • Reduced maintenance: Since most of the components of a CAM system would include integrated diagnostics and monitoring facilities, they would require less maintenance compared to the conventional manufacturing methods. • Reduced scrap and rework: Because of the CNC machines used in production, and the part programs being made by the stored geometry from the design stage, the scrap level would be reduced to the minimum possible and almost no rework would be necessary. • Better management control: As shown above, since all the information and controlling functions are attempted with the help of the computer, a better management control on the manufacturing activity is possible. Application Area CAD-2D drafting

Software

CADCAM, AutoCAD, MicroCADM, VersaCAD

Integrated System Pro/Engineer Unigraphics CATIA

CAD-Solid modeling

Solid Edges, SolidWorks, mechanical Desktop

SolidDesigner, I-DEAS I/MES EUCLID-IS

CAM

BravoNCG, VERICUT, Mastercam, Powermill

CAE

MSC/NASTRAN,ANSYS, PATRAN, DADS, CMOLDS,MOLDFLOW,MOLDEX, designWorks

DUCT,

Camand,

PRODUCT CYCLE Let us consider the manufacturing environment of a given product. How does the product idea originate? •

The market forces determine the need for a product.



Expertise on the part of the company estimates the likely demand and probable profitability and decides on the best mode of designing and manufacturing the desired product.

The details of such a design and the subsequent manufacturing process are depicted in Fig. 1-2 for the traditional approach and in Fig. 1-3 for computer aided manufacturing

Computer Aided Design (CAD) Is a TOOL to aid designer/engineer Classified under 2 categories: 1. Product Engineering • Product functions • Product Specifications • Conceptual design • Ergonomics and Aesthetics • Standards • Detailed Design • Prototype development • Testing • Simulation • Analysis • Strength • Kinematics, Dynamics • Heat, Flow • Design for Manufacture • Design for Assembly • Drafting 2. Manufacturing Engineering • Process planning • Process sheets • Route sheets • Tooling • Cutting tools • Jigs and Fixtures • Dies and Moulds • Manufacturing Information Generation • CNC Part programmes • Robot Programmes • Inspection (CMM) programmes • Production Organisation • Bill of Materials • Material Requirement Planning • Production Planning • Shop Floor Control • Plant Simulation • Marketing and Distribution

• •

Packaging Distribution, Marketing

Today‟s CAD technology can provide the engineer/designer the necessary help in the following ways: 1) Computer aided design (CAD) is faster and more accurate than conventional methods. 2) The various construction facilities available in CAD would make the job of developing the model and associated drafting a very easy task. 3) In contrast with the traditional drawing methods, under CAD it is possible to manipulate various dimensions, attributes and distances of the drawing elements. This quality makes CAD useful for design work. 4) Under CAD you will never have to repeat the design or drawing of any component. Once a component has been made, it can be copied in all further works within seconds, including any geometric transformation needed. 5) You can accurately calculate the various geometric properties including dimensions of various components interactively in CAD, without actually making their models and profiles. 6) 6. Modification of a model is very easy and would make the designer‟s 7) task of improving a given product simple to take care of any future 8) requirements. 9) 7. Use of standard components (part libraries) makes for a very fast 10) model development work. Also a large number of components and 11) sub-assemblies may be stored in part libraries to be reproduced and 12) used later. 13) 8. Several professional CAD packages provide 3D (3 dimensional) 14) visualisation capabilities so that the designers can see the products 15) being designed from several different orientations. This eliminates 16) the need of making models of products for realisation and explaining

17) the concepts to the team. 18) Not only this, several designers can work simultaneously on the 19) same product and can gradually build the product in a modular fashion. 20) This certainly provides the answer to the need of today‟s industry and the 21) one emerging on the horizon.

CAD/CAM HARDWARE 

Computer System  Mainframe Computer and Graphics Terminals  Powerful  Inconvenient  High cost  Turn-key CAD System  Dedicated computer systems for CAD applications, cons superminicomputer and several design work stations.  Following the "central control concept"  Inconvenient and not powerful enough for complex 3D m  Workstations & High-End Personal Computers  Supporting multiple tasks  Supporting network and file-sharing – convenient  Low costs 

Present and trend



BASIC STRUCTURE OF COMPUTERS Computer types: A computer can be defined as a fast electronic calculating machine that accepts the (data) digitized input information process it as per the list of internally stored instructions and produces the resulting information. List of instructions are called programs & internal storage is called computer memory. The different types of computers are  Personal computers: - This is the most common type found in homes, schools, Business offices etc., It is the most common type of desk top computers with processing and storage units along with various input and output devices.  Note book computers: - These are compact and portable versions of PC  Work stations: - These have high resolution input/output (I/O) graphics

capability, but with same dimensions as that of desktop computer. These are used in engineering applications of interactive design work.  Enterprise systems: - These are used for business data processing in medium to large corporations that require much more computing power and storage capacity than work stations. Internet associated with servers have become a dominant worldwide source of all types of information.  Super computers: - These are used for large scale numerical calculations required in the applications like weather forecasting etc., Functional unit: A computer consists of five functionally independent main parts input, memory, arithmetic logic unit (ALU), output and control unit.

Input I/O

ALU Memory

Output

Processor

Control Unit

Fig a : Functional units of computer Input device accepts the coded information as source program i.e. high level language. This is either stored in the memory or immediately used by the processor to perform the desired operations. The program stored in the memory determines the processing steps. Basically the computer converts one source program to an object program. i.e. into machine language. Finally the results are sent to the outside world through output device. All of these actions are coordinated by the control unit. Input unit: The source program/high level language program/coded information/simply data is fed to a computer through input devices keyboard is a most common type. Whenever a key is pressed, one corresponding word or number is translated into its equivalent binary code over a cable & fed either to memory or processor. Joysticks, trackballs, mouse, scanners etc are other input devices.

Memory unit: Its function into store programs and data. It is basically to two types 1. Primary memory 2. Secondary memory 1. Primary memory: - Is the one exclusively associated with the processor and operates at the electronics speeds programs must be stored in this memory while they are being executed. The memory contains a large number of semiconductors storage cells. Each capable of storing one bit of information. These are processed in a group of fixed site called word. To provide easy access to a word in memory, a distinct address is associated with each word location. Addresses are numbers that identify memory location. Number of bits in each word is called word length of the computer. Programs must reside in the memory during execution. Instructions and data can be written into the memory or read out under the control of processor. Memory in which any location can be reached in a short and fixed amount of time after specifying its address is called random-access memory (RAM). The time required to access one word in called memory access time. Memory which is only readable by the user and contents of which can‟t be altered is called read only memory (ROM) it contains operating system. Caches are the small fast RAM units, which are coupled with the processor and are aften contained on the same IC chip to achieve high performance. Although primary storage is essential it tends to be expensive. 2 Secondary memory: - Is used where large amounts of data & programs have to be stored, particularly information that is accessed infrequently. Examples: - Magnetic disks & tapes, optical disks (ie CD-ROM‟s), floppies etc., Arithmetic logic unit (ALU):Most of the computer operators are executed in ALU of the processor like addition, subtraction, division, multiplication, etc. the operands are brought into the ALU from memory and stored in high speed storage elements called register. Then according to the instructions the operation is performed in the required sequence. The control and the ALU are may times faster than other devices connected to a computer system. This enables a single processor to control a number of external devices such as key boards, displays, magnetic and optical disks, sensors and other mechanical controllers.

Output unit:These actually are the counterparts of input unit. Its basic function is to send the processed results to the outside world. Examples:- Printer, speakers, monitor etc. Control unit:It effectively is the nerve center that sends signals to other units and senses their states. The actual timing signals that govern the transfer of data between input unit, processor, memory and output unit are generated by the control unit. Basic operational concepts: To perform a given task an appropriate program consisting of a list of instructions is stored in the memory. Individual instructions are brought from the memory into the processor, which executes the specified operations. Data to be stored are also stored in the memory. Examples: - Add LOCA, R0 This instruction adds the operand at memory location LOCA, to operand in register R0 & places the sum into register. This instruction requires the performance of several steps, 1. First the instruction is fetched from the memory into the processor. 2. The operand at LOCA is fetched and added to the contents of R0 3. Finally the resulting sum is stored in the register R0 The preceding add instruction combines a memory access operation with an ALU Operations. In some other type of computers, these two types of operations are performed by separate instructions for performance reasons. Load LOCA, R1 Add R1, R0 Transfers between the memory and the processor are started by sending the address of the memory location to be accessed to the memory unit and issuing the appropriate control signals. The data are then transferred to or from the memory.

Memory

MAR

MDR CONTROL

PC

IR

R0 R1 … … … …

ALU

Rn-1 n- GPRs Fig b : Connections between the processor and the memory The fig shows how memory & the processor can be connected. In addition to the ALU & the control circuitry, the processor contains a number of registers used for several different purposes. The instruction register (IR):- Holds the instructions that is currently being executed. Its output is available for the control circuits which generates the timing signals that control the various processing elements in one execution of instruction. The program counter PC:-

This is another specialized register that keeps track of execution of a program. It contains the memory address of the next instruction to be fetched and executed. Besides IR and PC, there are n-general purpose registers R0 through Rn-1. The other two registers which facilitate communication with memory are: 1. MAR – (Memory Address Register):- It holds the address of the location to be accessed. 2. MDR – (Memory Data Register):- It contains the data to be written into or read out of the address location. Operating steps are 1. Programs reside in the memory & usually get these through the I/P unit. 2. Execution of the program starts when the PC is set to point at the first instruction of the program. 3. Contents of PC are transferred to MAR and a Read Control Signal is sent to the memory. 4. After the time required to access the memory elapses, the address word is read out of the memory and loaded into the MDR. 5. Now contents of MDR are transferred to the IR & now the instruction is ready to be decoded and executed. 6. If the instruction involves an operation by the ALU, it is necessary to obtain the required operands. 7. An operand in the memory is fetched by sending its address to MAR & Initiating a read cycle. 8. When the operand has been read from the memory to the MDR, it is transferred from MDR to the ALU. 9. After one or two such repeated cycles, the ALU can perform the desired operation. 10. If the result of this operation is to be stored in the memory, the result is sent to MDR. 11. Address of location where the result is stored is sent to MAR & a write cycle is initiated. 12. The contents of PC are incremented so that PC points to the next instruction that is to be executed. Normal execution of a program may be preempted (temporarily interrupted) if some devices require urgent servicing, to do this one device raises an Interrupt signal. An interrupt is a request signal from an I/O device for service by the processor. The processor provides the requested service by executing an appropriate interrupt service routine. The Diversion may change the internal stage of the processor its state must

be saved in the memory location before interruption. When the interrupt-routine service is completed the state of the processor is restored so that the interrupted program may continue. Bus structure: The simplest and most common way of interconnecting various parts of the computer. To achieve a reasonable speed of operation, a computer must be organized so that all its units can handle one full word of data at a given time A group of lines that serve as a connecting port for several devices is called a bus. In addition to the lines that carry the data, the bus must have lines for address and control purpose. Simplest way to interconnect is to use the single bus as shown

Since the bus can be used for only one transfer at a time, only two units can actively use the bus at any given time. Bus control lines are used to arbitrate multiple requests for use of one bus. Single bus structure is  Low cost   Very flexible for attaching peripheral devices 

Multiple bus structure certainly increases, the performance but also increases the cost significantly. All the interconnected devices are not of same speed & time, leads to a bit of a problem. This is solved by using cache registers (ie buffer registers). These buffers are electronic registers of small capacity when compared to the main memory but of comparable speed. The instructions from the processor at once are loaded into these buffers and then the complete transfer of data at a fast rate will take place. Performance: The most important measure of the performance of a computer is how quickly it can execute programs. The speed with which a computer executes program is affected by the design of its hardware. For best performance, it is necessary to design the compiles, the machine instruction set, and the hardware in a coordinated way. The total time required to execute the program is elapsed time is a measure of the performance of the entire computer system. It is affected by the speed of the processor, the disk and the printer. The time needed to execute a instruction is called the processor time. Just as the elapsed time for the execution of a program depends on all units in a computer system, the processor time depends on the hardware involved in the execution of individual machine instructions. This hardware comprises the processor and the memory which are usually connected by the bus as shown in the fig c.

Cache Memory

Main Memory

Processor

Bus Fig d :The processor cache The pertinent parts of the fig. c is repeated in fig. d which includes the cache memory as part of the processor unit. Let us examine the flow of program instructions and data between the memory and the processor. At the start of execution, all program instructions and the required data are stored in the main memory. As the execution proceeds, instructions

are fetched one by one over the bus into the processor, and a copy is placed in the cache later if the same instruction or data item is needed a second time, it is read directly from the cache. The processor and relatively small cache memory can be fabricated on a single IC chip. The internal speed of performing the basic steps of instruction processing on chip is very high and is considerably faster than the speed at which the instruction and data can be fetched from the main memory. A program will be executed faster if the movement of instructions and data between the main memory and the processor is minimized, which is achieved by using the cache. For example:- Suppose a number of instructions are executed repeatedly over a short period of time as happens in a program loop. If these instructions are available in the cache, they can be fetched quickly during the period of repeated use. The same applies to the data that are used repeatedly. Processor clock: Processor circuits are controlled by a timing signal called clock. The clock designer the regular time intervals called clock cycles. To execute a machine instruction the processor divides the action to be performed into a sequence of basic steps that each step can be completed in one clock cycle. The length P of one clock cycle is an important parameter that affects the processor performance. Processor used in today‟s personal computer and work station have a clock rates that range from a few hundred million to over a billion cycles per second. Basic performance equation: We now focus our attention on the processor time component of the total elapsed time. Let „T‟ be the processor time required to execute a program that has been prepared in some high-level language. The compiler generates a machine language object program that corresponds to the source program. Assume that complete execution of the program requires the execution of N machine cycle language instructions. The number N is the actual number of instruction execution and is not necessarily equal to the number of machine cycle instructions in the object program. Some instruction may be executed more than once, which in the case for instructions inside a program loop others may not be executed all, depending on the input data used. Suppose that the average number of basic steps needed to execute one machine cycle instruction is S, where each basic step is completed in one clock cycle. If clock rate is „R‟ cycles per second, the program execution time is given by

N *S R this is often referred to as the basic performance equation. We must emphasize that N, S & R are not independent parameters changing one may affect another. Introducing a new feature in the design of a processor will lead to improved performance only if the overall result is to reduce the value of T. Pipelining and super scalar operation: We assume that instructions are executed one after the other. Hence the value of S is the total number of basic steps, or clock cycles, required to execute one instruction. A substantial improvement in performance can be achieved by overlapping the execution of successive instructions using a technique called pipelining. Consider Add R1 R2 R3 This adds the contents of R1 & R2 and places the sum into R3. The contents of R1 & R2 are first transferred to the inputs of ALU. After the addition operation is performed, the sum is transferred to R3. The processor can read the next instruction from the memory, while the addition operation is being performed. Then of that instruction also uses, the ALU, its operand can be transferred to the ALU inputs at the same time that the add instructions is being transferred to R3. In the ideal case if all instructions are overlapped to the maximum degree possible the execution proceeds at the rate of one instruction completed in each clock cycle. Individual instructions still require several clock cycles to complete. But for the purpose of computing T, effective value of S is 1. A higher degree of concurrency can be achieved if multiple instructions pipelines are implemented in the processor. This means that multiple functional units are used creating parallel paths through which different instructions can be executed in parallel with such an arrangement, it becomes possible to start the execution of several instructions in every clock cycle. This mode of operation is called superscalar execution. If it can be sustained for a long time during program execution the effective value of S can be reduced to less than one. But the parallel execution must preserve logical correctness of programs, that is the results produced must be same as those produced by the serial execution of program instructions. Now a days may processor are designed in this manner. Clock rate:- These are two possibilities for increasing the clock rate „R‟.

1. Improving the IC technology makes logical circuit faster, which reduces the time of execution of basic steps. This allows the clock period P, to be reduced and the clock rate R to be increased. 2. Reducing the amount of processing done in one basic step also makes it

possible to reduce the clock period P. however if the actions that have to be performed by an instructions remain the same, the number of basic steps needed may increase. Increase in the value „R‟ that are entirely caused by improvements in IC technology affects all aspects of the processor‟s operation equally with the exception of the time it takes to access the main memory. In the presence of cache the percentage of accesses to the main memory is small. Hence much of the performance gain excepted from the use of faster technology can be realized. Instruction set CISC & RISC:Simple instructions require a small number of basic steps to execute. Complex instructions involve a large number of steps. For a processor that has only simple instruction a large number of instructions may be needed to perform a given programming task. This could lead to a large value of „N‟ and a small value of „S‟ on the other hand if individual instructions perform more complex operations, a fewer instructions will be needed, leading to a lower value of N and a larger value of S. It is not obvious if one choice is better than the other. But complex instructions combined with pipelining (effective value of S 1) would achieve one best performance. However, it is much easier to implement efficient pipelining in processors with simple instruction sets. Performance measurements:It is very important to be able to access the performance of a computer, comp designers use performance estimates to evaluate the effectiveness of new features. The previous argument suggests that the performance of a computer is given by the execution time T, for the program of interest. Inspite of the performance equation being so simple, the evaluation of „T‟ is highly complex. Moreover the parameters like the clock speed and various architectural features are not reliable indicators of the expected performance. Hence measurement of computer performance using bench mark programs is done to make comparisons possible, standardized programs must be used. The performance measure is the time taken by the computer to execute a given bench mark. Initially some attempts were made to create artificial programs that could be used as bench mark programs. But synthetic programs do not properly predict the performance obtained when real application programs are run.

A nonprofit organization called SPEC- system performance evaluation corporation selects and publishes bench marks. The program selected range from game playing, compiler, and data base applications to numerically intensive programs in astrophysics and quantum chemistry. In each case, the program is compiled under test, and the running time on a real computer is measured. The same program is also compiled and run on one computer selected as reference. The „SPEC‟ rating is computed as follows. Running time on the reference computer SPEC rating = Running time on the computer under test If the SPEC rating = 50 Means that the computer under test is 50 times as fast as the ultra sparc 10. This is repeated for all the programs in the SPEC suit, and the geometric mean of the result is computed. Let SPECi be the rating for program „i‟ in the suite. The overall SPEC rating for the computer is given by  n

SPEC rating = 



1 n



SPECi 

i 1

 Where „n‟ = number of programs in suite. Since actual execution time is measured the SPEC rating is a measure of the combined effect of all factors affecting performance, including the compiler, the OS, the processor, the memory of comp being tested. Multiprocessor & microprocessors: Large computers that contain a number of processor units are called multiprocessor system.    These systems either execute a number of different application tasks in parallel or execute subtasks of a single large task in parallel.    All processors usually have access to all memory locations in such system & hence they are called shared memory multiprocessor systems.    The high performance of these systems comes with much increased complexity and cost.   In contrast to multiprocessor systems, it is also possible to use an interconnected group of complete computers to achieve high total computational power. These computers normally have access to their own memory units when the tasks they are executing need to communicate data they do so by exchanging messages over a

communication network. This properly distinguishes them from shared memory multiprocessors, leading to name message-passing multi computer.

CPU Alternatively referred to

as

the brain

of

the

computer, processor, central

processor, or microprocessor, the CPU (pronounced as C-P-U), short for Central Processing Unit, was first developed at Intel with the help of Ted Hoff in the early 1970's. The computer CPU is responsible for handling all instructions it receives fromhardware and software running on the computer. Note: Many new computer users may improperly call their computer and sometimes their monitor the CPU. When referring to your computer or monitor, it is proper to refer to them as either the "computer" or "monitor" and not a CPU. The

picture

below

is

an

example

of

what

the

top

and

bottom

of

an Intel Pentiumprocessor looks like. The processor is placed and secured into a compatible CPU socketfound on the motherboard and, because of the heat it produces, it is covered with a heat sink to help keep it cool and running smoothly.

As you can see in the above picture, the CPU chip is usually in the shape of a square or rectangle and has one notched corner to help place the chip properly into the CPU socket. On the bottom of the chip are hundreds of connector pins that plug into each of the corresponding holes in the socket. Today, most CPU's resemble the picture shown above; however, Intel and AMD have also experimented with slot processors that were much larger and slid into a slot on the motherboard. Also, over the years there have been dozens of different types of sockets on motherboards. Each socket only supports specific types of processors and each has its own pin layout. Components of the CPU In the CPU, the primary components are the ALU (Arithmetic Logic Unit) that performs mathematical, logical, and decision operations and the CU (Control Unit) that directs all of the processors operations.

Memory Types Various types of Semiconductor memory units 1. 2. 3. 4. 5. 6.

RAM ROM PROM EPROM EEPROM Flash Memory

There are two different types of memories 1. 2.

Main Memory(Primary storage) Auxillary Memory(Secondary storage)

INPUT DEVICES An input device for a computer allows you to enter information. The most fundamental pieces of information are keystrokes on a keyboard and clicks with a mouse. These two input devices are essential for you to interact with your computer. Many other input devices exist for entering other types of information, such as images, audio and video. Input devices represent one type of computer peripheral - the other two types are output devices and storage devices. Examples of Input Devices A keyboard is the most fundamental input device for any computer system. In the early days of computing, it was typically the only input device. A keyboard contains keys for letters and numbers as well as for specialized tasks, such as Enter, Delete, etc.

Typical keyboard for a desktop computer When operating systems started to use graphical user interface (GUI), the mouse was developed as a pointing device. Typically, a mouse resides on a flat surface, and by moving the mouse, you can move the pointer on the screen. One or more buttons on the mouse allow you to enter instructions by clicking. Most models also include a wheel for scrolling.

Typical mouse for a desktop computer Desktop computers have a separate keyboard and mouse, but for laptops, these are integrated into a computer system itself. In laptops, the mouse is actually substituted with a touchpad or trackpad. This is a specialized surface that follows the motion of your finger. You can still connect an external mouse to a laptop if you prefer.

Keyboard and trackpad on a laptop computer Another common input device is an image scanner. A typical desktop or flatbed scanner is a device that optically scans printed images and paper documents and converts them into digital images. In most scanners, you place the document on a glass plate and place an opaque cover over it. A bright light moves across the image, and the reflection is captured by a sensor, which converts the document to a digital image.

Flatbed scanner Audio and video can be recorded using a microphone and video camera, respectively. Due to the popularity of video conferencing using services like Skype, these are now typically integrated in most laptops and monitor displays for desktops; however, you can also connect an external webcam, which can record both audio and video.

DISPLAY DEVICES A display device is an output device for presentation of information in visual or tactile form (the latter used for example in tactile electronic displays for blind people). When the input information is supplied as an electrical signal, the display is called an electronicdisplay. Cathode Ray Tube (CRT)

   

Electron gun = cathode + control grid Pixel ratio = height of pixel width of pixel Aspect ratio = # rows in display # columns in display Resolution -- Number of pixels per linear distance (e.g., 640 × 400pixel display).

COLOR -- 3 different phosphors + 3 different gusns (e.g., red, green, and blue) Phosphore



The electron beam causes the phosphor‟s atoms to move into higher energy state  The atoms give off energy as light when they return to their stable state REFRESHMENT     

Persistence -- Time for emitted light to fade by 90% of its intensity (normally 10 to 60 microseconds). Refresh -- Redrawing of an image to preserve it on a screen Refresh rate -- Number of times per second the image is redrawn (normally > 60 Hz) Flicker -- Develops in low refresh rate because the eyes can not integrate the individual light impulses comming from a pixel. Critical fushion frequency -- Refresh rate above which a picture stops flickering and fuses into a steady image. Depends on o Phosphor‟s persistence o Image intensity o Ambient room lighting o Wavelenght of emitted light o The observer

Raster Display SYSTEM COMPONENTS 

The screen is subdivided into a matrix of pixels (smallest addressable units).

Raster scanline -- A line of pixels along the screen 

Frame (refresh) buffer -- Block of memory used to store the screen pattern

HOW IT WORKS 

The DISPLAY PROCESSOR produces the raster image in the frame buffer from the commands  The VIDEO CONTROLLER moves the beam row wise across the pixels setting it on and off according to the content of theframe buffer



The display must be refreshed to avoid flickering (raster image redisplayed 30 to 60 times pers second)

2-BIT BLACK-AND-WHITE GRAY LEVEL

00

0 3 of full intensity

01

1 3 of full intensity

10

2 3 of full intensity

11

3 3 of full intensity

FRAME BUFFER    

Single-bit black-and-white frame buffer (monochrome, bitmap) N-bit black-and-white gray level frame buffer (pixmap) N-bit black-and-white gray level frame buffer with M-bit lookup table N-bit color frame buffer with M-bit look-up table (typically N = 8 and M = 24)

"

/>

" />

WHY USE A LOOK-UP TABLE? 

Reduced memory for full array of colors 24 bit color * 1280 by 1024 resolution/ 8 bits per byte



Color table animation

4MB

2-BIT BLACK-AND-WHITE GRAY LEVEL FRAME BUFFER WITH 8- BIT LUT 2-bit color level frame buffer with 24-bit LUT (e.g., RGB: red, green, blue)

Vector (or Random Scan) Display  

Images are described in terms of line segments rather than pixels. Display processor cycles through the commands

HARD COPY DEVICES Hard copy devices are used for draw a graphical image or another information on to the paper. Mainly two types of hard copy devices namely printer and plotter that can be used for print image,line or charater on to the paper.

Hard-Copy Devices We can obtain hard-copy output for our images in several formats. For presentations or archiving, we can send image files to devices or service bureaus that will produce 35-mm slides or overhead transparencies. To put images on film, we can simply photograph a scene displayed on a video monitor. And we can put our pictures on paper by directing graphics output to a printer or plotter. The quality of the pictures obtained from a device depends on dot size and the number of dots per inch, or lines per inch, that can be displayed. To produce smooth characters in printed text strings, higher-quality printers shift dot positions so that adjacent dots overlap. Printers produce output by either impact or nonimpact methods. Impact printers press formed character faces against an inked ribbon onto the paper. A line printer is an example of an impact device, with the typefaces mounted on bands, chains, drums, or wheels. Nonimpact printers and plotters use laser techniques, ink-jet sprays, xerographic processes (as used in photocopying machines), electrostatic methods, and electrothermal methods to get images onto paper. character impact printers often have a dot-matrix print head containing a rectangular array of protruding wire pins, with the number of pins depending on the quality of the printer. individual characters or graphics patterns are obtained by retracting certain pins so that the remaining pins form the pattern to be printed. figure

2-58

shows

a

picture

printed

on

a

dot-matrix

printer.

Figure :1 A picture generated on a dotmatrix printer showing how the density of the dot patterns can be varied to produce light and dark areas. (Courtesy of Apple Computer, Inc.)

In a laser device, a laser beam mates a charge distribution on a rotating drum coated with a photoelectric material, such as selenium. Toner is applied to the drum and then transferred to paper. Figure 2-59 shows examples of desktop laser printers with a resolution of 360 dots per inch.

Figure :2 Small-footprint laser printers. (Courtesy of Texas Instruments.)

Figure :3 A 360-dot-per-inch desktop ink-jet plotter. (Courtesy of Summagraphics Corporation.)

Ink-jet methods produce output by squirting* ink in horizontal rows across a roll of paper wrapped on a drum. The electrically charged ink stream is deflected by an electric field to produce dot-matrix patterns. A desktop ink-jet plotter with a resolution of 360 dots per inch is shown in Fig. 3, and examples of larger high-resolution ink-jet printer/plotters are shown in Fig.4

Figure :4 Floor-model, ink-jet color printers that use variable dot size to achieve an equivalent resolution of 1500 to 1800 dots per inch. An electrostatic device places a negative charge on the paper, one complete row at a time along the length of the paper. Then the paper is exposed to a toner. The toner is positively charged and so is attracted to the negatively charged areas, where it adheres to produce the specified output. A color electrostatic printer/plotter is shown in Fig. 2-62. Electrothermal methods use heat in a dot-matrix print head to output patterns on heat-sensitive paper.

Figure :5 An electrostatic printer that can display 400 dots per inch.

We can get limited color output on an impact printer by using different-colored ribbons. Nonimpact devices use various techniques to combine three color pigments (cyan, magenta, and yellow) to produce a range of color patterns. Laser and xerographic* devices deposit the three pigments* on separate passes; ink-jet methods shoot the three colors simultaneously on a single pass along each print tine on the paper.

STORAGE DEVICES What are Storage devices? Storage Devices are the data storage devices that are used in the computers to store the data. The computer has many types of data storage devices. Some of them can be classified as the removable data Storage Devices and the others as the non removable data Storage Devices. The memory is of two types; one is the primary memory and the other one is the secondary memory. The primary memory is the volatile memory and the secondary memory is the non volatile memory. The volatile memory is the kind of the memory that is erasable and the non volatile memory is the one where in the contents cannot be erased. Basically when we talk about the data storage devices it is generally assumed to be the secondary memory. The secondary memory is used to store the data permanently in the computer. The secondary storage devices are usually as follows: hard disk drives – this is the most common type of storage device that is used in almost all the computer systems. The other ones include the floppy disk drives, the CD ROM, and the DVD ROM. The flash memory, the USB data card etc. Find out more ... Navigate through the list of storage devices given on the right side. Floppy discs: A floppy disk is a data storage medium that is composed of a disk of thin, flexible floppy)magnetic storagemedium encased in asquareor rectangularplasticshell. Floppy disks are read and written by afloppy disk drive.

Application Any use where small files such as word processing, small spreadsheets and databases need to be moved from one computer to another. Useful to backup small data files.

Fixed hard discs A hard disk drive is the device used to store large amounts of digital information in computers and related equipment like iPods and games consoles such as the Xbox 360 and PS3. Hard disk drives are used to store operating systems, software and working data. These are suitable for any application which requires very fast access to data for both reading and writing to. However, Hard disk drives may not be suitable for applications which need portability. Almost all computers used a fixed hard disc. Used for on-line and real time processes requiring direct access. Used in file servers for computer networks to store large amount of data.

Portable hard discs Portable hard discs are good fun because you can carry data about all over the place and transfer information, programs, pictures, etc between computers.

Advantages:  Greatly improved data cargo carrying capacity (relative to the 1.44 Mb floppy disc). 

You don't need to worry about the other person having the same type of special cartridge drive as yourself. Disadvantages:  Hard drives have to be handled quite carefully, and when being transported should be wrapped in something soft and put in a padded bag. 

More expensive than other forms of removable media. Application Portable disc discs are used to store very large files which need transporting from one computer to another and price is not an issue.

Magnetic tapes Magnetic tape has been used for data storage for over 50 years. When storing large amounts of data, tape can be substantially less expensive than disk or other data storage options. Tape storage has always been used with large computer systems. Modern usage is primarily as a high capacity medium for backups and archives.

Drawbacks Writing and retrieving data is slow. It uses serial access for reading and writing. Application Magnetic tapes are used for application which requires extremely large storage capacity where speed of access is not an issue. It is commonly used for backups of file servers for computer networks, in a variety of batch processing applications such as reading of bank cheques, payroll processing and general stock control.

Optical backing storage media such as CDs andDVDs



CDs tend to be used for large files (but smaller than 1Gb) which are too big for a floppy disc to hold such as music and general animation.



DVDs are used to hold very large files (several Gb) such as movie films. Both CDs and DVDs are portable i.e. they can be transported from one computer to another. Both can be used to store computer data.



CD ROM/DVD ROM Applications which require the prevention of deletion of data, accidental or otherwise. CDs used by software companies for distributing software programs and data; by Music companies for distributing music albums and by book publishers for distributing encyclopaedias, reference books etc. DVDs used by film distributors.



CD R/DVD R Applications which require a single „burning‟ of data, e.g. CDs recording of music downloads from the Internet, recording of music from MP3 format, recording of data for archiving or backup purposes. DVDs – recording of film movies and television programs.



CD RW/DVD RW Applications which require the updating of information and ability to record over old data. Not suitable for music recording but is very useful for keeping generations of files. DVDs have between five and ten times the capacity of CDs.

Solid state backing storage  These are the smallest form of memory available in the market today. 

Widely used as removable storage.



They are more robust than other forms of storage.



Though expensive than other forms they can be easily written to and updated.

Memory sticks/Pen drives

USB flash drives are typically removable and rewritable, much smaller than a floppy disk. Storage capacities typically range from 64 MB to 64 GB. USB flash drives offer potential advantages over other portable storage devices, particularly the floppy disk. They have a more compact shape, operate faster, hold much more data, have a more durable design, and operate more reliably due to their lack of moving parts. Flash drives are widely used to transport files and backup data from computer to computer. Flash memory cards A memory card or flash memory card is a solid-state electronic flash memory data storage device used with digital cameras, handheld and Mobile computers, telephones, music players, video game consoles, and other electronics. Nowadays, most new PCs have built-in slots for a variety of memory cards; Memory Stick, CompactFlash, SD, etc. Some digital gadgets support more than one memory card to ensure compatibility.

CAD/CAM UNIT-2 COMPUTER GRAPHICS RASTER SCAN GRAPHICS COORDINATE SYSTEM A raster scan, or raster scanning, is the rectangular pattern of image capture and reconstruction in television. By analogy, the term is used for raster graphics, the pattern of image storage and transmission used in most computer bitmap image systems. The word raster comes from the Latin word rastrum (a rake), which is derived from radere (to scrape); see also rastrum, an instrument for drawing musicalstaff lines. The pattern left by the lines of a rake, when drawn straight, resembles the parallel lines of a raster: this line-by-line scanning is what creates a raster. It is a systematic process of covering the area progressively, one line at a time. Although often a great deal faster, it is similar in the most-general sense to how one's gaze travels when one reads lines of text.

ELEMENTS OF RASTER SCAN GRAPHICS LINE DRAWING ALGORITHMS Since a cathode ray tube (CRT) raster display can be considered a matrix of discrete cells (pixels) each of which can be made bright, it is not possible to directly draw a straight line from one point to another. The process of determining which pixels will provide the best approximation to the desired line is properly known as rasterization. Combined with the process of rendering the picture o

in scan line order it is known as scan conversion. For horizontal, vertical, and 45 lines the choice of raster elements is obvious. For any other orientation the choice is more difficult. This is shown in Fig. 1.

Before discussing specific line drawing algorithms it is useful to consider the general requirements for such algorithms, i.e., what are the desirable characteristics for these lines. Certainly, straight lines should appear as straight lines and they should start and end accurately. Further, displayed lines should have constant brightness along their length independent of the line length and orienta-

tion. Finally the lines should be drawn rapidly. As with most design criteria not all can be completely satisfied. The very nature of a raster scan display pre-cludes

the generation of a completely straight line except for special cases. It is also not possible for a line to precisely begins and ends at specified locations. However, with reasonable display resolution, acceptable approximations are possible. In any case, the line drawing algorithm should light up only those pixels that are close to the theoretical line. On the other hand, the requirements for constant brightness, independent of the line slope could not be achieved on a single black and white screen. A simple frame buffer will produce only horizontal, vero tical, and 45 lines with the brightness constant along the length. For all other orientations the rasterization will yield uneven brightness. This is shown in Fig. 1. Even for the special cases, the brightness is orientation dependent; e.g., note o that the effective spacing between pixels for the 45 line is greater than for the vertical and horizontal line. This will make the vertical and horizontal lines apo pear brighter than the 45 line. Providing equal brightness along lines of varying length and orientation requires a frame buffer with additional bit-planes and calculation of a square root. There are number of line drawing algorithms developed. Most of them use incremental methods to simplify the calculations. BRESENHAM’S ALGORITHM Although originally developed for digital plotters, Bresenham's algorithm is equally suited for use with CRT raster devices. The algorithm seeks to select the optimum raster locations to represent a straight line. To accomplish this, the algorithm always increments in by one unit either x or y depending on the slope of the line. The increment in the other variable, either zero or one, is determined by examining the distance between the actual line location and the nearest grid locations. This distance is called the error. The algorithm is cleverly constructed so that only the sign of this error term need to be examined. This is illustrated in Fig.2 for a line in the first oc-tant, i.e., for a line with a slope between zero and one. From Fig.2 note that, if the slope of the required line through (0, 0) is greater than 1/2, then its inter-cept with the line x = 1 will be closer to the line y = 1 than to the line y = 0. Hence, the raster point at (1,1) better represents the path of the line than that at (1, 0). If the slope is less than 1/2, then the opposite is true. For a slope of pre-cisely 1/2 there is no clear choice. Here the algorithm chooses (1,1).

Not all lines pass precisely through a raster point. This is illustrated in Fig.3 where a line of slope 3/8 initially passes through the raster point at (0, 0) and subsequently crosses three pixels. Also illustrated is the calculation of the error in representing the line by discrete pixels. Since it is desirable to check only the sign of the error term, it is initialized to -1/2. Thus, if the slope is greater or equal to 1/2, its value at the next raster point one unit away

Figure 3

(1,0) can be determined by adding the slope of the line to the error term: e = e + m where m is the slope. In the case with e initialized to -1/2: e = -1/2 + 3/8 = -1/8 Since e is negative, the line will pass below the middle of the pixel. Hence the pixel at the same horizontal level better approximates the location of the line so y is not incremented. Again incrementing the error term by the slope yields e = -1/8 + 3/8 = 1/4 at the next raster point (2,0). Here e is positive which shows that the line passes above the midpoint. The raster element at the next higher vertical level (2,1) better approximates the position of the line. Hence y is incremented by one unit. Before considering the next pixel, it is necessary to reinitialize the error term. This is accomplished by subtracting one from it. e = 1/4 - 1 = -3/4 Notice that the intercept of the vertical line at x = 2 and the desired line is -

1/4 with respect to the line y = 1. Reinitializing to - 1/2 relative to zero for the error term yields as above -3/4. Continuing to the next raster unit yields: e = -3/4 + 3/8 = -3/8 Since the value of e is negative the y value is not incremented. This discussion illustrates that the error term is a measure of the y intercept of the desired line at each raster element referenced to -1/2.

DATABASE STRUCTURE FOR GRAPHICS MODELING The database of the graphical representation of the model is present in the computer system in a form convenient for use.The major functions of a database are to manipulate the data on screen,such as Zooming and panning;to interact with the user,essentially for the purpose of editing functions like trimming,filleting,stretching,etc.;to evaluate the properties like areas, volumes,inertias,etc.; and to provide additional information like manufacturing specifications.

DATABASE MODELS: The more common data models used in database management systems are  The hierarchical model,  The network model,  The relationalmodel. 2 D GEOMETRIC TRANSFORMATIONS BASIC TRANSFORMATION Animations are produced by moving the 'camera' or the objects in a scene along animation paths. Changes in orientation, size and shape are accomplished with geometric transformations that alter the coordinate descriptions of the objects. The basic geometric transformations are translation, rotation, and scaling. Other transformations that are often applied to objects include reflection and shear. Use of transformations in CAD In mathematics, "Transformation" is the elementary term used for a variety of operation such as rotation, translation, scaling, reflection, shearing etc. CAD is used throughout the engineering process from conceptual design and layout, through detailed engineering and analysis of components to definition of manufacturing methods. Every aspect of modeling in CAD is dependent on the transformation to view model from different directions we need to perform rotation operation. To move an object to a different location translation operation is done. Similarly Scaling operation is done to resize the object.

Coordinate Systems In CAD three types of coordinate systems are needed in order to input, store and display model geometry and graphics. These are the Model Coordinate System (MCS), theWorld Coordinate System (WCS) and the Screen Coordinate System (SCS). Model Coordinate System The MCS is defined as the reference space of the model with respect to which all the model geometrical data is stored. The origin of MCS can be arbitrary chosen by the user.

World Coordinate System As discussed above every object have its own MCS relative to which its geometrical data is stored. Incase of multiple objects in the same working space then there is need of a World Coordinate System which relates each MCS to each other with respect to the orientation of the WCS. It can be seen by the picture shown below.

Screen Coordinate System In contrast to the MCS and WCS the Screen Coordinate System is defined as a two dimensional device-dependent coordinate system whose origin is usually located at the lower left corner of the graphics display as shown in the picture below. A transformation operation from MCS coordinates to SCS coordinates is performed by the software before displaying the model views and graphics.

Viewing Transformations As discussed that the objects are modeled in WCS, before these object descriptions can be projected to the view plane, they must be transferred to viewing coordinate system. The view plane or the projection plane, is set up perpendicular to the viewing zv axis. The World coordinate positions in the scene are transformed to viewing coordinates, then viewing coordinates are projected onto the view plane. The transformation sequence to align WCS with Viewing Coordinate System is. 1. Translate the view reference point to the origin of the world coordinate system. 2. Apply rotations to align xv, yv, and zv with the world xw, yw and zw axes, respectively.

TRANSLATION A translation is applied to an object by repositioning it along a straight line path from one coordinate location to another. We translate a two-dimensional point by adding translation distances, tx and ty, to the original coordinate position (x,y) to move the point to a new position (x',y')

The translation distance pair (tx, ty) is called translation vector or shift vector Matrix representation of translation

This allows us to write the two-dimensional translation equations in the matrix form:

ROTATION A two-dimensional rotation is applied to an object by repositioning it along a circular path in the x-y plane. When we generate a rotation we get a rotation angle (θ) and the position about which the object is rotated (xr , yr) this is known as rotation point or pivot point. The transformation can also be described as a rotation about rotation axis that is perpendicular to x-y plane and passes through the pivot point. Positive values for the rotation angle define counter-clockwise rotations about the pivot point and the negative values rotate objects in the clockwise direction. SCALING Scaling is a kind of transformation in which the size of an object is changed. Remember the change is size does no mean any change in shape. This kind of transformation can be carried out for polygons by multiplying each coordinate of the polygon by the scaling factor. Sx and Sy which in turn produces new coordinate of (x,y) as (x',y'). The equation would look like

or

here S represents the scaling matrix. NOTE: If the values of scaling factor are greater than 1 then the object is enlarged and if it is less that 1 it reduces the size of the object. Keeping value as 1 does not changes the object. Uniform Scaling: To achieve uniform scaling the values of scaling factor must be kept equal.

Differential Scaling: Unequal or Differential scaling is produce incases when values for scaling factor are not equal. As per usual phenomenon of scaling an object moves closer to origin when the values of scaling factor are less than 1. To prevent object from moving or changing its position while is scaling we can use a point that is would be fixed to its position while scaling which is commonly referred as fixed point (xf yf).

REFLECTION Reflection is nothing more than a rotation of the object by 180o. In case of reflection the image formed is on the opposite side of the reflective medium with the same size. Therefore we use the identity matrix with positive and negative signs according to the situation respectively. The reflection about the x-axis can be shown as:

The reflection about the y-axis can be shown as:

REFLECTION ABOUT A ORIGIN When both the x and y coordinates are flipped then the reflection produced is relative to an axis that is perpendicular to x-y plane and that passes through the coordinate origin. This transformation is referred as a reflection relative to coordinate origin and can be represented using the matrix below.

REFLECTION ABOUT AN ARBITRARY LINE Reflection about any line y= mx + c can be accomplished with a combination of translate-rotate-reflect transformations. Steps are as follows 1. Translate the working coordinate system (WCS) so that the line passes through the origin.

2. Rotate the WCS such that one of the coordinate axis lies onto the line. 3. Reflect about the aligned axis 4. Restore the WCS back by using the inverse rotation and translation transformation.

REFLECTION ABOUT AN ARBITRARY POINT As seen in the example above, to reflect any point about an arbitrary point P (x,y) can be accomplished by translate-reflect transformation i.e. the origin is first translated to the the arbitrary point and then the reflection is taken about the origin. And finally the origin is translated back to its original position. The whole process can be visualized using the animation below.

HOMOGENEOUS COORDINATES We have seen that basic transformations can be expressed in matrix form. But many graphic application involve sequences of geometric transformations. Hence we need a general form of matrix to represent such transformations. This can be expressed as:

Where

P T1 T2

and P' represent the row vectors. - is a 2 by 2 array containing multiplicative factors. - is a 2 element row matrix containing translation terms.

We can combine multiplicative and translational terms for 2D geometric transformations into a single matrix representation by expanding the 2 by 2 matrix representations to 3 by 3 matrices. This allows us to express all transformation equations as matrix multiplications, providing that we also expand the matrix representations for coordinate positions. To express any 2D transformations as a matrix multiplication, we represent each Cartesian coordinate position (x,y) with the homogeneous coordinate triple (xh,yh,h), such that

Thus, a general homogeneous coordinate representation can also be written as (h.x, h.y, h). For 2D geometric transformations, we can choose the homogeneous parameter h to any non-zero value. Thus, there is an infinite number of equivalent homogeneous representations for each coordinate point (x,y). A convenient choice is simply to h=1. Each 2D position is then represented with homogeneous coordinates (x,y,1). Other values for parameter h are needed, for eg, in matrix formulations of 3D viewing transformations. Expressing positions in homogeneous coordinates allows us to represent all geometric transformation equations as matrix multiplications. Coordinates are represented with three element row vectors and transformation operations are written as 3 by 3 matrices.

For Translation, we have

or

Similarly for Rotation transformation, we have

or

Finally for Scaling transformation, we have

or

3D GEOMETRIC TRANSFORMATION GENERAL 3-D ROTATION Rotation in three dimension is more complex than the rotation in two dimensions. Three dimensional rotations require the prescription of an angle of rotation and an axis of rotation. The canonical rotations are defined when one of the positive x,y,z coordinate axis is chosen as the axis of rotation. then the construction of rotation transformation proceeds just like that of a rotation in two dimensions about the origin.

Steps to be performed 1. Translate origin to A1

2. Align vector with axis (say, z) 1. Rotate to bring vector in yz plane

2. Rotate to bring vector along z-axis

3. Rotate line P1P2 about z-axis which is already aligned with the Rotation axis.

4. Reverse steps 2 5. Reverse step 1

MATHEMATICS OF PROJECTIONS Viewing in Three Dimensions: Mathematics of Projections       

Review from Last Time purpose of oblique projections specifying arbitrary 3D view,"window on view plane" clipping region coordinate system The Mathematics of Planar Geometric Projections how do we get from view specification to picture?

Oblique Projections: Why?   

Parallel projections make "mechanical" viewing easier Lack of perspective foreshortening makes comparisons of sizes easier Planes parallel to film plane (or view plane in synthetic camera) appear in the picture undistorted! Can take measurements on such planes--angles preserved, lengths all scaled by same constant.  Drawbacks of parallel non-oblique projection:consider front view of a box. 

Specifying Arbitrary 3D Views                

Projection plane (view plane) specified by VRP: View Reference Point VPN: View Plane Normal VUP: View Up Vector View Volume (visible part of world) specified by Window on View plane PRP: Projection Reference Point CW: Center of Window COP: Center of Projection (Perspective Proj.) (derived) DOP: Direction of Projection (Parallel Proj.) (derived) PRP and CW are used to determine COP and DOP perspective: COP = PRP parallel: DOP = PRP - CW Coordinate Systems WC: World Coordinates - normal, 3-space (x, y, z) VRC: Viewing Reference Coordinates - defined by VRP, VPN, and VUP above, and called (u, n), Think of the synthetic camera paradigm

Defining a View Volume      

Reduce degrees of freedom position the camera (and view plane) point it towards the area of interest rotate it about the barrel to define "up" define the field of view (wide angle, normal...) define the depth of field (not in PHIGS and equivalent real-time graphics libraries)  tilt view plane if oblique projection

Clipping and Hidden Surface Removal Z-Buffer BSP Trees Others Surface Rendering We now have the preliminaries settled: how to build a model, and how to transform it. Next we have to discuss how to produce an actual picture. This process is called rendering. We have so far only considered surface models, so we are about to describe surface rendering. (Renderers are tailored to a particular kind of model representation.) We start from a mesh model, generally formed from triangular facets. We shall look at producing a shaded colour picture, which will involve ♦ Pre-processing the model, to remove parts which cannot be seen in the final picture. This involves both clipping and back-face culling ♦ Lighting the model. This includes the use of light direction and intensity; but it also includes surface reflection calculations (different surfaces have different reflective proper-ties). ♦ Projecting from 3D to 2D: projective transformations such as perspective. ♦ Hidden surface removal: only at this stage do we discover which objects obscure parts of other objects. We will also look at how to incorporate texture detail on surfaces, for greater realism. Hidden surface removal is the removal of any part of a surface which is occluded by another surface, from the viewpoint. This is the most complex to implement: in principle it requires every triangle to be compared with every other triangle. Contrast this with back-face removal, which can be done with knowledge of each triangle in isolation. HSR may require clipping, because part of a triangle may be visible. We will always do backface removal first, because that dramatically reduces the scale of HSR calculation. Culling and Clipping in 3D We wish to cull those parts of the model that cannot be seen because they are outside the viewing volume.

Culling is very useful for large models: if we can discard (i.e., not bother to consider) half the model because we know it cannot be seen from this window, then we have halved the amount of computation necessary. Indeed culling can save a huge chunk of time because often most of the model is not viewable, for example in a VR environment. Most facets will be entirely inside the viewing volume or entirely outside. We accept the former for further processing and reject the latter. The problem case is those polygons which are partly viewable. We have to scissor-away the section of each which cannot be seen: hence the term clipping. In 2D, clipping is simply a calculation of what intersectsthe edges of the display/picture. It is not quite so simple in 3D:

The volume that the eye can see is a truncated pyramid. The near plane is the screen, the far plane at some convenient distance. There are thus six clipping planes which bound the viewing volume. The mathematical term for a solid sliced by two parallel planes is a frustum, so this is also called the viewing frustum. Clipping is usually done by a fast subdivision method: for each edge in the model we check against a clipping plane and find whether the two ends are (a) both outside the viewing volume: throw it away % both inside the viewing volume: (potentially) draw it % one inside one outside: bisect the line and recurse on each half Testing for inside or outside is a matter of plugging the coordinates into the equation for the clip plane, and seeing if the result is positive or negative. We have to test against each clip plane individually and combine the results. It could be that the ends of an edge are outside the viewing volume, but the middle of the edge intersects An alternative to bisection is to compute the intersection of the edge with the clip plane, and then each sub-edge will fall into category (a) or (b). You can also see from this why we cannot rely exclusively on 2D clipping. A 2D clip is performed against the edges of the display i.e. after we have projected the 3D scene down to 2D. Triangles which are behind the viewer would project onto the screen as well, so we have to cull them at the 3D stage. Back-face removal In a similar spirit we can throw away any facets which are facing away from the viewer. This is know as back-facing culling or back-face removal. The reason we can do this is that most real objects have a non-negligible thickness. For example, both sides of a wall have to be modelled to give an accurate shape to a building. However, if I am standing on one side of a wall, I cannot see the other side of it. So we can throw away the polygons which are facing away from the viewer, reducing the number of polygons to be considered when producing the picture. We do this to

improve the efficiency of later stages.

UNIT-3 GEOMETRIC MODELING REQUIREMENTS OF GEOMETRIC MODELING: What is geometric modeling? • Collection of methods used to define the shape and other geometric characteristics of an object. • To construct a precise mathematical description of the shape of a real object or to simulate some process. • Embraces area – computational geometry

 Special case of mathematical modeling  The visual features are important.  Geometric model - physical object.  Non-geometric model – physical process e.g economic Geometric data: • To make pictures/ design new things need a computer representation of objects. • Need to represent – Shape – Appearance (color, shininess etc) – Material properties (density, stiffness etc) Geometric modeling: • Geometric data representation - Compute a mathematical approximation of the physical shape of an object • Algorithms for manipulating geometry - Manipulate the variables defining the shape until we meet the objective. • Geometry creation - Interactive. - Automatic creation. Application: • Computer Aided Design/ engineering (CAD/CAE)



• •

Entertainment – Special effects – Animation – games Scientific visualization Education, information, advertising

The models should emphasize the relevant aspects of objects. As this research is concerned with model shape and structure, rather than reflectance, these are: surface shape, intersurface relationships (e.g. adjacency and relative orientation), surface-object relationships and subcomponent-object relationships. To recognize the objects in the test scene, the geometric models will have to:  make surface information explicit - to easily match image surface data,  have three dimensional, transformable object-centered representations - because objects can take arbitrary, unexpected spatial locations and orientations,  have geometric subcomponent relationships - because of the structuring of the surface clusters and the physical constraints on their placement,  represent solid and laminar objects - to handle the variety in the scene and  have attachments with degrees-of-freedom - for recognizing articulated objects (e.g. the robot).

REQUIREMENTS: 

Complete part representation including Complete part representation including topological topological and geometrical data – Geometry: shape and dimensions – Topology: the connectivity and associativity of the object entities; it determines the relational information between object entities information between object entities  Able to transfer data directly from CAD to CAE and CAM.  Support various engineering applications, such as mass properties, mechanism analysis, and FEA/FEM and tool path creation for CNC and so on tool path creation for CNC, and so on.  Size, shape and curvature parameters of individual surfaces and boundary segments,  Non-structural object relations, such as subtype or subclass,  Adjacency of surfaces and their relative orientation and  Typical configurations of visible components.

REQUIREMENTS OF GEOMETRIC MODELING The functions that are expected of geometric modelling are: Design analysis: • Evaluation of areas and volumes. • Evaluation of mass and inertia properties. • Interference checking in assemblies. • Analysis of tolerance build-up in assemblies. • Analysis of kinematics . mechanics, robotics. • Automatic mesh generation for finite element analysis. Drafting:  Automatic planar cross sectioning.  Automatic hidden line and surface removal.  Automatic production of shaded images.  Automatic dimensioning.  Automatic creation of exploded views for technical illustrations. Manufacturing:

 Parts classification.  Process planning.  Numerical control data generation and verification.  Robot program generation.  Production Engineering:  . Bill of materials.  . Material requirement.  . Manufacturing resource requirement.  . Scheduling. Inspection and Quality Control:  . Program generation for inspection machines.  . Comparison of produced part with design. GEOMETRIC MODELS: The geometric models can be broadly categorised into two types: 1. Two-dimensional, and 2. Three-dimensional. 3 D GEOMETRIC REPRESENTATION TECHNIQUES

A geometric model represented in wire-frame model

Ambiguities present in the wire-frame model

Generation of 3D geometry using planar surfaces

Sweep or Extrusion Component model produced using translational (linear) sweep (extrusion)

Component model produced with taper in sweep direction

using

translational

(linear)

sweep

Component model produced with an overhanging edge

using

translational

Component produced by the rotational sweep technique

(linear)

sweep

Solid Modelling Various solid modelling primitives

The Boolean operators and their effect on model construction

Creating a solid with the 3D primitives in solid modelling and the model shown in the form of Constructive Solid Geometry (CSG)

GEOMETRIC CONSTRUCTION MODELS: In antiquity, geometric constructions of figures and lengths were restricted to the use of only a straightedge andcompass (or in Plato's case, a compass only; a technique now called a Mascheroni construction). Although the term "ruler" is sometimes used instead of "straightedge," the Greek prescription prohibited markings that could be used to make measurements. Furthermore, the "compass" could not even be used to mark off distances by setting it and then "walking" it along, so the compass had to be considered to automatically collapse when not in the process of drawing a circle. Because of the prominent place Greek geometric constructions held in Euclid's Elements, these constructions are sometimes also known as Euclidean constructions. Such constructions lay at the heart of the geometric problems of antiquity of circle squaring, cube duplication, and angle trisection. The Greeks were unable to solve these problems, but it was not until hundreds of years later that the problems were proved to be actually impossible under the limitations imposed. In 1796, Gauss proved that the number of sides of constructible polygons had to be of a certain form involving Fermat primes, corresponding to the socalled Trigonometry Angles. Although constructions for the regular triangle, square, pentagon, and their derivatives had been given by Euclid, constructions based on the Fermat primes were unknown to the ancients. The first explicit construction of aheptadecagon (17-gon) was given by Erchinger in about 1800. Richelot and Schwendenwein found constructions for the 257-gon in 1832, and

Hermes spent 10 years on the construction of the 65537-gon at Göttingen around 1900 (Coxeter 1969). Constructions for the equilateral triangle and square are trivial (top figures below). Elegant constructions for the pentagon and heptadecagon are due to Richmond (1893) (bottom figures below). Given a point, a circle may be constructed of any desired radius, and a diameter drawn through the center. Call the center , and the right end of the diameter . The diameter perpendicular to the original diameter may be constructed by finding the perpendicular bisector. Call the upper endpoint of this perpendicular diameter . For thepentagon, find the midpoint of and call it . Draw , and bisect , calling the intersection point with . Draw parallel to , and the first two points of the pentagon are and . The construction for the heptadecagon is more complicated, but can be accomplished in 17 relatively simple steps. The construction problem has now been automated (Bishop 1978). Simple algebraic operations such as , , (for a rational number), , , and can be performed using geometric constructions (Bold 1982, Courant and Robbins 1996). Other more complicated constructions, such as the solution of Apollonius' problem and the construction of inverse points can also accomplished.

One of the simplest geometric constructions is the construction of a bisector of a line segment, illustrated above.

The Greeks were very adept at constructing polygons, but it took the genius of Gauss to mathematically determine which constructions were possible and which were not. As a result, Gauss determined that a series of polygons(the smallest of which has 17 sides; the heptadecagon) had constructions unknown to the Greeks. Gauss showed that the constructible polygons (several of which are illustrated above) were closely related to numbers called theFermat primes. Wernick (1982) gave a list of 139 sets of three located points from which a triangle was to be constructed. Of Wernick's original list of 139 problems, 20 had not yet been solved as of 1996 (Meyers 1996). It is possible to construct rational numbers and Euclidean numbers using a straightedge and compassconstruction. In general, the term for a number that can be constructed using a compass and straightedge is aconstructible number. Some irrational numbers, but no transcendental numbers, can be constructed. It turns out that all constructions possible with a compass and straightedge can be done with a compass alone, as long as a line is considered constructed when its two endpoints are located. The reverse is also true, since Jacob Steiner showed that all constructions possible with straightedge and compass can be done using only a straightedge, as long as a fixed circle and its center (or two intersecting circles without their centers, or three nonintersecting circles) have been drawn beforehand. Such a construction is known as a Steiner construction. Geometrography is a quantitative measure of the simplicity of a geometric construction. It reduces geometric constructions to five types of operations, and seeks to reduce the total number of operations (called the "simplicity") needed to effect a geometric construction. Dixon (1991, pp. 34-51) gives approximate constructions for some figures (the heptagon and nonagon) and lengths (pi) which cannot be rigorously constructed. Ramanujan (1913-1914) and Olds (1963) give geometric constructions for . Gardner (1966, pp. 92-93) gives a geometric construction for Kochanski's approximate construction for

yields Kochanski's approximation

Steinhaus (1999, p. 143). Constructions for squaring.

are approximate (but inexact) forms of circle

CURVE REPRESENTATION METHODS: Representing Curves • Motivations • Techniques for Object Representation • Curves Representation • Free Form Representation • Approximation and Interpolation • Parametric Polynomials • Parametric and Geometric Continuity • Polynomial Splines • Hermite Interpolation 3D Objects Representation • Solid Modeling attempts to develop methods and algorithms to model and represent real objects by computers

Objects Representation Three types of objects in 3D: • 1D curves • 2D surfaces • 3D objects • We need to represent objects when: • Modeling of existing objects (3D scan) - modeling is not precise • Modeling a new object “from scratch” (CAD) - modeling is precise - interactive sculpting capabilities Curve representation: Representation of curve geometry can be carried out in two forms: • Implicit form, and • Parametric form. In parametric form, the curve is represented as X = x(t) Y = y(t) Z = z(t)

Circle

Ellipse

Splines: Bezier curve

Splines: B Splines

Curves Representation

Primitive Based Representation • Line segments: A curve is approximated by a collection of connected line segments

Free Form Representations • Explicit form: z = f(x, y) • f(x,y) must be a function • Not a rotation invariant representation • Difficult to represent vertical tangents • Implicit form: f(x, y, z) = 0 • Difficult to connect two curves in a smooth manner • Not efficient for drawing • Useful for testing object inside/outside • Parametric: x(t), y(t), z(t) • A mapping from [0,1] →R3 • Very common in modeling

Approximated vs. Interpolated Curves Given a set of control points Pi known to be on the curve, find a parametric curve that interpolates/approximates the points.

Parametric Polynomials • For interpolating n points we need a polynomial of degree n-1

Example: Linear polynomial. For interpolating 2 points we need a polynomial of degree 1

BÉZIER CURVE:

The Bézier Curve is the original computer generated "French Curve" and it's discovery is attributed to the French engineer, Pierre Bézier. Let us first review ideas concerning the cubic polynomial of degree 3 passes through the 4 points for and is shown in Figure 1.

SURFACE REPRESENTATION METHODS: Free Form Surfaces Model generated using the sculptured surfaces (Image appears with the permission of IBM World Trade Corporation/Dassault Systems - Model generated using CATIA)

Types of surfaces • Planar surface • Curved surface – Single curved – Double curves – Ruled surface – Coons surface – Bezier surface – B-spline – Lofted surface Skinning or Lofting Example of skinning method for model generation

MODELING FACILITIES DESIRED: The total modelling facilities that one would look for in any system can be broadly categorised as follows: • The geometric modelling features. • The editing or manipulation features. • The display control facilities. • The drafting features.

• The programming facility. • The analysis features. • The connecting features. Geometric modelling features 1. Various features to aid geometric modeling such as Cartesian and polar coordinates absolute and incremental dimensions, units, grid and layer 2. All 2D analytical features such as points, lines, arc and fillets 3. Majority of the 3D wireframe modeling including 3D lines, 3D faces and ruled surfaces 4. Solid modeling with various basic primitives such as block, cylinder, sphere and cone. Skinnning around regular and arbitrary surfaces. Profiles 5. Sculptured surfaces like beziers, coon and other free form surfaces 6. Comprehensive range of transformation facilities such as filleting

Editing or Manipulation Features The way the geometric data once created would be used for further modelling. The facilities desired are:  Transformation such as copy, move, rotate  The editing features such as stretching and trimming, delete and undo  Symbols in drawing refer to often repeated set in the number of drawing. This symbol can be recalled at any scale Display control facilities Facilities needed for interacting with modeling system. The facilities required are:  Window  Zoom  Pan  Hidden  Shading  Animation  Clippings Other facilities also required are:  Perspective views  Orthographic views  Isometric views  Axometric views  Sectioning

Elimination of hidden lines in display

Shaded image of a CAD geometric model ((Image appears with the permission of IBM World Trade Corporation/Dassault Systems - Model generated using CATIA))

Drafting Features

Section view generation from a geometric model

Programming Facility Programming ability (MACRO programming) is a useful feature. Used to customized for a given range of application processes specific to the company. Analysis Features • Consideration of kind of analysis facilities to be carried out on a product models • Simple analysis such as area, volume centre of gravity to a general purpose analysis such as FEA • Assembly facility is also a required feature so that associated interference checking could be done Connecting Features • Data generated could also be used with other systems  Ideally an integrated data base structure would be useful to shared with other allied modules such as Pro Engineer with Unigraphics or Catia.

UNIT-4 DRAFTING AND MODELING SYSTEMS BASIC GEOMETRIC COMMANDS: All AutoCAD commands can be typed in at the command line. Many commands also have one or two letter aliases that can also be typed as shortcuts to the commands. 1. Type the desired command at the command prompt. Command : LINE or 2. Type the command‟s alias. Command: L 3. Press ENTER/Space to end. 4. Type an option at the command prompt. TIP: Many AutoCAD commands require you to press ENTER to complete the command. You know you are no longer in an AutoCAD command when you see a blank command line. Reissuing the Last Command The last used AutoCAD command can be re-entered by one of the following three methods of ENTER. The ENTER key on the keyboard will always act as ENTER, the SPACEBAR and RIGHT MOUSE will act as enter most of the time (exceptions include placing TEXT). 1. Press the ENTER key on the keyboard or 2. Press the Space bar on the keyboard. or 3. Click the right mouse button. Pointing Device (Mouse) AutoCAD uses either a mouse or digitizing tablet to select objects in a drawing. Left Mouse Button Used to pick or select objects 1. Click the left mouse button to select an object area in the drawing. 2. Press ESC twice to deselect an object (or to cancel a command). Right Mouse Button Used to enter a command, repeat last command, or access shortcut menus. 1. Click the right mouse button. TIPS: • SHIFT + the right mouse button brings up the object snap menus. • Various screen locations for the mouse brings up different menus.• menus.

Creating a New Drawing NEW Command Creates a new drawing file. 1. Choose File, New. or 2. Press CTRL + N or 3. Click the New icon. or 4. Type NEW at the Command prompt. Command: NEW 5. Choose One of the options for creating a new drawing. 6. Click The OK button. 7. Save the drawing as another name.

TIP: New drawings can also be created from Template Files.

Undo and Redo Reverses the last action. 1. Choose Edit, Undo. or 2. Click the Undo icon. or 3. Press CTRL + Z. 4. Type U at the command prompt to undo the last command. Command: U

Redo Reverses the effects of a single UNDO or U command. 1. Choose Edit, Redo. or 2. Click the Redo icon. or 3. Type REDO at the command prompt to redo the last undo command.

Command: REDO TIPS: -UNDO has no effect on some commands and system variables, including those that open, close, or save a window or a drawing, display information, change the graphics display, regenerate the drawing, or export the drawing in a different format. -REDO must immediately follow the U or UNDO command.

Function Keys and Accelerator Keys

Open Existing Drawings 1. Choose File, OPEN. or 2. Press CTRL + O. or 3. Click the OPEN icon. or 4. Type OPEN at the command prompt. Command: OPEN 5. Press ENTER 6. Double Click the desired directory to find the drawing to open. 7. Click the drawing name to open. 8. Click The OK button.

-Preview shows a bitmap image of the drawing selected. This image is the view that was last saved in the drawing. It will not show a preview of drawings saved before R13 AutoCAD.

Quick Save The QSAVE command is equivalent to clicking Save on the File menu. If the drawing is named, AutoCAD saves the drawing using the file format specified on the Open and Save tab of the Options dialog box and does not request a file name. If the drawing is unnamed, AutoCAD displays the Save Drawing As dialog box (see SAVEAS) and saves the drawing with the file name and format you specify. 1. Press CTRL + S. or 2. Click the Save icon. or 3. Type QSAVE at the command prompt, Command:QSAVE TIPS: Drawings can be saved as different versions of AutoCAD (e.g. R13, R14, R 2000, etc.) AutoSave settings under Tools, Options…

Running Object Snaps An object snap mode specifies a snap point at an exact location on an object. OSNAP specifies running object snap modes, which remain active until you turn them off. 1. Choose Tools, Drafting Settings... or 2. Type DDOSNAP at the command prompt Command: DDOSNAP or 3. Click OSNAP on the Status Bar. 4. Right Click the Object Snap TAB. 5. Choose an object snap to turn ON/OFF from the dialog box.

UNITS Command 1. Choose Format, Units... or 2. Type DDUNITS at the command prompt. Command: DDUNITS or UN 3. Choose a units and angle setting. 4. Choose a precision setting.

Line Command Creates single straight line segments 1. Choose Draw, Line. or 2. Click the Line icon. or 3. Type LINE from the command prompt Command: LINE or L 4. Press ENTER 5. Pick From point: (point)

6. Pick Specify next point or [Close/Undo]:(point) 7. Pick Specify next point or [Close/Undo]:(point) 8. Press ENTER to end line sequence or 9. Type U to undo the last segment To point: U (undo) or 10. Type C to create a closed polygon To point : C (close)

TIPS: • You can continue the previous line or arc by responding to the From point: prompt with a space or ENTER. • Choose the right mouse button for the line pop-up menu to appear while in the line command

Pline Command A polyline is a connected sequence of line segments created as a single object. You can create straight line segments, arc segments, or a combination of the two. 1. Choose Draw,Polyline. or 2. Pick the Pline icon. 3. Type PLINE at the command prompt Command : PLINE or PL 4. Pick A point on the drawing to start the polyline From point:(select) 5. Type One of the following options

Arc/Close/Halfwidth/Length/Undo/Width/: or 6. Pick A point to continue drawing Arc/Close/Halfwidth/Length/Undo/Width/: (pick point) Polyline as one segment

Orthogonal Lines Controls lines from being drawn at various angles to straight lines. When the snap grid is rotated, ortho mode rotates accordingly. 1. Press Function Key F8. or 2. Double Click ORTHO from the Status Bar. or 3. Press CTRL + L.

Rectangle 1. Choose Draw, Rectangle. or 2. Click the Rectangle icon. or 3. Type Rectang at the command prompt Command: RECTANG Chamfer/Elevation/Fillet/Thickness/Width/ : 4. Pick first corner. 5. Pick other corner or type coordinates (i.e. @4,2).

Circles Circle Command 1. Choose Draw, Circle. or 2. Click the Circle icon. or 3. Type CIRCLE at the command prompt. Command: CIRCLE 4. Type One of the following options: 3P/2P/TTR/: Circle, Center Radius Circle, Center Diameter Circle, Tangent, Tangent Radius Circle, Tangent, Tangent, Tangent

or 5. Pick A center point. 6. Type A radius or diameter.

7. Pick A radius or diameter Diameter/: TIPS: - To create circles that are the same size, press ENTER when asked for the circle radius. - When selecting a circle with a pickbox, be sure to select the circumference of the circle.

Arc Command 1. Choose Draw, Arc. or

2. Click the Arc icon. or 3. Type ARC at the command prompt Command: ARC 4. Draw One of the arcs.

TIPS: -Except for 3 point arcs, arcs are drawn in a COUNTERCLOCKWISE direction.

- While in the arc command, press the right mouse button to select the following options for arcs:

Arc Examples

Spline The SPLINE command creates a particular type of spline known as a nonuniform rational B-spline (NURBS) curve. A NURBS curve produces a

smooth curve between control points.

1. Choose Draw, Spline. or 2. Click the Spline icon. or 3. Type SPLINE at the command prompt Command: SPLINE 4. Pick A start point for the spline Object / : (pick point) 5. Pick Points until youare done drawing splines Enter point:(pick points) 6. Press Enter or close to complete the spline 7. Pick Starting tangent point for the spline Enter start tangent (pick point) 8. Pick Ending tangent point for the spline Enter end tangent: (pick point)

LAYERS: The LAYER command allows you to create multiple layers to draw on. It also allows you to control the color, line type, activity, and visibility of individual layers. To Change to an Existing Layer: Click on the arrow on the RIGHT side of the Layer Status Window (see FIGURE below), drag the cursor onto the layer name you wish to select and click the Left mouse button once. The layer will change. (Note: The figure above has been shortened.) To add a new layer or change layer properties through the Layer & Linetype Properties dialogue box you can: click on the Layer button OR select Layer..., under the Format Menu. The Layer & Linetype Properties dialogue box will appear. To Create a New Layer: Open the Layer & Linetype Properties dialogue box, click on the New button in the Layer window. A layer named Layer 1 will appear in the list of layers. While the Layer 1 name is highlighted, type a new name for the layer. Click on OK to exit the dialogue box. To Load a Linetype: Open the Layer & Linetype Properties dialogue box. Click on the Linetype tab (located on the TOP LEFT corner of the dialogue box) to bring the Linetype window to the front. In the Linetype window, click on the Load... button. The Load or Reload Linetypes dialogue box will appear. In the Load or Reload Linetypes dialogue box, scroll down to the linetype you wish to load, click on the linetype name with the LEFT mouse button, and then on OK to return to the Linetype window. Click on OK to exit the dialogue box. To Change the Linetype of a Layer: Open the Layer & Linetype Properties dialogue box. Click on the linetype listed in the configurations beside that layer name in the Layer window. The Select Linetypes dialogue box will appear listing the loaded linetypes. Locate the linetype, click on it, and then on OK to exit the dialogue box. To Change the Color of the Layer: Open the Layer & Linetype Properties dialogue box. Click on the square in the list of configurations next to the layer name in the Layer window. The Select Color dialogue box appears with a display of the colors you can choose. Click on an appropriate color. (NOTE: The color assignment is related to the printing line thickness.) Click on OK to return to the Layer window of the Layer & Linetype Properties dialogue box. Click on OK to exit this dialogue box. To Delete a Layer: Open the Layer & Linetype Properties dialogue box. Click on the layer name in the Layer window, and then the Delete button. You will be returned to the Layer window. Click on OK to exit the dialogue box. To Change the Name of a Layer: Open the Layer & Linetype Properties dialogue box.

Click on the layer name with the LEFT mouse button to highlight the name. Type in a new name. Click on OK. To Make a Layer Invisible: On the Layer Status Window drop-down menu, locate the name of the layer. Click on the lightbulb in the list beside the layer name. The lightbulb will turn gray to indicate that the layer is invisible. NOTE: The lightbulb is a toggle between invisible and visible. Creating Layers LAYER:

Creates named drawing layers and assigns color and linetype properties to those layers. Command: LAYER (enter) A Layer & Linetype Properties dialog box will be displayed. To add a new layer, pick the New button. A new layer listing appears, using a default name of Layer1. the layer name can be changed by highlighting the layer name. Colors and Linetypes can be assigned to each new layer by picking the color box to assign a color and picking the linetype box to assign a line type. Standard AutoCAD colors 1 = Red 2 = Yellow 5 = Blue 6 = Magenta Standard AutoCAD linetypes Hidden2 = hidden lines Center2 = center lines Phantom2 = phantom or cutting-plane lines

3 = Green 7 = White

4 = Cyan

DISPLAY CONTROL COMMANDS: PAN: Shifts the location of a view. 1. Choose View, Pan. or 2. Click the Pan icon. or 3. Type PAN from the command prompt. Command: PAN or P

TIPS: - While in the PAN command, click with the right mouse button to see the following menu.

- Panning can also be done by using the window scroll bars

ZOOM Increases or decreases the apparent size of objects in the current viewport 1. Choose View, Zoom. or 2. Click a Zoom icon.

Or 3. Type ZOOM at the command prompt. Command: Zoom or Z 4. Type One of the following zoom options: The following are basic zoom options: All Places entire drawing (all visible layers) on display at once. Forces a regeneration. Extents Displays current drawing content as large as possible. Previous Restores previous view. Window Designates rectangular area to be drawn as large as possible. Number Magnification relative to ZOOM All display Number X Magnification relative to current display (1X) Center Specifies center point and new display height. Dynamic Permits you to pan a box representing the viewing screen around the entire generated portion of the drawing and enlarge or shrink it.

TIPS: -While in the ZOOM command, click with the right mouse button to see the menu to the right.

Redraw and Regen: Redraw refreshes the current view. 1. Type Redraw at the command prompt Command: Redraw or R REGEN regenerates the entire drawing and recomputes the screen coordinates for all objects. It also re-indexes the drawing database for optimum display and object selection performance. 1. Type REGEN at the command prompt. Command: REGEN or RE TIP: When BLIPMODE is on, marker blips left by editing commands are removed from the current viewport

Display Commands LIMITS: Sets the size of the drawing paper. For size "A" drawing paper the limits should be set for 10.5 x 8. Command: LIMITS (enter) On/Off/Lower left corner (enter) Upper right corner: 10.5,8 (enter) ZOOM:

define

Enlarges or reduces the display of a drawing. Command: ZOOM (enter) All/Center/Dynamic/Extents/Left/Previous/Vmax/Window/: (pick a point to define one corner of a rectangular viewing window then pick a point to the second point to define the opposite diagonal corner of the viewing window) Note: To return the picture to its original viewing size enter ALL and press the enter key when prompted instead of defining a window.

PAN: Allows you to move your view point around the drawing without changing the magnification factor.

Command: PAN (enter)

EDITING: Editing Commands CHANGE: Alters properties of selected objects Command: CHANGE (enter) Select objects or window or Last (select objects to be changed) Properties/: (type P) Change what property (Color/Elev/LAyer/LType/Thickness)? (type Layer) New Layer: (enter new layer name and press enter) ERASE:

Erases entities from the drawing. Command: ERASE (enter)

EXTEND:

Lengthens a line to end precisely at a boundary edge. Command: Extend (enter) Select boundary edge(s)...

TRIM:

Trims a line to end precisely at a cutting edge. Command: Trim (enter)

GRIPS You can edit selected objects by manipulating grips that appear at defining points on the object. Grips is not a command. To activate grips simply pick the object. Small squares will appear at various entityspecific positions. By selecting an end grip you can stretch the entity to change its size. By selecting the center grip you can move the entity to a new location. To remove grips press CTL-C twice. You can perform the following using grips: Copy, Multiple Copy, Stretch, Move, Rotate, Scale, and Mirror.

DIMENSIONING Linear Dimensions: 1.Choose Dimension, Linear. or 2. Click the Linear Dimension command from the toolbar.

or 3. Type DIM at the command prompt. Command: DIM Dim: HOR or VER

Aligned Dimensions: 1.Choose Dimension, Aligned. or 2. Click the Aligned Dimensioncommand from the toolbar.

or 3. Type DIM at the command prompt. Command: DIM Dim: ALIGNED

Arclength Dimensions: 1.Choose Dimension, Arclength. Or

2. Click the ArcLength Dimensioncommand from the toolbar.

Radial Dimensions: 1.Choose Dimension, Radius or Diameter. or 2. Click the Radial Dimensions command from the toolbar.

or 3. Type DIM at the command prompt. Command: DIM Dim: RADIUS or DIAMETER

Angular and Jogged Dimensions: 1.Choose Dimension, Angular. or 2. Click the Angular Dimensions command from the toolbar.

Or 3. Type DIM at the command prompt. Command: DIM Dim: ANGULAR

1.Choose Dimension, Jogged. or 2. Click the Jogged Dimensions command from the toolbar.

Or 3. Type DIM at the command prompt. Command: DIM Dim: JOGGED

Baseline Dimensions: 1. Choose Dimension, Baseline. or 2. Click the Baseline Dimensions command from the toolbar

or 3.Type DIM at the command prompt. Command: DIM Dim: BASELINE

Continued Dimensions:

1.Choose Dimension, Continue or 2. Click the Continue Dimensions command from the toolbar. or 3. Type DIM at the command prompt. Command: DIM Dim: CONTINUE

Leaders: 1. Choose Dimension, Leader... Click the Leader icon from the Dimension toolbar.

2.

Type QLEADER at the command prompt. Command: QLEADER

Leader Settings: 1. Type QLEADER at the command prompt. Command: QLEADER 2. Type “S” at the QLEADER prompt to change the leader settings. 3. Choose a setting from the following dialog box.

Quick Dimensions: Quickly creates dimension arrangements from the geometry you select. 1.Choose Dimension, QDIM. or 2.Click the Quick Dimension icon from the Dimensions toolbar

or 3. Type QDIM at the command prompt. Command: QDIM 4. Pick the objects to dimension.

Modifying Dimensions: DDEDIT 1. Choose Modify, Object, Text. 2. Choose the dimension text to modify. TIP: The actual dimensionis placed in brackets . Text can be placed in front of or behind these brackets. If text is placed between the brackets, the dimensionloses its associative properties.

Stretching Dimensions: 1. Choose Modify, Stretch. 2. Choose a crossing window around the area to stretch. Be sure to include the dimension endpoints. Dimension Edit Commands: HOMetext Moves the Dimension text back to its home (default) position. NEWtext Modifies the text of the Dimensions. Rotate Rotates dimension text. OBlique Sets the obliquing angle of Dimension extension lines. OVerride Overrides a subset of the Dimension variable settings. UPdate Redraws the Dimensions as directed by the current settings of all dimensioning variables. Ordinate Dimensions: 1. Choose Dimension, Ordinate 2. Type DIMORDINATE at the command prompt. Command: Dimordinate

SOLID MODELING:

What is Solid Modeling? Solid modeling is the most advanced method of geometric modeling in three dimensions. Solid modeling is the representation of the solid parts of the object on your computer. The typical geometric model is made up of wire frames that show the object in the form of wires. This wire frame structure can be two dimensional, two and half dimensional or three dimensional. Providing surface representation to the wire three dimensional views of geometric models makes the object appear solid on the computer screen and this is what is called as solid modeling. Advantages of Solid Modeling Solid modeling is one of the most important applications of the CAD software and it has been becoming increasingly popular of late. The solid modeling CAD software helps the designer to see the designed object as if it were the real manufactured product. It can be seen from various directions and in various views. This helps the designer to be sure that the object looks exactly as they wanted it to be. It also gives additional vision to the designer as to what more changes can be done in the object. Process of Making the Solid Models To make the solid models you have to first make the wire frame model of the object and convert it into 3D view. Thereafter the surfaces are added to the 3D wire model to convert it into 3D solid model. For creating the solid models you need to have special CAD software that can create solid models. One of the most popular CAD software for solid modeling is SolidWorks. Its latest version is SolidWorks 2009. A number of other CAD software like AutoCAD and others also have features of creating the solid models. Applications of Solid Modeling Solid modeling is used not only for creating solid models of machine parts, but also the buildings, electric circuits and even of the human beings. The solid modeling software are being used for a large variety of applications, here are some of them: 1) Engineering: The engineering design professionals use solid modeling to see how the designed product will actually look like. The architects and civil engineers use it to use the layout of the designed building. 2) Entertainment industry: The animation industry has been using solid modeling to create various characters and the movies out of them. 3) Medical industry: Modern imaging scanners are being used to create the solid models of the internal parts of the body. This helps the doctors to visualize specific tissues of the body, designing various medical devices etc.

5. Numerical Control 5.1 Numerical Control: Controlling a machine tool by means of prepared program, which consists of blocks, or series of numbers, is know as numerical control (NC). In manufacturing of more complicated parts, the system has to calculate automatically additional data points, which is done by means of an interpolator. Numerical Control (NC) refers to the method of controlling the manufacturing operation by means of directly inserted coded numerical instructions into the machine tool. It is important to realize that NC is not a machining method; rather, it is a concept of machine control. Although the most popular applications of NC are in machining, NC can be applied to many other operations, including welding, sheet metalworking, riveting, etc. NC machines are method of automation, where automation of medium and small volume production is done by some controls under the instructions of a program. Various definitions of NC are : A system in which actions are controlled by direct insertion of Numerical Data at some point. Numerical Control is defined as a form of software controlled automation, in which the process is controlled by alphanumeric characters or symbols. According to these definitions, a programme is prepared which consists of blocks, blocks consisting of combination of characters and numbers in sequence describing the position of the tool and job, the cutting speed and feed. The data converted into coded instructions which are called a Part Programme. As the job changes, the instructions of part program are also changed. The other instructions which can be included may be for tool changing or coolant on and off. It is easy to encode a new programme than to change the machinery for flexibility, thus arising the need of an NC machine tool.

Figure 5.1 : Numerical Control (NC) Machine Tool The major advantages of NC over conventional methods of machine control are as follows:  Higher precision:NC machine tool are capable of machining at very close tolerances, in some operations as small as 0.005 mm;

  

  

Machining of complex three-dimensional shapes Better quality: NC systems are capable of maintaining constant working conditions for all parts in a batch thus ensuring less spread of quality characteristics; Higher productivity: NC machine tools reduce drastically the non machining time. Adjusting the machine tool for a different product is as easy as changing the computer program and tool turret with the new set of cutting tools required for the particular part. Multi-operational machining: some NC machine tools, for example machine centers, are capable of accomplishing a very high number of machining operations thus reducing signifiantly the number of machine tools in the workshops. Low operator qualifiation: the role of the operation of a NC machine is simply to upload the workpiece and to download the fiished part. In some cases, industrial robots are employed for material handling, thus eliminating the human operator. Less Time An easy adjustment of the machine, adjustment requires less time.

5.2 NC Modes PRINCIPLES OF NC MACHINES The basic elements and operation of a typical NC machine in numerical control and the components basically involved of data input, data processing and data output. For data input, numerical information is read and stored in the tape reader or in computer memory. In data processing, the programs are read into machine control unit for processing. For data output, this information is translated into commands, typically pulsed commands to the motor. The motor moves the table on which the work piece is placed to specified positions, through linear or rotary movements, by the motors, ball screw, and others devices. A NC machine can be controlled through two types of circuits, which is open loop and closed loop. In the open loop system, the signals are given to the motor by the processor, but the movements and final destinations of the worktable are not accurate. The open loop system cannot accurate, but it still can produce the shape that is required. The closed loop system is equipped with various transducers, sensors, and counters that measure the position of the table accurately. Through feedback control, the position of the worktable is compared against the signal. Table movements terminate when the proper coordinates are reached. For the close loop system normally servomotor is utilized. For open loop system normally the stepper motor is utilized. The closed loop system is more complicated and more expensive than the open loop. There are two basic types of control systems in numerical control, point-to-point and contouring. In point-to-point system, also called positioning, each axis of the machine is driven separately by ball screw, depending on the type of operation, at different velocities. The machine moves initially at maximum velocity in order to reduce nonproductive time, but decelerates as the tool reaches its numerically defined position. Thus in an operation such as drilling or punching, the positioning and cutting take place sequentially. The time required in the operation is minimized for efficiency. Point-to-point systems are used mainly in drilling, punching, and straight milling operations.

Figure 5.2 : Point to point control in NC, Drilling of 3 Holes in Flat Plate In the contouring system, also known as the continuous path system, positioning and cutting operations are both along controlled paths but at different velocities. Because the tool cuts as it travels along the path, accurate control and synchronization of velocities and movements are important. The contouring system is used on lathes, milling machines, grinders, welding machinery and machining centers.

Figure 5.3: Continuous Path Control in NC, Profile Milling of Part Outline 5.3 NC Elements Numerical control (NC) may be defined as a method of controlling the operation of a machine tool by a series of coded instructions, consisting of numbers, letters of alphabet and symbols that the machine control unit can understand. The numerical data required to produce a part is known as part program and is used to control the relative position of work-to-tool, tool selection, turning on cutting fluid, feeds and speeds,etc. A numerical control machine tool system basically consists of the following three components 1. Program of Instruction, 2. Machine control unit, 3. Machine tool

Figure 5.4: Basic components of NC

Fig 5.5: Elements of NC Machine Tool Operations Program of instructions: The part program (program of instructions) is the detailed step by step instructions by which the sequence of processing steps is to be performed. The programmer write the program on paper and recorded on the tape by means of tape punch. The mpst commonly used punched tape is 25mm wide, 8 tracks, i.e., eight punched holes can be accomodated in one line across the width of tape. The tape is then played on a tape reader. The tape reader has the capacity of reading the punched holes either mechanically or electronically. Machine Control unit(MCU): The punched tape is played on a tape reader in the machine control unit. Thye controller unit interprets the program of instructions received from the tape

reader and convert it into mechanical actions of machine tool, i.e., the signals are forwarded to servomotors which control the movement of the slides or spindle along X, Y and Z - axis. The controller unit controls the path to be followed by the cutting tool spindle speeds, feed rate, tool changes and several other functions of the machine tool. Machine tool: The machine tool perform the machining operations. It consists of work table motors, spindle motors and controls. It also includes the cutting tools, fixtures and other auxiliary equipment needed in the machining operation. The machine tool has the capacity to change the tools automatically under tape command. The machine table can orient the job so that it can be machined on several surfaces as required.

5.4 Introduction to NC Machine Tools A typical NC machine tool contains the MCU (Machine control unit) and the machine tool itself. The MCU (also known as the controller unit) is considered the brain of the machine. It reads the part program and controls the machine tool operations. After reading the part program, the MCU decodes it to provide commands and decoded instructions to the various control loops of the machine axes of motion. The MCU performs two functions: it reads the part program and controls the machine tool. It consists of two units, one for each function. The DPU(Data processing unit) reads and decodes the part program statements, processes the decoded information, and provides the data to the CLU (control loop unit), the other unit. The CLU receives the data from the DPU and converts it to control signals. The data usually provides the control information such as the new required position of each axis, its direction of motion and velocity, and auxiliary control signals to relays. The CLU also instructs the DPU to read new instructions from the part program when needed, controls the drives attached to the machine leadscrews, and receives feedback signals on the actual position and velocity of the axes of the machine. Each axis of motion of the machine tool has its own leadscrew, control signals, and feedback signals. In the first and second- generation NC machine tools, the MCU has a tape drive that is able to mount and read punched tapes that contain part programs. The tape drive is part of the DPU of the machine. In CNC and DNC machine tools, the DPU is replaced by the ROM and the tape drive is elimnated all together. Types of NC System NC Machine controls are divided into three groups: (a) Traditional numerical control (NC); (b) Computer numerical control (CNC); (c) Distributed numerical control (DNC). The original numerical control machines were referred to as NC machine tool. They have “hardwired” control, whereby control is accomplished through the use of punched paper (or plastic) tapes or cards. Tapes tend to wear, and become dirty, thus causing misreading. Many other problems arise from the use of NC tapes, for example the need to manual reload the NC

tapes for each new part and the lack of program editing abilities, which increases the lead time. The end of NC tapes was the result of two competing developments, CNC and DNC. CNC refers to a system that has a local computer to store all required numerical data. While CNC was used to enhance tapes for a while, they eventually allowed the use of other storage media, magnetic tapes and hard disks. The advantages of CNC systems include but are not limited to the possibility to store and execute a number of large programs (especially if a three or more dimensional machining of complex shapes is considered), to allow editing of programs, to execute cycles of machining commands, etc. The development of CNC over many years, along with the development of local area networking, has evolved in the modern concept of DNC. Distributed numerical control is similar to CNC, except a remote computer is used to control a number of machines. An offsite mainframe host computer holds programs for all parts to be produced in the DNC facility. Programs are downloaded from the mainframe computer, and then the local controller feeds instructions to the hardwired NC machine. The recent developments use a central computer which communicates with local CNC computers (also called Direct Numerical Control). Controlled Axes NC system can be classified on the number of directions of motion they are capable to control simultaneously on a machine tool. Each free body has six degree of freedom, three positive or negative translations along x, y, and z-axis, and three rotations clockwise or counter clockwise about these axes. Commercial NC system is capable of controlling simultaneously two, two and half, three, four and five degrees of freedom, or axes. The NC systems which control three linear translations (3-axis systems), or three linear translations and one rotation of the worktable (4-axis systems) are the most common.

Fig 5.6: Coordinate System (Milling and Drilling Operations)

Fig 5.7 Coordinate System (Turning Operations)

Figure 5.8: Coordinate System (Milling and Drilling Operations) Basic Components of NC Machines Software The programmes or set of instructions, languages, punched cards, magnetic tape, punched paper tape and other such information processing items are referred to as software. This software controls the sequence of movement of an NC. That is why these numerical controls are sometimes called software controlled machines by NC lies entirely in the programming. The programmer plans the operations and their sequence from seeing the drawing and writes instructions in tabulated blocks of information, known as Part Programme on a programme manuscript. Then these instructions are punched on the control tape. Tape reader reads the codes and

sends it to Machine Control Unit, which conversely converts them into the machine movements of machine tool. Machine Control Unit (MCU) NC machine tool has a main unit, which is known as Machine Control Unit, consists of some electronic hardware that reads the NC programme, interprets it and conversely translates it for mechanical actions of the machine tool. A typical Machine Control Unit may consist of the following units : Input or Reader Unit This unit consists of electro-mechanical devices used to collect the input from punched tape, cards, magnetic tape and disk. Then drive it through the system under a reading head, interpret the coded information and collect it again for reuse. Memory A block of information, consisting of words, is read from tape and stored into temporary memory called buffer. One block may contain one complete set of instruction words in sequence. The function of this memory is to keep on storing the next block of words when the machine is doing processing of previous block. Processor The function of the processor is to coordinate and control the functions of other units, by giving ready signals to them at appropriate point of time. Output Channels The data stored in the memory is converted into actuation signal and supplied through output channels in the form of pulses. Control Panel The control panel has the switches, indicators, Manual Data Input (MDI) and dials for providing information to the operator. Feedback Channels Feedback channel is to check whether the operations are done in the way we want to, the feedback is sent through feedback channels by position and velocity. The MCU may be of three types : Housed MCU Machine Control Unit may be mounted on the machine tool or may be built in the casing of the machine. Swing Around MCU Machine Control Unit is directly mounted on the machine, which can swing around it and can be adjusted as per requirement of the operator‟s position. Stand Alone MCU

Machine Control Unit is enclosed in a separate cabinet which is installed at some remote or same place near to the machine. Machine Tool Machine tool is the main components of a numerical control system, which executes the operations. It may consist of worktable, cutting tools, jigs and fixtures, motors for driving spindle and coolant and lubricating system. The latest development in the numerical control machine tool is the versatile machining center. This is a single machine capable of doing a number of operations such as milling, boring, drilling, reaming, and tapping by Automatic Tool Changer (ATC) under the control of tool selection instruction. Problems with Conventional NC The problems arise in the conventional NC system are the following : Punched Tape It is an unreliable NC component for repeated use in the shop because of paper tape is especially fragile and its susceptibility to wear and tear.

Figure 5.9: Punched Tape Tape Reader Tape reader is the least reliable hardware components of the machine while any breakdown is occurred on an NC machine.

Figure 5.10: Tape Reader Controller The hard-wired controller cannot be easily altered to incorporate improvements into the unit.

Figure 5.11: Controller Management Information The machine tool manufacturers have been continually improving NC technology by redesigning the systems to provide timely information such as piece counts, machine tool change, etc. to the management. Part Programming Mistakes When preparing the punched tape, part programming mistakes are common and to achieve the best sequence of processing steps. Non-optimal Speed and Feed The control system does not provide the provision to change the speed and feed during the cutting operation. 5.5 Structure of CNC Machine Tools CNC is a microprocessor based control system that accepts a set of program instructions, processes and sends output control information to a machine tool, accepts feedback information acquired from a transducer placed on the machine tool and based on the instructions and feedback, assures that proper motion, speed and operation occur. Some of the important parts of CNC machines are Machine structure, guide ways, feed drives, spindle and Spindle bearings, measuring systems, controls, software and operator interface, gauging, tool monitoring.

Figure 5.12 : Computer Numerical Control (CNC) Machine

The information stored in the computer can be read by automatic means and converted into electrical signals, which operate the electrically controlled servo systems. Electrically controlled servo systems permits the slides of a machine tool to be driven simultaneously and at the appropriate feeds and direction so that complex shapes can be cut, often with a single operation and without the need to reorient the work piece. Computer Numerically Control can be applied to milling machines, Lathe machines, Grinding machines, Boring machines, Flame cutters, Drilling machines etc. A CNC system basically consists of the following : (a) Central processing unit (CPU) (b) Servo control unit (c) Operator control panel (d) Machine control panel (e) Programmable logic controller (f) Other peripheral devices. Central Processing Unit (CPU) The CPU is the heart of a CNC system. It accepts the information stored in the memory as part program. This data is decoded and transformed into specific position control and velocity signals. It also oversees the movement of the control axis or spindle and whenever this does not match with the programmed values, a corrective action as taken.

All the compensation required for machine acquires (like lead screw pitch error, tool CNC Machine Tools wear out, backlashes.) are calculated by CPU depending upon the corresponding inputs made available to the system. The same will be taken care of during the generation of control signals for the axis movement. Also, some basic safety checks are built into the system through this unit and continuous necessary corrective actions will be provided by CPU unit. Whenever the situation goes beyond control of the CPU, it takes the final action of shutting down the system and in turn the machine. Servo Control Unit The decoded position and velocity control signals, generated by the CPU for the axis movement forms the input to the servo control unit. This unit in turn generates suitable signals as command values. The command values are converted by the servo drive units which are interfaced with the axes and the spindle motors. The servo control unit receives the position feedback signals for the actual movement of the machine tool axes from the feedback devices (like linear scales, rotary encoders, revolvers, etc.) Operator Control Panel The Operator Control Panel provides control panel provides the user interface to facilitate a two way communication between the user, CNC system and the machine tool. This consists of two parts: Video display unit and Keyboard. Machine Control Panel It is the direct interface between the operator and the NC system, enabling the operation of the machine through the CNC system. During program execution, the CNC controls the axis the motion, spindle function or tool function on a machine tool, depending upon the part program stored in the memory. Prior to the starting of the machining process, machine should first be prepared with some specific takes like, establishing a correct reference point, loading the system memory with the required part program, loading and checking of tool offsets, zero offsets, etc. Programmable Logic Controller (PLC) A PLC matches the NC to the machine. PLC‟s were basically as replacement for hard wired relay control panels. They were basically introduced as replacement for hard wired relay panels. They developed to be re-programmed without hardware changes when requirements were altered and thus are re-usable. PLC‟s are now available with increased functions, more memory and larger input/output capabilities. In the CPU, all the decisions are made relative to controlling a machine or a process. The CPU receives input data, performs logical decisions based upon stored programs and drives the output connection to a computer for hierarchical control are done through CPU. Other Peripheral Devices These include sensor interface, provision for communication equipment, programming units, printer, tape reader interface, etc. CNC Concept A CNC system may be characterized in terms of three major elements: hardware,software and information.

Figure 5.13: CNC System Hardware Hardware includes the microprocessors that effect control system functions and peripheral devices for data communication, machine tool interfacing and machine tool status monitoring. Software Software includes the programs that are executed by the system microprocessors and various types of software associated with CNC. Information Information regarding the dynamic characteristics of the machine and many other information pertaining to the process. When any of these unreliable components fails, the diagnostics subsystem would automatically disconnect the faulty component from the system and activate the redundant component in place of faulty one so that newly installed component can perform its function. 5.6 Features of Machining Centre: A machining centre is a computer controlled machine tool capable of performing a variety of cutting operations on different surfaces and different directions on the workpiece. In general the workpiece is stationary and the cutting tool revolve, such as in milling, boring, tapping and precision profiling. There are three main types of machining centers: the horizontal, vertical and universal machines. They are available in many types and sizes, which may be determined by the following factors: 1. The size and weight of the larger piece that can be machined. 2. The maximum travel of the three primary axis 3. The power and the maximum speed of the spindle 4. the number of tools that the automatic tool changer can hold Refer A.1 5.7 Turning Centre: The turning center is one of the most productive machine tools in the machine shop. Its main function is to produce high quality cylindrical parts. Turning center can machine internal and external surfaces. other machining operations such as drilling, tapping, boring and threading are also done on turning centers. Today's turning centers can be equipped with dual tool turrets, dual spindles, milling head attachments, and a variety of other specialised features to make them capable of machining even the most complex parts in one setup. Most turning machines today have a slant bed configuration. Slanting the bed on a CNC lathe allows the chips to fall away from the sideways. The head stock spindle is driven by a variable speed motor. The CNC turning centers can be classified into following types.

i) Chucking center ii)Universal turning center iii) Turn/mill center iv) Vertical turning center. Refer A.1 5.8 Fundamentals of CNC Part Programming and Types of Part Programming The part program is a sequence of instructions, which describe the work, which has to be one on a part, in the form required by a computer under the control of a numerical control Computer program. It is the task of preparing a program sheet from a drawing sheet. All data is fed into the numerical control system using a standardized format. Programming is where all the machining data are compiled and where the data are translated into a language which can be understood by the control system of the machine tool. The machining data is as follows : (a) Machining sequence classification of process, tool start up point, cutting depth, tool path, etc. (b) Cutting conditions, spindle speed, feed rate, coolant, etc. (c) Selection of cutting tools. While preparing a part program, need to perform the following steps : (a) Determine the startup procedure, which includes the extraction of dimensional data from part drawings and data regarding surface quality requirements on the machined component. (b) Select the tool and determine the tool offset. (c) Set up the zero position for the workpiece. (d) Select the speed and rotation of the spindle. (e) Set up the tool motions according to the profile required. (f) Return the cutting tool to the reference point after completion of work. (g) End the program by stopping the spindle and coolant. The part programming contains the list of coordinate values along the X, Y and Z directions of the entire tool path to finish the component. The program should also contain information, such as feed and speed. Each of the necessary instructions for a particular operation given in the part program is known as an NC word. A group of such NC words constitutes a complete NC instruction, known as block. The commonly used words are N, G,X,Y,Z,A,B,C,F, S, T, and M. Where N = Sequence number of instruction, G = Preparatory function, XYZABC = Coordinate and angular data F= Feed S= Spindle Speed T= Tool code M= Miscellaneous function The program is directly input into the machine's memory through the following methods: i. Manual data input through the keyboard of the NC console. ii. A floppy disc and disc drive or magnetic tape. iii DNC mode - directly from the computer used for programming or storage of program to the memory of the CNC machine.

iv. The program can be transferred to the machine through a LAN or through Internet. Hence the methods of part programming can be of two types depending upon the two techniques as below : (a) Manual part programming, and (b) Computer aided part programming. Manual Part Programming The programmer first prepares the program manuscript in a standard format. Manuscripts are typed with a device known as flexo writer, which is also used to type the program instructions. After the program is typed, the punched tape is prepared on the flexo writer. Complex shaped components require tedious calculations. This type of programming is carried out for simple machining parts produced on point-to-point machine tool. To be able to create a part program manually, need the following information : (a) Knowledge about various manufacturing processes and machines. (b) Sequence of operations to be performed for a given component. (c) Knowledge of the selection of cutting parameters. (d) Editing the part program according to the design changes. (e) Knowledge about the codes and functions used in part programs. Computer Aided Part Programming If the complex-shaped component requires calculations to produce the component are done by the programming software contained in the computer. The programmer communicates with this system through the system language, which is based on words. There are various programming languages developed in the recent past, such as APT (Automatically Programmed Tools), ADAPT, AUTOSPOT, COMPAT-II, 2CL, ROMANCE, SPLIT is used for writing a computer programme, which has English like statements. A translator known as compiler program is used to translate it in a form acceptable to MCU. The programmer has to do only following things : (a) Define the work part geometry. (b) Defining the repetition work. (c) Specifying the operation sequence. Over the past years, lot of effort is devoted to automate the part programme generation. With the development of the CAD (Computer Aided Design)/CAM (Computer Aided Manufacturing) system, interactive graphic system is integrated with the NC part programming. Graphic based software using menu driven technique improves the user friendliness. The part programmer can create the geometrical model in the CAM package or directly extract the geometrical model from the CAD/CAM database. Built in tool motion commands can assist the part programmer to calculate the tool paths automatically. The programmer can verify the tool paths through the graphic display using the animation function of the CAM system. It greatly enhances the speed and accuracy in tool path generation.

Figure 5.14:Interactive Graphic System in Computer Aided Part Programming FUNDAMENTAL ELEMENTS FOR DEVELOPING MANUAL PART PROGRAMME The programmer to consider some fundamental elements before the actual programming steps of a part takes place. The elements to be considered are as follows : Type of Dimensioning System We determine what type of dimensioning system the machine uses, whether an absolute or incremental dimensional system Axis Designation The programmer also determines how many axes are availed on machine tool. Whether machine tool has a continuous path and point-to-point control system NC Words The NC word is a unit of information, such as a dimension or feed rate and so on. A block is a collection of complete group of NC words representing a single NC instruction. An end of block symbol is used to separate the blocks. NC word is where all the machining data are compiled and where the data are translated in to a language, which can be understood, by the control system of the machine tool. Block of Information NC information is generally programmed in blocks of words. Each word conforms to the EIA standards and they are written on a horizontal line. If five complete words are not included in each block, the machine control unit (MCU) will not recognize the information; therefore the control unit will not be activated. It consists of a character N followed by a three digit number raising from 0 to 999.

Figure 5.14: A Block of Information Using the example shown in above figure. The words are as follows : N001 – represents the sequence number of the operation. G01 – represents linear interpolation. X12345 – will move the table in a positive direction along the X-axis. Y06789 – will move the table along the Y-axis. M03 – Spindle on CW and ; – End of block. Standard G and M Codes The most common codes used when programming NC machines tools are G-codes (preparatory functions), and M codes (miscellaneous functions). Other codes such as F, S, D, and T are used for machine functions such as feed, speed, cutter diameter offset, tool number, etc. G-codes are sometimes called cycle codes because they refer to some action occurring on the X, Y, and/or Z-axis of a machine tool. The G-codes are grouped into categories such as Group 01, containing codes G00, G01, G02, G03, which cause some movement of the machine table or head. Group 03 includes either absolute or incremental programming. A G00 code rapidly positions the cutting tool while it is above the workpiece from one point to another point on a job. During the rapid traverse movement, either the Xor Y-axis can be moved individually or both axes can be moved at the same time. The rate of rapid travel varies from machine to machine. G-Codes (Preparatory Functions) Code Function G00 Rapid positioning G01 Linear interpolation G02 Circular interpolation clockwise (CW) G03 Circular interpolation counterclockwise (CCW) G20 Inch input (in.) G21 Metric input (mm) G24 Radius programming G28 Return to reference point G29 Return from reference point G32 Thread cutting G40 Cutter compensation cancel G41 Cutter compensation left G42 Cutter compensation right G43 Tool length compensation positive (+) direction

G44 Tool length compensation minus (-) direction G49 Tool length compensation cancels G 53 Zero offset or M/c reference G54 Settable zero offset G84 canned turn cycle G90 Absolute programming G91 Incremental programming Note : On some machines and controls, some may differ. M-Codes (Miscellaneous Functions) M or miscellaneous codes are used to either turn ON or OFF different functions, which control certain machine tool operations. M-codes are not grouped into categories, although several codes may control the same type of operations such as M03, M04, and M05, which control the machine tool spindle. Some of important codes are given as under with their function s: Code Function M00 Program stop M02 End of program M03 Spindle start (forward CW) M04 Spindle start (reverse CCW) M05 Spindle stop M06 Tool change M08 Coolant on M09 Coolant off M10 Chuck - clamping M11 Chuck - unclamping M12 Tailstock spindle out M13 Tailstock spindle in M17 Tool post rotation normal M18 Tool post rotation reverse M30 End of tape and rewind or main program end M98 Transfer to subprogram M99 End of subprogram Note : On some machines and controls, some may be differ. Tape Programming Format Both EIA and ISO use three types of formats for compiling of NC data into suitable blocks of information with slight difference. Word Address Format This type of tape format uses alphabets called address, identifying the function of numerical data followed. This format is used by most of the NC machines, also called variable block format. A typical instruction block will be as below : N20 G00 X1.200 Y.100 F325 S1000 T03 M09 or N20 G00 X1.200 Y.100 F325 S1000 T03 M09; The MCU uses this alphabet for addressing a memory location in it. Tab Sequential Format Here the alphabets are replaced by a Tab code, which is inserted between two

words. The MCU reads the first Tab and stores the data in the first location then the second word is recognized by reading the record Tab. A typical Tab sequential instruction block will be as below : >20 >00 >1.200 >.100 >325 >1000 >03 >09 Fixed Block Format In fixed block format no letter address of Tab code are used and none of words can be omitted. The main advantage of this format is that the whole instruction block can be read at the same instant, instead of reading character by character. This format can only be used for positioning work only. A typical fixed block instruction block will be as below: 20 00 1.200 .100 325 1000 03 09 Machine Tool Zero Point Setting The machine zero point can be set by two methods by the operator, manually by a programmed absolute zero shift, or by work coordinates, to suit the holding fixture or the part to be machined. Manual Setting The operator can use the MCU controls to locate the spindle over the desired part zero and then set the Xand Y coordinate registers on the console to zero. Absolute Zero Shift The absolute zero shift can change the position of the coordinate system by a command in the CNC program. The programmer first sends the machine spindle to home zero position by a command in the program. Then another command tells the MCU how far from the home zero location, the coordinate system origin is to be positioned.

Figure 5.15: Machine Tool Zero Point Setting R = Reference point (maximum travel of machine) W= Part zero point workpice coordinate system M = Machine zero point (X0, Y0, Z0) of machine coordinate system The sample commands may be as follows : N1 G28 X0 Y0 Z0 (sends spindle to home zero position or Return to reference point). N2 G92 X3.000 Y4.000 Z5.000 (the position the machine will reference as part zero or Programmed zero shift). Coordinate Word A co ordinate word specifies the target point of the tool movement or the distance to be moved. The word is composed of the address of the axis to be moved and the value and direction of the movement. Example X150 Y-250 represents the movement to (150, - 250). Whether the dimensions are absolute or incremental will have to be defined previously using G-Codes. Parameter for Circular Interpolation These parameters specify the distance measured from the start point of the arc to the center. Numerals following I, J and K are the X, Y and Z components of the distance respectively. Spindle Function The spindle speed is commanded under an S address and is always in revolution per minute. It can be calculated by the following formula :

Example S1000 represents a spindle speed of 1000 rpm Feed Function The feed is programmed under an F address except for rapid traverse. The unit may be in mm per minute or in mm per revolution. The unit of the federate has to be defined at the beginning of the programme. The feed rate can be calculated by the following formula

Example F100 represents a feed rate of 100 mm/min. Tool Function The selection of tool is commanded under a T address. T04 represents tool number 4. Work Settings and Offsets All NC machine tools require some form of work setting, tool setting, and offsets to place the cutter and work in the proper relationship. Compensation allows the programmer to make adjustments for unexpected tooling and setup conditions. A retraction point in the Z-axis to which the end of the cutter retracts above the work surface to allow safe table movement in the X-Y axes. It is often called the rapid-traverse distance, retract or work plane. Some manufacturers build a workpiece height distance into the MCU (machine control unit) and whenever the feed motion in the Z-axis will automatically be added to the depth programmed. When setting up cutting tools, the operator generally places a tool on top of the highest surface of the work piece. Each tool is lowered until it just touches the workpiece surface and then its length is recorded on the tool list. Once the work piece has been set, it is not generally necessary to add any future depth dimensions since most MCU do this automatically.

Figure 5.16: Work Settings

Figure 5.17: Offsets Rapid Positioning This is to command the cutter to move from the existing point to the target point at the fastest speed of the machine.

Figure 5.18: Rapid Positioning Linear Interpolation This is to command the cutter to move from the existing point to the target point along a straight line at the speed designated by the F address.

Figure 5.19: Linear Interpolation Circular Interpolation This is to command the cutter to move from the existing point to the target point along a circular arc in clockwise direction or counter clockwise direction. The parameters of the

center of the circular arc is designated by I, J and K addresses. I is the distance along the X-axis, J along the Y, and K along the Z. This parameter is defined as the vector from the starting point to the center of the arc.

Figure 5.20: Clockwise Circular Interpolation

Figure 5.21: Counter Clockwise Circular Interpolation

SYMBOLS USED % – Main Programme (1 to 9999) L – Sub program (1 to 999)/Home position N – Sequence of block number.

Lf – Block end (EOB) means “; or *” T – Tool number or Tool station number D – Tool offset S – Spindle speed F – Feed M – Switching function G – Transverse commands R – Parameters I, J, K – Circle parameters B/U/R – Radius X/Y/Z – Axis coordinates P – Passes.

Appendix 1 A.1 CONVERGENCE OF MACHINE TOOLS Manufacturing engineers are familiar with various basic machining processes like turning, boring, milling, drilling, grinding etc. Manual machines are generally designed to primarily cater to any one of these processes. For example, lathes are designed for turning and allied operations like thread cutting, drilling along the spindle axis, grooving and knurling though processing engineers may carry out many other operations with suitable tooling or attachments. A boring machine can be used for milling and drilling in addition to boring. A milling machine can be used for a variety of other machining operations other than just milling. Many axi-symmetric components may have off centre holes, milled features etc. The practice before the advent of CNC machines involved carrying out the primary machining in one machine and moving the component to other machines for subsequent operations. For example, a component with off centre holes and a milled feature as shown in Fig. A.1 is machined fist in a lathe and the subsequent machining carried out in a drilling machine and milling machine for drilling off centre holes and slot respectively. With the development of turning centres, all these operations could be done in machine without set up changes, thereby increasing productivity and accuracy.

Figure A.1.1: Component Requiring Multiple operations Similarly machining centres can carry out various kinds of milling, drilling and allied operations, boring etc. Turn mill centres used in aerospace industry can turn and mill large components in one machine itself. Now we have fewer classes of machine tools like CNC lathes and turning centres, machining centres, etc. This has been made possible primarily due to:  The use of multiple tools and automatic tool changing  Positioning of tools using a program  Manipulation of work pieces using the program  Design of more rigid machines

Figure A.1.2: Convergence of Machine Tools

Appendix 2 A.2 PART PROGRAM FOR LATHE OPERATION The CNC lathe operation such as simple facing, turning, taper turning, thread, boring, parting off etc. The X-axis and Z-axis are taken as the direction of transverse motion of the tool post and the axis of the spindle respectively. To prepare part programs using G-codes and M-codes. The following examples illustrated the part program for different components. Example 01 (All dimensions are in mm).

Figure A.2.1: Turning operation % 1000; (Main programme) N01 G54 G90 G71 G94 M03 S800; (Parameters Setting) N05 G01 X-12.5 Z0 F2; (Facing the job) N10 G00 Z1; (Retrieval of tool) N15 G00 X00; (Tool clearance) N20 G01 Z-100; (Starting cut) N25 G00 X1 Z1; (Clearance position) N30 G00 X-2; (Position of cut) N35 G01 Z-60; (Cutting length) N40 G00 X-1 Z1; (Retrieval of tool) N45 G00 X-3; (Position of cut) N50 G01 Z-60; (Cutting length) N55 G00 X-2 Z1; (Retrieval of tool) N60 G00 X-4; (Position of cut) N65 G01 Z-60; (Cutting length) N70 G00 X-3 Z1; (Retrieval of tool) N75 G00 X-4.5; (Position of cut) N80 G01 Z-60; (Cutting length) N85 G00 X5 Z5; (Final position of tool) N90 M02; (End of programme)

References 1. CAD/CAM/CIM by P.Radhakrishnan, S.Subramanyan, V.RajuNew Age International Limited, Publishers. 2. Production Technology by R.K. Jain, Khanna publications. 3. CAD/CAM Mikell P. Groover, Emory W. Zimmers, Jr Pearson education. 4. CAD/CAM by A.S. Ravindra, Best Publishers. 5. CAD/CAM Theory and Practice by Ibrahim Zeid. Tata mcGraw-Hill Edition.