e252 learning module i--cnc fundamentals and terminology
TRANSCRIPT
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
1/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 1
Computer Aided
Manufacturing II
Introductions
ExpectationsPreparation for lecture, lab, etc.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
2/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 2
Computer Aided
Manufacturing II
ENT 252 CAM II
Extension of CAM IEmphasis on generating part programs
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
3/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 3
Computer Aided Manufacturing II
Review syllabus
Textbook
CIMTEXT.doc available on web Prerequisite sign off
Term Project
Using the course web page as a resource Feedback and discussion
Lets begin
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
4/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 4
What is Computer Aided Manufacturing?
CNC Machines
Robots
Material HandlingAutomation
Automatic part program generation
Paperless factory
Others
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
5/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 5
Development of NC/CNC
1957 MIT development of first machine
Retrofit
Replace hand cranks with motors
Control motors with electronics
Eventually led to development of numerically
controlled machine tools
Programs stored on punched paper tape
Special purpose controllers designed for sole
purpose of running NC machines
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
6/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 6
NC/CNC Development Continued
Programmer manually programs part
Punches data into PPT
Outputs a manuscript
Used typewriter-like device
Controller connected to motor which is
connected to lead screw (threaded rod).
Follower (nut), connected to machine slide,rides on lead screw resulting in linear motion.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
7/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 7
So What is CNC? By early 1970s, INTEL had developed first
microprocessor (computer on a chip)
Think about technological developments leading up
to this time What are some of the significantdevelopments?
Well, once OEMs had computers on a chip theyreplaced thousands of wires with a single chipresulting in Computer Numerical Control (CNC)
Computer Numerical Control told potentialcustomers that their control was computer basedand not hard wired.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
8/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 8
CNC Continued
Today the terms NC and CNC have become
interchangeable.
CNC offers shop floor editing of programs (for
programs errors, tool wear, etc.), more
methods of program storage, calculations,
canned routines, and variable-basedprograms.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
9/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 9
CNC Continued
CNC Machines are best suited for small to
medium lot sizes
Explain what this means
What are the alternative methods of
manufacturing?
When is CNC well-suited for one part?
What about continuous runs? What are advantage/disadvantage of CNC over
other other manufacturing choices?
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
10/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 10
CNC Part Program Development
CNC part programming may be
accomplished in a variety of ways, such as:
Manual part programming
Computer assisted part programming
CAD/CAM
Shop Floor Parametric
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
11/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 11
Manual Part Programming Manual part programming is the oldest
method and still quite popular. This
technique requires the programmer to
examine a part drawing then manually
calculate all tool paths. This information is
recorded on a manuscript. A punched
tape is prepared directly from themanuscript.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
12/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 12
Computer Assisted Part Programming
High level language to describe
geometry and tool path
Computer makes all key calculations Tool offsets and compensations
Partial arcs
Part geometry And more...
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
13/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 13
CAD/CAM
CAD used to describe geometry
CAM software used to define tool path
relative to CAD geometry
Becoming very popular
Tough to get pure turn-key system
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
14/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 14
Conversational/Shop Floor Programming
Interactive method of generating part programs
The CNC programmer or machine tool operatoranswers questions and provides data about toolpaths when prompted by a conversational
programming software system. These answers to questions and associated data
are translated into a CNC program for a particularmachine tool.
Conversational systems reside on the machine tool
controller This method of programming is generally restricted
to relatively simple geometry
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
15/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 15
Parametric Programming
Highest level and versatile method of
programming
Good for part family programming
Use variables to describe part features
Values assigned to variables define part
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
16/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 16
Programming Terminology and
Formats NC/CNC Part Programs consist of:
BLOCKS or lines of code
Blocks consist of WORDS or commands (e.g.,
feedrate command)
Words consist of CHARACTERS orBYTES (G, X,
any alpha-numeric character)
Characters/Bytes consist of bits (0 or1; hole or no
hole; magnetized spot or not magnetized spot)
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
17/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 17
A Sample BLOCK
The following are sample Blocks or Lines
of CNC code:
N00 G01 X+1000 Z-3000 F30 H0
N5M3G1X-1.5Z+3.42F3.5S1200
N10M6T2
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
18/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 18
Programming Formats
Fixed Block 0001+0100-01000040
Notice only numeric data with a fixed number of charactersper word and block
Tab Sequential
00 01 +0100 -01000 040 Notice only numeric data with a fixed number of TABS per
block
Word Address
N1G3X-3.5Y+4.0F3.5
Letters precede numbers designating each word.
No fixed structure
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
19/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 19
Program Storage and Coding
Storage
Punched tape, disk, hard drive, network drives
www.doit.ort.org
Coding American Standard Code for Information Interchange
(ASCII) is used today
7 bit code with 8th bit for special stuff
Each character is assigned a unique code of1s and 0s. A is 01000001
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
20/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 20
Consider Codes
1 bit code Example: 0=A;1=B
2 bit code
Example 00=A, 01=B, 10=C, 11=D BAD is 01 00 11
4 bit code Example: 0000=A, 0001=B, and so on
How many characters can we code with 4 bits? Now consider 7 bits, 8 bits, or10 bits
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
21/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 21
More on Codes
Number of Characters (combinations) is:
2N where N is number of bits
ASCII Code
7 bits (27) = 128 characters
8 bits (28) = 256 characters
All keys on keyboard have assigned an ASCII
code
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
22/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 22
Consider Number Systems (bases)
Number systems
Consider93510
9 hundreds, 3 tens, 5 ones
9 x 102 + 3 x 101 + 5 x 100 = 93510
Now consider 2548
2 x 82 + 5 x 81 + 4 x 80 = 128+40+4=17210
What about Base 2? 101102 = 2210 What about any base?
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
23/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 23
Consider Codes as Numbers
Firstgiven a base such as 8.
How many unique characters in any one column?
What is largest valued character in any one
column?
Now consider the ASCII code as a number?
A is 010000012 = 6510
B is 010000102 = 6610
Work ASCII Code Worksheet
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
24/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 24
Bits and Combinations (characters)
With ASCII code using 7 bits we can code
how many characters?
With 8 bits we can code how many?
What about WENDYs hamburgers?
Take it to 10 bits 210 = __________?
210 is K in computer jargon
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
25/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 25
More on how CNC Machines work
Programs are fed to control by PPT, disk,LAN, etc.
Controller interprets numeric data and
converts it into electrical signals which drivethe axes motors.
Axes motors can be DC, AC, or morecommonly Stepper Motors. These motors
drive the lead screw. Follower (nut), connected to machine slide,
rides on lead screw resulting in linear motion.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
26/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 26
Feedback
Usually feedback devices are connected to eachaxis.
Feedback devices are used to improve positioning
and are also used to verify that the axes are actuallymoving. If an axis is against a positive stop, thecontrol may say move but the axis cant. A feedbackdevice detects no motion and shuts down thecontrol.
Typical feedback devices are primarily resolvers(AC) and encoders (digital). Lasers, andpotentiometers may also be used.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
27/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 27
Determining Rotary Position-
Mechanical EncoderMechanical Absolute EncodersGray
code wheel shown to left. Gray code
is used because only one bit
transitions at a time. A metal disc
containing a set of concentric rings ofopenings is affixed to an insulating
disc, which is rigidly fixed to the shaft.
A row of sliding contacts is fixed to a
stationary object so that each contact
wipes against the metal disc at a
different distance from the shaft. As
the disc rotates with the shaft, some
of the contacts touch metal, while
others fall in the gaps where the
metal has been cut out.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
28/46
ENT 252 Learning Module I-CNCFundamentals and Terminology 28
Determining Rotary PositionOptical
EncoderOptical Absolute Encoders (Optical
tachometer as shown to left
measures RPM only. Multiple tracks
of patterned holes required for
position as shown below,)The optical encoder's disc is made of
glass with transparent and opaque
areas. A light source and photo
detector array reads the optical
pattern that results from the disc's
position at any one time.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
29/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 29
Determining RPM
Optical Absolute EncodersOptical
tachometer as shown to left measuresRPM only. Multiple tracks of patterned
holes required for position as shown
previously.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
30/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 30
More on CNC Operation
Stepper motors work off of pulses (e.g., 0 to
24V). Each pulse causes a specific degrees
of rotation. For example, a 7.5 degree
stepper rotates 7.5 degrees per pulse.
The pitch of the lead screw needs to be
coordinated with the controller to affect
precise linear motion. What is Pitch?
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
31/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 31
Still More on CNC Operation
If a stepper motor is used, the number of
pulses from a stepper motor determines the
revolutions made by the lead screw. This in-
turn, determines linear distance.
The rate or frequency of pulses determines
the rate of axis travel.
Consider the stepper motor worksheet
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
32/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 32
First steps toward programming
CNC Programs can be written in either
Incremental (relative) or Absolute mode.
With Incremental, the command issued is
the DISTANCE the programmer wants the
axes to move.
With Absolute, the command issued is the
COORDINATE the programmer wants theaxes to move to.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
33/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 33
Programming modes continued
The Incremental and Absolute modes can be
intermixed in a single program.
The command to set Incremental is G91 and
the command to set Absolute is G90 or G92.
All of these commands are modal which
means once set, they are retained from block
to block (line to line) of CNC code. More on commands later.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
34/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 34
Consider an example
X
Y
0 2 4 6
5
A
B C
D
Move Incremental AbsoluteA-B X=2, Y=5 X=2, Y=5
B-C X=2, Y=0 X=4, Y=5C-D X=2, Y=-5 X=6, Y=0D-A (you finish)
0
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
35/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 35
Example continued
In the example, note the pattern/relationshipbetween Incremental and Absolute.
What is the relationship?
Also, note that in Incremental, if the programreturns to starting point, then X=0 and Y=0
In Absolute, there is no sum check but if thelast coordinate is the starting coordinate thenthe program returns to starting point.
Work the ABS/INC Worksheet.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
36/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 36
Beginning to Program
NC/CNC Programs are made up ofBLOCKS or
lines of code. Each block is a complete command
and the machine tool executes one block at a time.
Blocks are made up of WORDS. Words are theactual instruction set and are used to establish
motion pattern, feedrates, coolant and spindle
control, etc.
Words are made up of alpha-numericCHARACTERS or bytes.
Characters (or bytes) are made up ofBITS.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
37/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 37
Its in the Code
The language of NC/CNC Machines is G-
Code. G-codes are used to provide path
definition to the control. For example, G01 is
feed linear, G02 is arc CW, G03 is arc CCW,and so on.
Generally, G codes are two characters and
can range from G00 through G99. Not all 100codes are used and not all G codes are
standardized which presents challenges.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
38/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 38
A Typical CNC Block (Command)
N00 G01 X-1.00 Y-.750 F3.0
In this command there are 5 Words (N, G, X, Zand F) N is the line or block number,. G is the motion or Preparatory Function
command.
X & Z are movement/coordinate data
F is a feedrate command
Search the web for a list of G codes. Whatdid you learn from this?
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
39/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 39
CNC Machines and Programming
Fundamentals
Most machine tools have a fixed machinezero/home location.
CNC machines must be initialized or
zeroed prior to operating the machine In addition to a machine zero, programmers
will usually also specify a program zero. Thisis usually a location on the part from which
dimensions are referenced. Checking partsafter they have been machined should alsobe done using these same reference points.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
40/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 40
CNC Machines and Programming
Fundamentals continued
Program zero and machine zero are generally not thesame point. For example, machine zero on a lathe is atthe centerline of the spindle against the spindle surfaceplate (to which a chuck or collet is installed). When a
lathe is initialized, the tool will automatically move to apre-set location a specific distance in X and Z frommachine zero. Program zero on the other hand, will likelybe on the part surface at the face or tailstock end andusually on the part centerline.
CNC programs will begin at a set point. This is the pointat which the tool is located in reference to the part whenthe start button is pressed. This is usually referencedfrom program zero. (see last three slides)
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
41/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 41
Programming Fundamentals continued
It is the programmers responsibility to
communicate to the CNC machine operator
set point locations, tooling information, and
special setup instructions.
It is the machine tool operators responsibility
to make sure the machine is setup properly
and particularly that the tool is properlyreferenced from the set point.
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
42/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 42
CNC Machines and Programming
Fundamentals
CNC programs begin at a set point and
should return to that set point
Why?
The Z axis on a machine tool is always along
the centerline of the spindle. (-Z is tool
movement away from the spindle motor; +Z
is toward the spindle motor) On a lathe, the X axis is the tool moving
toward (-) or away from (+) the part centerline
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
43/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 43
CNC Machines and Programming
Fundamentals continued
On a vertical mill (as the operator faces it), X
is effective tool motion left (-) and right (+);Y
is toward (-) and away from (+) the operator.
On a horizontal mill (as the operator faces it),
X is effective tool motion left (-) and right (+);
Y is down (-) and up (+).
Why is the term effective tool motion usedwhen describing the mills above?
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
44/46
Mill ProgrammingReference Points
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 44
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
45/46
Mill ProgrammingZero Offset
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 45
-
8/9/2019 E252 Learning Module I--CNC Fundamentals and Terminology
46/46
ENT 252 Learning Module I-CNC
Fundamentals and Terminology 46
Mill ProgrammingCoordinate
System