Skip to main content
Log in

Asymmetrical Pythagorean-hodograph spline-based \({{\mathrm{C}}}^{4}\) continuous local corner smoothing method with jerk-continuous feedrate scheduling along linear toolpath

  • ORIGINAL ARTICLE
  • Published:
The International Journal of Advanced Manufacturing Technology Aims and scope Submit manuscript

Abstract

In computer numerical control systems, linear segments generated by computer-aided manufacturing software are the most widely used toolpath format. Since the linear toolpath is discontinuous at the junction of two adjacent segments, the fluctuations on velocity, acceleration and jerk are inevitable. Local corner smoothing is widely used to address this problem. However, most existing methods use symmetrical splines to smooth the corners. When any one of the linear segments at the corner is short, the inserted spline will be micro to avoid overlap. This will increase the curvature extreme of the spline and reduce the feedrate on it. In this article, the corners are smoothed by a \({C}^{4}\) continuous asymmetric Pythagorean-hodograph (PH) spline. The curvature extreme of the proposed spline is investigated first, and \(K=2.5\) is determined as the threshold to constrain the asymmetry of the spline. Then, a two-step strategy is used to generate a blended toolpath composed of asymmetric PH splines and linear segments. In the first step, the PH splines at the corners are generated under the condition that the transition lengths do not exceed half of the length of the linear segments. In the second step, the splines at the corners are re-planned to reduce the curvature extremes, if the transition error does not reach the given threshold and there are extra linear trajectories on both sides of the spline trajectory. Finally, the bilinear interpolation method is applied to determine the critical points of the smoothed toolpath, and a jerk-continuous feedrate scheduling scheme is presented to interpolate the smoothed toolpath. Simulations show that, under the condition of not affecting the machining quality, the proposed method can improve the machining efficiency by \(7.27\) to \(75.11\%\) compared to \({G}^{3}\) and \({G}^{4}\) methods.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23

Similar content being viewed by others

Availability of data and material

Not applicable.

Code availability

Not applicable.

References

  1. Zhong W, Luo X, Chang W, Cai Y, Ding F, Liu H, Sun Y (2021) Toolpath interpolation and smoothing for computer numerical control machining of freeform surfaces: a review. Int J Autom Comput 17(1):1–16. https://doi.org/10.1007/s11633-019-1190-y

    Article  Google Scholar 

  2. Wang W, Hu C, Zhou K, He S, Zhu L (2021) Local asymmetrical corner trajectory smoothing with bidirectional planning and adjusting algorithm for CNC machining. Robot Comput Integr Manuf 68:102058. https://doi.org/10.1016/j.rcim.2020.102058

    Article  Google Scholar 

  3. Zhang Y, Zhao M, Ye P, Zhang H (2019) A G4 continuous b-spline transition algorithm for cnc machining with jerk-smooth feedrate scheduling along linear segments. Comput Aided Des 115:231–243. https://doi.org/10.1016/j.cad.2019.04.004

    Article  MathSciNet  Google Scholar 

  4. He S, Ou D, Yan C, Lee C (2015) A chord error conforming tool path B-spline fitting method for NC machining based on energy minimization and LSPIA. J Comput Des Eng 2(4):218–232. https://doi.org/10.1016/j.jcde.2015.06.002

    Article  Google Scholar 

  5. Deng C, Lin H (2015) Progressive and iterative approximation for least squares B-spline curve and surface fitting. Comput Aided Des 47:32–44. https://doi.org/10.1016/j.cad.2013.08.012

    Article  MathSciNet  Google Scholar 

  6. Yang Z, Shen L, Yuan C, Gao X (2015) Curve fitting and optimal interpolation for CNC machining under confined error using quadratic B-splines. Comput Aided Des 66:62–72. https://doi.org/10.1016/j.cad.2015.04.010

    Article  MathSciNet  Google Scholar 

  7. Min K, Sun Y, Lee C, Hu P, He S (2019) An improved B-spline fitting method with arc-length parameterization, G2-continuous blending, and quality refinement. Int J Precis Eng Manuf 20(11):1939–1955. https://doi.org/10.1007/s12541-019-00210-0

    Article  Google Scholar 

  8. Lin F, Shen L, Yuan C, Mi Z (2019) Certified space curve fitting and trajectory planning for CNC machining with cubic B-splines. Comput Aided Des 106:13–29. https://doi.org/10.1016/j.cad.2018.08.001

    Article  Google Scholar 

  9. Hu Q, Chen Y, Jin X, Yang J (2019) A real-time C3 continuous local corner smoothing and interpolation algorithm for CNC machine tools. J Manuf Sci Eng 141(4):041004. https://doi.org/10.1115/1.4042606

    Article  Google Scholar 

  10. Huang X, Zhao F, Tao T, Mei X (2021) A newly developed corner smoothing methodology based on clothoid splines for high speed machine tools. Robot Comput Integr Manuf 70:102106. https://doi.org/10.1016/j.rcim.2020.102106

    Article  Google Scholar 

  11. Zhao H, Zhu L, 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 Tools Manuf 65:88–98. https://doi.org/10.1016/j.ijmachtools.2012.10.005

    Article  Google Scholar 

  12. Sencer B, Shamoto E (2014) Curvature-continuous sharp corner smoothing scheme for Cartesian motion systems. IEEE 13th International Workshop on Advanced Motion Control, pp 374–379. https://doi.org/10.1109/AMC.2014.6823311

  13. Du X, Huang J, Zhu L (2018) A locally optimal transition method with analytical calculation of transition length for computer numerical control machining of short line segments. Proc Inst Mech Eng B J Eng Manufe 232(13):2409–2419. https://doi.org/10.1177/0954405417697351

    Article  Google Scholar 

  14. Jin Y, Bi Q, Wang Y (2015) Dual-Bezier path smoothing and interpolation for five-axis linear tool path in workpiece coordinate system. Adv Mech Eng 7(7):1–14. https://doi.org/10.1177/1687814015595211

    Article  Google Scholar 

  15. Bi Q, Wang Y, Zhu L, Ding H (2011) A practical continuous-curvature Bézier transition algorithm for high-speed machining of linear tool path. Intelligent Robotics and Applications. https://doi.org/10.1007/978-3-642-25489-5_45

    Article  Google Scholar 

  16. Tulsyan S, Altintas Y (2015) Local toolpath smoothing for five-axis machine tools. Int J Mach Tools Manuf 96:15–26. https://doi.org/10.1016/j.ijmachtools.2015.04.014

    Article  Google Scholar 

  17. Fan W, Lee C, Chen J (2015) A realtime curvature-smooth interpolation scheme and motion planning for CNC machining of short line segments. Int J Mach Tools Manuf 96:27–46. https://doi.org/10.1016/j.ijmachtools.2015.04.009

    Article  Google Scholar 

  18. Zhang Y, Wang T, Dong J, Peng P, Liu Y, Ke R (2020) An analytical G3 continuous corner smoothing method with adaptive constraints adjustments for five-axis machine tool. Int J Adv Manuf Technol 109:1007–1026. https://doi.org/10.1007/s00170-020-05402-x

    Article  Google Scholar 

  19. Xie Z, Xie F, Liu X, Wang J (2021) Global G3 continuity toolpath smoothing for a 5-DoF machining robot with parallel kinematics. Robot Comput Integr Manuf 67:102018. https://doi.org/10.1016/j.rcim.2020.102018

    Article  Google Scholar 

  20. Petrinić T, Brezak M, Petrović I (2017) Time-optimal velocity planning along predefined path for static formations of mobile robots. Int J Control Autom Syst 15(1):293–302. https://doi.org/10.1007/s12555-015-0192-y

    Article  Google Scholar 

  21. Frego M, Bertolazzi E, Biral F, Fontanelli D, Palopoli L (2017) Semi-analytical minimum time solutions with velocity constraints for trajectory following of vehicles. Automatica 86:18–28. https://doi.org/10.1016/j.automatica.2017.08.020

    Article  MathSciNet  MATH  Google Scholar 

  22. Shahzadeh A, Khosravi A, Robinette T, Nahavandi S (2018) Smooth path planning using biclothoid fillets for high speed CNC machines. Int J Mach Tools Manuf 132:36–49. https://doi.org/10.1016/j.ijmachtools.2018.04.003

    Article  Google Scholar 

  23. Xiao Q, Wan M, Liu Y, Qin X, Zhang W (2020) Space corner smoothing of CNC machine tools through developing 3D general clothoid. Robot Comput Integr Manuf 64:101949. https://doi.org/10.1016/j.rcim.2020.101949

    Article  Google Scholar 

  24. Huang X, Zhao F, Tao T, Mei X (2020) A novel local smoothing method for five-axis machining with time-synchronization feedrate scheduling. IEEE Access 8:89185–89204. https://doi.org/10.1109/ACCESS.2020.2992022

    Article  Google Scholar 

  25. Walton D, Meek D (2009) G2 blends of linear segments with cubics and Pythagorean-hodograph quintics. Int J Comput Math 86(9):1498–1511. https://doi.org/10.1080/00207160701828157

    Article  MathSciNet  MATH  Google Scholar 

  26. Imani B, Ghandehariun A (2011) Real-time PH-based interpolation algorithm for high speed CNC machining. Int J Adv Manuf Technol 56:619–629. https://doi.org/10.1007/s00170-011-3200-2

    Article  Google Scholar 

  27. Farouki R (2014) Construction of G2 rounded corners with Pythagorean-hodograph curves. Comput Aided Geom Des 31:127–139. https://doi.org/10.1016/j.cagd.2014.02.002

    Article  MathSciNet  MATH  Google Scholar 

  28. Shi J, Bi Q, Wang Y, Liu G (2014) Development of real-time look-ahead methodology based on quintic ph curve with G2 continuity for high-speed machining. Appl Mech Mater 464:258–264. https://doi.org/10.4028/www.scientific.net/AMM.464.258

    Article  Google Scholar 

  29. Shi J, Bi Q, Zhu L, Wang Y (2015) Corner rounding of linear five-axis tool path by dual PH curves blending. Int J Mach Tools Manuf 88:223–236. https://doi.org/10.1016/j.ijmachtools.2014.09.007

    Article  Google Scholar 

  30. Wan M, Qin X, Xiao Q, Liu Y, Zhang W (2021) Asymmetrical pythagorean-hodograph (PH) spline-based C3 continuous corner smoothing algorithm for five-axis tool paths with short segments. J Manuf Process 64(3):1387–1411. https://doi.org/10.1016/j.jmapro.2021.02.059

    Article  Google Scholar 

  31. Lee A, Lin M, Pan Y, Lin W (2011) The feedrate scheduling of NURBS interpolator for CNC machine tools. Comput Aided Des 43(6):612–628. https://doi.org/10.1016/j.cad.2011.02.014

    Article  Google Scholar 

  32. Hu Y, Jiang X, Huo G, Su C, Wang B, Li H, Zheng Z (2021) A novel S-shape based NURBS interpolation with acc-jerk - continuity and round-off error elimination. arXiv:2103.14433

  33. Su C, Jiang X, Huo G, Sun Y, Zheng Z (2020) Initial tool path selection of the iso-scallop method based on offset similarity analysis for global preferred feed directions matching. Int J Adv Manuf Technol 106:2675–2687. https://doi.org/10.1007/s00170-019-04789-6

    Article  Google Scholar 

Download references

Funding

This work has been supported by the National Key Research and Development Program of China (Grant No.2020YFA0713700), the National Natural Science Foundation of China (Grants No. 12171023, No. 12001028 and No. 62102013) and funded by China Postdoctoral Science Foundation (Grant No. 2021M690303).

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Guanying Huo or Cheng Su.

Ethics declarations

Ethics approval

The research does not involve human participants and/or animals.

Consent to participate

Consent to submit the paper for publication has been received explicitly from all co-authors.

Consent for publication

All authors have read and agreed to publish the manuscript.

Conflict of interest

The authors declare no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix 1. Proof process of Theorem 1

When trigonometric functions are used to express \(\overrightarrow{{n}_{1}}\) and \(\overrightarrow{{n}_{2}}\), \(\overrightarrow{{n}_{1}}={l}_{1}\overrightarrow{{T}_{1}}={l}_{1}{\left(cos\alpha ,sin\alpha \right)}^{T}={\left({u}_{0}^{2}-{v}_{0}^{2},2{u}_{0}{v}_{0}\right)}^{T}/15\) and \(\overrightarrow{{n}_{2}}={l}_{2}\overrightarrow{{T}_{2}}={l}_{2}{\left(cos\beta ,sin\beta \right)}^{T}={\left({u}_{7}^{2}-{v}_{7}^{2},2{u}_{7}{v}_{7}\right)}^{T}/15\). According to the half angle formula of trigonometric function, \({u}_{0}\), \({v}_{0}\), \({u}_{7}\) and \({v}_{7}\) can be written as \({u}_{0}=\pm \sqrt{15{l}_{1}}cos\frac{\alpha }{2}\), \({v}_{0}=\pm \sqrt{15{l}_{1}}sin\frac{\alpha }{2}\), \({u}_{7}=\pm \sqrt{15{l}_{2}}cos\frac{\beta }{2}\) and \({v}_{7}=\pm \sqrt{15{l}_{2}}sin\frac{\beta }{2}\), where \({u}_{0}\) and \({v}_{0}\), \({u}_{7}\) and \({v}_{7}\) take the same sign. Substituting the above four parameters into \(\overrightarrow{m}=\frac{{\left({u}_{0}{u}_{7}-{v}_{0}{v}_{7},{u}_{0}{v}_{7}+{u}_{7}{v}_{0}\right)}^{T}}{15}\), \(\overrightarrow{{B}_{7}{B}_{8}}\) can be written as \(\overrightarrow{{B}_{7}{B}_{8}}=\overrightarrow{m}=\pm \sqrt{{l}_{1}{l}_{2}}{\left(cos\frac{\alpha +\beta }{2},sin\frac{\alpha +\beta }{2}\right)}^{T}\). It is obvious that the length of \(\overrightarrow{{B}_{7}{B}_{8}}\) equals to \(\sqrt{{l}_{1}{l}_{2}}\). In addition, according to the sum-to-product trigonometric identities, \(\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}={\left(2cos\frac{\alpha +\beta }{2}cos\frac{\alpha -\beta }{2},2sin\frac{\alpha +\beta }{2}cos\frac{\alpha -\beta }{2}\right)}^{T}=2cos\frac{\alpha -\beta }{2}{\left(cos\frac{\alpha +\beta }{2},sin\frac{\alpha +\beta }{2}\right)}^{T}\). Since \({P}_{0}{P}_{1}\) and \({P}_{1}{P}_{2}\) are two different linear segments, and they are not on the same line, \(cos\frac{\alpha -\beta }{2}\ne 0\) can be deduced. If \(cos\frac{\alpha -\beta }{2}>0\), \(\frac{\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}}{\left|\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}\right|}={\left(cos\frac{\alpha +\beta }{2},sin\frac{\alpha +\beta }{2}\right)}^{T}\), let \({u}_{0}\) and \({v}_{0}\) take the same sign, then \(\frac{\overrightarrow{{B}_{7}{B}_{8}}}{\left|\overrightarrow{{B}_{7}{B}_{8}}\right|}{=\left(cos\frac{\alpha +\beta }{2},sin\frac{\alpha +\beta }{2}\right)}^{T}=\frac{\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}}{\left|\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}\right|}\). On the contrary, let \({u}_{0}\) and \({v}_{0}\) take different signs, then \(\frac{\overrightarrow{{B}_{7}{B}_{8}}}{\left|\overrightarrow{{B}_{7}{B}_{8}}\right|}{=-\left(cos\frac{\alpha +\beta }{2},sin\frac{\alpha +\beta }{2}\right)}^{T}=\frac{\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}}{\left|\overrightarrow{{T}_{1}}+\overrightarrow{{T}_{2}}\right|}\).

Appendix 2. Proof process of Theorem 2

According to Eq. (9), \(\overrightarrow{{B}_{4}{B}_{7}}=\overrightarrow{{B}_{4}{B}_{5}}+\overrightarrow{{B}_{5}{B}_{6}}+\overrightarrow{{B}_{6}{B}_{7}}=\frac{398}{429}\overrightarrow{m}+\frac{889}{429}\overrightarrow{{n}_{1}}\). At the same time, \(\overrightarrow{{B}_{4}{B}_{7}}=\overrightarrow{{B}_{4}{Q}_{1}}+\overrightarrow{{Q}_{1}{B}_{7}}\). Since \(\overrightarrow{m}\) and \(\overrightarrow{{n}_{1}}\) are two different vectors, \(\overrightarrow{{B}_{4}{B}_{7}}\) has only unique expression when expressed by base {\(\overrightarrow{m}, \overrightarrow{{n}_{1}}\}\). Considering \(\overrightarrow{{B}_{4}{Q}_{1}}\) and \(\overrightarrow{{n}_{1}}\), \(\overrightarrow{{Q}_{1}{B}_{7}}\) and \(\overrightarrow{m}\) have the same directions, it can be deduced that \(\overrightarrow{{B}_{4}{Q}_{1}}=\frac{889}{429}\overrightarrow{{n}_{1}}\) and \(\overrightarrow{{Q}_{1}{B}_{7}}=\frac{398}{429}\overrightarrow{m}\), i.e. \(\left|\overrightarrow{{B}_{4}{Q}_{1}}\right|=\frac{889}{429}{l}_{1}\). Similarly, \(\left|\overrightarrow{{B}_{11}{Q}_{2}}\right|=\frac{889}{429}{l}_{2}\). From Theorem 1, it is known that \({B}_{7}{B}_{8}\) and the angle bisector of \(\mathrm{\angle }{{P}_{0}P}_{1}{P}_{2}\) are perpendicular. As shown in Fig. 1, the angle bisector of \(\mathrm{\angle }{{P}_{0}P}_{1}{P}_{2}\) and \({B}_{7}{B}_{8}\) intersect at point \({B}_{m}\); then, \({B}_{m}\) is the midpoint of \({B}_{7}{B}_{8}\). In right triangle ∆\({Q}_{1}{P}_{1}{B}_{m}\), \(\left|\overrightarrow{{B}_{m}{Q}_{1}}\right|=\left|\overrightarrow{{Q}_{1}{B}_{7}}\right|+\frac{\left|\overrightarrow{{B}_{7}{B}_{8}}\right|}{2}=\frac{1225}{858}\sqrt{{{l}_{1}l}_{2}}\), \(\angle {{Q}_{1}P}_{1}{B}_{m}=\frac{\pi -\theta }{2}\), then \(\left|\overrightarrow{{Q}_{1}{P}_{1}}\right|=\frac{1225\sqrt{{{l}_{1}l}_{2}}}{858\mathrm{cos}\frac{\theta }{2}}\). Similarly, \(\left|\overrightarrow{{Q}_{2}{P}_{1}}\right|=\frac{1225\sqrt{{{l}_{1}l}_{2}}}{858cos\frac{\theta }{2}}\).

Appendix 3. Proof process of Theorem 3

When \({l}_{1}={l}_{2}\), the proposed PH spline is symmetrical about the angle bisector of \(\angle {{P}_{0}P}_{1}{P}_{2}\); then, the maximum deviation error occurs between the mid-point of the proposed PH spline and corner point \({P}_{1}\), which can be expressed as

$$\begin{aligned}{e}_{max}&=\left|r\left(0.5\right)-{P}_{1}\right|=\frac{1}{{2}^{15}}|{(B}_{0}-{P}_{1})+15{(B}_{1}-{P}_{1})\\&+105{(B}_{2}-{P}_{1})+455{(B}_{3}-{P}_{1})+1365{(B}_{4}-{P}_{1})\\&+3003{(B}_{5}-{P}_{1})+5005{(B}_{6}-{P}_{1})+6435{(B}_{7}-{P}_{1})\\&+6435{(B}_{8}-{P}_{1})+5005{(B}_{9}-{P}_{1})+3003{(B}_{10}-{P}_{1})\\&+1365{(B}_{11}-{P}_{1})+455{(B}_{12}-{P}_{1})+105{(B}_{13}-{P}_{1})\\&+15{(B}_{14}-{P}_{1})+{(B}_{15}-{P}_{1})|=\frac{1}{{2}^{15}}|{(B}_{0}+{B}_{15}-{2P}_{1})\\&+15{(B}_{1}+{B}_{14}-{2P}_{1})+105{(B}_{2}+{B}_{13}-{2P}_{1})\\&+455{(B}_{3}+{B}_{12}-{2P}_{1})+1365{(B}_{4}+{B}_{11}-{2P}_{1})\\&+3003{(B}_{5}+{B}_{10}-{2P}_{1})+5005{(B}_{6}+{B}_{9}-{2P}_{1})\\&+6435{(B}_{7}+{B}_{8}-{2P}_{1})|.\end{aligned}$$
(24)

From Eq. (10), it can be deduced that

$$\left\{\begin{array}{c}\begin{array}{c}{B}_{0}+{B}_{15}-{2P}_{1}=(4{l}_{1}+\frac{889}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ {B}_{1}+{B}_{14}-{2P}_{1}=(3{l}_{1}+\frac{889}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ {B}_{2}+{B}_{13}-{2P}_{1}=(2{l}_{1}+\frac{889}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\end{array}\\ \begin{array}{c}{B}_{3}+{B}_{12}-{2P}_{1}=({l}_{1}+\frac{889}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ {B}_{4}+{B}_{11}-{2P}_{1}=(\frac{889}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ \begin{array}{c}{B}_{5}+{B}_{10}-{2P}_{1}=(\frac{490}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ {B}_{6}+{B}_{9}-{2P}_{1}=(\frac{175}{429}{l}_{1}+l)(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\\ {B}_{7}+{B}_{8}-{2P}_{1}=l(\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}})\end{array}\end{array}\end{array}.\right.$$
(25)

Combining Eqs. (24) and (25), the maximum deviation error \({e}_{\mathrm{max}}\) is expressed as

$${e}_{\mathrm{max}}=\frac{1}{{2}^{15}}\left|\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}}\right|\left(\left(\frac{397}{429}+10207\right){l}_{1}+16384l\right).$$
(26)

Considering \(\left|\overrightarrow{{T}_{2}}-\overrightarrow{{T}_{1}}\right|=2\mathit{sin}\left(\frac{\theta }{2}\right)\) and \(l=\frac{16384\times 1225}{858cos(\frac{\theta }{2})}\sqrt{{{l}_{1}l}_{2}}=\frac{16384\times 1225}{858cos(\frac{\theta }{2})}{l}_{1}\), Eq. (13) can be obtained and Theorem 3 is proved.

Appendix 4. Proof process of Theorem 4

If \({l}_{1}={l}_{2}\), \(R(t)\) is the same as \(r(t)\) and \({e}_{r}={e}_{R}\). Without loss of generality, translate, rotate and, if necessary, reflect transition PH spline such that \({P}_{1}\) is at the origin, \({P}_{0}\) is on the negative x-axis, \({P}_{2}\) is above the x-axis and \({l}_{1}>{l}_{2}\). Replace \({l}_{1}\) and \({l}_{2}\) in Eq. (10) with \({l}_{0}=\mathrm{max}\left({l}_{1},{l}_{2}\right)={l}_{1}\) to get the control points of \(R(t)\), which is denoted by \({\overline{B} }_{i} (i=\mathrm{0,1},2,\dots , 15)\). Subtracting \({B}_{i}\) from \({\overline{B} }_{i}\), we arrive at

$$\left\{\begin{array}{c}\begin{array}{c}\begin{array}{c}{\overline{B} }_{0}-{B}_{0}=-\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}(\sqrt{{l}_{1}}-\sqrt{{l}_{2}})\overrightarrow{{T}_{1}}\\ {\overline{B} }_{1}-{B}_{1}=-\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}(\sqrt{{l}_{1}}-\sqrt{{l}_{2}})\overrightarrow{{T}_{1}}\\ {\overline{B} }_{2}-{B}_{2}=-\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}(\sqrt{{l}_{1}}-\sqrt{{l}_{2}})\overrightarrow{{T}_{1}}\end{array}\\ \begin{array}{c}{\overline{B} }_{3}-{B}_{3}=-\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}(\sqrt{{l}_{1}}-\sqrt{{l}_{2}})\overrightarrow{{T}_{1}}\\ {\overline{B} }_{4}-{B}_{4}=-\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}(\sqrt{{l}_{1}}-\sqrt{{l}_{2}})\overrightarrow{{T}_{1}}\\ {\overline{B} }_{5}-{B}_{5}=-\frac{1195}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\frac{10}{286cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{2}}\end{array}\\ \begin{array}{c}{\overline{B} }_{6}-{B}_{6}=-\frac{1081}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\frac{48}{286cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{7}-{B}_{7}=-\frac{827}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\frac{398}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{8}-{B}_{8}=-\frac{398}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\frac{827}{286cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{2}}\end{array}\end{array}\\ \begin{array}{c}{\overline{B} }_{9}-{B}_{9}=-\frac{48}{286cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\left(\frac{175}{429}\left({l}_{1}-{l}_{2}\right)+\frac{1081}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{10}-{B}_{10}=-\frac{10}{286cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\overrightarrow{{T}_{1}}+\left(\frac{490}{429}\left({l}_{1}-{l}_{2}\right)+\frac{1195}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{11}-{B}_{11}=\left(\frac{889}{429}\left({l}_{1}-{l}_{2}\right)+\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\end{array}\\ \begin{array}{c}{\overline{B} }_{12}-{B}_{12}=\left(\left(\frac{889}{429}+1\right)\left({l}_{1}-{l}_{2}\right)+\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{13}-{B}_{13}=\left(\left(\frac{889}{429}+2\right)\left({l}_{1}-{l}_{2}\right)+\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\\ \begin{array}{c}{\overline{B} }_{14}-{B}_{14}=\left(\left(\frac{889}{429}+3\right)\left({l}_{1}-{l}_{2}\right)+\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\\ {\overline{B} }_{15}-{B}_{15}=\left(\left(\frac{889}{429}+4\right)\left({l}_{1}-{l}_{2}\right)+\frac{1225}{858cos\frac{\theta }{2}}\sqrt{{l}_{1}}\left(\sqrt{{l}_{1}}-\sqrt{{l}_{2}}\right)\right)\overrightarrow{{T}_{2}}\end{array}\end{array}\end{array}\right.$$
(27)

It is obvious that \({\overline{B} }_{i}-{B}_{i}={a}_{i}\overrightarrow{{T}_{1}}+{b}_{i}\overrightarrow{{T}_{2}}\), \({a}_{i}\le 0\) and \({b}_{i}\ge 0\) for \(i=\mathrm{0,1},\dots ,15\). Considering \(r\left(t\right)={\sum }_{i=0}^{15}{B}_{i}{b}_{i}^{15}\left(t\right)\) and \(R\left(t\right)={\sum }_{i=0}^{15}{\overline{B} }_{i}{b}_{i}^{15}\left(t\right)\), we have

$$\overrightarrow{r\left(t\right)R\left(t\right)}={\sum }_{i=0}^{15}\left({\overline{B} }_{i}-{B}_{i}\right){b}_{i}^{15}\left(t\right)={f}_{1}(t)\overrightarrow{{T}_{1}}+{f}_{2}(t)\overrightarrow{{T}_{2}}$$
(28)

where \({f}_{1}(t)\le 0\) and \({f}_{2}(t)\ge 0\) for arbitrary \(t\in [0, 1]\). As shown in Fig. 24, the region bounded by the transition PH spline \(r(t)\) and the linear trajectory \({P}_{0}{-P}_{1}-{P}_{2}\) is denoted as \(\mathrm{S}\). Then, it can be deduced from Eq. (27) that \(R\left(t\right)\) is outside of \(\mathrm{S}\) for arbitrary \(t\in [0, 1]\). From the convex hull property of Bezier spine, the transition PH spline \(R(t)\) is inside of ∆\({P}_{0}{P}_{1}{P}_{2}\). Then, for arbitrary \({t}_{1}\in [0, 1]\), there is an intersection point between the line segment \(\overline{{P }_{1}R({t}_{1})}\) and the transition PH spline \(r(t)\); in other words, there is a \({t}_{2}\in [0, 1]\) such that \(\left|\overrightarrow{{P}_{1}r({t}_{2})}\right|\le \left|\overrightarrow{{P}_{1}R({t}_{1})}\right|\), which gives \({e}_{r}\le {e}_{R}\) naturally.

Fig. 24
figure 24

The schematic diagram of two transition PH spline \(r(t)\) and \(R(t)\)

Appendix 5. Parameters of butterfly-shaped curve

The degree: p = 3.

The control point (mm): P = [(54.493, 52.139), (55.507,52.139), (56.082, 49.615), (56.780, 44.971), (69.575,51.358), (77.786, 58.573), (90.526, 67.081), (105.973,63.801), (100.400, 47.326), (94.567, 39.913), (92.369,30.485), (83.440, 33.757), (91.892, 28.509), (89.444,20.393), (83.218, 15.446), (87.621, 4.830), (80.945, 9.267),(79.834, 14.535), (76.074, 8.522), (70.183, 12.550), (64.171,16.865), (59.993, 22.122), (55.680, 36.359), (56.925, 24.995),(59.765, 19.828), (54.493, 14.940), (49.220, 19.828), (52.060,24.994), (53.305, 36.359), (48.992, 22.122), (44.814, 16.865),(38.802, 12.551), (32.911, 8.521), (29.152, 14.535), (28.040,9.267), (21.364, 4.830), (25.768, 15.447), (19.539, 20.391),(17.097, 28.512), (25.537, 33.750), (16.602, 30.496), (14.199,39.803), (8.668, 47.408), (3.000, 63.794), (18.465, 67.084),(31.197, 58.572), (39.411, 51.358), (52.204, 44.971), (52.904,49.614), (53.478, 52.139), (54.492, 52.139)].

The knot vector: U = [0, 0, 0, 0, 0.0083, 0.015, 0.0361, 0.0855, 0.1293, 0.1509, 0.1931, 0.2273, 0.2435, 0.2561, 0.2692, 0.2889, 0.3170, 0.3316, 0.3482, 0.3553, 0.3649, 0.3837, 0.4005, 0.4269, 0.4510, 0.4660, 0.4891, 0.5000, 0.5109, 0.5340, 0.5489, 0.5731, 0.5994, 0.6163, 0.6351, 0.6447, 0.6518, 0.6683, 0.6830, 0.7111, 0.7307, 0.7439, 0.7565, 0.7729, 0.8069, 0.8491, 0.8707, 0.9145, 0.9639, 0.9850, 0.9917, 1.0, 1.0, 1.0, 1.0].

The weight vector: W = [1.0, 1.0, 1.0, 1.2, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1, 2, 1.0, 1.0, 5.0, 3.0, 1.0, 1.1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.1, 1.0, 3.0, 5.0, 1.0, 1.0, 2.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.2, 1.0, 1.0, 1.0].

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Jiang, X., Hu, Y., Huo, G. et al. Asymmetrical Pythagorean-hodograph spline-based \({{\mathrm{C}}}^{4}\) continuous local corner smoothing method with jerk-continuous feedrate scheduling along linear toolpath. Int J Adv Manuf Technol 121, 5731–5754 (2022). https://doi.org/10.1007/s00170-022-09463-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00170-022-09463-y

Keywords

Navigation