A curvature optimal sharp corner smoothing algorithm for high

advertisement
A curvature optimal sharp corner
smoothing algorithm for high-speed feed
motion generation of NC systems along
linear tool paths
Burak Sencer, Kosuke Ishizaki & Eiji
Shamoto
The International Journal of
Advanced Manufacturing Technology
ISSN 0268-3768
Int J Adv Manuf Technol
DOI 10.1007/s00170-014-6386-2
1 23
Your article is protected by copyright and
all rights are held exclusively by SpringerVerlag London. This e-offprint is for personal
use only and shall not be self-archived
in electronic repositories. If you wish to
self-archive your article, please use the
accepted manuscript version for posting on
your own website. You may further deposit
the accepted manuscript version in any
repository, provided it is only made publicly
available 12 months after official publication
or later and provided acknowledgement is
given to the original source of publication
and a link is inserted to the published article
on Springer's website. The link must be
accompanied by the following text: "The final
publication is available at link.springer.com”.
1 23
Author's personal copy
Int J Adv Manuf Technol
DOI 10.1007/s00170-014-6386-2
ORIGINAL ARTICLE
A curvature optimal sharp corner smoothing algorithm
for high-speed feed motion generation of NC systems
along linear tool paths
Burak Sencer & Kosuke Ishizaki & Eiji Shamoto
Received: 30 April 2014 / Accepted: 10 September 2014
# Springer-Verlag London 2014
Abstract Conventional tool paths for computer numericalcontrolled (CNC) machine tools or NC positioning systems
are mainly composed of linear motion segments, or the socalled G1 commands. This approach exhibits serious limitations in terms of achieving the desired part of geometry and
productivity in high-speed machining. Velocity and acceleration discontinuities occur at the junction points of consecutive
segments. In order to generate smooth and continuous feed
motion, a geometric corner smoothing algorithm is proposed
in this paper, which fits quintic B-splines to blend adjacent
straight lines together. The proposed transition scheme ensures G2 continuity transitions and optimal curvature geometry delivering fast cycle time without violating the axis acceleration limits. The cornering error is controlled analytically
allowing the user to set the desired cornering tolerance. The
feed profile along the corner-blended tool path is generated
based on S-curve-type acceleration profile, and it is scheduled
for minimum cycle time. At last, the corner-blended tool path
is interpolated in real-time with minimum feed fluctuation for
accurate and smooth feed motion. Proposed algorithms are
implemented, and their effectiveness is tested on a CNC
machine tool.
Keywords Machine tools . NC system . Trajectory
generation . Bezier curve . Curvature
1 Introduction
With recent advances in part design and manufacturing technologies, computer-aided design (CAD) systems are utilized
to design complex geometries compromised of smooth
B. Sencer (*) : K. Ishizaki : E. Shamoto
Nagoya University, Nagoya, Aichi, Japan
e-mail: burak0307@gmail.com
parametric splines such a NURBS or B-splines [1]. Direct
interpolation of these curves is proven to be superior in terms
of providing smoother and faster motion [2–4]. However, vast
majority of numerical control (NC) units of machine tools or
robotic systems do not accept reference tool paths defined by
high order parametric curves. One main reason for this is the
lack of an established convention for the data transfer between
CAD and NC. Another reason is implementation issues within
the NC. Real-time interpolation of parametric curves still
exhibits some bottlenecks in terms of accurate computation
of curve lengths [5] or the suppression of feed fluctuations [6,
7]. Instead, given the tolerance, computer-aided manufacturing (CAM) systems are used to generate cutter location files
compromised of numerous short line segments, and NC systems simply interpret these linear “point-to-point” motion
commands. Interpolating along those linear segments exhibits
serious limitations in terms of achieving the desired productivity. The motion has to stop between each linear segment
block due to the lack of higher order geometric continuity.
This leads to elongated cycle times since the motion has to
accelerate and decelerate along each linear segment. On the
other hand, if linear segments are travelled in constant feed
motion, there will be severe discontinuities in velocity and
acceleration at junction points. This may excite motion systems’ lightly damped structural modes and cause tracking
errors, both of which severely deteriorate the positioning
quality [8].
In an attempt to generate smooth continuous motion along
series of discrete linear motion commands, two major techniques have been proposed for modern NC systems. The first
one is geometric path smoothing where curve-fitting techniques are utilized to smoothen the discrete tool-path data.
Advanced NC systems utilize approximate or exact spline
interpolation techniques to generate continuous trajectories
from batch of linear point-to-point motion commands [9,
10]. There exist several shortcomings when these methods
Author's personal copy
Int J Adv Manuf Technol
are applied. Firstly, higher order such as cubic (3rd) or quintic
(5th) splines is necessary to generate C2, i.e. acceleration
continuous, tool paths from given discrete data.
Nevertheless, higher order splines may exhibit “wiggles”
or “curls” when fitted along densely placed short linear
motion segments due to numerical conditioning. This
could be addressed utilizing some heuristic methods [11,
12], or some energy functions based on pseudo jerk or the
curvature can be considered [13–15] for smoothness. An
alternative is to approximate the discrete tool path by
parametric splines. However, in this case, the control of
the fitting error becomes computationally expensive for
real-time implementation.
Next, “corner blending,” also called the “corner smoothing,” techniques have been proposed to achieve nonstop continuous motion. The idea is straightforward. Sharp corner is
replaced with a smooth parametric curve, as has already been
applied in robotics literature [16]. Jouaneh et al. [17] replaced
the corner with a circular arc for fast cornering. However, a
circular arc only delivers velocity continuous motion transition. They later used a double (two) clothoid curves to further
smoothen the motion transition [18]. These techniques are
computationally less stringent and lead to more efficient
real-time implementation in the NC system. But, the order of
the blending curve must be increased to control the fitting
tolerance and the corner geometry at the same time. Yutkowitz
and Chester [19] utilized two 4th order polynomials to realize
corner blending for Cartesian motion systems. This method
delivers C2 continuous corner transition in the expense of
significant computational load. Pateloup et al. [20] proposed
a 2-D path-smoothing method, which employs cubic Bsplines with eight control points to round pocket profiles.
Similarly, Zhang et al. [21] proposed a more general method
utilizing double cubic B-splines. Others [22, 23] also utilized
similar transition methods to achieve acceleration continuous
feed motion.
One of the vital aspects of corner smoothing is the design of
the corner blend so that it can be traveled at high speed and
thus the total cycle time could be minimized. In practice, a
conventional tool path may contain thousands of linear segments. Minimizing the cornering time spent at each corner
actually presents a great potential to reduce overall machining
time. However, limited effort has been directed toward the
design of optimal corner geometry. Erkorkmaz et al. [24]
considered dynamics of the servo system while designing
the corner blend. They found that over-corner spline delivers
less cornering error but a longer cornering time. Beudaert et al.
[25] addressed the problem of sharp corners in 5-axis motion
utilizing a pair of B-spline curves. Zhao et al. [23] proposed a
real-time cornering scheme where the curvature extremum
could be computed for fitted corner splines. They concluded
that optimization of the curvature in real-time is computationally stringent and unfeasible. Similarly, authors [26] have tried
to find real-time efficient optimization techniques. This paper
proposes a “curvature optimal cornering scheme” where
the maximum curvature of the corner is minimized in a
computationally efficient strategy that is suitable for
real-time implementation. This results in a high-speed
cornering scheme and thus significant reduction in the total
cycle time.
Once the discrete tool path is blended with corner
splines, it becomes a mixture of linear segments continuously connected with blending splines. The next problem is scheduling of the feedrate profile along the tool
path. Due to curved corner profile, tangential feed must
be lowered so that axis velocity and acceleration limits
are not violated at corner sections. Therefore, highspeed feed sections of linear segments must be stitched
together with low-speed cornering segments while ensuring that the kinematic compatibility conditions between position, velocity, acceleration, and jerk are not
violated. Several feed profiles have been suggested in
the literature to smoothly schedule the tangential speed
[27, 28]. Comprehensive feedrate optimization techniques have also been introduced for complex spline
tool paths [29–31] to minimize the cycle time while
respecting physical limits of the drives. As compared
to the current literature, the work in this paper utilizes
smooth S-curve-type acceleration transitions while considering the kinematic compatibility conditions between
adjacent feed segments. An efficient algorithm is proposed for federate scheduling along the entire tool path
considering the maximum cornering speed while respecting the acceleration limits of the drives.
At last, the tool path must be interpolated with respect to
the feedrate profile in real-time to generate axis reference
commands. In order to smoothly interpolate the reference
trajectory without any feedrate fluctuations, the recursive interpolation scheme developed in a previous study [7] for
parametric splines is applied on quintic Bezier corner
blends.
This paper presents methods to overcome some of the
inefficiencies in current corner smoothing techniques and
presents a computationally efficient curvature optimal corner
smoothing algorithm for high-speed machine tools and motion systems to attain minimum cycle time motion. The overall corner smoothing scheme is summarized in Fig. 1. Once
the discrete tool path is generated by CAM systems, proposed
corner smoothing algorithm utilizes a single quintic Bezier
spline to ensure G2 continuous motion transition between
linear segments. The corner curvature is optimized to deliver
minimum curvature extremum and thus realizes rapid
cornering speed using less acceleration/torque capacities of
the axes in motion. Next, S-curve-type acceleration transients
are designed to stitch feed segments smoothly along multisegmented tool path, and a feedrate-scheduling algorithm is
Author's personal copy
Int J Adv Manuf Technol
Fig. 1 Proposed corner smoothing scheme
presented to plan the feed motion along multi-segmented tool
path. Finally, it is interpolated in real-time and validated
experimentally on a 3-axis Cartesian machine tool.
proposed Bezier blend that needs to be determined to ensure
the following:
(i)
2 Smoothening of sharp corners
Two consecutive linear segments are blended with
Bezier splines as shown in Fig. 2a to deliver a smooth
transition of feed motion from one linear segment to the
next. A quintic Bezier segment (see in Fig. 2b) in
Cartesian coordinates can be defined parametrically as
follows:
2
3
B x ðu Þ
5
4
2
Þ3 P2 and
4
BðuÞ ¼ By ðuÞ 5 ¼ ð1−uÞ3 P0 þ 25uð1−uÞ 4P1 þ 10u ðu−1
5
þ10u ð1−uÞ P3 þ 5u ð1−uÞP4 þ u P5
Bz ðuÞ
2
3
2
3
2
3
P0;x ðuÞ
P0;x ðuÞ
P5;x ðuÞ
4
5
4
5
4
P0 ¼ P0;y ðuÞ ; P1 ¼ P0;y ðuÞ ; …; P5 ¼ P5;y ðuÞ 5
P0;z ðuÞ
P0;z ðuÞ
P5;z ðuÞ
ð1Þ
where Bx, By, and Bz are the axis position polynomials. P0,
P1,…, P5 are the vectors containing control points for each
axis coordinate. u is the Bezier curve parameter, u∈[0,1]. As
observed from Eq. 1, there are six control points in the
Smooth transition between linear segments, namely G2
continuous motion
(ii) Minimum curvature extremum for the fastest cornering
speed
(iii) Accurate control of the cornering error to respect the
manufacturing tolerances
2.1 Design of the quintic Bezier blend
The quintic Bezier blend is applied in transition of two
point-to-point linear motion segments as shown
in Fig. 2c. Pstart is the starting point of the kth linear
segment, Ptrans is the ending point, which becomes the
transition point to the (k+1)th segment, and θ is the
cornering angle. In blending two consecutive linear
segments, G 2 continuity is ensured so that two
successive segments share the same tangent and normal
directions at the junction points. Combined with
accurate interpolation presented in later sections,
this allows the realization of C 2 motion. Differentiating Eq. 1 with respect to the spline parameter u
gives the 1st and 2nd derivative profiles along the Bezier
blend:
Author's personal copy
Int J Adv Manuf Technol
anywhere along ts and te. They are placed at a distance of c
from the junction points as
P1 ¼ P0 þ cts and P4 ¼ P5 −cte g
ð6Þ
Please note that this only ensures G1 continuity since only
the tangent directions are matched but not their magnitude.
Next, in order to satisfy curvature continuity, normal vectors at
the junction points, Buu|u = 0 and Buu|u = 1, must be zero.
According to Eq. 3, this can be achieved by satisfying
Buu ju¼0 ¼ 20ðP2 −2P1 þ P0 Þ ¼ 0 → P1 −P0 ¼ P2 −P1
Buu ju¼1 ¼ 20ðP5 −2P4 þ P3 Þ ¼ 0 → P4 −P5 ¼ P3 −P4
ð7Þ
Substituting Eq. 7 into Eq. 4 yields
P0 þ 2cts ¼ P2 ;
Fig. 2 Quintic Bezier corner blending
9
dBðuÞ
>
¼ 5ð1−uÞ4 ðP1 −P0 Þ þ 20uð1−uÞ3 ðP2 −P1 Þ þ 30u2 ðu−1Þ2 ðP3 −P2 Þ >
>
>
du
=
þ20u3 ð1−uÞðP4 −P3 Þ þ 5u4 ðP5 −P4 Þ
>
>
>
d 2 B ð uÞ
>
3
2
;
Buu ¼
¼
20
ð
1−u
Þ
ð
P
−2P
þ
P
Þ
þ
60u
ð
1−t
Þ
ð
P
−2P
þ
P
Þ
2
1
0
3
4
5
du2
Bu ¼
ð2Þ
Evaluating the profiles from Eqs. 1 and 2, at the start u=0
and end u=1 of the Bezier blend reveals
9
9
Bju¼1 ¼ P5 ;
Bju¼0 ¼ P0 ;
=
=
Bu ju¼0 ¼ 5ðP1 −P0 Þ
Bu juu¼1 ¼ 5ðP5 −P4 Þ
and
;
;
Buu ju¼0 ¼ 20ðP2 −2P1 þ P0 Þ
Buu ju¼1 ¼ 20ðP5 −2P4 þ P3 Þ
ð3Þ
As observed from Eq. 3, P0 and P5 define junction points of
the Bezier blend to linear segments. In this design, they are
placed at a Euclidian distance, 2c+d away from the corner
transition point, Ptrans as
P0 ¼ Ptrans −ð2c þ d Þt s
and
where ts and te are the unit tangent vectors along linear
segments,
Ptrans −Pstart
kPtrans −Pstart k
and
P5 −2cte ¼ P3 g
ð8Þ
which reveals that the control points P1 must be placed
collinear with P0 and P2, and P3 with P4 and P5. From
Eqs. 6 and 8, all six control points of the Bezier blend
are determined as
9
P0 ¼ Ptrans −ð2c þ d Þts P5 ¼ Ptrans þ ð2c þ d Þte =
ð9Þ
P 1 ¼ P 0 þ c ts
P4 ¼ P5 − c ts
;
P2 ¼ P0 þ 2 c ts
P3 ¼ P5 − 2 c ts
making the corner blend symmetric with respect to the angular
bisector of the two lines Pstart Ptrans and Ptrans Pend , and G2
continuous to the neighboring segments.
2.2 Curvature optimization
Curvature is solely a function of the path geometry, and it is
integrally tied to the acceleration and jerk required to track the
corner geometry. In high-speed machining, it is desirable to
maximize the total cornering speed while still respecting the
actuator acceleration. The curvature along the path is defined
as follows [32]:
dT T
κ¼
ð10Þ
ds ; T ¼ t x ; t y ; t z 31
P5 ¼ Ptrans þ ð2c þ d Þte g
ð4Þ
ts ¼
and
te ¼
Pend −Ptrans
kPend −Ptrans k
ð5Þ
Tangent vectors on the junction points of the Bezier can be
aligned to linear segment by simply placing P1 and P4
where T is the unit tangent vector and s is the arc displacement. The relationship between the differential arc displacement ds and the Bezier parameter increment du can be derived
as
ds ¼ kBu kdu
ð11Þ
Furthermore, as the curve is traveled along, change in the
unit tangent vector as a function of time can be expressed by
applying the chain rule to Eq. 10:
Author's personal copy
Int J Adv Manuf Technol
dT dT ds ¼
dt ds dt ¼ κv
ð12Þ
where v ¼ s ¼ ds=dt is the tangential or the path velocity.
Please note that the derivative of the unit tangent vector, dT/dt,
is orthogonal to itself. Therefore, the path normal can also be
written as a function of time:
N¼
1
dT
kdT=dtk dt
ð13Þ
Axis velocity v=[vx,vy,vz]T and acceleration a=[ax,ayaz]T
components are written from Eqs. 12 and 13 as
9
v ¼ vT and
=
ð14Þ
d
dv
dT
a ¼ ðvTÞ ¼ T þ v ;
dt
dt
dt
and from Eq. 14 the effect of curvature on the axis accelerations is derived as
a ¼ v T þ v2 κN
ð15Þ
The v ¼ s:: ¼ dv=dt term represents tangential or the socalled path acceleration. Assuming that the corners are turned
at constant speed, that term vanishes relating the axis accelerations directly to the path velocity, v and the curvature as
2 3
ax
a ¼ 4 ay 5 ¼ v2 κN
ð16Þ
az
Thus, the objective hereby is to minimize curvature extremum, i.e., the maximum of the curvature along the Bezier
blend, so that the cornering speed can be increased while still
staying within the acceleration limits of drives.
In the proposed Bezier corner blend design, the shape of
the Bezier, i.e., the control point locations, is controlled by the
Euclidian distances c and d. Figure 3 shows the effect of c and
d on the Bezier shape for a cornering angle of 60° when
junction points (P0 and P5) are fixed. As illustrated, by keeping the junction points fixed and increasing d, control points
are pushed away from corner transition point Ptrans leading to
larger cornering errors. Increasing c leads to smaller fitting
errors but in contrary may generate larger curvature radius
depending on d. Thus, the optimal ratio of c/d is searched for
minimizing the curvature extremum. Curvature along the
Bezier can be written analytically from Eqs. 2, 10, and 11 as
a function of the curve parameter, u:
κ¼
−12nusinθð2n þ 1Þðu−1Þðnu−2u−2nu3 þ nu4 þ 4u3 −2u4 þ 1Þ
3
LT A 2
ð17Þ
where n=c/d, LT =2c+d, and A=A(u) is an 8th order polynomial. Please refer to the Appendix section for detailed derivation of Eq. 17. As noted, curvature is affected by the cornering
angle, θ, n, and also the total transition length LT, which simply
scales the curvature in this design. The optimal n value for
various cornering angles can be searched to minimize the
curvature extremum from Eq. 17. Nevertheless, this operation
may be computationally expensive considering the fact that it
needs to be implemented in real-time for each and every
corner. This bottleneck has also been stated previously in the
design of corner blends [22, 23]. Instead of solving the optimization problem in real-time, a more practical approach is
pursued here.
Since the cornering distance LT simply functions as a
scaling factor in the proposed design, it is set to unity
LT ¼ 2c þ d ¼ 1
ð18Þ
and only the effect of n=c/d considered. The corner angle θ is
fixed, and n is interpolated in the range of n∈[0,2]. Curvature
is computed along the Bezier, at 100 discrete points proportional to the spline parameter, and its maxima is detected.
Figure 4 shows the change of maximum curvature, κmax.
As shown, since Bezier blend is symmetric with respect to the
angular bisector of the neighboring segments, maximum curvature occurs either in the middle of the Bezier, or two
identical curvature extrema are observed. This vaguely indicates that the problem is convex, and there is a global optimal
n value, which minimizes the maximum value of the curvature. The process is repeated for various cornering angles to
record the optimal n. Figure 5 shows the n value for a wide
range of cornering angles θ=10….150°, which minimizes the
maximum curvature. A simple power regression is applied to
obtain the following relation to estimate the curvature optimal
n value for a wide range of cornering angles as
nðθÞ ¼
1
θ0:9927
2:0769
ð19Þ
Equation 19 can be used in real-time to efficiently lookup
the optimal control point ratio, n, to fit the curvature optimal
Bezier blend.
2.3 Control of the cornering errors
As shown in Fig. 2c, proposed corner smoothing algorithm
introduces geometric errors, ε, around the corner, which has to
be limited by a given tolerance so that the dimensional integrity of the produced part is ensured. The Bezier blend is
symmetric, and hence the maximum deviation from original
path occurs in the middle at u=0.5,
ε ¼ Ptrans −Bju¼0:5 ð20Þ
Author's personal copy
Int J Adv Manuf Technol
The actual transition length can then be evaluated as
LT =2c+d.
3 Jerk-limited trajectory generation
Fig. 3 Effect of n on the Bezier curvature (θ=60°)
The midpoint of the Bezier B|u=0.5 is evaluated from Eqs. 1
and 9 as
Bju¼0:5 ¼ Ptrans þ
7c þ 16d
ðts þ te Þ
32
ð21Þ
The maximum cornering error is then computed from
Eqs. 20 and 21 as
ε¼
7n þ 16
d kts þ te k
32
ð22Þ
Based on the developed corner smoothing algorithm in
Section 2, a jerk-limited trajectory generation algorithm
is proposed in this section. The objective is to modulate
the path speed in such a way that the velocity is
reduced at corners i.e. along Bezier segments and again
raised at linear segments to reach the programmed
speed. The proposed trajectory generation algorithm
can be implemented in real-time within a look-ahead
scheme, or it can be used off-line for simulating the
motion of computer numerical-controlled (CNC) systems. The overall algorithm has three sections. At first,
corners are rounded with Bezier blends, and the maximum feedrate for each corner is determined. Next, the
jerk-limited feedrate profile with S-curve-type acceleration transients is planned, and it is optimized so that the
total cycle time is minimized while respecting the axis
velocity and acceleration limits. At last, the geometric
tool path is interpolated in real-time without any feed
fluctuation.
3.1 Determination of the maximum cornering speed
Equation 22 is further expanded, and actual values of c and
d for a curvature optimum Bezier blend at a given cornering
tolerance ε and corner angle θ are obtained as
d¼
32ε
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
ð7n þ 16Þ 2 þ 2cosðθÞ
ð23Þ
32ε
pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi n
c¼
ð7n þ 16Þ 2 þ 2cosðθÞ
Conventional tool paths contain series of linear segments
where each segment has its Euclidian length and a
feedrate assigned to it. Once the proposed corner smoothing approach is implemented, corners are blended and
segment lengths are altered. Figure 6 illustrates a planar
tool path consisting of linear segments. The total length SL
of a tool path with Ns linear segments is computed considering length of each block:
Ns
X
SL ¼
kPkþ1 −Pk k
ð24Þ
1
Due to corner blending, tool-path length is updated by
subtracting corner transition length, LT, and adding the length
of the Bezier blend, LB, as
SΣ ¼ SL þ
N
s −1
X
LB;k −2LT ;k
ð25Þ
1
Fig. 4 Corner curvature for various cornering angles and control point
ratios
where LB is computed through numerical integration as follows. The Bezier blend is divided into M (>100) subdivisions
proportional to its parameter u, and the corresponding axis
positions are computed as
Author's personal copy
Int J Adv Manuf Technol
curvature is larger. Figure 6b shows the highest cornering
speed for different cornering tolerances. It can be noted that
the maximum cornering speed reduces as the cornering tolerance becomes tighter.
3.2 Feedrate scheduling
Δsk; j
As presented in the previous section, when linear segments are
joined with Bezier blends, corners can only be traveled at a
much lower speed then their neighboring segments. The motion system has to slow down when approaching to a corner,
cruise the Bezier blend and accelerate to the programmed feed
of the successive linear segment. In order to achieve smooth
motion, feed commands of consecutive segments must be
stitched together smoothly. Speed transitions across blocks
are achieved through a jerk-limited acceleration profile.
Compatibility of the feedrates with respect to acceleration
and jerk constraints given by the process planner are considered, and a practical feed planning scheme is developed as
follows.
A jerk-limited motion profile or the so-called S-curvetype acceleration profile is utilized to generate smooth
speed transition between the two adjacent feed blocks.
The feedrate profile for velocity transition is shown in
Fig. 7, and the corresponding acceleration function is
defined as
rffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
2 2 2
xk; j −xk; j−1 þ yk; j −yk; j−1 þ zk; j −zk; j−1
aðt Þ ¼ 30ΔV
Fig. 5 Optimal n w.r.t. cornering angle
9
x j ¼ ð1−jΔuÞ5 P0;x þ 5jΔuð1−jΔuÞ4 P1;x þ … þ jΔu5 P5;x >
=
y j ¼ ð1−jΔuÞ5 P0;y þ 5jΔuð1−jΔuÞ4 P1;y þ … þ jΔu5 P5;x ;
>
;
z j ¼ ð1−jΔuÞ5 P0;z þ 5jΔuð1−jΔuÞ4 P1;z þ … þ jΔu5 P5;z
Δu ¼
1
; j ¼ 0; 1…M
M
ð26Þ
The resulting arc increments are then summed up:
LB ¼
M
X
j¼1
¼
M
X
j¼1
t4
t3
t2
−
60ΔV
þ
30ΔV
t 5e
t 4e
t 3e
ð29Þ
ð27Þ
Next, due to curvature of the Bezier blend, axis acceleration limits may be violated if the curved sections were also to
be traveled at the same speed of neighboring linear segments.
The highest cruise speed along a Bezier blend is bounded by
the acceleration limits Ax,max, Ay,max, and Az,max of the drives.
Equation 16 is used to determine the highest cornering speed
as
F corner ¼ min
Ax;max Ay;max Az;max
;
;
κmax κmax κmax
ð28Þ
A case study is shown in Fig. 6. The desired feedrate for the
linear tool path is given as F=35 mm/s. The tool path is
smoothened at two different cornering tolerances namely,
100 and 150 μm. As shown, depending on the corner tolerance, the transition length LT changes. For tighter cornering
tolerance, LT becomes smaller and thus the maximum
where ΔV=Fk+1 −Fk is the velocity difference to be covered
from current kth segment to the consecutive (k+1)th and te is
total time spend in speed transition. Position (s), velocity (v),
acceleration (a), and jerk (j) profiles can be obtained from
Eq. 29 as
9
5
t4
t5
t6 >
sðt Þ ¼ F k t þ ΔV 3 −3ΔV 4 þ ΔV 5 >
>
>
2
te
te
te >
>
3
4
5>
>
t
t
t >
>
vðt Þ ¼ F k −10ΔV 3 þ 15ΔV 4 þ 6ΔV 5 >
=
te
te
te
t2
t3
t4
>
>
>
aðt Þ ¼ 30ΔV 3 −60ΔV 4 −30ΔV 5
>
>
te
te
te
>
>
>
2
3
t
t
t >
>
;
jðt Þ ¼ 60ΔV 3 −180ΔV 4 þ 120ΔV 5 >
te
te
te
ð30Þ
The total transition time, te, needs to be determined in
such a way that the tangential acceleration and jerk limits,
Amax and Jmax, are not exceeded. As observed from Fig. 7,
Author's personal copy
Int J Adv Manuf Technol
Fig. 6 Corner smoothened tool path
tangential acceleration peaks at t=½te. Thus, the speed transition interval tAmax
with respect to acceleration limit can be
e
computed from Eq. 30 as
Amax ¼
15 jΔV j
15 jΔV j
→t Amax
¼
e
8 te
8 Amax
ð31Þ
Similarly, tangential jerk prolife peaks at t=¼te, and the
speed transition interval w.r.t. jerk limit is calculated as
J max
45 jΔV j
¼
→t eJ max ¼
8 t 2e
sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
45 jΔV j
8 J max
ð32Þ
achieved, then displacement, feedrate, and acceleration
profiles will be continuous, and along with the jerk profile, they will be limited. Figure 8 illustrates the importance of the kinematic compatibility. In Fig. 8a, speed
increase from low- to high-speed segment is shown where
Fk <Fk+1. Please note that speed cannot be increased from
within the current, kth segment, since the current segment
feed is lower. In other words, acceleration can only be
planned after slow feed segment is traveled. Thus, speed
transition is planned in the successive (k+1)th segment,
and the compatibility condition is checked as
Lkþ1 −
F k þ F kþ1
t e;k ≥ 0;
2
where t e;k
In order to respect both limits, the transition interval is
determined as
t e ¼ max t Amax
; t eJ max
e
15 jΔV k j
¼ max
;
8 Amax
sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi!
45 jΔV k j
8 J max
ð33Þ
Finally, the total displacement spent during a speed transition is computed from Eqs. 30 and 33 as
ΔS ¼
F kþ1 þ F k
te
2
ð34Þ
Feed transitions are dictated by desired speeds of the
neighboring segments and the total displacement traveled
within the speed transition. The “kinematic compatibility”
is defined here as having sufficient travel length to
smoothly change the feedrate, i.e., accelerate or decelerate,
between segments [31]. If kinematic compatibility is
Fig. 7 S-curve-type acceleration profile for velocity transition
ð35Þ
Author's personal copy
Int J Adv Manuf Technol
and ΔVk =Fk+ 1 −Fk and Lk+1 is the length of the (k+1)th
segment. Figure 8b shows a velocity transition from high to
low speed. In this case, all the planning is performed within
the current kth segment, and the compatibility conditions are
checked as
Lk −
F k þ F kþ1
t e;k ≥ 0
2
ð36Þ
In general cases, feed transitions spread across segment boundaries, and two adjacent segments may affect
kinematic compatibility in the kth segment. In order to
ascertain whether kinematic compatibility is satisfied
across the segment boundaries, previous and next segments also need to be tested against the feed compatibility conditions. Figure 8c simply illustrates this where
a high-speed block is neighbored by two low-speed
segments, which could be either linear or Bezier segment. In this case, all the acceleration transition must be
planned within the kth segment, and the compatibility
conditions can be written as
F k−1 þ F k
F k þ F kþ1
t e;k−1 þ
t e;k ≥ 0
Lk −
2
2
ð37Þ
If Eq. 37 cannot be satisfied, achievable speed of the
segment k must be lowered so that the speed transition
from and to the segments k−1 and k+1 is achieved. In
simple cases, maximum speed along the Bezier blends
can be computed in a forward traversal search algorithm, and the compatibility conditions from the start
to the end of the tool path are checked. If a violation
occurs, feedrate of the current block is reduced until it
satisfies the compatibility conditions with its neighboring blocks. However, in a large-scale tool path compromised of many blocks, a compatible solution may not
be acquired given the commanded feed, acceleration,
and jerk values. In such circumstances, violations can
only be corrected by tracing back the feedrate through
the planned feed values and perform adjustment to
earlier segments. A practical search algorithm is implemented here to efficiently generate a kinematically compatible feed profile. The proposed algorithm can be used
offline for the entire tool path all at once, or it can be
implemented in a windowing fashion for real-time execution. The feed planning algorithm is presented as
follows:
Step 1 All the feeds in a scheduling window are initiated to a
conservative feed value, Fk =vstart where k=1…N.
Step 2 Compatibility conditions are checked for each block
counting in forward and backward directions simultaneously. If the there is no kinematic violation in any
block, all the block feeds are updated gradually by
the amount of dv, Fk =Fk +dv and the velocity increment for the next round is doubled, dv = 2dv.
However, if there is any kinematic violation for a
block, the velocity increment is reduced by half,
dv=dv/2 and the feedrates are updated.
Step 3 If the kinematic violation persists in a segment, its
feedrate is frozen, and the rest of the blocks are
updated with the current feed increment, dv. If the
violation still persists at a certain block, in this case,
the neighboring block feedrates are also frozen, and
the remaining feedrates are updated.
Step 4 The feed update continues, and the final feed profile
is generated when all the block feedrates are frozen
and cannot be updated.
The proposed feedrate scheduling technique is applied
on the tool path shown in Fig. 6a. The cornering tolerance
is set to 25 μm and desired feedrate is set to F=35 mm/s.
Tangential acceleration and jerk limits are set to
1,500 mm/s 2 and 20 × 10 4 mm/s 3 , respectively.
Acceleration limits of the drives are also set to Ax,max =
Ay,max =1,500 mm/s2, and the resultant feed profile is
shown in Fig. 9a. As observed, segments are connected
to each other with smooth acceleration transients, and
corner segments are traveled at lower speeds considering
acceleration limits of the drives. Furthermore, due to low
acceleration and jerk limits, desired tangential feedrate
could not be reached along the tool path. In Fig. 9b, the
limits are increased to Amax =Ax,max =Ay,max =2,000 mm/s2
and Jmax =40×104 mm/s3. In this case, desired feed could
be reached.
3.3 Real-time interpolation
After smoothing the given discrete path with Bezier blends,
the new tool path is composed of linear and Bezier segments,
and care must be taken while interpolating the mixed trajectory. Linear segments can simply be interpolated with linear
interpolation:
2
3
xðkT s Þ
4 yðkT s Þ 5 ¼ Pk þ Pkþ1 −Pk sðkT s Þ; k ¼ 0…N
kPkþ1 −Pk k
zðkT s Þ
ð38Þ
where s(kTs) is the displacement profile sampled at sampling
time of the interpolator, Ts, and N is the number of interpolation samples. However, since Bezier curves are not arc length
parameterized [31], feedrate fluctuations will occur if it is
Author's personal copy
Int J Adv Manuf Technol
where xprev, yprev, and zprev are the axis commands applied in
the previous control sample. The error between the desired
and tested arc increments is
e ¼ Δsdes −Δstest
ð41Þ
and its gradient with respect to the tested spline parameter is
derived using Eqs. 39 and 41 as
de
¼
dutest
Δxtest
Δxtest
Δu
Δytest
Δu
Δstest
þ Δytest
þ Δztest
Δztest
Δu
ð42Þ
Fig. 8 Compatibility conditions along successive segments
interpolated by applying constant parameter increments Δu,
which are proportional to the desired arc increment Δs in the
form
Δu ¼
1
Δs
LB
ð39Þ
Furthermore, only G2 continuity is pursued while fitting the
Bezier curve to the sharp corners. As a result, while traveling at
constant speed, severe feed fluctuations may occur at the
transition points from linear to Bezier segments since the
magnitude of tangent vector of the Bezier at the junction points
is not matched. Such discontinuity will result in high frequency
acceleration and jerk harmonics and will cause unwanted vibrations exciting structural modes of the drive system. Taylor
approximation has been used in general practice to interpolate
parametric curves, which may fail to work when crossing from
the linear segment to the Bezier segments at high speed [31]. In
order to avoid such problems, the iterative spline parameter
computation technique from Erkorkmaz and Altintas [7] is
applied to accurately interpolate the Bezier blends. The idea
is to solve the value of Bezier parameter Δu to realize the
desired arch displacement Δs. The arc increment Δstest corresponding to the tested spline parameter utest is estimated by
computing the resulting axis increments:
9
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
>
>
Δstest ¼ ðΔxtest Þ2 þ ðΔytest Þ2 þ ðΔytest Þ2
>
>
>
>
where :
>
>
=
Δxtest ¼ xtest −xprev ; Δytest ¼ ytest −yprev ; Δztest ¼ ztest −zprev
>
xtest ¼ ð1−uÞ5 P0;x þ 5uð1−uÞ4 P1;x þ … þ u5 P5;x
>
>
>
5
4
5
>
>
ytest ¼ ð1−uÞ P0;y þ 5uð1−uÞ P1;y þ … þ u P5;x
>
>
;
5
4
5
ztest ¼ ð1−uÞ P0;z þ 5uð1−uÞ P1;z þ … þ u P5;z
ð40Þ
where (dxtest/du), (dytest/du), and (dztest/du) are simply obtained by substituting the calculated value of utest into the derivative expressions given in Eq. 2. The correct value of the
spline parameter is computed with regard to the convergence
of the below iteration (i):
ðutest Þiþ1 ¼ ðutest Þi −
ei
ðde=dutest Þi
ð43Þ
The desired convergence is achieved when the arc increment error e is below 10−8 in Eq. 43. Since the Bezier blend is
smooth and does not show sharp changes in the curvature, the
initial guess for utest can be obtained through linear approximation of the nonlinear relationship between the arc length s
and spline parameter u from Eq. 38. Depending on the availability of a close initial guess and an analytical gradient
enables Eq. 43 to converge reliably, within five iterations, at
each trajectory interpolation cycle.
4 Simulation and experimental results
The proposed corner smoothing technique is tested through
simulations and experimentally validated. At first, a simulation study is performed to illustrate the effect of curvature
optimized corner smoothing. Experimental tracking experiments are then conducted on a conventional CNC machine
tool controlled by in-house developed NC system.
4.1 Simulation results
A 2-D rectangular tool path shown in Fig. 10 is smoothened
with quintic Bezier blends. The cornering tolerance is selected
as 150 μm, and the corner points are indicated as Pk, k=0,
Author's personal copy
Int J Adv Manuf Technol
Fig. 9 Scheduled feedrate along corner smoothened tool path
1,…, 4. All the corner angles are 90° for this tool path,
and they are smoothed with both using curvature optimal
and nonoptimal Bezier blends. In the proposed curvature
optimal Bezier blending method, the optimal control
point ratio, n = 1.3265, is looked up efficiently from
Eq. 19. In the remaining two cases, n is selected greater
and smaller than the optimal value. Figure 10b shows the
change in the curvature. As noted, proposed blending
technique ensures G2 continuity where curvature at the
junction points is zero for any n. In addition, when the
optimal corner ratio is utilized, it delivers the smallest
curvature extremum. The feedrate profile along the tool
path is then generated as presented in Section 3, and
presented in Fig. 11. As observed, when the curvature
is not optimized along the Bezier, the cornering feedrates
are conservative. Total cycle time for the proposed curvature optimized method is the smallest TΣ =0.3655 s as
compared to the nonoptimal cases where the cycle times
are TΣ =0.3874 s at n=0.6878 and TΣ =0.3691 s at n=
1.9652. This proves that the proposed Bezier corner
smoothing method can deliver curvature continuous corner smoothing with minimum curvature extremum for the
fastest cornering.
4.2 Experimental results
A commercial CNC machine tool is retrofitted to implement the proposed corner smoothing algorithms shown in
Fig. 12. The conventional NC system is cancelled by
switching the amplifiers of the machine into torque mode
and modifying the PLC. Encoder feedback is taken from
the motor side rotary encoders, and torque commands are
directly send to the amplifiers. dSpace® real-time control
system is utilized and P-PI cascade controllers are implemented for each axis for accurate position control. The
trajectory is generated off-line in MATLAB® environment, and it is interpolated in real-time at the closed loop
control interval of 10 kHz.
A realistic case study is presented to validate the effectiveness of the proposed sharp corner smoothing algorithm
on a complex planar tool path shown in Fig. 13. The tool
path consists of 126 linear segment lengths varying from
3 mm to 13 mm. The desired travel speed for each line is
F = 100 mm/s, maximum path acceleration is A max =
2,500 mm/s2 and jerk is set to be maximum Jmax =20×
104 mm/s3. The x- and y-axis acceleration limits are selected identical to the tangential acceleration Amax =Ay,max =
Amax =2,500 mm/s2.
The tool path is traveled at three different trajectory
generation strategies. Firstly, if the proposed corner
smoothing technique is not applied, the motion must
be commanded to perform an instantaneous stop at the
end of each linear segment since the linear segments
only ensure position continuity. In this case, the jerklimited acceleration profile is utilized to plan the feed
motion along each linear segment individually, and the
point-to-point trajectory is generated. The resultant tangential feed profile and axis kinematics are shown in
Fig. 14. As shown, servo system undergoes instantaneous stops at the junction points (see Fig. 14a).
Please note that the path speed only reaches the
commanded feed at longer linear segments due to the
limited acceleration of the drives. Since linear tool path
has zero curvature, axis accelerations and velocities never exceed given bounds as shown in Fig. 14b. The total
cycle time is 13.39 s.
Next, the proposed corner smoothing technique is implemented. The cornering tolerance is set to ε=100 μm,
and the tool path shown is smoothened. Since the tool path
is blended with the curvature continuous Bezier blends, it
can be traveled at a constant speed without stopping. In
other words, a “nonstop” constant feed motion can be
achieved. The reference tangential feed profile is shown
in Fig. 15. The dashed line presents the “constant feed
profile.” As observed, the path speed is constant along
the entire tool path, and total cycle time can be reduced
down to 5.8 s. This cycle time is less than half of the
conventional case. However, when the tool path is traveled
at constant feedrate, axis acceleration limits are exceeded
(see dashed lines in Fig. 15d, e). This is simply due to
curvature of Bezier blends and requires the feedrate to be
lowered in order to avoid axis acceleration or actuator
saturation.
Author's personal copy
Int J Adv Manuf Technol
Fig. 10 Rectangular tool path
At last, feedrate along the smoothed tool path is scheduled where the tangential velocity is reduced down to respect the acceleration limits of the drives, Ax,max and Ay,max.
The “scheduled feed profile” is presented in Fig. 15a by the
solid line. As shown, the feed is lowered before entering
Bezier blend sections so that the axis acceleration limits are
respected. Particularly, the feedrate is lowest at the four
sharp corners, i.e., legs of the Starfish. It is increased along
the linear sections to minimize the cycle time. Solid lines in
Fig. 15d, e show that the axis acceleration limits are
respected in the proposed method. The total cycle time is
computed to be 6.64 s. This cycle time is slightly higher than
the “constant feed” case since the feedrate is lowered at
Bezier sections. Nevertheless, it is almost half of the
point-to-point case. This proves that the developed system
effectively schedules the feedrate to achieve highest productivity in high-performance motion stages while utilizing
physical limits of the machines.
The tracking responses of x- and y-axes are compared in
Fig. 16. Largest tracking errors occur when high acceleration is demanded from the drives. This is mostly due to the
fact that motion controllers cannot fully cancel the drive
inertia in the feed-forward control loop. Since axis accelerations are bounded in the proposed scheme, it delivers
tracking errors similar to the point-to-point motion.
However, when the tool path is traveled at constant speed,
the acceleration limits are exceeded at the corner sections
and the tracking performance is degraded severely as shown
in Fig. 16b, c.
5 Conclusions
Fig. 11 Scheduled feedrate profile along rectangular tool path
A practical smooth motion generation algorithm for linear
segmented tool paths is presented in this paper. Quintic
Bezier blends with six control points are designed to blend
the discrete linear segments with curvature continuous transitions. The feedrate along the multi-segmented tool path is
scheduled efficiently to minimize the total cycle time and
interpolated smoothly.
Compared to the previous works, the proposed algorithms in this paper have the following advantages: (1)
The transition scheme can realize G2 continuity, optimum
curvature for high-speed cornering, and also control of the
Author's personal copy
Int J Adv Manuf Technol
Fig. 12 Experimental setup
cornering errors. (2) The feed motion planning algorithm
utilizes S-curve-type acceleration profile and schedules the
feedrate efficiently along corner-blended tool path to respect
the acceleration limits of the drives. (3) Feedrate transition
from linear to Bezier segments and also the feed motion along
the Bezier curve are interpolated accurately eliminating unwanted fluctuations. Finally, proposed algorithms are validated in simulations and also implemented for complex 2-D tool
path contouring on the in-house controlled CNC machine tool.
Fig. 13 Experimental planar tool path
Appendix
Curvature along the Bezier blend can be derived analytically
from the well-known expression,
κ ð uÞ ¼
jBu ðuÞ Buu ðuÞj
jBu ðuÞj3
Author's personal copy
Int J Adv Manuf Technol
Fig. 14 Profiles during point-topoint motion
A single Bezier blend is illustrated in Fig. 17. The
corner transition point is the origin of the Cartesian coordinate system, and control points can be written from
Fig. 17 as
Fig. 15 Comparison of scheduled and constant feed profiles
9
d ð2n þ 1Þ
d ð n þ 1Þ
d
>
>
; P1 ¼
;
P2 ¼
=
0 0
0
dcosðθÞ
d ðn þ 1ÞcosðθÞ
d ð2n þ 1ÞcosðθÞ >
>
;
P3 ¼
; P4 ¼
; P5 ¼
dsinðθÞ
d ðn þ 1ÞsinðθÞ
d ð2n þ 1ÞsinðθÞ
P0 ¼
ð44Þ
Author's personal copy
Int J Adv Manuf Technol
Fig. 16 Experimentally recorded
tracking errors of the axes
where n=c/d, and the Quintic Bezier Blend is parameterized by plugging the control points from Eq. 44 into
Eq. 1 as
BðuÞ ¼
9
8
Lðcosθu4 −5u−3cosθ þ 10u3 −10u4 þ 3u5 þ 2Þ >
>
>
>
>
> Bx ¼
>
>
2
>
>
=
<
2
3
2
3
5Luðu−1Þðu þ 4u cosθ−3cosθu −5u þ 3u þ 1Þ
−
>
>
2n þ 1
>
>
>
>
>
>
Lusinθð5nu−15u−3nu2 þ 6u2 þ 10Þ
>
>
;
:B ¼
y
2n þ 1
ð45Þ
where LT =2c+d, θ is the inner cornering angle, and u∈[0,1].
The 1st and 2nd derivatives, B ¼ dBduðuÞ and Buu ¼ dBduð2uÞ , can
be computed from Eq. 45 to evaluate the curvature along the
Bezier blend as
κðuÞ ¼
−12ð2n þ 1Þnusinθðu−1Þðnu−2u−2nu3 þ nu4 þ 4u3 −2u4 þ 1Þ
3
LT A 2
ð46Þ
where
9
A ¼ a1 u8 þ a2 u7 þ a3 u6 þ a4 u5 þ a5 u4 þ a6 u3 þ a7 u2 þ n2 >
>
>
>
>
>
a1 ¼ ð1−cosÞ 72−72n þ 18n2
>
>
>
>
2
>
a2 ¼ 288cosθ þ 288nð1−cosθÞ−72n ð1−cosθÞ
>
=
2
a3 ¼ 432ð1−cosÞ þ 432ncos þ n ð116−100cosθÞ
>
>
a4 ¼ 288ðcosθ−1Þ þ 288nð1−cosθÞ þ 48n2 ðcosθ−2Þ
>
>
>
2
>
>
a5 ¼ 72ð1−cosθÞ−60nð1−cosθÞ þ 6n ð5 þ cosθÞ
>
>
>
2
>
a6 ¼ 24nðcosθ−1Þ þ 8n ð2−cosθÞ
>
;
2
a7 ¼ 12nð1 þ cosθÞ þ 12n
ð47Þ
References
Fig. 17 Single Bezier blend
1. Piegl L, Tiller W (2003) The NURBS book, 2nd edn. Springer, Berlin
Heidelberg
2. Koren Y, Lin R-S (1995) Five-axis surface interpolators. Ann CIRP
44(1):379–382
3. Zhang QG, Greenway RB (1998) Development and implementation
of a NURBS curve motion interpolator. Robot Comput Integr Manuf
14(1):27–36
Author's personal copy
Int J Adv Manuf Technol
4. Langeron JM, Duc E, Lartigue C, Bourdet P (2004) A new format for
5-axis tool path computation, using Bspline curves. Comput Aided
Des 36(12):1219–1229
5. Timar S, Farouki R, Smith T, Boyadjieff C (2005) Algorithms for
time-optimal control of CNC machines along curved tool paths.
Robot Comput Integr Manuf 21:37–53
6. Wang F-C, Wright PK, Barsky BA, Yang DCH (1999)
Approximately arc-length parameterized C3 quintic interpolatory
splines. J Mech Des-T ASME 121(3):430–439
7. Erkorkmaz K, Altintas Y (2005) Quintic spline interpolation with
minimal feed fluctuation. J Manuf Sci E-T ASME 127(2):339–349
8. Barre PJ, Bearee R, Borne P, Dumetz E (2005) Influence of a jerk
controlled movement law on the vibratory behaviour of highdynamics systems. J Intell Robot Syst 42(3):275–293
9. FANUC (2006) 5-axis machining features FANUC series 30i-model
a/31i-model A5. Int J Mach Tool Manu 46:235–242
10. Siemens (2009) Milling with SINUMERIK: 5-axis machining
manual
11. Wang J-B, Yau H-T (2009) Real-time NURBS interpolator: application to short linear segments. Int J Adv Manuf Technol 41(11–12):
1169–1185
12. Tsai M-S, Nien H-W, Yau H-T (2010) Development of a real-time
look-ahead interpolation methodology with spline-fitting technique for
high-speed machining. Int J Adv Manuf Technol 47(5–8):621–638
13. Fleisig RV, Spence AD (2001) Constant feed and reduced angular
acceleration interpolation algorithm for multi-axis machining.
Comput Aided Design 33(1):1–15
14. Goldenthal R, Bercovier M (2004) Spline curve approximation and
design by optimal control over the knots. Computing 72(1–2):53–64
15. Werner H, Thomas R (2004) Smoothing rational B-spline curves
using the weights in an optimization procedure. Comput Aided
Geom D 12(8):837–848
16. Macfarlane S, Croft EA (2001) Design of jerk bounded trajectories
for on-line industrial robot applications. Proc IEEE Int Conf Robot
Autom 1:979–984
17. Jouaneh MK, Wang Z, Dornfeld DA (1990) Trajectory planning for
coordinated motion of a robot and a positioning table. Part 1. Path
specification. IEEE Trans Robot Autom 6:735–745
18. Jouaneh MK, Dornfeld DA, Tomizuka M (1990) Trajectory planning
for coordinated motion of a robot and a positioning table. Part 2.
Optimal trajectory specification. IEEE Trans Robot Autom 6:746–759
19. Yutkowitz SJ, Chester W (2005) Apparatus and Method for Smooth
Cornering in a Motion Control System. United States, Siemens
Energy & Automation, Inc, Alpharetta, GA, (US Patent 6922606)
20. Pateloup V, Duc E, Ray P (2010) B-spline approximation of circle arc
and straight line for pocket machining. Comput Aided Design 42:
817–827
21. Zhang L, You Y, He J, Yang X (2011) The transition algorithm based
on parametric spline curve for high-speed machining of continuous
short line segments. Int J Adv Manuf Technol 52:245–254
22. Zhao H, Zhu L-M, Ding H (2013) A real-time look-ahead interpolation methodology with curvature-continuous B-spline transition
scheme for CNC machining of short line segments. Int J Mach Tool
Manu 65:88–98
23. Bi Q, Wang Y, Zhu L, Ding H (2011) A practical continuouscurvature Bezier transition algorithm for high-speed machining of
linear tool path. J Intell Robot Syst 7102:465–476
24. Ekorkmaz K, Yeung C-H, Altintas Y (2006) Virtual CNC system.
Part II. High speed contouring application. Int J Mach Tool Manu
46(10):1124–1138
25. Beudaert X, Lavernhe S, Tournier C (2013) 5-axis local corner rounding
of linear tool path discontinuities. Int J Mach Tool Manu 73:9–16
26. Sencer B, Susumu I, Shamoto E (2014) Curvature-continuous Sharp
Corner Smoothing Scheme for Cartesian Motion Systems. 13th IEEE
International Workshop on Advanced Motion Control, Yokohama, Japan
27. Erkorkmaz K, Altintas Y (2001) High speed CNC system design.
Part I: jerk limited trajectory generation and quintic spline interpolation. Int J Mach Tool Manu 41(9):1323–1345
28. Lin R-S (2000) Real-time surface interpolator for 3-D parametric
surface machining on 3-axis machine tools. Int J Mach Tool Manu
40(10):1513–1526
29. Sencer B, Altintas Y, Croft E (2008) Feed optimization for five-axis
CNC machine tools with drive constraints. Int J Mach Tool Manu
48(7–8):733–745
30. Altintas Y, Altintas Y, Erkorkmaz K (2003) Feedrate optimization for
spline interpolation in high speed machine tools. CIRP Ann 52:297–
302
31. Heng M, Erkorkmaz K (2010) Design of a NURBS interpolator with
minimal feed fluctuation and continuous feed modulation capability.
Int J Mach Tool Manu 50:281–293
32. Kreyszig E (1991) Differential geometry, 1st edition. Dover
Publications
Download