Professional Documents
Culture Documents
(Download PDF) Global Tool Path Smoothing For CNC Machine Tools With Uninterrupted Acceleration Shingo Tajima Burak Sencer Full Chapter PDF
(Download PDF) Global Tool Path Smoothing For CNC Machine Tools With Uninterrupted Acceleration Shingo Tajima Burak Sencer Full Chapter PDF
https://ebookmass.com/product/machine-learning-for-time-series-
forecasting-with-python-francesca-lazzeri/
https://ebookmass.com/product/distributed-machine-learning-with-
pyspark-abdelaziz-testas/
https://ebookmass.com/product/elsevier-weekblad-
week-26-2022-gebruiker/
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/
https://ebookmass.com/product/visualization-techniques-for-
climate-change-with-machine-learning-and-artificial-intelligence-
arun-lal-srivastav/
https://ebookmass.com/product/calculate-with-
confidence-8e-oct-26-2021_0323696953_elsevier-8th-edition-morris-
rn-bsn-ma-lnc/
https://ebookmass.com/product/distributed-machine-learning-with-
pyspark-1st-edition-abdelaziz-testas/
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
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
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 θ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)
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)
1 1
⎡ xc ⎤ VsxTc + 2 Asx Tc 2 + 6 JxTc 3 ⎡ cos(θs )⎤
Pc = ⎢ y ⎥ = ⎢ ⎥
⎣ c⎦ cos(θs ) + cos(θe ) ⎣ sin(θs ) ⎦
Lc (5)
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)
84
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95
⎧ 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)
85
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95
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).
86
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95
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)
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
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
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
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
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
92
S. Tajima, B. Sencer International Journal of Machine Tools & Manufacture 121 (2017) 81–95
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
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.
• 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 comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.
1.F.
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.
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.
Most people start at our website which has the main PG search
facility: www.gutenberg.org.