Vous êtes sur la page 1sur 30

Synopsis of

Standard Format for Preparing the Synopsis

A Thesis

to be submitted by

Masters /M.R Mushtaq Ahmad Dar

For the award of the degree of

Masters of Technology

Department of Mechanical Engineering

GRD Institute of Management of Technology Dehradun, India

Month Year
Contour machining of free-form surfaces with G-code in real time tool path of computed-
numerical control milling system

Abstruction
Computer numerical control (CNC) technology is a key technology in machine
tools and is also the base of industrial unit computerization. In modern CAM–
based CNC machining work, a part with free–form surfaces is typically generated
as a spline or curve–based solid model in a CAD system, and then passed to a
CAM system (separate from or integrated with the CAD system). G–code
command (G05) is introduced, to concisely communicate the precise surface
geometry and all necessary process parameters to the controller.The PH curve with
G code interpolator offers profound accuracy and efficiency advantages over the
modify to voluminous piecewise–linear/circular tool path approximations as a
preprocessing step. The methodology is verified by machining a variety of free-
forms and using a 3–axis milling machine with the PH curve as G code interpolator
incorporated into an open–architecture CNC controller.
Keywords: CNC machine, CAD 2017/CAM, PH curve, G-code
1.0 Introduction
Computer-Assisted NC part programming is rather tedious and unproductive to
generative NC part programs manually, as demonstrated in the previous section. In
computer automatically generates the codes. The philosophy behind the computer-
assisted programming is rather straightforward to describe.(Altintas, 2012) If a part
geometry can be parametrically defined in a computer code, the tool path can also
be generated for given dimensions of a tool according to the desired sequences of
machining. The programmer must, of course, select tools, feeds, and speeds and
generate the tool paths according to the process planning strategy for the
machining operation.
Since development, CNC machines are operated by International Standards
Organization (ISO) 6983 standard formally known as G codes.(Sinha, 2010) This
ISO standard is based on the representation of the tool path digitized with respect
to a tool size and machine command status. The programs for CNC machines are
generated by computer-aided manufacturing systems that utilize CAD information.
The G codes language is defined by numerical codes such as G, T, M, F, S, etc.,
indicating the movement of a machine and an axis to the controller. CNC machines
are composed of many parts. The controller is one of them and has inside two
modules: hardware module and software module. (Shin, Suh, & Stroud, 2007)The
function of the software module is to translate the input code to the internal
structure of the machine. CNC controllers read G code (ISO 6983) instructions,
interpret them, and perform numerically direct interpolation of the cutting tool in
the work piece. Designers generate G code file by using CAD/computer-aided
manufacturing (CAM) applications on computers and transfer the code to machine
controller for interpretation to execute tool motion control operations.(Li, Wang, &
Zhang, 2013) In the G code programming language, machining commands are
composed of characters and numerical values built up into words and blocks. A
‘word’ comprises an address character followed by a numerical value, and a
‘block’ is a collection of words on a single line. A part program contains an
ordered sequence of blocks that describe in detail the motions and ancillary
functions a CNC machine must execute for fabricate a specified part. The part
program is often generated ‘automatically’ by a CAD/CAM system, once the part
geometry has been completely defined.
Freeform surfaces, also called sculptured surfaces, have been widely used in
various engineering applications.(Lasemi, Xue, & Gu, 2010) Freeform surfaces are
primarily manufactured by CNC machining, especially 5-axis CNC machining.
Various methodologies and computer tools have been developed in the past to
improve efficiency and quality of freeform surface machining.

1.1 Problem statement in the study


G codes (Koren 1983) have been used extensively in CNC part programming for
many years, and suffice for precision machining of basic geometries. A
fundamental limitation of their current embodiment, however, is that they only
admit the interpolation of discrete tool positions along linear and circular—and,
less frequently, parabolic—path segments. Moreover, these ‘reference points’
correspond to uniform time-sampling of the tool path at fixed speed (feed rate)
along each segment.This means that complex free-form shapes, meticulously
designed in a CAD system, are necessarily subject to rather crude and data-
intensive approximations before they are machined; and feed rate variations (which
may be required to control the cutting force, part accuracy, or surface finish) must
always be specified in a discontinuous manner.For in this case, V.carbone
demonstrated:” the large amount of data produced as output from these sensors,
and the fact that the generated data are usually unordered and are of fixed density,
independent of the surface curvature, make this integration non-trivial.
Furthermore, the measurement performance often does not match the application
requirements.” (Carbone, Carocci, Savio, Sansoni, & De Chiffre, 2001)
Traditional G codes accommodate only linear and circular segments with
constant feed rates, due to computational difficulties that arise in real-time
generation of reference points for freeform segments and variable feed rates.
Several authors (Albrecht & Farouki, 1996; Chou, 1992; Jee & Lee, 2012; Konishi,
Fukuda, & Iwata, 2001; Koren, 1976; Sata, Kimura, Okada, & Hosaka, 1981;
Shpitalni, Koren, & Lo, 1994; Yang & Kong, 1994; Zhao, Zhu, & Ding, 2013)have
recently described free-form curve interpolators. However, these are based on
approximate (linear) Taylor series expansions: they are inaccurate for strongly
curved or unevenly parameterized loci, and cannot accommodate variable feed
rates.
Summary to problem of G code in CNC interpolator:
1. Each G code statement describes one linear/circular segment. Therefore, for
complex shapes or free-form shapes, the part program can be enormous in
size and cumbersome to handle. This problem is exacerbated when the
precision requirements are higher, since more segments (i.e, smaller segment
sizes) are needed to improve the approximation accuracy.
2. The traditional G-code is delivering limited information to CNC,
transferring one-way information from CAD/CAM to CNC, unable to
implement the seamless integration of the CAD-CAM-CNC.
3. ISO 6983 commonly known as G-code, this standard or data interface is a
low-level language mainly specifying the cutter motion in term of position
and feed rate, due to the low level information this standard is not able to
fulfil the requirement of the particular environment.
4. the not able to specify smooth accelerations and decelerations along curved
tool paths, through the use of feedrate functions with only linear dependence
on the arc length.(Rida T. Farouki & Shah, 1996)
5. the not able to directly interpolate the offset at a given fixed distance d from
a curved path for tool radius compensation.(Rida T. Farouki & Shah, 1996;
R. T. Farouki, Manjunathaiah, & Jee, 1998)

1.2 Research Objective in the study


Our aim in this study is as follows:
1. we review some basic concepts of G code part programming, as currently
defined for piecewise-linear/circular tool path.
2. The distinguishing properties of new instrument.
3. Together with abstract of available methods for their construction and the
capabilities of new instrument with G-code in CNC interpolators while G
code extensions that describe new instrument tool paths and associated
feedrate functions.
4. Some experimental results from an implementation on CNC milling
machine.
5. Illustrating the realization of various feed rate forms, the control of
machining forces by feedrate variation, and the improved surface finish
obtained using G-code with new instrument.

1.3 Research questions or hypothesis in the study


Our propose to several research question in the study are as follows:
1. How can we take measure in this solution of free-form shape with G-code?
2. What is the new instrument that is major roleplay with G-code in CNC?
3. How can we extend G-code through new method ? Can this construction
able to contour complex shapes in the CNC machine?
4. Can we perform with this construction in real-time milling?

1.4 Significance in the study


the contributions and practical significance of this research, as well as
prospective areas for further investigations, are addressed. It is concluded that the
accuracy, reliability, and versatility of the curve CNC interpolators make them the
most advantageous approach for high-speed machining of complex shapes,while
which reduce energy consumption and machining cost.

2.0 View of literature in the study


Many discussions take place on how to improve the capabilities of CNC
programming and on how to solve portability problems of G-code.(Rida T.
Farouki, Manjunathaiah, & Yuan, 1999) Some authors face this problem by
creating new languages and extend G-code or by modifying the machine control
systems whereas other propose to translate G-code programs from a specific code
to another. In this part we discuss the existing literature, giving a taxonomy along
with conclusions about the aspects to improve G-code in CNC system.(Zhang,
Yuan, Gao, & Li, 2012)
In the past, APT was the most common and standard code used in the industry.
APT allows arithmetic operations, subroutines, macros, looping logic, and so
on,.(Altintas, 2012; Takizawa & Beaucamp, 2017) However, the main difference is
that it allows parametric representations geometric entities ranging from a single
points in space to very complex, three-dimensional sculptured surfaces. The tool
path is generated by commanding the given tool geometry to travel in a selected
tool path on the defined part geometry. (Altintas, 2012)The computed tool path
coordinates and cutting conditions are then stored in a computer file with a general
standard format, which is also automatically converted to the specific manual code
of selected CNC machine tool.
New Gen-CAD/CAM system most common using at present, CAD/CAM
system has more capability to map the G-code output and input to its native
geometric and manufacturing features.(Yue, Yan, Li, You, & Yu, 2014) we shall
advocate the use of real time CNC interpolators for Pythagorean-hodograph (PH
curves) in CAD 2017/CAM 2017.The PH curves are polynomial parametric curves
compatible with the standard Bezier, B-spline representation of modern CAD
systems. The PH curves are loci with polynomial parameterizations and a special
algebraic structure that is uniquely suited to accurate, efficient, and flexible real-
time CNC interpolation algorithms. Which providing a more direct link between
design and manufacturing of complex shapes.

3.0 Research methodology in the study

3.1 Realization of Pythagorean-hodograph curves


Pythagorean hodograph (PH) curves, form a remarkable subclass of
polynomial parametric curves. They have a piecewise polynomial arc length
function and, in the planar case, rational offset curves. These curves provide an
elegant solution of various difficult problems occurring in applications, in
particular in the context of CNC (computer-numerical-control) machining.(Šír &
Jüttler, 2007)
A B´ezier curve is called Pythagorean Hodograph (PH) if the length of its
tangent vector, taken in the appropriate metric, depends in a polynomial way on the
parameter. In particular p(t) = [x(t), y(t)] is called planar PH curve if there exists a
polynomial σ(t) such that x (t)2 + y (t) 2 = σ 2 (t), p(t) = [x(t), y(t), z(t)] is called a
spatial PH curve if there exists a polynomial σ(t) such that x (t) 2 + y (t) 2 + z (t) 2
= σ 2(t).(Šír & Jüttler, 2007) The degree of σ(t) equals n − 1, where n is the degree
of the PH curve. The curve h(t) = [x(t), y(t){z(t)}] is called the hodograph of
p(t).The planar polynomial curve p(t) can be identified with complex valued
polynomial p(t) = x(t) + iy(t). The hodograph h(t) = x (t) + iy (t) then satisfy the
equation (1) if and only if it is of the form h(t) = w(t) 2 , where w(t) = v(t)+iw(t) is a
complex valued polynomial .
In a similar way, the spatial polynomial curve p(t) can be identified with pure–
quaternion–valued polynomial p(t) = x(t)i+y(t)j+z(t)k. The hodograph h(t) = x (t)i
+ y (t)j + z(t)k then satisfy the equation (2) if and only if it is of the form h(t) =
A(t)i A∗ (t), where A(t) = u(t)+v(t)i+ p(t)j + q(t)k is a quaternion valued
polynomial called preimage.

3.2 Algorithm of PH curves


Input: End points P0, P1 and end point derivatives (velocity vectors) V0,
V1. All these data are considered as complex numbers, by identifying the plane
with the Argand diagram.(Jüttler, 2000)
Output: PH quintic p(τ ) defined over the interval [0, 1] and
interpolating the input.
1. Transform the data to a certain canonical position:
𝑉0 𝑉1
𝜈0 = 𝑃1−𝑃0,𝜈1 = 𝑃1−𝑃0.

2. Compute the control points of the so–called preimage:


𝑊0 = √𝑣0, 𝑊2 = √𝑣1.
The square of any complex polynomial𝑊(𝑡) = 𝑢(𝑡) + 𝑖𝑣(𝑡) then yields a
hodograph 𝑟(𝑡) = 𝑥(𝑡) + 𝑖𝑦(𝑡) = 𝑊 2 (𝑡) such that
𝑥(𝑡) = 𝑢2 (𝑡) − 𝑣 2 (𝑡) 𝑦(𝑡) = 2𝑢(𝑡). 𝑣(𝑡) 𝜎(𝑡) = 𝑢2 (𝑡) +

𝑣2 (𝑡)
Are three polynomials satisfying the pythagorean hodograph condition
𝑥 2 (𝑡) + 𝑦 2 (𝑡) = 𝜎 2 (𝑡)
Thus, for example, bernstein-form complex quadratic
𝑊(𝑡) = 𝑊0(1 − 𝑡)2 + 𝑊1 ∗ 2(1 − 𝑡)𝑡+𝑊2𝑡 2
Yields, upon integrating 𝑟(𝑡) = 𝑊 2 (𝑡), the Bezier representation
𝑟(𝑡) = ∑𝑛𝑖=0 𝑝𝑖 𝑏𝑖𝑛 (𝑡) 𝑏𝑖𝑛 (𝑡) = (𝑛 , 𝑖)(1 − 𝑡)𝑛−𝑖 𝑡 𝑖
A planar of PH quintic, with control points
𝑊02
𝑃1 = 𝑃0 +
𝑛
𝑊0 𝑊1
𝑃2 = 𝑃1 +
𝑛
(2𝑊12 +𝑊2 𝑊0 )
𝑃3 = 𝑃2 +
𝑛
𝑊1 𝑊2
𝑃4 = 𝑃3 +
𝑛
𝑊22
𝑃5 = 𝑃4 +
𝑛

3.3 Analysis PH curves between CAD 2017 and CAM


Each CAD system has its own proprietary data format. To transfer data from
one CAD system to another, translation software has to be written. When the
number of CAD system increases,(“Knowledge Integration in CAD-CAM Process
Chain,” 2015) the number of translators must also increase. Using a specialized
translator is uneconomical and difficult to manage. The following equation shows
the number N of two-way translators needed for n CAD systems to exchange data
among them:
𝑛!
𝑁 = 𝐶 ∗ (𝑛 2) =
2!(𝑛+−2)!

Some important Applications of CAD

Design Assembly Layout


New-part design
Standard part library
Tolerance specification
Interface and clearance specification
Part relations in an assembly

Analysis Interference checking


Fit analysis
Weight and balance
Structural analysis
Kinematics analysis
Tolerance stacking

Documentation Drawing generation


Technical illustrations
Bill of materials
Image reading

Manufacturing Process planning


NC part program generation
NC part program verification
NC machine simulation
Inspection programming
Robot programming and verification
Factory layout

Management Review and release


Engineering changes
Project control and monitoring
Selection of standard parts and
assemblies
Design standards

Data exchange happens not only between CAD systems, but also between CAD
and CAM packages. A standard data exchange format (intermediate data format)
will reduce the need for multiple translators. When such a data file is used,each
CAD system needs only one preprocessor and one postprocessor (one set of
translators). The preprocessor imports the data into the system, and the
postprocessor outputs the file into standard format. Many CAD data- exchange
formats have been developed by various countries and organizations.the most
widely accepted formats are IGES and STEP both are international standards.
𝐶𝐴𝐷1 ⇒ (𝑝𝑜𝑠𝑡 − 𝑝𝑟𝑜𝑐𝑒𝑠𝑠𝑜𝑟) 𝐼𝐺𝐸𝑆 𝑜𝑟 𝑆𝑇𝐸𝑃 𝑓𝑖𝑙𝑒 ⇒ (𝑝𝑟𝑒 −
𝑝𝑟𝑜𝑐𝑒𝑠𝑠𝑜𝑟) 𝐶𝐴𝐷2

The CAD application interacts with the user through a Graphics User Interface
(GUI), a software package that handles both event -driven activities associated
with input devices and display functions as windows, menus, dialogs, and 2-D and
3-D graphics . the CAD application calls functions in the GUI to accomplish the
I/O and graphics interactions. At the same time, the CAD application handles the
creation,modification, and manipulation of geometric models and the database that
stores the model. Certain basic geometric functions are used in both GUI and CAD
applications. Such functions include, but are not limited to, coordinate
transformations. In the interests of providing a clear understanding of a CAD
system, the basic geometric functions will be discussed first.(“Knowledge
Integration in CAD-CAM Process Chain,” 2015)

𝑀𝑜𝑢𝑠𝑒, 𝑘𝑒𝑦𝑏𝑜𝑎𝑟𝑑 → 𝐺𝑟𝑎𝑝ℎ𝑖𝑐𝑠 𝑈𝑠𝑒𝑟 𝐼𝑛𝑡𝑒𝑟𝑓𝑎𝑐𝑒 → 𝐷𝑖𝑠𝑝𝑙𝑎𝑦


𝐶𝐴𝐷 𝑎𝑝𝑝𝑙𝑖𝑐𝑎𝑡𝑖𝑜𝑛 ↔ 𝐶𝐴𝐷 𝑑𝑎𝑡𝑎𝑏𝑎𝑠𝑒

All design models are set in a coordinate system. 3-D Cartesian coordinate
system is represented by three axes -X,Y, and Z -arranged in the manner of a right-
hand coordinate system. Any point in the Cartesian coordinate system is
represented by its coordinates (x,y,z). The origin of the coordinate system has
coordinates (0,0,0). A polar coordinate system, by contrast, represents a point by
an angle and a distance.
𝑃𝑖 = [𝑋𝑖 , 𝑌𝑖 , 𝑍𝑖 ]
𝑋 = 𝑙 ∗ 𝑐𝑜𝑠𝛼
𝑌 = 𝑙 ∗ 𝑠𝑖𝑛𝛼
𝑍=𝑧

Three -dimensional objects are represented in a 3-D Cartesian coordinate system.


Basic 3-D objects are represented by lines, circles, and circular, and circular arcs.
Although lines can be representations include a point and a vector and a normal
vector, which defines the plane in which the circle lies. Since 2-D circles are
usually defined in the X-Y plane, the vector is omitted. A circular arc is
represented by its center, starting point, direction, and endpoint, again, together
with a normal vector. All the points used in defining 3-D geometric are defined in
the 3-D Cartesian coordinate system. When they are defined directly following the
canonical representation, the CAD system simply saves the data in a data structure
for further manipulation. Note that the line , circle and arc entities are linked to the
point entities through pointers. Parameters such as radius and direction are stored
directly with the entity. Additional information (line type, color, line thickness) is
stored as attributes. A practical CAD system has a more elaborate data structure, to
accommodate properties such as layers, group, and polylines.(Norton, 2009)
Curves can be classified as analytical curves and free-form curves. Analytical
curves are those curves defined by an algebraic equation and its coefficient. For
example, a 2-D parabola has the form 𝑦 2 − 4𝑎𝑥 = 0. in order to define a parabolic
shape, one selects the equation and the value of the coefficient.
PH curves is that it is difficult to determine the tangents that will yield a desired
shape. It is especially hard to decide the magnitudes of the vectors. To overcome
this curves, it has used most popular curve design method in graphics packages and
CAD system. A PH curves is a bezier curve defined by four control points. A nice
feature of PH curve is that it is close to the polygon (characteristic polygon)
formed by the control points. This property is important because it helps the
designer relate the shape of the desired curve to the locations of the control
points.(Norton, 2009) The relationship between the control points and the curve is
given by the equation:

𝑟(0) = 𝑃0
𝑟(1) = 𝑃3
𝑟(0) = 3(𝑃1 − 𝑃0 )
𝑟(1) = 3(𝑃3 − 𝑃2 )
The PH curve can be plotted with the following MATLAB commands:
example:
t=0:0.02:1;
p=[0 4 1 1;0 0 4 -4;0 0 0 ];
A=[2 -3 0 1;-2 3 0 0;1 -2 1 0;1 -1 0 0];
tt=[t.^3;t.^2;t;;ones(size(t))];
r=p*A*tt;
plot(r(1,:),r(2,:));
3.4 Real-time swept surface interpolator
The real–time interpolator in a CNC system computes a reference point (
commanded position) in each controller sampling interval, from a given path
geometry and feed rate. (Nittler & Farouki, 2015; Wang, Liu, & Yu, 2012)The
position error (difference between commanded and actual position, measured by
encoders on the machine axes) is the basic input to the controller. Traditionally,
real–time interpolators were restricted to simple linear (G01) or circular (G02/03)
path segments, but interpolator algorithms for free–from parametric curves are now
more widely available.
A surface interpolator extends this function to a two–dimensional surface.
Consequently, it entails a path planning function, to guarantee a tool path coverage
of the surface that suffices for a desired machined surface accuracy. outlines the
proposed surface interpolator. Compared to traditional CNC machining work flow
it streamlines the overall process, performing most required computations directly
in the controller using the exact surface description. It can also utilize real–time (
position encoder) data, that is not available to off–line path planning
strategies.(Wang et al., 2012) The G05 code has previously been adopted to
communicate PH curve data to a CNC system. In the present context, it is
generalized to incorporate all the information required for a surface interpolator to
machine a rational swept surface generated by PH curves. It employs a specific
path–planning strategy, starting at the surface point (u,v) = (0,0) and following
isoparametric curves in the v direction, with a step–over in the u direction at the
end of each tool path. The entire surface is machined from just a single G05
command, based on a set of machining parameters specified within the G05 block.
The interpolator has been implemented in the Open CNC open–architecture
controller.
( Proposed workflow for the real–time surface interpolator)

3.5 Traditional G codes


In the G code programming language, machining commands are composed of
characters and numerical values built up into words and blocks. A ‘word’
comprises an address character followed by a numerical value, and a ‘block’ is a
collection of words on a single line. A part program contains an ordered sequence
of blocks that describe in detail the motions and ancillary functions a CNC
machine must execute in order to fabricate a specified part.(Yusof & Latif, 2015)
The part program is often generated ‘automatically’ by a CAD/CAM system, once
the part geometry has been completely defined. Although different G code
‘dialects’ exist, the typical syntax of a block consists of (a subset of) certain
standard words, ordered according to their address characters in the following
manner:
N G X Y Z U V W I J K A B C F S T M.
The numerical values following these characters are interpreted as follows:
Character Address for:
N sequence number
G preparatory function
X, Y, Z primary motion dimensions
U, V, W secondary motion dimensions parallel to X, Y, Z
I, J, K offsets to circle center in X, Y, Z directions
A, B, C angular dimensions about X, Y, Z
F feedrate
S spindle speed
T tool selection
M miscellaneous (machine) function

3.6 PH curve with G-code structure


G–code part program consists of a series of lines or “blocks” containing one or
more “words” that comprise an address character (specifying a function or setting
to be executed) paired with a numerical value. A complete G–code command may
be just a single word, or a multi–block segment of a specific order . Although
simple commands are common to all controllers, higher– level commands specific
to a given controller and its G–code interpreter are also used. The upper part of
Figure 7 corresponds to the new G–code format and the interpreter that parses it.
This sets up the real–time interpolator with the all the information needed to
machine the entire swept surface.(Guo, Liu, Du, Yamazaki, & Fujishima, 2011)
The G05 code, adopted in to specify PH curves, is extended here to define swept
surfaces.4 The conventions chosen here are arbitrary, and can be modified to any
implementation, such as STEP–NC. Table 1 summarizes the address characters
used in the G05 swept surface definition. The SF address identifies the sweep type,
communicating to the controller how the surface should be constructed (see
Section 3) from the profile and sweep curves. At present, SF01 corresponds to the
scaled–rotation sweep, SF02 the oriented translation sweep, SF04 the oriented–
involute sweep, SF05 the generalized conical sweep, and SF08/SF09 are used to
delimit the multi–surface mode. The F address indicates the feedrate type, with U,
V, W being the numerical parameters that specify the feedrate variation .(Guo et
al., 2011)
(Simplified logic flowchart for the real–time G05 surface interpolator using an iso–
parametric tool path machining strategy)
address interpretation

G preparatory function

SF swept surface type

NS number of surfaces (SF08 multiple surface


mode)

CI, CF initial/final scale factors for SF05 surface

F feedrate type

U, V, W feedrate parameters

RD tool radius

OF surface offset distance

US scallop height parameter

SH degree of PH curve (sweep curve)

SX, SY, SZ end–point coordinates (sweep curve)

SA, SB, SC, SD, SE α(ξ) Bernstein coefficients (sweep curve)

SP, SQ, SR, SS, ST β(ξ) Bernstein coefficients (sweep curve)

PH degree of PH curve (profile curve)

PX, PY, PZ end–point coordinates (profile curve)

PA, PB, PC, PD, PE α(ξ) Bernstein coefficients (profile curve)


PP, PQ, PR, PS, PT β(ξ) Bernstein coefficients (profile curve)

(Address characters for the G05 swept surface interpolator)

The addresses defining PH curves are carried over from [6], but with S and P
prefixes to identify sweep and profile curves: these curves are defined by their end
points and the polynomials α(ξ),β(ξ) in (2). This data allows all relevant curve
information, such as the parametric speed and arc length polynomials, to be
determined [3]. All the non–PH curve data is consolidated in a single block,
followed by the sweep curve and profile curve blocks. This yields a compact data
structure defining the exact swept surface and relevant machining instructions. As
an example, the following G05 command6 is for a generalized conical sweep
(which requires the additional CI, CF parameters).(Lin, Fu, Shen, & Gan, 2014)
example:

G05, SF05,CI1.0,CF0.5,U30.0,RD0.25,OF0,US0.0005,SH5,SX-1.5,SY-
1.5,SZ0,SA0,SB-0.53 SC-
1.190,SP1.684,SQ1.291,SR1.190,PH5,PX0,PY3.0,PZ1.5,PA-1.190,PB-1.291,PC-
1.684,PP-1.190,PQ-0.534,PR0;

3.7 Implementation and results


The G05 swept surface interpolator was implemented in the Open CNC open–
architecture software controller, running on an off–the–shelf PC with a modest 500
MHz processor. The controller has a 1024 Hz position sampling frequency,
corresponding to a sampling interval of ∆t ≈ 0.001s, and drives a 3–axis milling
machine. The surface interpolator was tested by cutting all the swept surface , in
both machining wax and 6061 aluminum, using the G05 command.

4.0 Conclusion
Despite great advances in machine tool, controller, and CAM technology, the
prevailing methodology for translating precise parametric surface geometry into
motion commands remains primitive and cumbersome. Although data– intensive
G–code tool path approximations have the advantage of universal applicability,
and efforts have been made to mitigate their shortcomings in both CAM and
controller algorithms, they continue to impose fundamental accuracy and efficiency
limitations in precision machining of complex shapes. A methodology was
proposed to circumvent the shortcomings of G–code part programs, in the context
of a versatile family of rational swept surfaces. Using Pythagorean–hodograph
sweep curves, the variety of sweep operations ensuring a swept surface exactly
compatible with prevailing CAD geometry representations is vastly expanded. The
method is based on passing the exact surface geometry to the controller,
encapsulated in a high–level procedural sweep definition. The controller can then
efficiently perform all the required geometrical calculations in real time, including
tool path generation subject to a prescribed scallop height. The methodology has
been codified in a novel G05 command format, and its feasibility has been
demonstrated through the machining of a representative family of swept surfaces
using an open– architecture controller. Whereas a typical G05 part program uses
just a few lines to exactly specify a machining operation, the equivalent
approximate G01 part program may require tens or hundreds of thousands of
blocks. Many advantageous aspects of the swept surface machining methodology
deserve further study. These include the exploitation of tool paths specified by
cutter contact (CC) rather than cutter location (CL) data, the use of exact real–time
surface normal data to accommodate CC–CL offset compensations for different
tool geometries, suppression of material removal rate fluctuations through variable
feed rates, and the utilization of multi–patch rational swept surfaces as a basic tool
in mold and die design applications.

References

Albrecht, G., & Farouki, R. T. (1996). Construction ofC 2 Pythagorean-hodograph interpolating

splines by the homotopy method. Advances in Computational Mathematics, 5(1), 417–442.

Altintas, Y. (2012). Manufacturing Automation: Metal Cutting Mechanics, Machine Tool

Vibrations, and CNC Design. Cambridge University Press.


Carbone, V., Carocci, M., Savio, E., Sansoni, G., & De Chiffre, L. (2001). Combination of a

Vision System and a Coordinate Measuring Machine for the Reverse Engineering of

Freeform Surfaces. International Journal of Advanced Manufacturing Technology, 17(4),

263–271.

Chou, J.-J. (1992). On the Generation of Coordinated Motion of Five-Axis CNC/CMM

Machines. Journal of Manufacturing Science and Engineering, 114(1), 15.

Farouki, R. T., Manjunathaiah, J., & Jee, S. (1998). DESIGN OF RATIONAL CAM PROFILES

WITH PYTHAGOREAN-HODOGRAPH CURVES. Mechanism and Machine Theory,

33(6), 669–682.

Farouki, R. T., Manjunathaiah, J., & Yuan, G.-F. (1999). G codes for the specification of

Pythagorean-hodograph tool paths and associated feedrate functions on open-architecture

CNC machines. International Journal of Machine Tools & Manufacture, 39(1), 123–142.

Farouki, R. T., & Shah, S. (1996). Real-time CNC interpolators for Pythagorean-hodograph

curves. Computer Aided Geometric Design, 13(7), 583–600.

Guo, X., Liu, Y., Du, D., Yamazaki, K., & Fujishima, M. (2011). A universal NC program

processor design and prototype implementation for CNC systems. International Journal of

Advanced Manufacturing Technology, 60(5-8), 561–575.

Jee, S., & Lee, J. (2012). Real-time inertia compensation for multi-axis CNC machine tools.

International Journal of Precision Engineering and Manufacturing, 13(9), 1655–1659.

Jüttler, B. (2000). Hermite interpolation by Pythagorean hodograph curves of degree seven.

Mathematics of Computation, 70(235), 1089–1112.

Knowledge Integration in CAD-CAM Process Chain. (2015). In CAD’15.

https://doi.org/10.14733/cadconfp.2015.449-454
Konishi, K., Fukuda, Y., & Iwata, K. (2001). Development of CAM System for 5-Axis

Controlled Machine Tool Using NURBS Interpolation. Transactions of the Japan Society of

Mechanical Engineers Series C, 67(657), 1675–1681.

Koren, Y. (1976). Interpolator for a Computer Numerical Control System. IEEE Transactions on

Computers. Institute of Electrical and Electronics Engineers, C-25(1), 32–37.

Lasemi, A., Xue, D., & Gu, P. (2010). Recent development in CNC machining of freeform

surfaces: A state-of-the-art review. Computer-Aided Design and Applications, 42(7), 641–

654.

Li, J., Wang, F., & Zhang, H. (2013). Design and Implementation of Programmable Sequence

Controller Based on FPGA. In 2013 International Conference on Computer Sciences and

Applications. https://doi.org/10.1109/csa.2013.181

Lin, Z., Fu, J., Shen, H., & Gan, W. (2014). A generic uniform scallop tool path generation

method for five-axis machining of freeform surface. Computer-Aided Design and

Applications, 56, 120–132.

Nittler, K. M., & Farouki, R. T. (2015). A real-time surface interpolator methodology for

precision CNC machining of swept surfaces. International Journal of Advanced

Manufacturing Technology, 83(1-4), 561–574.

Norton, R. L. (2009). Cam Design and Manufacturing Handbook. Industrial Press Inc.

Sata, T., Kimura, F., Okada, N., & Hosaka, M. (1981). A New Method of NC Interpolation for

Machining the Sculptured Surface. CIRP Annals, 30(1), 369–372.

Shin, S.-J., Suh, S.-H., & Stroud, I. (2007). Reincarnation of G-code based part programs into

STEP-NC for turning applications. Computer-Aided Design and Applications, 39(1), 1–16.

Shpitalni, M., Koren, Y., & Lo, C. C. (1994). Realtime curve interpolators. Computer-Aided
Design and Applications, 26(11), 832–838.

Sinha, S. K. (2010). CNC Programming Using Fanuc Custom Macro B. McGraw Hill

Professional.

Šír, Z., & Jüttler, B. (2007). C^2 Hermite interpolation by Pythagorean Hodograph space curves.

Mathematics of Computation, 76(259), 1373–1392.

Takizawa, K., & Beaucamp, A. (2017). Comparison of tool feed influence in CNC polishing

between a novel circular-random path and other pseudo-random paths. Optics Express,

25(19), 22411–22424.

Wang, Y., Liu, H., & Yu, S. (2012). Curvature-Based Real-Time NURBS Surface Interpolator

with Look-Ahead ACC/DEC Control. Mathematics in Computer Science, 6(3), 315–326.

Yang, D. C. H., & Kong, T. (1994). Parametric interpolator versus linear interpolator for

precision CNC machining. Computer-Aided Design and Applications, 26(3), 225–234.

Yue, C. X., Yan, F. G., Li, L. B., You, H. Y., & Yu, Q. J. (2014). Parametric Design of Ball-End

Milling Tools for High Speed Milling. Materials Science Forum, 800-801, 484–488.

Yusof, Y., & Latif, K. (2015). A novel ISO 6983 interpreter for open architecture CNC systems.

International Journal of Advanced Manufacturing Technology, 80(9-12), 1777–1786.

Zhang, K., Yuan, C.-M., Gao, X.-S., & Li, H. (2012). A greedy algorithm for feedrate planning

of CNC machines along curved tool paths with confined jerk. Robotics and Computer-

Integrated Manufacturing, 28(4), 472–483.

Zhao, H., Zhu, L., & Ding, H. (2013). A parametric interpolator with minimal feed fluctuation

for CNC machine tools using arc-length compensation and feedback correction.

International Journal of Machine Tools & Manufacture, 75, 1–8.

Vous aimerez peut-être aussi