1. Introduction
A thread milling operation is a machining process in which the feed drive axes of a machine tool simultaneously move a thread milling tool along a helical path to perform a cutting operation. Therefore, the helical contour motion accuracy of feed drive axes while performing thread milling operations becomes crucial. In recent decades, owing to the importance of the contour motion accuracy of computer numerical control (CNC) machine tools, many contour control designs have been proposed to improve the contour motions of feed drive axes. Liu et al. [
1] proposed a velocity-based contour control method that used a B-spline-based wavelet neural network to approximate unknown dynamics and used neural network identification to design a robust control to improve the contour motion of dual-linear-motor-driven gantry stages. Chen et al. [
2] transformed the desired contour path and tool orientation in the workpiece coordinate frame to a five-dimensional hypercurve in a machine coordinate frame and then adopted the equivalent error method to design a contouring controller to reduce the errors of the contour path and tool orientation. Zhao et al. [
3] compensated weighted contour error components to velocity commands in the robotic task space of a six-degrees-of-freedom robot arm. They proposed a component-based contour control mechanism that can improve the contour motion accuracy of the robot arm performing machining tasks. Liu et al. [
4] integrated generalized predictive control and feedback correction algorithms to develop a real-time contour error control design for five-axis machine tools. Bo et al. [
5] improved the conventional cross-coupled control design to increase the contour accuracy of biaxial motion control systems. Li et al. [
6] adopted a neural memory network to develop a contour error estimation and compensation method for CNC systems. Song et al. [
7] designed a five-axis cross-coupling control method in joint space to simultaneously reduce task-space and joint-space contour errors. Wang et al. [
8] referred to the calculations of distance and contour errors and adopted the trajectory compensation method with gain adjustment to modify the reference trajectory for improving the contour control performance of motion control systems. Zhang et al. [
9] considered the input and output data of a two-dimensional linear motor system while performing reciprocating motions and then proposed a model-free adaptive control algorithm that can improve the contour motion accuracy of the linear motor system. Kuang et al. [
10] proposed a discrete-time fractional-order sliding-mode contour error control design based on fractional-order sliding surface stability analysis and linear matrix inequality. Ma et al. [
11] proposed an equivalent-plane cross-coupling control design to apply the developed biaxial cross-coupling control to three-axis contour error control. Shi and Lou [
12] transformed a three-dimensional contour coordinate frame into a two-dimensional contour coordinate frame represented by radial and angular axes and then adopted the computed-torque control and proportional-derivative control to design a motion controller. Wang et al. [
13] proposed a contour error control design based on the generalized extended state observer and model predictive control to reduce the contour errors of networked multi-axis motion systems caused by network-induced delays. Many contour control designs that can effectively improve the contour motion accuracy of the feed drive axis have been proposed; however, most of them focus on improving contour motion properties, but the adverse influence of external disturbances on the feed drive axes has yet to be carefully discussed. Particularly, the cutting force in the thread milling operations affects the contour motion accuracy of feed drive axes while performing a helical path. Disturbance estimation and friction compensation can effectively suppress the influence of external disturbances but cannot mitigate the motion perturbation induced by model uncertainty and external disturbance variation.
For repeatedly performed positional command paths, if repeated external disturbances influence the motion of a feed drive axis, iterative learning control can effectively suppress the influence of external disturbances and provide better positional motion results to the feed drive axis. Therefore, iterative learning control was applied to design iterative learning contour control (ILCC) to improve the contour motion accuracy of feed drive axes. Li et al. [
14] adopted a hidden Markov model to spatially map the command path and actual trajectory, and proposed a hybrid evaluation function to estimate the contour error of the tool position and orientation. Furthermore, they used spatial iterative learning control to compensate for the contour errors and generate numerical control commands to improve the contour accuracy of five-axis CNC machine tools. Wang et al. [
15] transformed the planar motion in a Cartesian coordinate frame into a polar coordinate frame, defined the polar-radius error, and designed a real-time iterative compensation method to reduce the polar-radius error-equivalent contour error for planar motion control systems. Based on a third-order contour error prediction model, Wang et al. [
16] proposed an online iterative trajectory pre-compensation control design to improve the contour motion performance of multi-axis motion systems. Considering that motion control systems are usually influenced by factors such as model parameter variations, external disturbance, and non-linear friction, Yuan and Zhao [
17] adopted the asymmetric Gaussian-like function to design an adaptive learning law and then suggested contour error control using the iterative learning method. Xu et al. [
18] considered the properties of motion trajectory and time-varying random disturbance to design a time-varying weighting matrix and then proposed a norm-optimal cross-coupling iterative learning control using a time-varying control method. Li et al. [
19] transformed the dynamic model of the motion control system from time domain to space domain and then proposed the spatial iterative learning control. Xu et al. [
20] proposed a double-iterative learning and cross-coupling control design to improve the individual axis and contour tracking performance of biaxial motion systems. Hendrawan et al. [
21] proposed an ILCC design that modified numerical control programs by an iterative approach to improve the contour motion performance of the feed drive axes of a CNC machine tool. Hendrawan et al. [
22] referred to contour errors and proposed an embedded ILCC that can diminish the contour errors of a CNC machine tool during feed drive motions by iteratively modifying the reference trajectory of each feed drive axis. Due to the complexity of contour error models and the requirement of a large amount of collected data and processing time while using the offline iterative learning control, Dao and Chen [
23] developed an online iterative learning control that referred to equivalent contour errors as the control target. Ling et al. [
24] adopted the concept of position domain control and then designed the cross-coupled iterative learning control to improve the synchronization and performance of non-linear contour tracking motions. Simba et al. [
25] integrated the proportional-derivative control and disturbance observer to develop an ILCC that can simultaneously improve contour motion accuracy and degrade the influence of external disturbance on the feed drive axes of a CNC machine tool. Based on the Newton extremum-seeking algorithm, Wang et al. [
26] proposed an ILCC design to project contour errors to each motion axis and then adjust the axial position reference commands using an iterative learning approach. Although the ILCC can effectively reduce the contour errors of feed drive axes while performing repeated positional command paths, the motion control design of each feed drive axis must mitigate the adverse influence of model uncertainty and external disturbance variation. In addition, feed drive axes must have similar motion dynamics and external disturbance properties to match multi-axis motions and increase contour accuracy. Moreover, an ILCC that combines contour error estimation and iterative learning control must have an easy-to-implement control structure and must not excessively increase the computational burden of motion control systems to facilitate the realization of ILCC in industrial applications.
During thread milling operations, the three feed drive axes of a CNC machine tool perform synchronous motions along a helical path so that the thread milling tool can move along the helical path for thread cutting. Therefore, the cutting force in milling operations and the motion dynamics and friction disturbance of each feed drive axis affect the contour motion accuracy of feed drive axes while performing helical paths. Existing ILCC methods can improve the contour motion accuracy of feed drive axes; however, motion control systems were required to record and process a large amount of collected data, requiring longer data processing and computing time that usually increases the computational burden. In addition, before the convergence of the applied iterative learning processes, the existing ILCC could produce a few defective products due to the low contour control accuracy, which waste materials and increase manufacturing costs. A helical path consists of multiple pitch cycles, and, thus, feed drive axes perform repeated synchronous motions in pitch cycles. Moreover, during the motions of pitch cycles in a thread milling operation, feed drive axes possess the same motion dynamics and influence of the cutting force and friction disturbance. Therefore, this study developed a pitch cycle-based ILCC (PCB-ILCC) to address the control system and thread manufacturing problems caused by applying the ILCC to thread milling operations. The PCB-ILCC applied the ILCC to pitch cycles so that the contour error produced by feed drive axes while performing synchronous motions in the previous pitch cycle can be used to compute and modify the positional commands of synchronous motions in the current pitch cycle. Thus, the PCB-ILCC, pitch by pitch, gradually improves the contour motion accuracy of feed drive axes while performing helical paths. To achieve the design goal, the PCB-ILCC must integrate with the contour error vector (CEV) estimation method without excessive computational burden, the ILCC design with a simple and easy-to-implement structure, and the driving control design of the feed drive axis with robust motion properties. Therefore, this study estimated the CEV by referring to the interpolated positions on the helical cycle and the response positions on the response cycle produced by the feed drive axes. The ILCC design with the previous cycle learning method was modified and applied to generate a command cycle for the feed drive axes. This study also considered the dynamic characteristics of the feed drive axis actuated by a permanent magnet synchronous motor (PMSM) and applied the robust control with friction and dynamic compensations to design a PMSM driving control so that the feed drive axes can have robust motion performance.
To evaluate and validate the feasibility and performance of the PCB-ILCC design, this study performed a PMSM motion control experiment on a PMSM testbench and a machine tool thread milling experiment on a five-axis CNC machining center. The results of this experiment showed that in comparison to the proportional–proportional–integral control extensively used in commercialized PMSM driving control, the rate of reduction achieved by the PCB-ILCC is significant. The reduction rates of the average, root-mean-square, and maximum contour errors achieved were 96.27%, 95.92%, and 94.76%, respectively. The machine tool thread milling experiment results indicated that the PCB-ILCC could provide good helical contour accuracy even though the feed drive axes suffered the adverse influence of the friction disturbance and cutting force. The reduction rates of the average, root-mean-square, and maximum contour errors achieved 90.56%, 89.68%, and 83.35%, respectively. Therefore, the experimental results validated that the PCB-ILCC can effectively mitigate the adverse influence of the friction disturbance and cutting force to significantly improve the contour accuracy of the feed drive axes while performing the helical path in thread milling operations.
This paper is organized as follows.
Section 2 describes the design of the PCB-ILCC and the difference between the PCB-ILCC and conventional ILCC designs.
Section 3 presents the CEV estimation method and the ILCC design with previous cycle learning.
Section 4 presents the PMSM driving control design for the feed drive axes with robust motion performance.
Section 5 presents the experimental results performed on a PMSM testbench and a five-axis CNC machining center to demonstrate the feasibility and performance of the PCB-ILCC developed in this study.
Section 6 concludes this paper.
2. Design of PCB-ILCC
Three paths are considered in thread milling operations, including the helical, command, and response paths, as shown in
Figure 1. Here, the helical path denotes the path formed by the thread contour to be machined, the command path represents the path referenced by the feed drive axes, and the response path denotes the path produced by the feed drive axes. For thread milling operations, the feed drive axes perform synchronous motions for the given command path so that a thread milling tool can move along the response path for thread cutting. Conventionally, the command path is given as the helical path, and the feed drive axes are controlled so that the response path can accurately follow the command to make the thread milling tool perform precise helical motions. However, due to the external disturbances and motion dynamics of feed drive axes, the response path is generally different from the command path; thus, the accuracy of helical motions is limited.
Applying conventional ILCC methods, as shown in
Figure 2, the command path can be iteratively modified to reduce the contour error between the helical and response paths. Here,
and
denote the command and response paths at the
th iteration, respectively. The helical path
and response path
were used to calculate the contour error
at the
th iteration. Then, the contour error
was recorded in memories for further use in the next iteration.
, that has been recorded in memories, denotes the command path at the
th iteration. The recorded contour error
and command path
were adopted by an iterative learning contour controller to modify the command path
. The command path
was referenced by the feed drive axes to produce the response path
, and was recorded in memories for further use in the next iteration. Although conventional ILCC methods can improve the accuracy of helical motions, ILCC methods usually require huge memories to record a large amount of collected data and take longer data processing and computing time. Therefore, ILCC methods are usually difficult to implement on compact controllers with a limited number of memories and computation speed. Furthermore, ILCC methods could produce a few defective products before achieving convergence, increasing manufacturing costs.
Since a helical path is composed of multiple pitch cycles, and feed drive axes generally possess similar external disturbances and motion dynamics during pitch cycle motions, the PCB-ILCC developed in this study applies the ILCC to the pitch cycles so that the contour error of the previous pitch cycle
can be considered with the previous command cycle
to modify the current command cycle
through the iterative learning contour controller, as shown in
Figure 3. Compared with the conventional ILCC structure shown in
Figure 2, the helical path
must be segmented to obtain the helical cycle
and the response path is naturally amalgamated by the response cycle
through the motions of the feed drive axes. In addition, the operation of the pitch increment is required in the segmentation process and iterative learning contour controller to make the thread milling operation move from the current pitch cycle to the next pitch cycle. The contour error of the
th pitch cycle
was calculated by referring to the
th helical cycle
and the
th response cycle
. Both the contour error
and command cycle
were recorded in different memories for the modification of the next command cycle. Therefore, the PCB-ILCC can gradually improve the accuracy of helical motions pitch by pitch and mitigate the problems of applying conventional ILCC methods to thread milling operations. Nevertheless, as indicated by
Figure 3, some issues must be carefully considered in this study when applying the PCB-ILCC in practice, including the estimation of the CEV (adopted in the contour error calculation to approximately calculate the contour error of each pitch cycle), the design of the ILCC (adopted in the iterative learning contour controller to gradually reduce the contour errors of the pitch cycles), and the design of the PMSM driving control (adopted in the feed drive axes to actuate the feed drive axes with a stable and improved motion performance).
3. CEV Estimation and ILCC Design
The CEV is the shortest distance vector between the response position (on the response path) and the helical path; thus, the precise calculation of the CEV is generally difficult and time-consuming. Although many CEV estimation methods have been proposed in recent decades, the accuracy, complexity, and calculation time of the estimated CEV must be carefully considered in the PCB-ILCC design. Therefore, this study used the interpolated positions on a helical path to estimate the CEV [
27]. As shown in
Figure 4,
denotes the response position on the response path;
and
denote the interpolated positions that are the positions on the helical path and close to the response position
;
denotes the position on the
vector, and the
vector is perpendicular to the
vector so that the
vector can be obtained as the estimated CEV
(i.e.,
). Here,
, where
,
, and
are the axial components of the estimated CEV
on the
X-axis,
Y-axis, and
Z-axis, respectively.
Let
and
, respectively, denote the distance from
to
and
, and let
and
, respectively, denote the distance from
to
and
. Referring to the geometric relationship shown in
Figure 4, the distance relations can be obtained as Equations (1) and (2):
Here,
and
can be, respectively, calculated by Equations (3) and (4):
Therefore, the estimated CEV
can be obtained as:
Because the helical path is adopted in thread milling operations, the estimated CEV
can provide a good approximation to the actual CEV when the helical path has a large helical radius, and the thread milling tool moves with a low feed rate. While the response position
moves on the response path
, the contour error
can be obtained by collecting the estimated CEV
with the given helical path
, as shown in
Figure 2 for the conventional ILCC methods; therefore, for the simplified expression, Equation (6) is used to represent the calculation of the contour error
:
where
denotes the function of the contour error calculation. Specifically, as shown in
Figure 3 for the PCB-ILCC method, Equation (6) is modified as Equation (7) to represent the calculation of the contour error
:
This study developed the cycle learning method shown in Equation (8) to design the PCB-ILCC shown in
Figure 3:
where
denotes the vector of the pitch increment and
denotes the transfer function matrix of the iterative learning contour controllers.
is a constant vector.
is a diagonal matrix, and the diagonal entries
,
, and
, respectively, denote the transfer functions of the iterative learning contour controllers for the feed drive axes
X,
Y, and
Z. Because
,
, the contour error
shown in Equation (7) can be rewritten as Equation (9) by substituting Equation (8) to Equation (7):
where
denotes the transfer function matrix of the feed drive axes.
is a diagonal matrix, and the diagonal entries
,
, and
denote the transfer functions of the feed drive axes
X,
Y, and
Z, respectively. Because
and
are at a steady state, Equation (9) can be further rewritten as Equations (10) and (11):
Accordingly, from Equation (11), the iterative equation of the contour error
can be obtained as Equation (12):
where
denotes the identity matrix. Therefore, for each feed drive axis, the relationship between the contour error components in cycles
and
can be represented as Equation (13):
where
,
, and
are the axial components of the contour error
on the
X-axis,
Y-axis, and
Z-axis, respectively. According to Equation (13), for the cycle learning method presented in Equation (8) to achieve convergence, the inequality shown in Equation (14) must be satisfied:
where
denotes the infinity norm.
Figure 5 shows the PCB-ILCC structure in detail using the cycle learning method; here, the operation of the PCB-ILCC illustrated in
Figure 5 can be described as the following steps:
Step 1: compute the command cycle by combining the recorded command cycle , the filtered contour error , and the pitch increment ; here, the command cycle must also be recorded to memory.
Step 2: feed drive axes perform motions with the command cycle so that the response cycle can be obtained from the motion results.
Step 3: calculate the contour error by using the contour error calculation function , the helical cycle , and the response cycle ; here, the contour error must also be recorded to memory.
Step 4: if the th pitch cycle is not the last cycle, the PCB-ILCC increases the cycle number and then moves to Step 1.
In
Figure 5, the pitch cycle number
is increased from
(the first cycle); moreover, for
, the command cycle
, and the recorded command cycle
and the recorded contour error
are both set to be zeros. A conventional proportional–integral controller was employed in this study as the iterative learning contour controller. The proportional and integral control gains were tuned manually according to the influence of the proportional control gain on the rate of convergence and the influence of the integral control gain on the converged contour error. Moreover, the control gains must be tuned to satisfy the inequality shown in Equation (14) to achieve convergence.
4. PMSM Driving Control Design
A PMSM mainly actuates feed drive axes; thus, the PMSM driving control design can significantly affect the motion performance of each feed drive axis and further affects the operating performance of the PCB-ILCC. Considering the dynamic equation of the feed drive axis actuated by the PMSM as Equation (15):
where
and
denote the equivalent moment of inertia and equivalent viscous friction coefficient, respectively.
denotes the rotating angular position of the PMSM,
and
, respectively, denote the driving torque and external disturbance torque of the PMSM, and
as Equation (16) denotes the compound friction torque composed of the static friction torque and Coulomb friction torque:
where
and
denote the static friction torque and Coulomb friction torque, respectively.
denotes the Stribeck velocity, and
denotes the Stribeck shape factor.
Supposing that the feed drive axis would not be influenced by the external disturbance torque (i.e.,
), this study designed the driving control as Equation (17):
where
denotes the estimated equivalent moment of inertia,
denotes the estimated equivalent viscous friction coefficient,
denotes the estimated compound friction torque, and
denotes the control term required to be further designed. Therefore, by substituting Equation (17) into Equation (15), the dynamic equation can be rewritten as Equation (18):
where
and
denote the estimation errors of the equivalent viscous friction coefficient and compound friction torque, respectively. The estimation error of the equivalent moment of inertia can also be defined as
, and Equation (18) can be rewritten as Equation (19):
The uncertainty
can be defined as Equation (20):
Then, Equation (19) can be rewritten as Equation (21):
To overcome the influence of the uncertainty
, this study designed the control term
as shown in Equation (22):
where
,
, and
denote the commands for the rotating angular acceleration, angular velocity, and angular position of the PMSM, respectively.
and
denote the control gains;
denotes the additional term and is used to attenuate the influence of the uncertainty. Based on Equations (21) and (22), this study derived the error equation as Equation (23):
Moreover, through the definition of the following error vector
, Equation (23) can be rewritten as Equation (24):
where
and
denote the error state matrix and uncertain input vector, respectively. Moreover,
Herein, in case the uncertainty
is bounded by
, i.e.,
The additional term
can be designed as Equation (27) so that the solution trajectory of the error equation shown in Equation (24) is bounded. The
Appendix A shows the detailed derivation.
where
denotes a threshold constant. The matrix
in Equation (25) must be a stable matrix. Moreover, matrix
and matrix
must satisfy the Lyapunov equation as Equation (28):
Equations (17), (22), (27) and (28) construct the PMSM driving control designed in this study.
Figure 6 shows the control structure developed in this study. The generated commands
,
, and
and the actual responses
and
are adopted to calculate the control term
and the additional term
by using Equation (22) and Equations (27) and (28), respectively. Then, Equation (17) calculates the driving torque
to actuate the feed drive axis through the PMSM. Here, the commands
,
, and
are generated from the axial component of the command cycle, and the actual response
produces the axial component of the response cycle, as shown in
Figure 5.
In this study, for simplicity, the matrix
is designed as
; where
is a positive and real variable. Therefore, the PMSM driving control includes five control parameters
,
,
,
, and
. The conservative design of the control parameters generally improves the stability but limits the performance of the PMSM driving control. On the other hand, to improve the performance, the design of the control parameters usually deteriorates the stability of the PMSM driving control. Therefore, due to the control parameters’ design complexity, the control parameters were tuned manually to achieve a balanced performance and stability considering their control characteristics. Referring to Equations (24) and (25), the control parameters
and
determine the dynamic response of the solution trajectory. Thus, the control parameters
and
were tuned to rapidly attenuate errors without significant oscillations. Referring to Equation (27), because the threshold constant
affects the chattering phenomenon of the solution trajectory, the threshold constant
was tuned to suppress chattering. Furthermore, the larger the bounded value
, the more stable control is achieved; however, a large bounded value usually increases the response time and steady-state errors of the PMSM driving control. Referring to the detailed derivation in the
Appendix A, the Euclidean norm of the solution trajectory at the steady state (i.e., the magnitude of the error vector at the steady state) is proportional to the product of the bounded value
and threshold constant
, and is inversely proportional to the control parameter
. Therefore, to achieve stable control and improved steady-state errors, the control parameters
,
, and
were tuned repeatedly by reducing the product of the bounded value
and threshold constant
and increasing the control parameter
.
6. Conclusions
During thread milling operations, the helical contour motion accuracy of feed drive axes is critical because it can significantly affect the accuracy of manufactured threads. The contour control design can improve the contour motion accuracy of feed drive axes; however, the motion dynamics and friction disturbance of each feed drive axis and the cutting force in thread milling operations significantly affect the helical contour motion accuracy of feed drive axes. Although the ILCC can reduce contour errors while feed drive axes perform repeated motions, recording and processing large amounts of data increase the memory usage and the computational burden on the motion control system. Moreover, during the ILCC convergence, producing multiple defective products can lead to wasted materials while increasing manufacturing costs.
Because the helical path is composed of multiple pitch cycles, and feed drive axes are generally influenced similarly by motion dynamics and external disturbances such as the friction disturbance and cutting force during the motions of pitch cycles, the PCB-ILCC is developed to apply the contour error in the previous pitch cycle motion to modify the position command of the current pitch cycle motion so as to not only improve the contour motion accuracy of the feed drive axes while performing a helical path but also deal with the control system problem and thread manufacturing problem induced by applying the ILCC to thread milling operations. To realize the PCB-ILCC, the CEV estimation method must not excessively increase the computational burden, and the ILCC must be easy to implement; in addition, the PMSM driving control must mitigate the adverse influence of motion dynamics and external disturbances acting on the feed drive axes. Therefore, the PCB-ILCC estimated the CEV by referring to the interpolated positions on the helical path, designed the ILCC using a cycle learning method, and designed the PMSM driving control using the robust control method that integrates friction compensation and dynamics compensation.
The motion control experiments performed on a testbench validated that the robust PMSM driving control method developed in this study can significantly reduce contour errors compared with the extensively used proportional–proportional–integral control. As proportional–proportional–integral control is susceptible to the influence of PMSM motion dynamics and external disturbances, the contour errors vary considerably. Compared with proportional–proportional–integral control, the PCB-ILCC integrated with the PMSM driving control has robust control results and small contour errors owing to the compensation of PMSM motion dynamics and friction disturbances and the robust performance of PMSM motions. Compared with the extensively used proportional–proportional–integral control, the PCB-ILCC achieves a rate of reduction in the contour errors of over 90%. Moreover, compared with the robust PMSM driving control, the PCB-ILCC can further reduce the contour errors with a rate of reduction of over 40%. Thread milling experiments performed on a five-axis CNC machining center showed that even though the feed drive axes were adversely influenced by the motion dynamics and external disturbances, including the friction disturbance and cutting force, the PCB-ILCC achieved a significant contour error reduction because of the cycle learning method developed in this study. The reduction rate of contour errors when applying the PCB-ILCC reached 80% in thread milling operations compared to proportional–proportional–integral control. Thus, the experimental results validated that the PCB-ILCC can be applied to thread milling operations, effectively improving the helical contour motion accuracy of the feed drive axes.
The PCB-ILCC presented in this paper exhibited improved contour motion accuracy for helical contour motions. Therefore, in the future, the developed PCB-ILCC will be applied to the motion control system of a robotic manufacturing system for manufacturing mechanical parts with a non-circular helix using a robot manipulator. In future studies, some developed approaches in the presented PCB-ILCC must be carefully redesigned. For instance, for the design of the contour error vector estimation, we must consider the curvature variation in the helical path with a non-circular contour. Furthermore, for the design of the iterative learning contour control, we must consider the dynamics of the robot manipulator, and the design of the PMSM driving control must be extended to the design of robotic motion control.