Professional Documents
Culture Documents
10 1016@j Ijmachtools 2020 103648
10 1016@j Ijmachtools 2020 103648
10 1016@j Ijmachtools 2020 103648
PII: S0890-6955(20)30664-7
DOI: https://doi.org/10.1016/j.ijmachtools.2020.103648
Reference: MTM 103648
Please cite this article as: Y. Mizoue, B. Sencer, A. Beaucamp, Identification and optimization of
CNC dynamics in time-dependent machining processes and its validation to fluid jet polishing,
International Journal of Machine Tools and Manufacture (2020), doi: https://doi.org/10.1016/
j.ijmachtools.2020.103648.
This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition
of a cover page and metadata, and formatting for readability, but it is not yet the definitive version of
record. This version will undergo additional copyediting, typesetting and review before it is published
in its final form, but we are providing this version to give early visibility of the article. Please note that,
during the production process, errors may be discovered which could affect the content, and all legal
disclaimers that apply to the journal pertain.
Yuichi Mizoue: Methodology, Software, Validation, Data curation, Formal Analysis, Writing
(Original Draft)
Burak Sencer: Conceptualization, Methodology, Writing (Review & Editing), Validation,
Supervision
Anthony Beaucamp: Conceptualization, Methodology, Writing (Review & Editing), Funding
acquisition, Resources, Supervision, Project administration
of
ro
-p
re
lP
na
ur
Jo
Identification and optimization of CNC dynamics in time-dependent machining processes
and its validation to fluid jet polishing
* Corresponding author.
E-mail address: beaucamp@me.kyoto-u.ac.jp (A. Beaucamp)
of
ro
-p
re
lP
na
ur
Jo
Jo
ur
na
lP
re
-p
ro
of
Abstract
In time dependent CNC processes such as polishing, a target material removal profile is
obtained by creating and inputting G-codes with varying feed into the controller of a machine tool.
The input G-codes are firstly filtered by a CNC interpolator, and the real-time generated signal then
goes to a feed drive system of the machine. Through these steps, the original signal is distorted and
the ideal feed profile cannot be achieved in some areas. This distortion affects the material removal
distribution, and thus the accuracy of the final polished surface profile. While a number of methods
have been developed for predicting polished surfaces, most of them fail to consider the influence of
controller dynamics. In this paper, a method for accurate prediction of polished surfaces is proposed
of
that considers the error contribution from control signal distortion, and a strategy for compensation
ro
of this error. Firstly, the principles of identification of control system behavior in a machine tool are
explained, and a process model for Fluid Jet Polishing (FJP) is introduced. Secondly, the transfer
-p
functions of the control system are identified, and the process model calibrated against experimental
data. Thirdly, a simulator for predicting polished surface profiles is implemented that combines the
re
control system and process model. A micro-groove polishing experiment is carried out that validates
lP
the reliability of the proposed method, and shows its limitations. Finally, an algorithm based on
particle swarm optimization is proposed for reducing the impact of controller dynamics in micro-
na
groove polishing.
Keywords
ur
Fluid jet polishing, Acceleration filter, Feed drive system, Deterministic finishing
Jo
1. Introduction
In recent years, the need for aspherical and freeform ultra-precision components has been
increasing both in industry and consumer applications such as optics [1], photonics, laser systems [2]
and lithographic systems [3]. Within the wider class of time dependent material subtractive
processes, abrasive polishing is often employed in the final stages of fabrication since brittle
materials such as glass are typically used for the substrate. In the manufacture of such optical
artifacts, fine control of both finishing process and machine is required. Ultra-precision level of
accuracy can be achieved mainly in three different ways, or their combination: One is to improve the
polishing tool itself to reduce sensitivity to dynamic errors. Another is to optimize the tool paths in
order to reduce dynamic stressing. Finally, one should consider the responsiveness of a polishing
machine such that it follows the commanded signal more tightly.
As for polishing tool technology, a number of advances were made in recent years to improve
processing of aspheric and freeform surfaces. Walker et al. [4] proposed a bonnet polishing method
based on inflated reinforced-membrane, while Beaucamp et al. [5] proposed shape adaptive grinding
(SAG) tool that can machine difficult ceramic material thanks to their unique “semi-elasticity”. A
basic property of compliant sub-aperture tools, such as bonnet and SAG, is that the area of contact
depends on the amount of tool offseting against the workpiece. Therefore, positional inaccuracy
along the workpiece surface normal can severely affect the polishing rate. By comparison, the fluid
jet polishing (FJP) proposed by Faehnle et al. [6] is free from this shortcoming and has thus attracted
increasing attention. In the FJP process, a mixture of water and abrasive particles is delivered by a
pump to a converging nozzle of outlet diameter usually between 0.1 and 2.0 mm. The pump pressure
is typically set to between 0.2 and 2.0 MPa [7]. The jet impinges the workpiece, generating an
of
influence spot that is moved across a pre-determined tool path. According to Faehnle et al. [8], the
ro
footprint (tool influence function) of FJP is much more stable than other polishing methods. They
established that the tool influence function (TIF) is so robust with respect to workpiece geometry
-p
and process time that FJP is capable of corrective polishing without recalibrating the process, while
other methods need to re-acquire the TIF periodically. Another advantage of FJP is the lack of edge-
re
roll effect [9]. In conventional polishing, pad pressure increases at edges because part of the pad is
lP
hanging from the workpiece. However, in the case of FJP there is no such change in pressure, as the
fluid just runs off the side of the workpiece. Other merits include sub-millimeter removal footprint, a
na
wide range of material removal rates, removing machining marks from prior processes without
introducing another tool signature, as well as being free from debris and heat produced in machining
ur
[10]. The main disadvantage of FJP is its low material removal rate, though some solutions to this
problem have already been proposed such as multi-jet polishing [11] and ultrasonic cavitation
Jo
of
system. The original command signal gets distorted and the feed rate profile achieved differs from
ro
the intended profile. Tounsi et al. [19] investigated the relationship between commanded and actual
feed rate by evaluating the accel/decel profile of a feed drive system. With this method, they
-p
succeeded in improving integrity of the feed rate profile at appropriate positions, but they did not
consider the friction effect, which can affect feed rate significantly. Erkorkmaz et al. [20,21]
re
modeled and identified feed drives, after which they investigated contouring errors. Although the
lP
outcome of this research is very pertinent in cutting, the relationship between tool position and feed
rate was not investigated in these studies.
na
In view of the clear research gap regarding the influence of control signal distortion in polishing
and other time-dependent processes, this paper proposes a comprehensive approach that combines
ur
control system and process considerations. To assess the control loop and its parameters, an
identification method for feed drive system proposed by Sencer et al. [22] is adapted to this specific
Jo
problem. Coupled with a process identification method, a predictive model of machine tool based
polishing is described. Basic micro-groove polishing tests are performed to verify the validity of this
model. Finally, an optimization method based on particle swarm is demonstrated on a simple step
input, to show that the deviation between ideal and actual feed profile can be improved.
of
ro
-p
re
lP
na
ur
Jo
Fig. 1 Influence of controller dynamics on polished surface: as G-codes pass through the
interpolator and feed drive, the feed profile gets distorted causing uneven removal of material
of
the evolving height of the workpiece surface in Cartesian coordinate. By integrating both sides of
ro
Eq. (2.1), the removal depth over the entire polished area can be calculated, and the final polished
surface profile can be obtained as:
"
, = ! − − $ # 2. 2
-p #
re
This is the fundamental equation for predicting polished surfaces, which can be further re-postulated
lP
' "
$ ' "
1
, = ! − − $ =! − − $ # 2.3
$ (
na
' # ' #
where (
ur
is the velocity (feed rate) of the tool with respect to the tool position. Eq. (2.3) shows
planar workpiece. The raster paths can be broken down into a total of * paths on the workpiece. In
Fig. 2 shows a schematic drawing of an FJP raster path. The -plane is set on the top surface of a
$ +
1
$6 = 7 7$ → $ = $6# 2.5
$ $ +
7 7
$
Here, the tool feed : : never becomes zero within the nth path. The line integration form of Eq.
; ?
<=>
;@
(2.4) is therefore:
1 1
of
0+ =! − 1 − +
2 $6 = ! − 1 − +
2 $6# 2.6
$ +
$ +
,/
7 7 -.
7 7
$ $
ro
-p
Note that material removal along the line segments AB and CD is ignored. The total removal of the
FJP raster paths can be calculated by summing the contribution from the total of N paths.
re
D
1
= B! − 1 − +
2 $6# 2.7
$ +
+EF C? 7 7
$
lP
Here, H+ represents a line segment along which the FJP contributes to the removal. For the nth path in
na
Fig. 2, H+ is the line segment BC. For numerical computation, Eqs. (2.6) and (2.7) are discretized.
Suppose the nth path is divided into M small segments. The discretized removal contribution of the
nth path 0+; can be expressed as:
ur
L − L
K + + + +
Jo
JMF J
0+; 1 I 2= B− 1 I
− +
2 N
# 2.8
J +
$
7 +
7
$
JEF
J
where I
= I, I is the discretized observation point in Cartesian coordinate, and +
J is the time
th th
when the FJP spot reaches the k segment of the n path. Adding contributions from the total of N
;
paths, total removal on the workpiece can be calculated as:
L − L
D K + + + +
JMF J
;
1 I
2 = BB− I
− + N
# 2.9
J +
$
7 +
7
$
+EF JEF
J
of
ro
Fig. 2 -p
Schematic drawing of raster path: the jet nozzle traverses the surface back and forth in the
x-direction, stepping between tracks by an equal amount in the y-direction
re
lP
dynamics affect the final polished geometry as illustrated in Fig. 3. This section describes the
modeling and identification of CNC dynamics needed to predict the final material removal profile.
ur
Jo
Fig. 3 Overall axis servo dynamics and its virtual model: the interpolator is modelled as an infinite
impulse response filter and the feed drive as a closed-loop servo system.
2.4.1. Modeling of NC interpolator dynamics
Firstly, the effect of interpolator dynamics is considered. As shown in Fig. 3, commanded feed-
rate of a G-block is filtered through the interpolator dynamics. Most modern NC systems generate
feed profiles within acceleration and jerk limits either using jerk limited feed (speed) profiles [27], or
through low pass filtering using IIR [28] or FIR [29] filters. Here, basic Infinite Impulse Response
(IIR) 1st order low-pass filters are used to capture interpolator dynamics. A 1st order IIR Filter
XF 1
dynamics is given in Laplace (s) domain by:
QRSTUVW 6 = = 6 # 2.10
6 + XF + 1
XF
where XFis the cut-off frequency. It is typically tuned lower than the 1st resonance frequency of the
machine, XF < X+ so that unwanted residual vibrations during rapid acceleration of the machine is
of
avoided. Impulse response [
ro
of the filter can be evaluated from Eq. (2.10) as:
where cF = 1/XF is the time constant of filter. Next, the interpolated feed-rate profile is modeled as
follows. Consider a reference G-block commanding tool motion for a distance of \ at a feed of d.
re
The G-block is represented by a rectangular velocity pulse command e = d for a duration
lP
that the area underneath the velocity pulse command satisfies the total travel distance \ =F
with is determined such
f.
na
j
ur
@
egh = ! e c [ − c $c → egh = d, F ≤ ≤ f # 2.12
k ] ^ @]"
jd` _ , f ≤ ≤ F+ f
# o
Jo
i 0, F+ f ≤
≈ 5cF . Fig. 4
where start and end feed-rates are zero for point-to-point operation. Considering the IIR response,
in Eq. (2.12) is the so called “time constant of interpolator” and approximated as F
illustrates the generated feed profiles for different velocity pulse widths, Tv and interpolator time
constants, T1.
of
ro
-p
re
lP
na
ur
Jo
Fig. 4 Velocity profile generated by single 1st order infinite impulse response filter: depending on
the pulse width, the set feed-rate may not be actually attained before the next command is processed
f q F
<
As shown, when full constant velocity duration is observed and Eq. (2.12) accurately
f F
i 0, F + f ≤
Peak acceleration can be evaluated as rsVtu = d/cF. Similarly, the displacement profile can be
evaluated by simply integrating the velocity profile from Eq. (2.12). Another key characteristic of
exponential filtering is the asymmetry of velocity profile, as described in Fig. 5. Due to exponential
impulse response of the IIR filter (See Eq. (2.11)), the velocity profile during acceleration and
deceleration segments is not symmetric. Note that this asymmetry has a great impact on the material
of
removal rate in time dependent subtractive processes [25] such as FJP (see Eq. (2.3)). Therefore,
ro
asymmetric velocity/acceleration profiles when going from left-to-right and right-to-left causes
unequal material removal distribution, a phenomenon that is specifically addressed in this study.
-p
re
lP
na
ur
Fig. 5 Feed-rate with respect to position after passing through the exponential filter: there is a clear
asymmetry between motion in the positive and negative direction.
Jo
QRSTUVW 6 |yE N }]F = → eˆg h vwx = reg ′vw − 1x + Š evwx + evw − 1x # 2.14
2cF − y
"| }MF 0 − 2c +
ƒ„…„†
F y
‡
The filter time constant cF is identified by minimizing the discrepancy between monitored
velocity eg ′vwx and estimated velocity eˆg h vwx from Eq. (2.14)
D
1
min Ž = min B1eˆg h vwx − egh vwx2 # 2.15
N
^_ ^_ 2
JEF
•′ is postulated as,
Predictions of the reference velocity •
Eq. (2.15) is a regression problem, which can be solved easily in the sense of least squares.
eˆ h v0x 0 ev0x + 0
“ gh —
e ′v0x ev1x + ev0x r
• h = ’ eˆg v1x – = ˜ g
• ™ ›•œ # 2.16
’ ⋮ – ⋮ ⋮ Š
eg ′v* − 1x ev*x + ev* − 1x ž
‘eˆg v*x• ƒ„„„„„„„„„…„„„„„„„„„†
h
where A is the regressor matrix, and • ′ = vegh v0x ⋯ eg ′v*x x" the measurements vector. The system
is initially at rest (evwx = eg ′vwx = 0 for w = 0). Eq.(2.15) is re-written in vector matrix form
1
of
• h − šž2 1•
min Ž = min 1• • h − šž2# 2.17
"
ž ž 2
ro
and solved by taking its partial derivative with respect to unknowns yields
Ž r
= 0 → ž = › œ = š" š š • # 2.18
Š
-p ]F " h
re
The filter time constant is then computed as cF = +1
‡ "|
‚ N
.
lP
In addition to the interpolator dynamics, servo position controller dynamics also influences the
material removal profile. This section briefly presents modeling and identification of servo
ur
dynamics. As reported by Erkorkmaz [31] and Sencer [22], typical feed drive closed-loop servo
positioning dynamics can be captured by:
1 ¨©
Š# 6 N + ŠF 6 + ŠN + r¡ 6
Jo
ª
6 = 6 − $ 6 # 2.19
1 WVR 1
6 N + rF 6 + rN +r¡ 6
ƒ„„„„„„…„„„„„„† 6 N + rF 6 + rN + r¡ 6
ƒ„„„„„„…„„„„„„†
¢£¤¥¦§ ¢«¬-£
where is the predicted position, $ is disturbance, QUWt®u and Q¯S U are axis tracking and disturbance
$ = sign e $² # 2.20
during FJP process as:
and sign e is the signum function that returns “1” when the axis velocity is positive, “-1” when the
velocity is negative, and “0” otherwise. Substituting the disturbance model from Eq. (2.20) into Eq.
(2.19) yields the generalized feed drive model:
1 1
³62 + r1 6 + r2 + r3 ´ 6 = ³Š0 62 + Š1 6 + Š2 + r3 ´ 6 − sign ¸ $¹ # 2.21
6 6 ref
The seven parameters º = vrF , rN , r¡ , Š# , ŠF , ŠN , $² x are to be identified. In this work, identification
is performed by executing a series of NC blocks on an actual CNC machine tool. The parameters are
identified such that the difference between actually recorded output and predicted output is
minimized by application of simple linear least squares
D
1
min B − N
# 2.22
» 2
J J
JEF
Where J is the recorded axis position on the NC system. If stability constraints need to be added,
the optimization problem becomes a non-linear least squares and can be solved accordingly.
of
3.1. Interpolator
ro
The identification method presented in section 2.4.2 is applied to a Zeeko IRP200 polishing
machine (see Fig. 12), equipped with a FANUC 16i M series CNC. Exponential acceleration
-p
filtering is used (typical in polishing machines), and the time constant of the filter is accessible by
time constant c values of 30 ms and 80 ms are read from the controller directly. Identification is
the user (though at the more typical industrial level, users have no access to these settings). Here,
re
lP
demonstrated using the method described in section 2.4.2. A simple step G-code (X10 F800) was
implemented and the reference feed rate and position were recorded. The sampling interval was 8 ms
na
and total sampling time slightly different for each experiment, as recording must be started and
ended manually. Using Eq. (2.18), the time constants are identified as 29.5 ms and 80.0 ms
After detecting the time constant, the filter transfer function QRSTUVW was validated by comparing
ur
respectively.
Jo
the recorded reference data with simulated data for another series of G-blocks (validation G-code),
which is composed of the sequence:
G01 X50 F2000
G01 X-50 F2000
G01 X20 F1500
G01 X-20 F1500
G01 X20 F1500
Fig. 6 shows the validation result of the identified CNC interpolator model. In the case of c =
G01 X0 F1500
case of c = 80.0 ms, the feed rate error was under 12 mm/min, and the position error was under 30
29.5 ms, the feed rate error was under 70 mm/min, and the position error was under 70 μm. In the
μm.
3000 3000
Feed rate
mm/min
Feed rate
mm/min
-3000 -3000
1 4 8 12 0 4 8 12
Time s Time s
70 12
mm/min
mm/min
of
ro
0 0
1 4 8 12
Time s
(a) Feed rate (c = 29.5 ms)
-p 0 4 8
na
ur
-50 -50
1 4 8 12 0 4 8 12
Time s Time s
Jo
70 30
Position error μm
Position error μm
0 0
1 4 8 12 0 4 8 12
Validation of identified interpolator model: for c = 29.5 ms, feed error is < 70 mm/min and
position error < 70 μm; for c = 80.0 ms, feed error is < 12 mm/min and position error < 30 μm
Fig. 6
rate covers the minimum to maximum values of ±3000 mm/min, and the position does not exceed
the traverse limit of ±50 mm. The identification G-code is first filtered by the CNC interpolator, the
reference signal goes through the control law, and the actual signal is recorded by rotary encoder as
identification method assumes that the control system has PID or P-PI control structure with feed-
forward terms and friction modelling of the feed drive. While the identified CNC controller is a
legacy model that does not have feed-forward or friction terms, the model can still make useful
of
predictions. The identified feed drive system model was validated by comparing the recorded actual
ro
data with simulated data for the validation G-code, as shown in Fig. 8. The feed rate error is biggest
at velocity reversal points, up-to 700 mm/min, while the position error is up-to 0.12 mm.
-p
Combined with the CNC interpolator identification model, the actual signal can be predicted
directly from the G-code signal. Fig. 9 shows the feed drive distribution of validation G-code when
re
the time constant is set to 80 ms. The blue line shows the actual signal recorded by rotary encoder
lP
and the green dotted line shows the simulated signal, predicted from the G-code signal through CNC
interpolator and feed drive models. Simulated data is in good agreement with the recorded data. It
na
should be noticed that the feed rate profile error becomes larger at velocity reversal points (such as
corners of a raster path). This error is mainly due to friction effect of the feed drive. It should be also
ur
noted that the aimed position is never reached at velocity reversal points. Since the exponential filter
requires too long to converge to the aimed velocity and position, the next NC command will be
Jo
of
ro
Fig. 7 -p
maximum of ±100 mm/s2; feed rate covers the maximum range of ±3000 mm/min
Identification G-code sent to the drive: acceleration is always close to the machine
re
lP
rF
PSO estimated parameters
rN
222.0
na
r¡
13050
Š#
101020
ur
ŠF
1.042
ŠN
-111.0
Jo
$²
9672
31.18
of
ro
-p
re
(a) Validation for feed rate
lP
na
Position mm
ur
Jo
Position error mm
Fig. 8 Validation of the identified feed drive system: maximum feed rate error of 700 mm/min and
position error of 0.12 mm is observed at reversal points
of
ro
-p
re
lP
Fig. 9 Feed rate distribution, as actually recorded (blue) and predicted by the identified model
(green): the tool path significantly deviates from G-codes over several millimeters when cornering
na
In this section, error contributions from a CNC interpolator and feed drive system are
the CNC interpolator, and the filtered feed rate distribution dint , c is obtained. Then, this filtered
firstly goes through
Jo
signal goes through the feed drive system and the final output dtotal , c is obtained. The error is
firstly function of the time constant of exponential acceleration filter c. Here, the error contribution
by the CNC interpolator int c is defined as:
ÃÄ¥Å
SÂU c =! |dS¯VtT − dSÂU , c |$ # 3.1
̀®
The error contribution by the feed drive system FDS c is defined as:
ÃÄ¥Å
ÊË c = U UtT c − SÂU c = ! |dS¯VtT − dU UtT , c |$ − SÂU c # 3.2
̀®
where total c is the total error from ideal feed rate distribution.
Here, error contribution analysis is carried out for a step input, with G-code expressed as G01
X10 F800. Fig. 10 shows the feed rate profiles, and Fig. 11 shows the error contributions. From Fig.
11, it is clear that error from the interpolator becomes bigger and error from the feed drive system
becomes smaller as the time constant increases. This trend is reasonable because as the time constant
increases, higher frequencies are filtered and the original signal is more largely disturbed. As higher
frequencies are filtered, the feed drive system follows the system more accurately, which will
contribution by the feed drive system ¨FDS = FDS / total is 36.3 %. For a time constant of 80 ms, ¨int
is 63.7 % and the relative error
of
ro
-p
re
(a) c = 30 ms (b) c = 80 ms
lP
Fig. 10 Actual feed rate profile achieved for a step input with different time constants
na
ur
Jo
Fig. 11 Error contribution by interpolator and feed drive system: influence of the feed drive system
becomes relatively insignificant for higher time constant.
of
ro
-p
re
lP
na
Fig. 12 Experimental setup consisting of a CNC machine equipped with a fluid jet nozzle and cover
ur
Fig. 13 Influence function (material removal footprint) of the fluid jet polishing nozzle
Table 2 Process parameters of fluid jet polishing system
Material of the N-BK7 (glass)
workpiece uncoated
Fluid pressure 1.6 MPa
Nozzle Diameter 0.25 mm
Nozzle offset 2.0 mm
Abrasive (size) CeO2 (1.5 μm)
Abrasive density 20 g/L
4. Polishing of micro-grooves
of
4.1. Simulation method
ro
The original surface is assumed to be completely flat. In this simulation, the overall removal
depth is calculated using Eq. (2.9). The observing points are set across the surface at an interval of
-p
0.01 mm. The tool paths are divided into small segments with a length of 0.002 mm and the dwell
re
time in each segment is calculated from the feed rate. The tool is considered to dwell at the center of
the small segments, named tool-dwell points. Observing points that are within 1 mm from the tool-
lP
dwell point are subject to calculation as they are within the FJP footprint radius. The calculated
depth is subtracted from the surface profile, which is updated for each calculation step. This
na
Fig. 14 Principle of material removal simulation: the continuous tool path is sub-divided into
equivalent tool-dwell points, where the influence function is imprinted on the material removal map
dwell points. The feed rate was set to 60 mm/min for 3 ≤ X ≤ 10, and 240 mm/min for 10 ≤ X ≤
Fig. 14(b) shows the example of a tool path with length of 14 mm, and Fig. 14 (c) shows the tool-
17. Fig. 14 (d) shows the simulated profile of the polished surface.
surface profile because the reciprocal of the feed rate 1/d is proportional to the removal depth, as
described in Eq. (2.7).
of
ro
-p
re
lP
Fig. 15 Proposed raster paths and feed rate profile for polishing of micro-grooves
na
ur
Jo
Fig. 16 Commanded and actual feed profiles: strong asymmetry is predicted between motion in the
positive and negative direction of travel
line (−1.5 ≤ X ≤ 0, 16 ≤ Y ≤ 22) was zoomed-in, and a contour line was extracted. The depth of
the difference between conventional and proposed simulation method, the area surrounded by dotted
the contour line was chosen as -31.1 nm (halfway to the deepest point). Fig. 18 shows the zoomed-in
profiles and contour lines. It should be noticed that the wall contour line for the proposed simulation
method has 80 µm lateral fluctuation on its peaks, while the conventional one has no fluctuation.
This effect is related to the asymmetry of feed profiles shown in Fig. 16.
of
ro
Fig. 17 Comparative material removal simulations based on the proposed method (including
-p
controller dynamics) and conventional approach (using only G-codes). Note the existence of orange
trails on alternate sides of the micro-grooves with the proposed simulation approach
re
lP
na
ur
Jo
of
ro
-p
re
lP
na
ur
Jo
Fig. 18 Extracted profiles corresponding to the left side of micro-grooves: the orange trails are
associated with alternating shifts in the horizontal location of micro-groove walls
of
ro
-p
re
lP
na
ur
Jo
Fig. 20 Enlarged view corresponding to the left side of micro-grooves (WYKO NT2000): the
existence of an alternating shift in the horizontal location of micro-groove walls is confirmed
Table 3 Comparison of peak fluctuation
Fluctuation width (µm)
91.0 ± 47.5
Simulation 80.0
Experiment
of
The step input is defined as the following series of G-codes:
ro
G01 X-25
G01 X-1 F1200
G01 X1 F60
G01 X25 -pF1200
re
In order to minimize the removal depth error, some parameterized CNC blocks are added as
lP
follows:
G01 X-25
G01 XÔF F1200
XÔN
na
G01 F3000
G01 XÔ¡ F(
G01 XÕF F60
XÕN
ur
G01 F3000
G01 X25 F1200
where Ô1 , Ô2 , Ô3 , Õ1 , Õ2 represents positions (mm), and ( < 60 represents feed rates (mm/min). As
Jo
discussed in section 2.4.1, the maximum acceleration is expressed as rt®® = , where dF , dN are
Ö× ]Ö_
^
the feed rate before and after the transition point dN q dF . To get as big an acceleration as possible,
dN is set to 3000 [mm/min], which is the maximum feed rate of the machine used in this study. To
maximize deceleration around = −1 , feed-rate before the deceleration point should be increased
= 1,
(see (a) in Fig. 21) while feed-rate after the deceleration point should be decreased (see (b) in Fig.
21). Therefore, only two additional NC blocks are required. To maximize acceleration around
feed-rate before the acceleration point should be decreased while feed-rate after the acceleration
point should be increased (see (c) in Fig. 21). However, the transition from low feed-rate (60
[mm/min]) to even lower feed-rate is easily achieved. Thus, instead of modifying the feed-rate both
before and after the acceleration point, only the feed-rate after the acceleration point is increased,
and thus only one NC block is inserted after the acceleration point (see (c) in Fig. 21). Of course, it
is possible to add more NC blocks to maximize acceleration/deceleration, though this increases the
complexity of the optimization problem and runs the risk of feeding G-code blocks faster than the
which have 6 parameters ÔF , ÔN , Ô¡ , ÕF , ÕN , ( optimized using the prediction model and particle
minimum block execution time. In this study, the minimum number of additional blocks is used,
determine (Ô1 , Ô2 , Ô3 , (), the other to optimize acceleration and determine (Õ1 , Õ2 ).
swarm optimization method. 2 sets of PSO were implemented: one to optimize deceleration and
3000
Feed-rate [mm/min]
of
1200
ro
60
(b)
-p
re
Position [mm]
lP
simplicity and flexibility. Compared with other similar iterative algorithms such as genetic
algorithms (GAs), PSO is an extremely simple and computationally efficient algorithm [34]. Also,
Jo
PSO can define a non-linear cost function and does not require to calculate its derivative, while
many other optimization methods require the derivative of the cost function. As the optimization of
the feed schedule has a complicated cost function, PSO is considered an appropriate optimization
method.
the removal depth error between the target and simulated removal profile, the cost function Ž can be
PSO requires a cost function to be calculated for every iteration. Since the aim is to minimize
defined as:
NÙ
1
ØS¯VtT = ! − $ # 5.1
]NÙ dS¯VtT
NÙ
1
Ø =! − $ # 5.2
sU
]NÙ d sU
F# F# NÙ
1 1
Ž = ! ÚØS¯VtT −Ø Ú$ = ! 7! − Ð − Ñ $ 7 $ # 5.3
]F#
sU
]F# ]NÙ dS¯VtT d sU
where dideal is the ideal feed rate distribution calculated directly by the G-code without any
additional CNC point, dopt is the simulated feed rate distribution simulated by the prediction model
and G-code with additional CNC points, Øideal is the ideal removal depth profile calculated by dideal,
and Øopt is the simulated removal depth profile calculated by dopt . The function is calculated only
for −10 ≤ ≤ 10 since the error is quite small outside of this region.
of
variable. As for Ô3 and Õ2 , their search region is determined such that they are always larger than
does not converge on the edge of the search region. Table 4 and 5 show the search region for each
ro
their previous CNC point position. As the experimental verification for this section was realized with
-p
yielded the coefficients Ì1 = 189, Ì2 = −154, Í1 = 0.115, Í2 = 0.0817 for ¨ (Eq. 3.3).
a more recently installed FJP pump and nozzle, new influence function data was generated and
re
Table 4 Search region for Ô1 , Ô2 , Ô3 , and ( Table 5 Search region for Õ1 , Õ2
lP
Ô1 [mm] Õ1 [mm]
Variable Minimum Maximum Variable Minimum Maximum
Ô2 [mm] Ô1 Ô1 Õ2 [mm] Õ1 Õ1 + 2
-4 0 0 2
Ô3 [mm] Ô2 Ô2 + 2
na
( [mm/min] 6 60
ur
Jo
From these G-codes and the prediction model, the feed rate distribution dopt was calculated.
Because variables change every iteration, dopt and Øopt need to be recalculated each time. Table 6
and 7 show the resultant optimal value of each variable.
Table 6 Optimized values for Ô1 , Ô2 , Ô3 , and ( Table 7 Optimized values for Õ1 and Õ2
Ô1 [mm] Õ1 [mm]
Variable Optimized value Variable Optimized value
Ô2 [mm] Õ2 [mm]
-2.385 1.070
Ô3 [mm]
-0.876 3.070
( [mm/min]
-0.733
24.307
of
G01 X1.07 F60
G01 X3.070 F3000
ro
G01 X25 F1200
-p
can be assessed. Fig. 22 shows the feed rate distribution where dori represents simulated feed drive
By parsing these G-codes through the identified model, the optimized feed and removal profile
re
shows the optimized removal depth profile where Øori represents the removal profile calculated by
system without optimization, Fig. 23 describes a reciprocal of feed rate distribution, and Fig. 24
lP
dori . As a resultant of the optimization, the cost function Ž reduced from an original value of
7.93 e]6 mm2 down to 3.47 e]Û mm2. 56.2 % reduction in profile discrepancy is thus achievable
na
Fig. 22 Feed rate distribution achieved by running original (red) and optimized G-codes (cyan)
of
Fig. 23 Reciprocal of feed rate distribution: the gap in dwell per unit of length is reduced with the
ro
optimized G-codes
-10
-p
re
-20
lP
-30
na
-40
ur
-50
-10 -5 0 5 10
X mm
Jo
Fig. 24 Removal depth profile predicted by simulation: the optimized G-codes should produce
micro-groove walls with a slope closer to the ideal target (especially on left-side)
= −3 has only a small effect on removal depth because higher feed rate generates
optimized feed-rate between experiment and simulation is bigger than that without optimization. The
of
ro
Fig. 25 Optimized feed rate distribution (simulated and as recorded during the experiment)
-p
re
0.02
1/(Feed rate) min/mm
1/(Feed rate) min/mm
0.02
lP
0.015
0.015
na
0.01
0.01
0.005 -1 0 1
ur
Jo
0
-6 -4 -2 0 2 4
Position mm
Fig. 26 Reciprocal of feed rate distribution (simulated and as recorded during the experiment)
Next, a series of 16 micro-grooves were polished on an optically flat glass plate, using the
original and optimized G-codes in an alternating pattern from top-to-bottom. This makes sure that
any possible drift of the slurry pumping system would similarly impact both types of micro-grooves.
The material removal distribution was obtained by analyzing the difference of surface measurements
with a laser interferometer (WYKO RTI4100) before and after polishing as shown in Fig. 27(a).
Note that the abbreviations “opt” and “ori” are used to denote the optimized and original G-codes.
Cross-sections were taken through the middle of each groove and analyzed to obtain the left and
right wall slope in accordance with the scheme shown in Fig. 27(b), whereby the upper and lower 10
nm of removed material were excluded from the line fit. The average slope values and standard
deviation obtained for each group of 16 grooves are listed in Table 8, together with the expected
values for the simulated removal profiles are shown in Fig. 24. It is clear that both absolute value
and relative increase of wall slope from the original to optimized G-codes are in excellent agreement
between simulation and experimental validation. The wall of optimized micro-grooves show a
remarkable 45% increase in steepness on the left-side, thanks to the proposed G-code optimization
approach which modulates the feed profile around the targeted section of the tool-path.
of
ro
-p
re
lP
na
(a) (b)
Fig. 27 (a) Micro-grooves polished on an optical flat by alternation of optimized and original G-
codes. (b) Principle of wall slope analysis on the left and right side of groove cross-section.
ur
Simulation Experiment
Original Optimized Relative Original Optimized Relative
rÜ
Increase Increase
rÝ
-51.5 -75.7 46.8% -53.4±7.94 -77.2±8.62 44.6%
80.8 83.8 3.7% 87.8±7.82 89.2±13.8 1.6%
6. Conclusion
The accuracy of correctively polished surfaces can be severely affected by controller signal
distortion, especially when an exponential acceleration filter is adopted. A method for predicting
polished surface profiles that considers controller and process dynamics was proposed and validated
through a series of micro-groove polishing tests. The following points can be drawn from this study:
• Unlike the case of geometrically driven removal processes such as milling, where positional
accuracy is paramount, a full characterization of time-dependent processes such as CNC
fluid jet polishing requires identification of both the controller dynamics and process
influence function. The amount of removed material at any workpiece location is a product
of both the tool removal rate distribution and its surface travel speed over that location and
its neighboring area.
• Controller dynamics can be simulated by sequentially processing blocks corresponding to an
infinite impulse response filter (modelling the interpolator) and closed loop servo system
(modelling the feed drive). Identification of the system can be performed by running a
random sequence of G-codes, and validation with another random sequence.
• Controller limitations lead to a variety of adverse phenomena, ranging from strong
asymmetry of feed profile as the tool moves either in the positive or negative direction, to
of
large discrepancy between desired and actual velocity profile spanning several millimeters
ro
in cornering areas. The influence of feed profile asymmetry could be directly observed on
experimentally polished surfaces, in the form of lateral fluctuation in the location of micro-
•
groove walls. -p
To counter the adverse effects of controller dynamics, an optimization method for G-codes
re
based on particle swarm optimization was proposed in which additional blocks are inserted
lP
before and after a step input. The position and set feed of these blocks was optimized to
reduce the gap between desired and predicted removal profile.
•
na
Optimized G-codes were run through the identified CNC controller, and the machine feed
profile was found to be in close agreement with the predicted regime. Furthermore, the wall-
ur
slope of micro-grooves polished with the optimized G-codes was found to be up-to 45%
steeper than walls produced with the original G-codes, as predicted by material removal
Jo
simulations.
While this study was limited to one-dimensional feed profiles, the basic methodology should be
applicable to multi-axis paths. Furthermore, a more general approach for complex tool path
optimization should be investigated in future work, as beyond the generation of micro-grooves and
other surface depressions, optimization of a simple step input has only limited application in
practice. Finally, it is emphasized that the concept of influence function is not limited to fluid jet
polishing, and so the concepts and methods introduced in this work can be applied to a wide range of
time dependent processes such as compliant grinding, abrasive blasting, peening and so forth.
Reference
[1] Ding, Yi, et al. “Secondary optical design for LED illumination using freeform lens”. Illumination
Optics. International Society for Optics and Photonics (2008) pp. 71030K.
[2] Bayya, Shyam S., et al. “Germanate glass as a window for high energy laser systems”. Optics
Express, 14/24 (2006) pp. 11687-11693.
[3] Beaucamp, Anthony, et al. “Brittle-ductile transition in shape adaptive grinding (SAG) of SiC
aspheric optics”. International Journal of Machine Tools and Manufacture, 115 (2017) pp. 29-37.
[4] Walker DD, Freeman R, Morton R, McCavana G, Beaucamp A. “Use of the ‘Precessions’™ process
for prepolishing and correcting 2D & 2½D form”. Optics Express. 14/24 (2006) pp. 11787-95.
[5] Beaucamp, Anthony, Yoshiharu Namba, and Phillip Charlton. "Process mechanism in shape adaptive
grinding (SAG)". CIRP Annals, 64/1 (2015) pp. 305-308.
[6] Faehnle, Oliver W.; Van Brug, Hedser; Frankena, Hans J. “Fluid jet polishing of optical surfaces”.
Applied optics, 37/28 (1998) pp. 6771-6773.
[7] Beaucamp, Anthony; Namba, Yoshiharu. “Super-smooth finishing of diamond turned hard X-ray
molding dies by combined fluid jet and bonnet polishing”. CIRP Annals-Manufacturing Technology,
62/1 (2013) pp. 315-318.
[8] Messelink, Wilhelmus Faehnle, Oliver. “Exploiting the process stability of fluid jet polishing”.
Optical Fabrication and Testing. Optical Society of America (2008) pp. OThD3.
[9] Guo, Peiji; Fang, Hui; Yu, Jingchi. Edge effect in fluid jet polishing. Applied optics, 2006, 45.26:
6729-6735.
[10] Fang, Hui; Guo, Peiji; Yu, Jingchi. “Surface roughness and material removal in fluid jet
of
polishing”. Applied optics, 45/17 (2006) pp. 4012-4019.
[11] Wang, C. J., et al. “A novel multi-jet polishing process and tool for high-efficiency
ro
polishing”. International Journal of Machine Tools and Manufacture, 115 (2017) pp. 60-73.
[12] Beaucamp, Anthony; Katsuura, Tomoya; Kawara, Zensaku. “A novel ultrasonic cavitation assisted
fluid jet polishing system”. CIRP Annals-Manufacturing Technology, 66/1 (2017) pp. 301-304.
-p
[13] Chaves-Jacob, Julien; Linares, Jean-Marc; Sprauel, Jean-Michel. “Improving tool wear and surface
covering in polishing via toolpath optimization”. Journal of Materials Processing Technology,
re
213/10 (2013) pp. 1661-1668.
[14] Dunn, Christina R.; Walker, David D. “Pseudo-random tool paths for CNC sub-aperture polishing
lP
a novel circular-random path and other pseudo-random paths”. Optics express, 25/19 (2017) pp.
22411-22424.
[17] Cao, Zhong-Chen; Cheung, Chi Fai; Ren, Mingjun. “Modelling and characterization of surface
ur
characteristics in fluid jet polishing”. International journal of mechanical sciences, 89 (2014) pp.
158-166.
[19] Tounsi, N.; Bailey, T.; Elbestawi, M. A. “Identification of acceleration deceleration profile of feed
drive systems in CNC machines”. International Journal of machine tools and manufacture, 43/5
(2003) pp. 441-451.
[20] Erkorkmaz, Kaan; Altintas, Yusuf. “High speed CNC system design. Part II: modeling and
identification of feed drives”. International Journal of Machine Tools and Manufacture, 41/10
(2001) pp. 1487-1509.
[21] Erkorkmaz, Kaan; Altintas, Yusuf. “High speed CNC system design. Part III: high speed tracking
and contouring control of feed drives”. International Journal of Machine Tools and Manufacture,
41/11 (2001) pp. 1637-1658.
[22] Sencer, Burak; Altintas, Yusuf. “Identification of 5-axis machine tools feed drive systems for
contouring simulation”. International Journal of Automation Technology, 5/3 (2011) pp. 377-386.
[23] Kong, M. C., et al. “Mathematical modelling of abrasive waterjet footprints for arbitrarily moving
jets: part I - single straight paths”. International Journal of Machine Tools and Manufacture, 53/1
(2012) pp. 58-68.
[24] Billingham, J., et al. “Mathematical modelling of abrasive waterjet footprints for arbitrarily moving
jets: Part II - Overlapped single and multiple straight paths”. International Journal of Machine Tools
and Manufacture, 68 (2013) pp. 30-39.
[25] Axinte D., Billingham J. “Time-dependent manufacturing processes lead to a new class of inverse
problems”. Proceedings of the National Academy of Sciences. 116/12 (2019) pp. 5341-3.
[26] Guillerna, A. Bilbao; Axinte, D.; Billingham, John. “The linear inverse problem in energy beam
processing with an application to abrasive waterjet machining”. International Journal of Machine
Tools and Manufacture, 99 (2015) pp. 34-42.
[27] Erkorkmaz, Kaan, and Yusuf Altintas. "High speed CNC system design. Part I: jerk limited
trajectory generation and quintic spline interpolation". International Journal of machine tools and
manufacture, 41/ 9 (2001) pp. 1323-1345.
[28] SERIES, FANUC. 30i–MODEL A. Operator’s Manual, 2004.
[29] Sencer, Burak; Ishizaki, Kosuke; Shamoto, Eiji. High speed cornering strategy with confined
contour error and vibration suppression for CNC machine tools. CIRP Annals, 2015, 64.1: 369-372.
[30] Tajima, Shingo, Burak Sencer, and Eiji Shamoto. "Accurate interpolation of machining tool-paths
based on FIR filtering". Precision Engineering, 52 (2018) pp. 332-344.
[31] Erkorkmaz, K. and Wong, W. (2007) ‘Rapid identification technique for virtual CNC drives’,
International Journal of Machine Tools and Manufacture
[32] Han, Yanjun, Zhu Wu-Le, Zhang Lei, Beaucamp Anthony. "Region adaptive scheduling for time-
dependent processes with optimal use of machine dynamics". International Journal of Machine
of
Tools and Manufacture, 156 (2020) pp. 103589.
[33] Kennedy, James; Russell Eberhart. "Particle swarm optimization." Proceedings of International
ro
Conference on Neural Networks, IEEE (1995) pp. 1942-1948.
[34] Duan, Yao, R. G. Harley, and T. G. Habetler. "Comparison of particle swarm optimization and
genetic algorithm in the design of permanent magnet motors." 6th International Power Electronics
-p
and Motion Control Conference, IEEE (2009) pp. 822-825.
re
lP
na
ur
Jo
Acknowledgements
This work was supported by the Grant-in-Aid for Scientific Research No. 20K04192 from the Japan
Society for Promotion of Science, the grant program for research and development from the OSG
foundation, and a donation research fund from DMG Mori Seiki Co. The authors acknowledge the advice
and guidance provided by Prof. Atsushi Matsubara and Prof. Daisuke Kono throughout this project, as
well as support from Zeeko Ltd. in loaning the polishing system and measuring equipment.
of
ro
-p
re
lP
na
ur
Jo
Highlights:
• A method to identify and optimize the influence of CNC dynamics on time dependent
• Lateral shifts in the walls of micro-grooves polished with a fluid jet raster path are
• The discrepancy between ideal and actual feed profile can be mitigated by modifying NC
of
blocks in order to increase the rate of machine acceleration and deceleration.
ro
• A modified G-Code is automatically generated by particle swarm optimization and
-p
shown to generate micro-grooves with improved wall steepness by up-to 45%.
re
lP
na
ur
Jo
Declaration of interests
☒ The authors declare that they have no known competing financial interests or personal relationships
that could have appeared to influence the work reported in this paper.
☐The authors declare the following financial interests/personal relationships which may be considered
as potential competing interests:
of
ro
-p
re
lP
na
ur
Jo