Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

Global tool-path smoothing for CNC

machine tools with uninterrupted


acceleration Shingo Tajima & Burak
Sencer
Visit to download the full and correct content document:
https://ebookmass.com/product/global-tool-path-smoothing-for-cnc-machine-tools-wit
h-uninterrupted-acceleration-shingo-tajima-burak-sencer/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

Machine Learning for Time Series Forecasting with


Python Francesca Lazzeri

https://ebookmass.com/product/machine-learning-for-time-series-
forecasting-with-python-francesca-lazzeri/

Distributed Machine Learning with PySpark Abdelaziz


Testas

https://ebookmass.com/product/distributed-machine-learning-with-
pyspark-abdelaziz-testas/

Elsevier Weekblad - Week 26 - 2022 Gebruiker

https://ebookmass.com/product/elsevier-weekblad-
week-26-2022-gebruiker/

Tools for Teaching 2nd Edition

https://ebookmass.com/product/tools-for-teaching-2nd-edition/
Statistics: A Tool for Social Research 10th Edition,
(Ebook PDF)

https://ebookmass.com/product/statistics-a-tool-for-social-
research-10th-edition-ebook-pdf/

Visualization Techniques for Climate Change with


Machine Learning and Artificial Intelligence Arun Lal
Srivastav

https://ebookmass.com/product/visualization-techniques-for-
climate-change-with-machine-learning-and-artificial-intelligence-
arun-lal-srivastav/

Calculate with Confidence, 8e (Oct 26,


2021)_(0323696953)_(Elsevier) 8th Edition Morris Rn
Bsn Ma Lnc

https://ebookmass.com/product/calculate-with-
confidence-8e-oct-26-2021_0323696953_elsevier-8th-edition-morris-
rn-bsn-ma-lnc/

Distributed Machine Learning with PySpark 1st Edition


Abdelaziz Testas

https://ebookmass.com/product/distributed-machine-learning-with-
pyspark-1st-edition-abdelaziz-testas/

Machine Learning with Python for Everyone (Addison


Wesley Data & Analytics Series) 1st Edition, (Ebook
PDF)

https://ebookmass.com/product/machine-learning-with-python-for-
everyone-addison-wesley-data-analytics-series-1st-edition-ebook-
pdf/
具有不间断加速的数控机 International Journal of Machine Tools & Manufacture 121 (2017) 81–95

床全局路径平滑
Contents lists available at ScienceDirect

International Journal of Machine Tools & Manufacture


journal homepage: www.elsevier.com/locate/ijmactool

Global tool-path smoothing for CNC machine tools with uninterrupted MARK
acceleration

Shingo Tajima, Burak Sencer
Oregon State University, Mechanical Industrial and Manufacturing Engineering Department, Corvallis, OR, USA

A BS T RAC T

Majority of tool-paths for high-speed machining is composed of series of short linear segments, so-called G01
moves. This discrete tool-path format limits the achievable speed and accuracy of CNC machines. To generate
continuous feed motion along sharp cornered tool-paths, most NC systems smooth corners locally using a pre-
specified curve or a spline and slow down to be able to change the feed direction within machine kinematic
limits. Path speed is dramatically reduced for accuracy if sharp corners are within close vicinity. This paper
proposes a new real-time interpolation algorithm for NC systems to generate continuous rapid feed motion
along short segmented linear tool-paths by smoothing local and adjacent corners that are within close vicinity.
Instead of locally modifying the corner geometry with a spline, the proposed algorithm directly blends axis
velocities between consecutive linear segments based on the jerk limited acceleration profile (JLAP) and
generates cornering trajectories within user-specified contour errors and kinematic limits of the drives. A novel
Look-Ahead Windowing (LAW) technique is developed to plan tangential feed profile with uninterrupted
acceleration to continuously smooth the path. The feed profile is optimized to generate rapid motion along
overlapping adjacent corners. Simulation and experimental results demonstrate effectiveness of the proposed
method to interpolate accurate Cartesian high-speed motion along short-segmented tool-paths for machining
free-form surfaces found in dies, molds and aerospace parts.

1. Introduction only position continuous, and they do not allow continuous interpola-
tion of the feed motion at the junction points, i.e. corners of
Parts for aerospace, and die-and-mould industries contain complex consecutive line segments. As a result, motion must stop momentarily
sculptured geometries that are designed on CAM systems using smooth at corners; otherwise, acceleration and jerk limits of the drives are
parametric curves such as splines and NURBS [1]. It has been reported violated, which can destroy the surface finish. Regardless, this stop-
that direct interpolation of these curves on CNC (computer numerical and-go motion planning leads elongated cycle times and generates
controlled) machine tools can provide the smoothest, fastest and rough, cornered surfaces with pronounced feed marks. This process is
accurate motion, and thereby most suitable for high-speed machining depicted in Fig. 1a and b.
[1–3]. However, deficiencies in the accurate calculation of curve The well-known approach to generate continuous non-stop motion
lengths, planning of time-optimal feed profiles, and feed fluctuations along polygonal tool-path geometries is to blend consecutive line seg-
hinder penetration of “direct spline interpolation” in CNC machines ments locally [10–12]. The idea is straightforward. In order to realize a
[4–8]. Most CAM systems do not export parametric spline tool-paths continuous feed motion, the sharp corner geometry between two linear
[3]. Instead, they discretize original smooth geometry with a series of segments is replaced by a smooth blending curve in by the NC system of
short line segments, and output a “polygonal” tool-path, which is to be the machine tool as shown in Fig. 1b. The final corner profile is no longer
interpolated using basic G01 commands [9]. Based on chord-length sharp, and the reference path deviates from the original corner geometry.
specifications, the point-to-points G01 moves range from 1 μm to As long as the deviation from original corner geometry is controllable, this
1 mm in length. As the curvature of the tool-path increases discretiza- approach is conveniently applicable to roughing and semi-finishing. Basic
tion becomes finer and denser generating NC part programs composed arcs, cubic, quadratic, quintic, B-splines or various curves are used to
of thousands of lines. Although size of the NC (numerical control) part generate a continuous motion transition around the corner profile well
program is not the bottleneck, its definition is. Polygonal tool-paths are documented in the literature [13–20].


Corresponding author.
E-mail addresses: tajimas@oregonstate.edu (S. Tajima), burak.sencer@oregonstate.edu (B. Sencer).

http://dx.doi.org/10.1016/j.ijmachtools.2017.03.002
Received 4 November 2016; Received in revised form 22 February 2017; Accepted 10 March 2017
Available online 16 March 2017
0890-6955/ © 2017 Elsevier Ltd. All rights reserved.
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

ques. But, they are either computationally stringent for real-time


implementation or only capable of smoothing local corners that
occur between long linear segments.
As mentioned, currently available techniques are mostly geared
towards smoothing local corners. They assume that linear moves (G01
lines) are long enough so that a corner could be smoothened “locally”
[13–20,22,24,25] without interfering with the consecutive corner
blend. However, for realistic tool-paths used in the aerospace and
die-and-mould industries this assumption is invalid. Typically, high-
speed machining tool-paths are composed of linear moves that are
shorter than <1 mm . If the user selects large cornering error for high
speed roughing or semi-finishing, locally smoothened corner geome-
tries overlap each other. As a result, either cornering error tolerance
needs to be reduced to eliminate any overlapping and so to plan
feasible feed profiles [14,17,19,25], or the motion is simply forced to
undergo a full-stop, both of which greatly elongate overall cycle time
and limit achievable productivity. Thus, a “global” corner smoothing
technique is necessary to handle short-segmented tool-paths with
overlapping corners and respect kinematic limits of the machine tool.
Current machine tool literature has not addressed this problem
thoroughly. The only available 1-step global corner smoothing solution
[30] solves the trajectory generation problem with a bang-bang style
acceleration profile that is not suitable for modern high-speed machine
tools.
Thus, this paper proposes a new real-time interpolation algorithm
for NC systems to generate continuous rapid feed motion along short
segmented linear tool-paths by smoothing local and adjacent corners
that are within close vicinity to generate a global jerk limited high
speed motion trajectory. Firstly, the proposed algorithm introduces the
1-step direct corner smoothing technique by blending axis velocities
Fig. 1. Interpolation of discrete tool-paths with corner smoothing. and acceleration between consecutive linear segments based on the
JLAP. A novel Look-Ahead Windowing (LAW) technique is then
Geometric local smoothing is then followed by tangential feed presented to plan tangential jerk limited feed profile with uninter-
planning to generate the final trajectory. Due to curved corner profile, rupted acceleration to continuously smooth the path. A novel transition
feedrate must be lowered so that axis velocity and acceleration limits algorithm is developed to generate uninterrupted motion along over-
are not violated around corner blends [16–19]. Jerk limited accelera- lapping adjacent corners. Simulation and experimental results demon-
tion profile (JLAP) is known to be favorable to realize a smooth and strate effectiveness of the proposed method to generate accurate
rapid motion for high-speed machining [21]. JALP generates trapezoi- Cartesian high-speed motion along short-segmented tool-paths.
dal acceleration transitions with piecewise constant jerk segments,
which helps avoiding excitement of inertial vibrations of feed drive 2. One-step local corner smoothing with acceleration-
system and provides a good balance between smoothness and time- uninterrupted kinematics
optimality w.r.t. machine's limits [5,10,21,22]. Thus, most modern
CNC machine tools adapt the JALP to plan feed motion and interpolate As introduced in Section 1, 2-step corner smoothing techniques
linear and spline tool-paths. modify path geometry with parametric curves to enable accelera-
This 2-step, i.e. geometric path smoothing followed by feed tion continuous feed planning. This section presents the 1-step
planning based approach, is inefficient. Since the smoothened acceleration-uninterrupted kinematic corner smoothing (AU-KCS)
corner geometry is essentially a parametric curve, it suffers from method, which bases on the foundations of the kinematic cornering
bottlenecks related to real-time curve interpolation and causes technique (KCS) presented in [27]. The AU-KCS strategy is
severe feed fluctuations [7,8]. In addition, planning of a time depicted in Fig. 2. As opposed to replacing the sharp corner with
optimal feed profile along the smoothened path is computationally a smooth spline and planning the feed profile, the proposed method
stringent [7,12,13,23] and typically approximations are employed directly interpolates axis velocities and accelerations around the
in the real-time implementation on NC systems [10,16]. Hence, corner profile to realize a smooth cornering trajectory (Fig. 2b).
recent developments have been focusing on 1-step cornering Boundary acceleration constraints are introduced so that an accel-
trajectory generation methods. Command filtering [24,25], the eration-uninterrupted motion can be planned in and out of the
use of optimal control [15], or direct axis velocity profile blending corner, and hence the total cornering cycle time can be reduced.
techniques [26,28] have recently been proposed. Filtering techni- Firstly, we assume that cornering motion starts and ends with
ques [24,25] utilize Finite Impulse Response (FIR) filters [27] that identical cornering velocity and accelerations, Vc and Ac . This allows us
introduce a predetermined delay to the motion and do not to generate corner profiles that are symmetric around the corner
incorporate full kinematic limits of the drives to minimize machin- bisector as shown in Fig. 2a. Note that, generating symmetric corners
ing cycle time [29]. Furthermore, currently available filtering is critical for the surface quality. Conventional die and mould parts are
techniques are designed for local cornering and thus they are not composed of back-and-forth parallel rastering paths, and symmetric
capable of controlling cornering errors along densely segmented corners allow generation of smooth surfaces with lower average surface
linear paths. Optimal control and velocity profile blending based roughness. Kinematics of the axes during corner transition is dictated
corner smoothing techniques can generate rapid cornering techni- by the jerk limited acceleration profile (JLAP) [21] to generate a
smooth and traceable motion. Based on the above conditions, the

82
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

⎧ j (t ) = Jx ⎫ ⎧ jy (t ) = Jy ⎫
⎪x ⎪ ⎪ ⎪
⎪ ax (t ) = Asx + Jxt ⎪ ⎪ ⎪ a y(t ) = Asy + Jyt ⎪

⎨ 1 2 ⎬and⎨ 1 2 ⎬ 0 ≤ t ≤ Tc
⎪xv ( t ) = Vsx + Asx t + J
2 x
t ⎪ ⎪y v ( t ) = Vsy + Asy t + J t ⎪
2 y
⎪ 1 1 3⎪ ⎪ 3⎪
⎩ s ( t ) = V t + A t 2
+ J t ⎪
⎭ ⎩ y s ( t ) = V t +
1
A t 2
+
1
J t ⎪
6 y ⎭
x sx sx x sy
2 6 2 sy

(1)

where, t is relative cornering time, Tc is cornering duration, and Jx and


Jy are jerk magnitudes. Axis velocity (Vs , Ve ) and acceleration ( As , Ae )
boundary conditions at the start and end of cornering transition are
computed from corner geometry and from Eq. (1) as:

⎧ Asx ⎫ ⎧ ⎡ cos(θs )⎤⎫ ⎧ A ⎫ ⎧ ⎡ cos(θe )⎤⎫


⎪ ⎪ ⎪−Ac ⎢ ⎥⎪ ⎪ ex ⎪ ⎪ Ac ⎢ ⎥⎪
⎪ Asy ⎪ ⎪ ⎣ sin(θs ) ⎦⎪ ⎪ Aey ⎪ ⎪ ⎣ sin(θe ) ⎦⎪
⎨ ⎬=⎨ ⎬and⎨ ⎬ = ⎨ ⎬
⎪ Vsx ⎪ ⎪ ⎡ cos(θs )⎤ ⎪ ⎪ Vex ⎪ ⎪ ⎡ cos(θe )⎤ ⎪
⎪ Vsy ⎪ ⎪ Vc⎢ sin(θ ) ⎥ ⎪ ⎪ ⎪
⎩ Vey ⎭ ⎪
Vc⎢ ⎥⎪
⎩ ⎭ ⎩ ⎣ s ⎦ ⎭ ⎩ ⎣ sin(θe ) ⎦ ⎭
⎧ Asx + JxTc ⎫
⎪ ⎪
⎪ Asy + JyTc ⎪
=⎨ 2⎬
⎪ sx
V + A T
sx c + 1/2 Jx c ⎪
T
⎪V + A T + 1/2J T 2 ⎪
⎩ sy sy c y c ⎭ (2)

where θs and θe are entry and exit angles to a corner, i.e. orientation of
consecutive linear segments. The maximum cornering error ε must be
controlled by the user, which introduces the displacement constraint.
As shown in Fig. 2a, cornering error occurs in the middle of the
cornering trajectory at t = Tc /2 due to symmetry and expressed as:

εx = ε cos(θε ) = xm − xc ⎫

εy = ε sin(θε ) = ym − yc ⎭ (3)

where θε = (θs + θe )/2 + π /2 is obtained from geometry (See Fig. 2a).


The mid-point of cornering trajectory is evaluated then from Eq. (1),

T 1 T 2 1 T 3⎫
xm = Vsx 2c + 2 Asx ( 2c ) + 6 Jx ( 2c ) ⎪

ym = Vsy 2c + 2 Asy ( 2c ) + 6 Jy( 2c ) ⎪
T 1 T 2 1 T 3
⎭ (4)

and the programmed corner point Pc = [xc , yc] location is expressed by


the total distance traveled by the axes as:

1 1
⎡ xc ⎤ VsxTc + 2 Asx Tc 2 + 6 JxTc 3 ⎡ cos(θs )⎤
Pc = ⎢ y ⎥ = ⎢ ⎥
⎣ c⎦ cos(θs ) + cos(θe ) ⎣ sin(θs ) ⎦

Lc (5)

where Lc is the linear displacement used during the cornering transi-


tion (See Fig. 2a). X-axis component of cornering error can be
Fig. 2. Acceleration uninterrupted kinematic corner smoothing (AU-KCS) strategy. expressed from Eqs. (3)–(5) as:

1 1 ⎛1 3 ⎞ 1 ⎛1 7 ⎞
objective is to compute a cornering velocity Vc and acceleration Ac that VsxTc (cos(θe) − cos(θs )) + Asx Tc 2⎜ cos(θe) − cos(θs )⎟ + JxTc3⎜ cos(θe) − cos(θs )⎟
2 2 ⎝4 4 ⎠ 6 ⎝8 8 ⎠
εx =
yields the minimum cornering duration, Tc . cos(θs ) + cos(θe )
Typically, tool motion needs to be decelerated from path speed for (6)
cornering transition and accelerated back to the commanded feed of
the consecutive linear segment [16,17]. As shown in Fig. 2b, a Please note that the Y-axis component can be obtained by simply
piecewise constant jerk transition can ensure that tool motion decele- plugging corresponding parameters. The minimum cornering duration
rates to a cornering transition and accelerates back to the subsequent Tc is sought by simply saturating at least one of the axis’ acceleration or
segment without interrupting its acceleration. In other words, the jerk limits. The limiting axis can be identified from axis acceleration
motion should decelerate in-and-out of the corner without crossing a transitions, ΔAx = Aex − Asx and ΔAy = Aey − Asy . Assuming that
zero acceleration so that overall cycle time can be reduced. For a planar ΔAx > ΔAy , acceleration, velocity and position constraints for cornering
case, X and Y axis position s(t), velocity v(t), acceleration a(t), and jerk motion are collected from Eqs. (2) and (6) as:
j (t ) profiles can be written from Fig. 2b as:

83
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Acc. Constraint : Ac cos(θe ) = − Ac cos(θs ) + JxTc and Jmax = 1 × 10 5 mm/s3, respectively. Eqs. (8) and (9) are used to
Vel. Constraint : Vc cos(θe ) = Vc cos(θs ) − Ac cos(θs )Tc +
1
JT2 compute the cornering velocities for each case. For the obtuse corner,
2 x c
the cornering speed is calculated to be Vc = 48 mm/s and for the acute
T 1 T 1 T 3 corner Vc = 23 mm/s. JLAP is used to decelerate and accelerate from
Disp. Constraint : ε cos(θε ) = ( 2c )(Vc − 2 Ac 2c )cos(θs ) + 6 Jx ( 2c ) cornering transitions. As shown, proposed 1-step AU-KCS technique
⎛ 1 ⎞ 1 can generate acceleration continuous motion profiles around a local
Tc⎜Vc − Ac Tc⎟cos(θs ) + JxTc3
⎝ 2 ⎠ 6
− cos(θs ) corner while saturating at least one axis kinematic limit to attain the
cos(θs ) + cos(θe )
fastest cornering motion.
(7)

Notice that Eq. (7) provides 3 constraints to compute the 4


unknowns of the cornering trajectory, namely; Ac , Vc , Jx and Tc . The
3. Global feed planning along short-segmented tool-paths
near time-optimal cornering trajectory is obtained analytically by
with uninterrupted acceleration
either saturating axis acceleration or the jerk limits, i.e. by setting
Jx = Jmax or Ax = Amax , and it yields from Eq. (7) as:
Previous section introduced the 1-step kinematic corner-smoothing
⎫ scheme with acceleration uninterrupted motion profiles for smoothing
6Jmax 2ε cos(θε ) ⎪ of local corners. An actual high-speed machining tool-path, however,
Ac = 2 3 ⎪
(cos(θe ) − cos(θs ))(cos(θs ) + cos(θe ))2 contains dense linear segments and corners that are in close vicinity of

⎪ each other. This section presents high speed motion planning and
62Jmaxε 2cos2(θε ) ⎪ accurate interpolation schemes along short-segmented tool-paths
Vc = 2 3 ⎪
(cos(θe ) − cos(θs ))2 (cos(θs ) + cos(θe )) ⎬ for Jx = Jmax based on a look-ahead-windowing (LAW) technique.
⎪ Fig. 4a shows a short-segmented linear tool-path with a series of
Tc = 2 3
6ε cos(θε )(cos(θs ) + cos(θe )) ⎪ locally smoothened corners. As shown, when corners are locally
Jmax(cos(θe ) − cos(θs )) ⎪
⎪ smoothened by proposed technique from Section 2, the path consists
8ε cos(θε ) ⎪ of linear segments and corner transitions. Each corner transition has
Lc = ⎪ dedicated cornering velocity Vc and acceleration Ac computed analyti-
cos(θe ) − cos(θs ) ⎭ (8)
cally from Eqs. (8) and (9). A LAW-ing technique is then developed,
which reads series of tool-path sections with associated kinematic

Amax 3 (cos(θe ) − cos(θs ))(cos(θe ) + cos(θs ))2 ⎪ boundary conditions, and plans the kinematically feasible feed motion.
Jx = ⎪ Fig. 4b shows the proposed LAW based motion planning strategy. As
48ε cos(θε )
⎪ shown, based on the LAW size, motion is planned for N number of

3Amax ε cos(θε ) ⎪ segments (G01 blocks) of the tool-path while assuming that a full-stop
Vc = 2 ⎪
(cos(θe ) − cos(θs )) F=0 is commanded at the end of the LAW. The motion is then planned
⎬ for Ax = Amax
⎪ backwards from the end of LAW to the beginning to reach current
3ε cos(θε ) ⎪ block's kinematic conditions. During planning, segment velocities
Tc = 4
Amax (cos(θe ) − cos(θs )) ⎪ within the window are reduced so that they can be interpolated in a
⎪ kinematically feasible manner. Once the motion is planned within a
8ε cos(θε ) ⎪
Lc = ⎪ LAW, the window is progressed one block and current segment is
cos(θe ) − cos(θs ) ⎭ accepted for interpolation. During planning, compatibility conditions
(9) are checked only between consecutive, i.e. kth and k+1th segments.
Notice that since there is a full-stop planned at the end of the LAW,
Eqs. (8) or (9) can be used to determine the fastest cornering
reducing feedrate of the kth segment to plan a feasible motion towards
motion duration Tc , which saturates either acceleration or the jerk
the k+1th block is satisfactory. This type of feed planning approach
limits of one of the drives, e.g. X-axis. Based on the smallest Tc ,
does not require any iteration, and the rest of the section presents
corresponding cornering velocity and acceleration Vc and Ac boundary
analytical methods to compute maximum speed and boundary condi-
conditions are obtained analytically from Eqs. (8) and (9). The motion
tions for consecutive segments.
for the non-saturated axis, e.g. Y-axis, is planned by calculating its jerk
magnitude Jy by re-writing Eq. (7) and plugging any of the pre-
computed Tc , Ac , or Vc . Notice that above equations can be used
interchangeably. For instance, for a given cornering velocity Vc , the 3.1. Motion planning along separated corners
largest cornering error can be computed that saturates either jerk or
acceleration limits of the drives. The feed planning strategy starts with smoothing corners locally
On the other hand, there is no limit imposed on the cornering based on the AU-KCS presented in Section 2. Corner transition
velocity Vc in this formulation. Although it is rare, if the corner angle is distance Lck for each corner is computed from Eq. (5), and the
very obtuse, Vc can become greater than the set feedrate of the G01 remaining linear distance between consecutive corner transitions is
command, Vc > F . In this case, cornering speed is capped by the block's calculated as:
commanded feedrate, Vc = F and cornering acceleration is set to zero,
Ac = 0 . In this case, cornering motion planning requires 3-segments, Llk = Pck − Pck +1 − (Lck + Lck +1) (10)
e.g. deceleration increase, constant deceleration and deceleration
decrease to alter velocities of the drives from start to the end of the As shown in Fig. 5a if Llk > 0 consecutive corners are not over-
cornering transition [27]. lapping, and thus feed motion can be planned to stitch two local
Effectiveness of the proposed local AU-KCS scheme is presented in corners. This stitching motion is planned based on the 7-segmented
simulations before it is experimentally validated in Section 5. Fig. 3 JLAP depicted in Fig. 6, and explained as follows.
shows the AU-KCS technique applied to smoothen local obtuse and The objective is to attain the maximum possible feedrate along
acute corners. The cornering tolerance is set to ε = 30 μm in both cases straight sections in-between consecutive corners with respect to
and the programmed feedrate is F = 100 mm/s. Acceleration and jerk velocity Vck , Vck+1 and acceleration Ack , Ack+1 boundary conditions. The
limitations of the drives (X and Y axes) are set to Amax = 3 × 103 mm/s2 jerk sequence to stitch the motion is planned with respect to Fig. 6 as:

84
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 3. Obtuse and acute corner smoothing using AU-KCS.

⎧ J1 = Jmax, 0 ≤ t < t1 ⎧V k + A τ + 1 J τ 2, 1
0 ≤ t < t1, V1 = Vck + As T1 + 2 J1T12
⎪ ⎪ c s 1 2 11
⎪ J2 = 0, t1 ≤ t < t2 ⎪V1 + Aτ2, t1 ≤ t < t2, V2 = V1 + AT2
⎪ J3 = − Jmax, t 2 ≤ t < t3 ⎪
⎪ 1
⎪V2 + Aτ3 + 2 J3τ32,
1
t2 ≤ t < t3, V3 = V2 + AT3 + 2 J3T32
j (τ ) = ⎨ J4 = 0, t3 ≤ t < t4 ⎪
⎪J = − J , t4 ≤ t < t5 v(τ ) = ⎨V3, t3 ≤ t < t4, V4 = V3 = F
⎪ 5 max ⎪ 1 2 1
⎪ J6 = 0, t5 ≤ t < t6 ⎪V4 + 2 J5τ5 , t4 ≤ t < t5, V5 = V4 + 2 J5T52
⎪J = J , ⎪V + Dτ ,
⎩ 7 max t6 ≤ t ≤ t7 (11) ⎪ 5 6 t5 ≤ t < t6, V6 = V5 + DT6
⎪V + Dτ + 1 J τ 2, t6 ≤ t ≤ t7, Vck +1 = V6 + DT7 + 2 J7T72
1
⎩ 6 7 2 7 7 (13)
Integrating Eq. (11) with respect to time, t, reveals the trapezoidal
acceleration profile as,
Ti (i = 1…7) is the duration, Vi is the velocity reached at the end of the
⎧Ak + Jτ , ith phase. Consequently, integrating Eq. (13) with respect to time
0 ≤ t < t1, A1 = Ack + J1T1 = A
⎪ c 11 yields the displacement profile,
⎪ A, t1 ≤ t < t2, A2 = A1 = A
⎪A + J τ , t2 ≤ t < t3, A3 = A + J3T3 = 0
⎪ 3 3
a(τ ) = ⎨ 0, t3 ≤ t < t4, A4 = A3 = 0
⎪J τ , t4 ≤ t < t5, A5 = J5T5 = D
⎪ 55
⎪ D, t5 ≤ t < t6, A6 = A5 = D

⎩ D + J7τ7, t6 ≤ t ≤ t7, −Ack +1 = D + J7T (12)

where A and D are acceleration and deceleration amplitudes, and τi is


the relative time parameter, which starts at the beginning of the ith
phase of the profile (See Fig. 6). Similarly, integrating Eq. (12)
generates the corresponding velocity profile as,

85
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 4. Look-ahead windowing (LAW) based motion planning strategy.

s (τ )
⎧V τ + 1 A τ 2 + 1 J τ 3, 1 1
0 ≤ t < t1, S1 = VsT1 + 2 As T12 + 6 J1T13
⎪ s1 2 s 1 6 11
⎪ S + Vτ + 1 Aτ 2, t1 ≤ t < t2, S2 = S1 + VT
1 2
⎪ 1 1 2 2 2 1 2 + 2 AT2
⎪ 1 1 1
⎪ S2 + V2 τ3 + 2
Aτ32 + 6 J3τ33, t2 ≤ t < t3, S3 = S2 + V2T3 + 2 AT32
⎪ 1
⎪ + 6 J3T33

= ⎨ S3 + V3τ4, t3 ≤ t < t4, S4 = S3 + V3T4
⎪ 1 3 1
⎪ S4 + V4τ5 + 6 J5τ5 , t4 ≤ t < t5, S5 = S4 + V4T5 + 6 J5T53
⎪ 1 2 1
⎪ S5 + V5τ6 + 2 Dτ6 , t5 ≤ t < t6, S6 = S5 + V5T6 + 2 DT6 2
⎪ 1 2 1 3 1
⎪ S6 + V6τ7 + 2 Dτ7 + 6 J7τ7 , t6 ≤ t ≤ t7, Se = S6 + V6T7 + 2 DT72

⎪ 1
+ 6 J7T73 = Llk

(14) Fig. 6. Jerk limited acceleration profile (JLAP).

Fig. 5. Separate (Local) and overlapping cornering geometries.

86
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

where si(i = 1 .. 7) is the displacement reached at the end of each phase.


Durations Ti (i = 1…7) of each phase must be computed to realize the
JLAP. Firstly, considering the trapezoidal nature of the profile, accel-
eration demand is evaluated from,

2 ⎫
(Ack ) A − Ack A ⎪
A= Jmax(F − Vck ) + 2
→ T1 = Jmax
, T3 =
Jmax ⎪

(Ack +1)
2
Ack +1 − D D

D=− Jmax(F − Vck +1) + → T7 = J , T5 = −J ⎪
2 max max ⎭ (15)

Above, Jmax is tangential jerk limit. If magnitudes A or D exceed


their limits Amax , they are capped by the limit, and constant acceleration
duration T2 and T6 are computed as:

F − Vck k 2 ⎫
T2 = −
Amax
+
1 (Ac )


Amax Jmax 2 Amax Jmax

k +1 2 ⎪
F − Vck +1 Amax 1 (Ac )
T6 = − + 2A J ⎪
Amax Jmax max max ⎭ (16)
Fig. 7. Feed adjustment in-between local corners.
Otherwise, constant acceleration phase simply does not exist,
T2 = T6 = 0 .
1 1 D−A ⎫
Finally, the distance between cornering transitions, Llk , should be a= 2D
− 2A
, b= 2Jmax
, ⎪
traveled by all the stages of interpolation. If the linear distance between ⎛ (A k ) 4 4⎞ ⎛ (A k +1)2V k +1 2 ⎞ ⎪
corners is long enough, programmed feedrate of the block, F should be c=L+
1
⎜ c

(Ack +1)
⎟ +
1
⎜ c c

(Ack ) Vck
⎟ ⎪
8Jmax 2 ⎝ A D
⎠ 2Jmax ⎝ D A
⎠ ⎪

achieved implying that T4 ≥ 0 . The total distance traveled along the 7- ⎬
(Vck ) ⎪
3 3 2 2 2
segmented JLAP is can be computed from Eqs. (14)–(16) as: (Ack +1) − (Ack ) (Ack ) A − (Ack +1) D (2Ack − A)Vck − (2Ack +1 − D )Vck +1
+ + + + 2A ⎪
3Jmax 2 4Jmax 2 2Jmax
2 2

(F 2 − (Vck ) ) ((Vck +1) − F 2 ) A(F + Vck ) D(F + Vck +1) k +1 2 ⎪
Llk = T4F +
(V
− c2D
)

+ + − ⎭
2A 2D 2Jmax 2Jmax
⎛ k +1 4 k 4⎞ k 3 k +1 3
(20)
1 ⎜ (Ac ) (A ) ((Ac ) − (Ac ) )
+ − c ⎟⎟ + If Eq. (19) possesses complex roots, consecutive cornering velo-
8Jmax 2 ⎜⎝ D A ⎠ 3Jmax 2
cities Vck , Vck+1 and accelerations Ack , Ack+1 need to be adjusted to find a
2 2 ⎛ k 2 k 2 ⎞ feasible solution for planning the JLAP. Non-linear optimization
((Ack +1) D − (Ack ) A) 1 ⎜ (Ac ) Vc (Ack +1) Vck +1 ⎟
+ + ⎜ − ⎟ techniques [31] can be used to plan a time optimal motion. However,
4Jmax 2 2Jmax ⎝ A D ⎠ utilizing iterative schemes for optimizing such a short motion is not
(Ack +1Vck +1 − Ack Vck ) feasible in real-time implementation, and should not improve the
+ overall cycle time significantly. Thus, the following analytical approach
Jmax (17)
is developed to determine a sub-optimal cornering velocity to plan a
and cruise velocity duration T4 is revealed from Eq. (17) as: feasible JLAP for stitching the cornering transitions as follows.
Firstly, as shown in Fig. 7 consecutive block's cornering speeds are
⎡ ⎧⎛ 2 k 2⎞ ⎛ k +1 2 ⎞ ⎫⎤ lowered to the minimum
⎢ ⎜(Vc ) − F 2⎟
⎪ ⎜⎝F − (Vc ) ⎟⎠ ⎝ ⎠ A(F + Vck ) D(F + Vck +1) ⎪⎥
⎢ ⎪ 2A
+ 2D
+ 2Jmax
− 2Jmax ⎪⎥ Vck = Vck +1 = min{Vck , Vck +1} (21)
⎢ ⎪ ⎪⎥
⎢ ⎪ 1
⎛ (A k +1) 4
(Ack )
4 ⎞ ⎪⎥ Notice that lowering cornering velocities reduces cornering errors
⎪ + 8J 2 ⎜ D − A ⎟+
c
⎢ ⎪⎥
1⎢ ⎪ max ⎝ ⎠ ⎪⎥ εk , εk+1 from their preset tolerance as well. Consequently, corner
T4 = ⎢Llk − ⎨ ⎛ 3 3⎞ ⎛ k +1 2 2 ⎞
⎬⎥ ≥ 0
transition lengths Lck , Lck+1 are shortened, and this elongates Llk (See
F⎢ ⎪ ⎜(Ac ) − (Ac ) ⎟
k k +1
⎜(Ac ) D − (Ac ) A⎟ k ⎪⎥
⎝ ⎠ ⎝ ⎠
⎢ ⎪ + + 2J
1 ⎪⎥ Fig. 7). Eq. (17) is then used to plan a feasible JLAP motion to stitch
⎢ ⎪ 3Jmax
2
4 Jmax
2
max ⎪⎥ consecutive cornering transitions. If a feasible JLAP can be planned,
⎢ ⎪ ⎛ k2 k 2 ⎞ (A k +1V k +1 − A k V k ) ⎪⎥
⎪ (Ac ) Vc (Ack +1) Vck +1 ⎪⎥ then consecutive cornering velocities are increased to reduce the cycle
⎢ ⎜ A − ⎟+ c c c c
⎪ ⎪⎥
⎢⎣ ⎩ ⎝ ⎠ time. The following analytical technique is developed to search for
D Jmax
⎭⎦
feasible cornering velocities in a computationally efficient and real-time
(18) suitable scheme.
Firstly, linear distance between smoothened corners, Llk is typically
If Eq. (18) does not hold, T4 < 0 , it is set to zero T4 = 0 , and the
very small < 1 mm in dense short-segmented tool-paths, and this
maximum reachable feedrate Fnew is computed from the solution of the
makes planning a complete 7-segmented JLAP unlikely. Instead, a
following quadratic equation:
shortened 3-segmented JLAP is planned to interpolate an acceleration
aFnew 2 + bFnew + c = 0 uninterrupted cornering transitions. It is assumed that the constant
(19)
feed, acceleration, and deceleration sections of the 7-segmented JLAP
where are non-existing, T4 = T2 = T6 = 0 , and it is assumed that if Vck > Vck+1
the motion starts with an acceleration decrease stage (T1 = 0 ).
Similarly, if Vck +1 > Vck , a deceleration increase section does not exist

87
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

(T7 = 0 ). The objective is to analytically compute near time-optimal


cornering velocity Vck and the corresponding cornering acceleration Ack
based on this simplified 3-segmented JLAP. As observed from Eqs. (8)
and (9), altering cornering speed actually alters ε, Ack , Lck . As a matter
of fact, cornering error ε , scales Vck , Ack , Lck , and this relationship can be
captured by introducing a scaling factor α as:

Ac′ k = α Ack ⎫

Vc′ = αVck ⎬ whereα ≥ 1
k

Lc′ k = α 2Lck ⎪
⎭ (22)
The achievable feedrate F and deceleration D values are determined
based on the 3-segmented JLAP as,

(Ac′ k )
2 ⎫
F = Vc′ k + ⎪

2Jmax

(Ac′ k ) + (Ack +1) ⎪
2 2
D=− (Vc′ k − Vck +1)Jmax + ⎪
2 ⎭ (23)
and corresponding segment durations are obtained;

Ac′ k D A ′ k +1 − D
T3 = , T5 = , T7 = c
Jmax −Jmax Jmax (24)
The total displacement traveled can be computed by integrating the
acceleration profile with the durations from Eq. (24) and amplitudes
from Eqs. (22) and (23) as:
3 2 2 3
(Ack ) (Ack ) Ack +1 (Ack ) D (Ack +1) Ack +1D 2 D3
L= 2
+ 2
− 2
+ 2
− 2
+ 2
3Jmax 2Jmax Jmax 6Jmax Jmax Jmax
αVck k
+ (Ac + Ack +1 − 2D ) + (α 2 − 1)Lck = Llk
Jmax (25)
Finally, the scaling factor α is calculated analytically from Eq. (25):

aα + bα 3 + cα 2 + dα + e = 0
4
3
(Vck ) 2Ack Vck
a = 1, b = − 2 + ,
Jmax(Lck ) JmaxLck
⎛ 2 2⎞ 2
3 3 ⎜3(Ack +1) − (Ack ) ⎟(Vck )
4(Ack ) + (Ack +1) ⎝ ⎠ 2Vck +1Ack +1 2(Lck + Llk )
c=− + 2 + −
6Jmax 2Lck 6Jmax 2(Lck ) JmaxLck Lck
2
Vck +1(Vck )
− 2
Jmax(Lck ) Fig. 8. Overlapping corner smoothing strategy.
⎛ 8A k (A k +1)
3
(Ack )
4
3(Ack +1)
4 2
(Ack ) (Ack +1)
2 2
(Vck +1)
d=− Vck ⎜ c c 2 + 2 − 2 − 2 − 2 ⎧ A ′ k = αA k ⎫ ⎧ A ′ k +1 = αA k +1 ⎫
⎝ 12Jmax3(Lck ) 12Jmax3(Lck ) 12Jmax3(Lck ) 12Jmax3(Lck ) Jmax(Lck ) ⎪ c c ⎪ ⎪ c c ⎪
2 ⎞ ⎨Vc′ k = α 2Vck ⎬ and ⎨Vc′ k +1 = α 2Vck +1⎬where 0 ≤ α ≤ 1
2Ack (Lck + Llk ) (Ack − Ack +1) Vck +1 ⎪
+ + ⎟ ⎪ L ′ k = α 3L k ⎪
⎪ ⎪
⎪ L ′ k +1 = α 3L k +1⎪

Jmax(Lck )
2 2
Jmax (Lck )
2
⎠ ⎩ c c⎭ ⎩ c c ⎭ (27)
2
⎛ k 3 3⎞
2 2 2 ⎜(Ac ) − (Ack +1) ⎟ and the associated scaling factor α can be calculated analytically
(Ack ) (Ack +1) (Ack − Ack +1) ⎝ ⎠
e= 2 − 2
following the similar procedure presented above.
4
8Jmax (Lck ) 72Jmax 4(Lck )
4 4 3 2 2
(A k +1) − 3(Ack ) + 8(Ack ) Ack +1 − 6(Ack ) (Ack +1) 3.2. Motion planning along overlapping corners
+ Vck +1 c 3 k2
12Jmax Lc
⎛ 3 3⎞
2⎜(Ack ) − (Ack +1) ⎟(Lck + Llk ) 2 Previous section presented planning of a continuous and rapid
⎝ ⎠ −2Ack +1Vck +1(Lck + Llk ) (Lck + Llk )
− 2 + 2 + 2 motion along locally corner-smoothed tool-path. If locally smoothed
2
3Jmax (Lck ) Jmax(Lck ) (Lck )
corners are not overlapping as shown in Fig. 5a, the approach
⎛ k 2 2⎞ 2
⎜(Ac ) − (Ack +1) ⎟(Vck +1) 3 presented in the Section 3.1 is effective to plan a jerk limited motion
⎝ ⎠ (Vck +1)
+ 2 + 2 analytically at low computational expense. Nevertheless, if linear
2Jmax 2(Lck ) Jmax(Lck )
segment lengths are short and cornering errors are large, locally
(26) smoothened corners overlap each other as shown in Fig. 5b. This
The cornering velocity is obtained based on α without the need of section presents planning of an uninterrupted jerk limited feed motion
iterative procedure from Eq. (22). This approach provides an effective along overlapping corners.
analytical planning of a near-time optimal JLAP to stitch consecutive The general geometry for two locally smoothed overlapping corners
cornering transitions. If a feasible solution could not be found from Eq. is presented in Fig. 8. Local corner trajectories are planned based on
(26), both current and next segment velocities Vck andVck+1 need to be the technique presented in Section 2. The idea is to connect mid-points
further lowered. This can be done by scaling consecutive cornering of overlapping corners to generate an acceleration un-interrupted rapid
velocities simultaneously by cornering motion (See Fig. 8a). The mid-point kinematics during

88
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

cornering transitions can be calculated as: k k +1 2k k +1 2


(smx − smx ) + (smy − smy )
Tm =
⎧ k k ⎫ ⎛ 2 2 2 2 ⎞
⎧ k k
asx k ⎫
+ aex
k
asy + aey

k
(vmx k
) + (vmy k +1
) + (vmx k +1
) + (vmy )

⎪ amx = ⎪ ⎪ amy = ⎪
⎪ 2
⎪ ⎪
2
⎪ ⎜ 2 ⎟
⎝ ⎠ (32)
⎨ k k
vsx k
+ vex ⎬ and ⎨ k k
vsy k
+ vey ⎬
v
⎪ mx = 4 ⎪ v
⎪ my = ⎪
4
⎪s k = ε k + x k ⎪ ⎪ k k k⎪ Next, in order to seek for rapid motion, one of the X or Y -axis jerk
⎩ mx x c⎭ ⎩ smy = εy + yc ⎭ (28) amplitudes is saturated, and the remaining 6 unknowns are solved
analytically from Eq. (29) by plugging scaled mid-corner position (smx′,
k k k k k k
where amx , vmx , smx and amy , vmy , smy are the midpoint acceleration, smy′), velocity (vmx′, vmy′) and accelerations (amx′, amy′) from Eq. (31).
velocity and position values for the X and Y axes. The mid-points of Notice that there are 4 cases to consider, jm1x = Jmax , jm2x = Jmax ,
consecutive corners are then connected by a 2-segmented jerk profile jm1y = Jmax , or jm2y = Jmax . The feasibility of the solution is checked
as shown in Fig. 8b. The kinematic constraints for interpolating mid- from Eq. (30), and the parameter set with the largest α is selected. For
points are written for the X-axis as: instance, if jm1x = Jmax the scaling factor α is computed from

Acc. Constraint : k +1
amx k
= amx + jm1x λx Tm + jm2x (1 − λx )Tm ⎫ aα 4 + bα 3 + cα 2 + dα + e = 0
⎪ ⎧ k 2 k k k k
Vel. Constraint : v mx = vmx + amxλx Tm + 2 jm1x λx Tm + (amx + jm1x λx Tm )⎪ ⎪ a = 4(vmx ) + 6amxxc − 6amxsmx
k +1 k k 1 2 2 k
⎪ ⎪ b = − 6a k +1x k + 6a k +1s k + 2a k v k T + 6j x k T
1
(1 − λx )Tm + 2 jm2x (1 − λx )2 Tm 2 ⎪ ⎪ mx c mx mx mx mx m m1x c m
⎪ ⎪
⎪ k
− 6jm1x smxTm
Disp. Constraint : skmx+1 = smx
k k
+ vmx
1 k
λx Tm + 2 amx
1
λx 2Tm 2 + 6 jm1x λx 3Tm 3 ⎬ ⎪

⎪ ⎨ c = − 8vmxk k +1
vmx + (amx k 2 2
) Tm + 6amx k +1 k k
vmxTm − 2jm1x vmx Tm 2
k k 1 2 2
+ (vmx + amxλx Tm + 2 jm1x λx Tm )(1 − λx )Tm ⎪ ⎪
⎪ ⎪ d = − 6amxxc + 6amxsmx − 8amxvmx Tm + 3amxamx Tm
k k k k +1 k k +1 k k +1 2
1 k 2 2
+ 2 (amx + jm1x λx Tm )(1 − λx ) Tm + 6 jm2x
1 ⎪ ⎪
⎪ k +1 2
⎪ e = 4(vmx ) + 6amx k +1 k
xc − 6amx k +1 k +1
smx − 6jm1x xck Tm
3 3 ⎪ ⎪
(1 − λx ) Tm ⎭
⎪ k +1 k +1
jm1x Tm 3 − 4jm1x vmx
k +1 2
⎩ + 6jm1x smx Tm + amx Tm (33)
(29)
either analytically or using a simple Newton-Raphson [31] type
Above, Tm is the motion duration, jm1x and jm2x are the jerk
iterative technique, both of which are computationally efficient. If a
amplitudes, and 0 < λx < 1 controls timing of jerk transition (See
feasible solution could be obtained, α is used to scale both corner
Fig. 8b). Note that the Y-axis complement of Eq. (29) can be written
velocities simultaneously similar to Eq. (27) (See Section 3.1), and all
with λ y , jm1y , jm2y . There are total of 7 unknowns,
the unknowns can be determined analytically.
Tm, λx , λ y , jm1x , jm2x , jm1y , jm2y that needs to be solved from total 6
equalities (X and Y axis contributions) given in Eq. (29). The solution
can be obtained in 2 steps. Firstly, λx = 0.5 is set to divide X-axis 4. Illustrative examples
motion into half. Three of the unknowns, Tm , jm1x and jm2x are calculated
from Eq. (29). Using Tm , the remaining unknowns λ y , jm1y and jm2y are This section presents application of the methods introduced in
obtained from the Y -axis complement. Notice that the following Sections 3.1 and 3.2 on a simple short-segmented tool-path. When
kinematic limits need to be satisfied to plan a feasible motion: corners are not overlapping, we identify the case as “local cornering”
and apply the acceleration uninterrupted corner smoothing technique
⎧ jm x ⎫ presented in Section 2 jointly with the feed planning method presented
⎪ 1 ⎪
⎧ λx ⎫ ⎪ jm2x ⎪ in Section 3.1. If local corners are overlapping, we will identify the case
0 ≤ Tm, 0<⎨ ⎬<1, − Jmax ≤ ⎨ j ⎬ ≤ Jmax as “global cornering” and apply the method presented in Section 3.2.
λ
⎩ y⎭ ⎪ m1y ⎪
⎪j ⎪ As shown in Fig. 9, the test tool-path consists of 3 linear moves
⎩ m2y ⎭ (30) generating 2 right-handed 45° corners. The length of linear segments
before and after the two corners are fixed to 10 mm, and the length of
If Eq. (30) is not satisfied, Vck and/or Vck+1 should be reduced to linear segment between corners is set to 0.5 mm. Programmed feedrate
satisfy the constraints. The problem could be formulated as a non- is F = 100 mm/s, and acceleration and jerk limits of the drives (X and Y
linear optimization problem and solved numerically. In order to avoid axis) are set to Amax = 3 × 103 mm/s2 and Jmax = 1 × 10 5 mm/ s 3, respec-
costly iterative schemes, the following analytical approach is developed tively.
to determine a sub-optimal cornering velocity. Fig. 9 (left hand side) shows application of “local corner smoothing”
Firstly, the cornering velocities are set identical to with a corner tolerance of ε = 9 μm . In this case, corners are well
Vck = Vck +1 = min{Vck , Vck +1}, and existence of a feasible solution is separated and thus they can be smoothened locally. Both axis jerk
checked from Eqs. (29) and (30). If a feasible solution could not be limits are utilized to generate fast cornering trajectories. Cornering
obtained, a scaling parameter is used to capture the relationship, velocities are computed identically as Vc = 13.26 mm/s. The JLAP profile
to stitch local corners is generated analytically, and the resultant total
⎧ a ′ k = αa k ⎫ ⎧ a ′ k = αa k ⎫
⎪ my my ⎪ cycle time is 0.357 s.
⎪ mx mx ⎪ ⎪ k ⎪
⎨ vmx k 2
′ = α vmx k ⎬, ⎨ vmy 2 k
′ = α vmy ⎬ where0 ≤ α ≤ 1 On the other hand, when the cornering tolerance increased to

⎪ s ′ k = α 3(s k − x k ) + x k ⎪
⎪ ⎪ k ⎪ ε = 80 μm , locally smoothened corner trajectories overlap as discussed
⎩ mx c⎭
⎪ smy 3 k k k⎪
mx c ⎩ ′ = α (smy − yc ) + yc ⎭ in Section 3.2. Since the linear distance between locally smoothened
(31) corners is less than zero the algorithm presented in Section 3.2 is
applied. As shown in Fig. 9 (right hand side), overlapping corners are
and seek for a faster cornering motion. Including the scaling factor, α , traveled in an uninterrupted fashion. The overlapping corner inter-
the total unknowns to plan overlapping cornering motion becomes 8; polation can keep cornering velocity higher as compared to the local
namely, α , Tm, λx , jm1x , jm2x , λ y , jm1y , jm2y . Firstly, the interpolation time corner interpolation technique. Fig. 9c and d show generated axis
Tm is approximated using linear distance in between the corners and the acceleration and jerk profiles. As shown, the acceleration and jerk
average velocity as: limits of the drives are fully utilized, the motion is continuous and
smooth, and the total cycle time could be reduced to 0.317 s.

89
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 9. Right-handed consecutive corner smoothing using local and overlapping cornering interpolation techniques.

5. Experimental results mented tool-path shown in Fig. 11. A part from the first and last long
linear moves, the spiral geometry is discretized densely with 1 mm long
Experimental validation and benchmark comparisons of the linear segments. The “local” and “global” corner smoothing algorithms
proposed technique are performed on the Cartesian X-Y motion from Sections 3.1 and 3.2 are implemented separately. These two
system shown in Fig. 10. The planar X-Y motion table is driven by 3 interpolation algorithms are then compared to a point-to-point (P2P)
linear motors. The heavier X-axis is designed as gantry and carries interpolation technique, which demands a full stop at each corner. All
the lighter Y-axis. In order to implement proposed algorithms, servo algorithms are sampled and commanded in real-time to the servo
amplifiers are set to operate in torque (current) control mode. Closed controllers. The desired feedrate is set to F = 100 mm/s. Axis accelera-
loop control is implemented in the Dspace DS1103® real time tion and jerk limits are fixed to Amax = 2000 mm/s2 and
control system by reading linear encoder feedback at a resolution Jmax = 50,000 mm/s3, respectively.
of 0.1 µm and commanding torque signal to the servos at a closed Fig. 11 illustrates the tool-path geometry smoothened by “local”
loop sampling interval of Ts = 0.1 ms. Both X and Y drives are and “global” corner smoothing methods. The desired cornering toler-
controlled by P-PI cascade motion controllers with velocity feed- ance is set to ε = 50 μm . Both, local and the global corner smoothing
forward action. The position feedback control bandwidths of the algorithms successfully smoothen the discrete path geometry and
axes are roughly matched at ωn = 50 Hz to ensure good motion deliver a continuous motion. Nevertheless, the “local” corner-smooth-
synchronization and contouring [32]. ing algorithm lowers the predefined cornering tolerance if the corners
Firstly, 3 different interpolation algorithms are implemented and are close to each other. This is because local corner smoothing
compared experimentally on smoothing a “spiral shaped” short-seg- algorithm cannot interpolate overlapping corners and so it enforces

90
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 10. Experimental planar motion platform.

Fig. 11. Short-segmented Spiral tool-path.

some linear distance in-between corners. Cornering errors are reduced motion scheme is barely utilized in modern machine tools. It is
from the preset value down to ε = 0.4–13.3 μm based on the corner implemented there to highlight the importance of corner smoothing.
angle. On the other hand, the “global” corner interpolation algorithm The local cornering technique, on the other hand, delivers a faster
generates smoothed cornering trajectory while mostly reaching the motion time. The acceleration profile is continuous, and limits of the
desired cornering tolerance. drives are fully utilized at every corner. Due to the obtuse corner
Fig. 12 presents the resultant kinematic profiles. As expected, the geometry, mostly jerk limits of the drives are saturated. Similar to the
P2P motion strategy shows cyclic motion kinematics and delivers the P2P interpolation scheme, feed profile is fluctuating and motion
longest cycle time. Due to short linear moves, commanded feedrate decelerates and accelerates in-between corners as it attempts to attain
along the tool-path is never reached. Please note that this type of higher speeds. Finally, the proposed global corner smoothing technique

91
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 12. Kinematic profiles along spiral tool-path.

Fig. 13 shows the experimentally measured contouring errors for


the tool-path interpolated by each method. As expected, within all the 3
methods, the largest contour errors typically occur at cornering
sections when drives undergo large acceleration, and attempt to
overcome static friction in the system. Table 1 summarizes correspond-
ing cycle times, contour errors, and computational times of each
algorithm. The dramatic cycle time reduction, nearly ~45%, by the
proposed global corner smoothing algorithm is obvious. Nevertheless,
both proposed global and local corner smoothing techniques deliver
Fig. 13. Experimentally recorded contouring errors. nearly identical contouring performance validating the potential for
practical application of the developed technique. Lastly, computation-
is applied. As shown in Fig. 12, the velocity profile is smooth and the ally time of each method is compared in Table 1. All the 3 methods are
fastest cycle time is achieved while respecting drive limits. It is also implemented in Matlab environment on a PC with Intel i7 2 GHz
noticeable that the tangential feedrate is gradually decreasing along the clocked chipset running on Windows. As observed, when cycle times
spiral section. This decline in the speed is dictated by the spiral get longer, computational expense also increases. This is simply due to
geometry having acute cornering angles towards the end of the path. the fact that more number of samples needs to be interpolated.

Table 1
Cycle time and contouring performance comparison along spiral tool-path.

Algorithms Cycle time Cycle time Contour error Computational time [s] Unit computational effort
Reduction in [μm] (Total computation time/total cycle
percentage time)
[s] [%]
RMS Max

Global (overlapping) 1.8840 45.9 2.5867 12.8730 0.6497 0.3449


Local 2.9075 16.5 2.2025 12.5822 0.8431 0.2900
Point-to-Point (P2P) 3.4832 Base 2.0071 9.3338 0.8925 0.2562
interpolation

92
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Fig. 14. “Heart” shaped short-segmented tool-path.

Fig. 15. Kinematic profiles along heart shaped tool-path.

93
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

Table 2 geometries. As shown, the proposed method, FIR filtering and the
Cycle time and contouring performance comparison. Bezier spline techniques all smoothen “local” corners at ε = 100 μm
tolerance. However, along short-segmented regions of the tool-path,
Algorithms Cycle Cycle time Contour error [μm]
time reduction in Bezier method overrides the set cornering tolerance to generate feasible
[s] percentage [%] RMS Max trajectories. Thus, it locally smoothens the path, which in return
elongates cycle times and generates interrupted motion with large
Global 3.457 45.0 2.4001 12.7891
fluctuation in acceleration and jerk profiles. The FIR filtering method
(overlapping)
Interpolation cannot cope with short-segmented sections either. In this experiment,
FIR Interpolation 3.774 39.8 2.1930 8.7736 FIR filter parameters are iteratively tuned to make sure that the corner
Bezier (Local) 4.092 34.7 2.1038 9.0324 tolerance and axis kinematic limits are respected along the short-
Interpolation segmented section of the path. In fact, the FIR technique needs to be
P2P Interpolation 6.270 Base 2.1446 12.0504
re-tuned different tool-paths.
Fig. 15 depicts the kinematic motion profiles of each method. The
However, the unit computational expense for interpolating the global programmed feedrate is F = 150 mm/s, and axis acceleration and jerk
and local corner smoothing algorithms with the proposed LAW limit are set to Amax = 2000 mm/s2 and Jmax = 50,000 mm/s3, respectively.
technique requires very comparable computational effort to local Fig. 15a shows the path (tangential) velocity profiles. As shown,
corner smoothing technique. This justifies that the proposed method proposed global interpolation algorithm delivers the fastest cycle time.
can be implemented in modern NC systems conveniently. Observed from the jerk profiles, the motion profiles are smoother with
Finally, a more complicated tool-path in the shape of a “hearth” shown less fluctuation in velocity, acceleration and jerk. Proposed method
in Fig. 14 is smoothened to benchmark contribution of the “global” corner uses significantly less jerk to interpolate along densely discretized tool-
smoothing technique. The tool-path consists of long linear segments with path section. This is mainly due to the fact that the proposed global
separated corners, and short ( < 2 mm) dense linear segments in the smoothing technique can interpolate overlapping corners with unin-
middle section. Motion direction also changes suddenly in the center of terrupted acceleration profiles. Notice that Bezier technique exceeds
the tool-path. 4 Different methods are compared to each other; namely jerk limits of the drives due to deficiencies in the real-time interpola-
the proposed 1-step “global” corner smoothing method, the 1-step “FIR” tion stated in the literature [6,8] and mentioned in Section 1 of the
filtering method [25], the “Bezier Spline” based 2-step local corner manuscript. Similarly, the FIR filtering method exceeds jerk limits of
smoothing technique [16], and finally the basic P2P interpolation. The the drives during short-segmented section of the tool-path. Both
FIR filtering method is a 1-step method since it directly filters the techniques deliver significantly more fluctuating feedrate profiles.
reference tool-path. It is capable of controlling separated corner toler- This typically results in a rougher surface finish of the manufactured
ances. But, it is not capable of accurately controlling cornering tolerance of parts. The cycle time comparison is presented in Table 2. The proposed
overlapping sections. Therefore, FIR filter parameters are hand tuned by global smoothing technique can reduce cycle time almost by half as
trial-and-error to make sure that the cornering tolerance is respected in compared to the basic P2P type interpolation. It also delivers faster
the middle of the tool-path, both axis acceleration and jerk limits are cycle time than Bezier and FIR filtering methods.
respected, and a rapid feed motion is achieved. Similarly, the Bezier spline Finally, experimental contouring errors are presented in Fig. 16. As
based corner smoothing technique is only capable of controlling local shown, the root mean square (RMS) average errors (See Table 2) are
cornering errors. very similar. The maximum contour errors are also comparable. The
The cornering tolerance is set to ε = 100 μm for all the methods, and Bezier corner smoothing technique generates interrupted acceleration
Fig. 14 shows actual and smoothened, i.e. interpolated, tool-path profiles. Hence, this adverse effect is particularly clear from contouring

Fig. 16. Contour error analysis.

94
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95

error fluctuations. Similar fluctuations are also observed for the FIR [10] K. Erkorkmaz, C.H. Yeung, Y. Altintas, Virtual CNC system. Part II. High speed
contouring application, Int. J. Mach. Tools Manuf. 46 (10) (2006) 1124–1138.
filtering technique. Proposed global corner smoothing technique [11] M.K. Jouaneh, Z. Wang, D.A. Dornfeld, Trajectory planning for coordinated motion
delivers a less a fluctuating, smoother contouring error profile. of a robot and a positioning table. I. Path specification, IEEE Trans. Robot. Autom.
6 (6) (1990) 735–745.
[12] M.K. Jouaneh, D.A. Dornfeld, M. Tomizuka, Trajectory planning for coordinated
6. Conclusions motion of a robot and a positioning table. II. Optimal trajectory sepecifications,
IEEE Trans. Robot. Autom. 6 (6) (1990) 746–759.
This paper proposes a novel global corner smoothing and real-time [13] C.A. Ernesto, R.T. Farouki, High-speed cornering by CNC machines under
prescribed bounds on axis accelerations and toolpath contour error, Int. J. Adv.
interpolation technique along short short-segmented linear tool-paths. Manuf. Technol. 58 (1–4) (2012) 327–338.
Corners are smoothed by interpolating axis motions continuously with [14] S. Tulsyan, Y. Altintas, Local toolpath smoothing for five-axis machine tools, Int. J.
uninterrupted acceleration profiles. This, in return, generates smooth Mach. Tools Manuf. 96 (2015) 15–26.
[15] M. Duan, C. Okwudire, Minimum-time cornering for CNC machines using an
and rapid motion along short-segmented tool-paths. Furthermore, the
optimal control method with NURBS parameterization, Int. J. Adv. Manuf.
cornering transition is planned to be near time-optimal where either Technol. 85 (5–8) (2016) 1405–1418.
acceleration or jerk limits of the drives are saturated. A novel Look- [16] B. Sencer, K. Ishizaki, E. Shamoto, A curvature optimal sharp corner smoothing
Ahead Windowing (LAW) technique is developed to efficiently plan the algorithm for high-speed feed motion generation of NC systems along linear tool
paths, Int. J. Adv. Manuf. Technol. 76 (9–12) (2015) 1977–1992.
feed motion. As compared to already existing techniques in the [17] L.B. Zhang, Y.P. You, J. He, X.F. Yang, The transition algorithm based on
literature, the hereby-proposed algorithms are 1-step and analytical. parametric spline curve for high-speed machining of continuous short line
Therefore, proposed algorithms are computationally efficient and segments, Int. J. Adv. Manuf. Technol. 52 (1–4) (2011) 245–254.
[18] H. Zhao, L. Zhu, H. Ding, A real-time look-ahead interpolation methodology with
convenient to implement in real-time on CNC machine tools. curvature-continuous B-spline transition scheme for CNC machining of short line
Furthermore, the proposed global corner-smoothing scheme considers segments, Int. J. Mach. Tools Manuf. 65 (2013) 88–98.
overlapping corners in short-segmented tool-paths and generates [19] Q. Bi, Y. Wang, L. Zhu, H. Ding, A practical continuous-curvature Bezier transition
algorithm for high-speed machining of linear tool path, in: Proceedings of the
smoother and at the same faster motion suitable for high speed International Conference on Intelligent Robotics and Applications, Springer Berlin
machining. Experimental benchmarks along short segmented tool- Heidelberg, pp. 465–476, December 2011.
paths show that the proposed algorithms can improve the cycle time up [20] X. Beudaert, S. Lavernhe, C. Tournier, 5-axis local corner rounding of linear tool
path discontinuities, Int. J. Mach. Tools Manuf. 73 (2013) 9–16.
to ~45% as compared to P2P path interpolation and 10–15% compared
[21] K. Erkorkmaz, Y. Altintas, High speed CNC system design. Part I: jerk limited
to the existing techniques in the literature while still delivering trajectory generation and quintic spline interpolation, Int. J. Mach. Tools Manuf.
identical or better contouring performance. 41 (9) (2001) 1323–1345.
[22] M.T. Lin, M.S. Tsai, H.T. Yau, Development of a dynamics-based NURBS
interpolator with real-time look-ahead algorithm, Int. J. Mach. Tools Manuf. 47
References (15) (2007) 2246–2262.
[23] Y. Altintas, K. Erkorkmaz, Feedrate optimization for spline interpolation in high
[1] L. Piegl, W. Tiller, The NURBS Book, Springer Science & Business Media, 2012. speed machine tools, CIRP Ann. 52 (2003) 297–302.
[2] C. Brecher, S. Lange, M. Merz, F. Niehaus, C. Wenzel, M. Winterschladen, M. Weck, [24] M. Weck, G. Ye, Sharp corner tracking using the IKF control strategy, CIRP Ann.
NURBS based ultra-precision free-form machining, CIRP Ann. Manuf. Technol. 55 Manuf. Technol. 39 (1) (1990) 437–441.
(1) (2006) 547–550. [25] B. Sencer, K. Ishizaki, E. Shamoto, High speed cornering strategy with confined
[3] J.M. Langeron, E. Duc, C. Lartigue, P. Bourdet, A new format for 5-axis tool path contour error and vibration suppression for CNC machine tools, CIRP Ann. Manuf.
computation, using Bspline curves, Comput. Aided Des. 36 (12) (2004) 1219–1229. Technol. 64 (1) (2015) 369–372.
[4] M.C. Tsai, C.W. Cheng, M.Y. Cheng, A real-time NURBS surface interpolator for [26] M.S. Tsai, Y.C. Huang, A novel integrated dynamic acceleration/deceleration
precision three-axis CNC machining, Int. J. Mach. Tools Manuf. 43 (12) (2003) interpolation algorithm for a CNC controller, Int. J. Adv. Manuf. Technol. (2016)
1217–1227. 1–14.
[5] Q.G. Zhang, R.B. Greenway, Development and implementation of a NURBS curve [27] S. Tajima, B. Sencer, Kinematic corner smoothing for high speed machine tools,
motion interpolator, Robot. Comput. Integr. Manuf. 14 (1) (1998) 27–36. Int. J. Mach. Tools Manuf. 108 (2016) 27–43.
[6] F.-C. Wang, P.K. Wright, B.A. Barsky, D.C.H. Yang, Approximately arc-length [28] X. Pessoles, Y. Landon, W. Rubio, Kinematic modelling of a 3-axis NC machine tool
parameterized C3 quintic interpolatory splines, ASME J. Mech. Des. 121 (3) (1999) in linear and circular interpolation, Int. J. Adv. Manuf. Technol. 47 (5–8) (2010)
430–439. 639–655.
[7] M. Heng, K. Erkorkmaz, Design of a NURBS interpolator with minimal feed [29] L. Biagiotti, C. Melchiorri, FIR filters for online trajectory planning with time-and
fluctuation and continuous feed modulation capability, Int. J. Mach. Tools Manuf. frequency-domain specifications, Control Eng. Pract. 20 (12) (2012) 1385–1399.
50 (3) (2010) 281–293. [30] Q. Zhang, X.S. Gao, H.B. Li, M.Y. Zhao, Minimum time corner transition algorithm
[8] K. Erkorkmaz, Y. Altintas, Quintic spline interpolation with minimal feed fluctua- with confined feedrate and axial acceleration for nc machining along linear tool
tion, in: Proceedings of the ASME 2003 International Mechanical Engineering path, Int. J. Adv. Manuf. Technol. (2016) 1–16.
Congress and Exposition, American Society of Mechanical Engineers, 2003, pp. [31] T. Coleman, M.A. Branch, A. Grace, Optimization Toolbox for Use with MATLABs,
523–531. User's Guide Version 2, The MathWorks Inc, Natick, MA, 1999.
[9] Y.K. Choi, A. Banerjee, Tool path generation and tolerance analysis for free-form [32] S.S. Yeh, P.L. Hsu, Perfectly matched feedback control and its integrated design for
surfaces, Int. J. Mach. Tools Manuf. 47 (3) (2007) 689–696. multiaxis motion systems, J. Dyn. Syst. Meas. Control 126 (3) (2004) 547–557.

95
Another random document with
no related content on Scribd:
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law in
the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name
associated with the work. You can easily comply with the terms of
this agreement by keeping this work in the same format with its
attached full Project Gutenberg™ License when you share it without
charge with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the terms
of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears, or
with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this eBook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived


from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted


with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning of
this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this


electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1 with
active links or immediate access to the full terms of the Project
Gutenberg™ License.
1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or expense
to the user, provide a copy, a means of exporting a copy, or a means
of obtaining a copy upon request, of the work in its original “Plain
Vanilla ASCII” or other form. Any alternate format must include the
full Project Gutenberg™ License as specified in paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing


access to or distributing Project Gutenberg™ electronic works
provided that:

• You pay a royalty fee of 20% of the gross profits you derive from
the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of receipt that
s/he does not agree to the terms of the full Project Gutenberg™
License. You must require such a user to return or destroy all
copies of the works possessed in a physical medium and
discontinue all use of and all access to other copies of Project
Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of


any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.

• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™


electronic work or group of works on different terms than are set
forth in this agreement, you must obtain permission in writing from
the Project Gutenberg Literary Archive Foundation, the manager of
the Project Gutenberg™ trademark. Contact the Foundation as set
forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


considerable effort to identify, do copyright research on, transcribe
and proofread works not protected by U.S. copyright law in creating
the Project Gutenberg™ collection. Despite these efforts, Project
Gutenberg™ electronic works, and the medium on which they may
be stored, may contain “Defects,” such as, but not limited to,
incomplete, inaccurate or corrupt data, transcription errors, a
copyright or other intellectual property infringement, a defective or
damaged disk or other medium, a computer virus, or computer
codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except


for the “Right of Replacement or Refund” described in paragraph
1.F.3, the Project Gutenberg Literary Archive Foundation, the owner
of the Project Gutenberg™ trademark, and any other party
distributing a Project Gutenberg™ electronic work under this
agreement, disclaim all liability to you for damages, costs and
expenses, including legal fees. YOU AGREE THAT YOU HAVE NO
REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF
WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE
PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE
FOUNDATION, THE TRADEMARK OWNER, AND ANY
DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE
TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL,
PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


discover a defect in this electronic work within 90 days of receiving it,
you can receive a refund of the money (if any) you paid for it by
sending a written explanation to the person you received the work
from. If you received the work on a physical medium, you must
return the medium with your written explanation. The person or entity
that provided you with the defective work may elect to provide a
replacement copy in lieu of a refund. If you received the work
electronically, the person or entity providing it to you may choose to
give you a second opportunity to receive the work electronically in
lieu of a refund. If the second copy is also defective, you may
demand a refund in writing without further opportunities to fix the
problem.

1.F.4. Except for the limited right of replacement or refund set forth in
paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


warranties or the exclusion or limitation of certain types of damages.
If any disclaimer or limitation set forth in this agreement violates the
law of the state applicable to this agreement, the agreement shall be
interpreted to make the maximum disclaimer or limitation permitted
by the applicable state law. The invalidity or unenforceability of any
provision of this agreement shall not void the remaining provisions.
1.F.6. INDEMNITY - You agree to indemnify and hold the
Foundation, the trademark owner, any agent or employee of the
Foundation, anyone providing copies of Project Gutenberg™
electronic works in accordance with this agreement, and any
volunteers associated with the production, promotion and distribution
of Project Gutenberg™ electronic works, harmless from all liability,
costs and expenses, including legal fees, that arise directly or
indirectly from any of the following which you do or cause to occur:
(a) distribution of this or any Project Gutenberg™ work, (b)
alteration, modification, or additions or deletions to any Project
Gutenberg™ work, and (c) any Defect you cause.

Section 2. Information about the Mission of


Project Gutenberg™
Project Gutenberg™ is synonymous with the free distribution of
electronic works in formats readable by the widest variety of
computers including obsolete, old, middle-aged and new computers.
It exists because of the efforts of hundreds of volunteers and
donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the


assistance they need are critical to reaching Project Gutenberg™’s
goals and ensuring that the Project Gutenberg™ collection will
remain freely available for generations to come. In 2001, the Project
Gutenberg Literary Archive Foundation was created to provide a
secure and permanent future for Project Gutenberg™ and future
generations. To learn more about the Project Gutenberg Literary
Archive Foundation and how your efforts and donations can help,
see Sections 3 and 4 and the Foundation information page at
www.gutenberg.org.

Section 3. Information about the Project


Gutenberg Literary Archive Foundation
The Project Gutenberg Literary Archive Foundation is a non-profit
501(c)(3) educational corporation organized under the laws of the
state of Mississippi and granted tax exempt status by the Internal
Revenue Service. The Foundation’s EIN or federal tax identification
number is 64-6221541. Contributions to the Project Gutenberg
Literary Archive Foundation are tax deductible to the full extent
permitted by U.S. federal laws and your state’s laws.

The Foundation’s business office is located at 809 North 1500 West,


Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up
to date contact information can be found at the Foundation’s website
and official page at www.gutenberg.org/contact

Section 4. Information about Donations to


the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission of
increasing the number of public domain and licensed works that can
be freely distributed in machine-readable form accessible by the
widest array of equipment including outdated equipment. Many small
donations ($1 to $5,000) are particularly important to maintaining tax
exempt status with the IRS.

The Foundation is committed to complying with the laws regulating


charities and charitable donations in all 50 states of the United
States. Compliance requirements are not uniform and it takes a
considerable effort, much paperwork and many fees to meet and
keep up with these requirements. We do not solicit donations in
locations where we have not received written confirmation of
compliance. To SEND DONATIONS or determine the status of
compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where


we have not met the solicitation requirements, we know of no
prohibition against accepting unsolicited donations from donors in
such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make


any statements concerning tax treatment of donations received from
outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.

Section 5. General Information About Project


Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could be
freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose network of
volunteer support.

Project Gutenberg™ eBooks are often created from several printed


editions, all of which are confirmed as not protected by copyright in
the U.S. unless a copyright notice is included. Thus, we do not
necessarily keep eBooks in compliance with any particular paper
edition.

Most people start at our website which has the main PG search
facility: www.gutenberg.org.

This website includes information about Project Gutenberg™,


including how to make donations to the Project Gutenberg Literary
Archive Foundation, how to help produce our new eBooks, and how
to subscribe to our email newsletter to hear about new eBooks.

You might also like