1 Introduction

The demand for high accuracy of finished workpieces within short cycle times requires a high static and dynamic structural stiffness of machine tools to ensure low path deflection during chip removal and high feed drive dynamics to realize fast positioning operations [1]. Consequently, moving components should have small mass with sufficient static and dynamic structural stiffness. To allow manufacturers to mill complex parts, five axis milling, where the tool can be set in any direction in space, is state of the art. In a typical axis configuration, a machine tool rotates on the A and B axis and moves across X, Y and Z in a linear direction. Depending on the machining task, various designs and kinematic structures exist to link those five axes. Also, various parallel and hybrid kinematics exist [3].

Among various available drive concepts for machine tool axes, ball screw spindle, rack and pinion, and linear motor drives are typically used in single- or multi-drive arrangements [2]. Depending on different requirements, such as machining process, operating range, machine tool kinematics and desired trajectory dynamics, a best fitting drive concept for each application may be found [7]. The resulting dynamical system is of multiple input - multiple output (MIMO) type, nonlinear and thus pose-dependent.

In industrial applications, the use of cascaded feedback control loops with some extensions such as feedforward controls, filters and reference models is well established [9]. These independently controlled drives can be tuned without extensive modelling in advance [16]. Automatic tuning algorithms determine control parameters quickly. However, in case of strong pose-dependent axis characteristics, commissioning can become a very challenging task, requiring a lot of expert knowledge. The resulting control loops often suffer from low bandwidth and high trajectory error [2]. Finding robust controller parameters is amongst the most important tasks in machine tool engineering. Although other linear and nonlinear control methods are hard to implement in industrial numerical controllers, they are still of great interest for machine tool manufacturers. Nonlinear position control methods such as flatness-based design [11] have already been used experimentally for parallel kinematic machine tools and show the potential to significantly increase the machine tool performance by reduced tracking error [4].

Mechatronic system simulation offers the possibility to virtually examine machine tool structures, drive concepts, control strategies and machining processes regarding the impact on the overall system behavior. Machine tool dynamics can be assessed and improved in advance, reducing the need for physical test benches [1].

In this paper, the mechatronic system simulation introduced in [7, 13, 14] is extended to multi-drive arrangements like gantry and main-sub, and applied to the coupled machine axis configuration of a linear Y- and rotating A- axis of a recently designed high performance machine tool. To reduce the trajectory error, the standard controllers are extended by a flatness-based feedforward control. Experimental measurements in frequency and time domain of the machine tool with standard controllers show excellent agreement with the mechatronic system simulation. Simulation results demonstrate that nonlinear feed forward control in combination with well-known standard controllers improve positioning performance, e.g. reduced tracking error, overshoot and ringing, significantly.

2 Mechatronic System Simulation

The most comprehensive mechatronic simulation can be reached using flexible multibody systems where large nonlinear feed drive movements can be considered and elastic deformations are included [1]. However, this type of simulation is usually limited to computationally expensive time domain analysis. If movements are assumed to be small, also the finite element method is suitable for a coupled simulation. In this case, the behavior of a linearized system can be even examined in frequency domain. In the present work, a finite element model of an entire machine tool is used to define the mechanical properties of structure and drive trains. Controllers and electrical characteristics are modeled in a graphical block diagramming tool. The approach is similar to an application in references [7, 13, 14] but as novelty also incorporates rotary axes and multi-drive arrangements. Furthermore, a nonlinear rigid multibody model is used to design advanced feed forward control.

2.1 Finite Element Model

Using the finite element method (FEM), the structure of a machine tool including all mechanical parts of the drive trains is approximated by a finite number of regular elements. The remaining unknowns are the displacements of the nodes which are the f degrees of freedom (DOF) of the system. The equations of motion can be written in matrix form as system of f coupled, second-order, ordinary differential equations (ODEs)

$$\begin{aligned} \boldsymbol{M}\ddot{\boldsymbol{x}}(t)+\boldsymbol{D}\dot{\boldsymbol{x}}(t)+\boldsymbol{K}\boldsymbol{x}(t)=\boldsymbol{P}(t)\text { ,} \end{aligned}$$
(1)

where \(\boldsymbol{M}\in \mathbb {R}^{f\times f}\), \(\boldsymbol{D}\in \mathbb {R}^{f\times f}\), \(\boldsymbol{K}\in \mathbb {R}^{f\times f}\) are the global mass, viscous damping, and stiffness matrix, respectively. \(\boldsymbol{P}\in \mathbb {R}^{f}\) is the time dependent load vector and \(\boldsymbol{x}\in \mathbb {R}^{f}\) is the displacement vector of the degrees of freedom.

For efficiency reasons a normal modes model order reduction of Eq. (1) is performed before rearranging into state-space a representation

$$\begin{aligned} \begin{bmatrix} \ddot{\boldsymbol{\gamma }}\\ \dot{\boldsymbol{\gamma }} \end{bmatrix}&=\underbrace{ \begin{bmatrix} -\boldsymbol{m}^{-1}\boldsymbol{d} &{} -\boldsymbol{m}^{-1}\boldsymbol{k}\\ \boldsymbol{I} &{} \boldsymbol{0} \end{bmatrix}}_{\boldsymbol{A}}\begin{bmatrix} \dot{\boldsymbol{\gamma }}\\ {\boldsymbol{\gamma }} \end{bmatrix}+\underbrace{ \begin{bmatrix} \boldsymbol{m}^{-1}\boldsymbol{\varPhi }^T\boldsymbol{R}^T\\ \boldsymbol{0} \end{bmatrix}}_{\boldsymbol{B}}\boldsymbol{u}\text { ,} \end{aligned}$$
(2a)
$$\begin{aligned} \begin{bmatrix} \ddot{\boldsymbol{x}}_a\\ \dot{\boldsymbol{x}}_a\\ \boldsymbol{x}_a \end{bmatrix}&=\underbrace{ \begin{bmatrix} -\boldsymbol{S}\boldsymbol{\varPhi }\boldsymbol{m}^{-1}\boldsymbol{d} &{} -\boldsymbol{S}\boldsymbol{\varPhi }\boldsymbol{m}^{-1}\boldsymbol{k}\\ \boldsymbol{S}\boldsymbol{\varPhi } &{} \boldsymbol{0}\\ \boldsymbol{0} &{} \boldsymbol{S}\boldsymbol{\varPhi } \end{bmatrix}}_{\boldsymbol{C}}\begin{bmatrix} \dot{\boldsymbol{\gamma }}\\ {\boldsymbol{\gamma }} \end{bmatrix} +\underbrace{ \begin{bmatrix} \boldsymbol{S}\boldsymbol{\varPhi }\boldsymbol{m}^{-1}\boldsymbol{\varPhi }^T\boldsymbol{R}^T\\ \boldsymbol{0}\\ \boldsymbol{0} \end{bmatrix}}_{\boldsymbol{D}}\boldsymbol{u} \text { ,} \end{aligned}$$
(2b)

with system matrix \(\boldsymbol{A}\in \mathbb {R}^{2m\times 2m}\), input matrix \(\boldsymbol{B}\in \mathbb {R}^{2m\times i}\), output matrix \(\boldsymbol{C}\in \mathbb {R}^{3j\times 2m}\), feed-through matrix \(\boldsymbol{D}\in \mathbb {R}^{3j\times i}\) and modal displacement vector \(\boldsymbol{\gamma }\in \mathbb {R}^{m}\). System matrix \(\boldsymbol{A}\) holds the modes of the undamped system which are obtained as solution of the generalized eigenvalue problem

$$\begin{aligned} \boldsymbol{M}\boldsymbol{\varPhi }\boldsymbol{\varOmega }=\boldsymbol{K}\boldsymbol{\varPhi }\text { ,} \end{aligned}$$
(3)

where \(\boldsymbol{\varPhi }\in \mathbb {R}^{f\times m}\) is the matrix of mass normalized mode shapes, with m representing the number of desired modes, \(\boldsymbol{\varOmega }=\text {diag}\left( \omega _1^2,\ldots ,\omega _m^2\right) \) is a diagonal matrix of the eigenvalues \(\omega _k,\; k=1,\dots ,m\) and \(\boldsymbol{m}=\boldsymbol{\varPhi }^T\boldsymbol{M}\boldsymbol{\varPhi }\) and \(\boldsymbol{k}=\boldsymbol{\varPhi }^T\boldsymbol{K}\boldsymbol{\varPhi }\) are the modal mass and stiffness matrix, respectively. A modal damping matrix \(\boldsymbol{d}=2\boldsymbol{m}\,\text {diag}\left( \xi _1\omega _1,\ldots ,\xi _m\omega _m\right) \) is generated by assigning modal damping values \(\xi _k\) individually to each mode. Partition matrix \(\boldsymbol{S}\in \mathbb {R}^{j\times f}\) reduces the output to j DOFs of interest of displacement vector \(\boldsymbol{x}\) in Eq. (1), i.e. the actual nodal displacement \(\boldsymbol{x}_a\), velocity \(\dot{\boldsymbol{x}}_a\) and acceleration \(\ddot{\boldsymbol{x}}_a\) of the measurement systems and some prominent points like tool and workpiece center point (TCP, WCP). Similarly, partition matrix \(\boldsymbol{R}\in \mathbb {R}^{i\times f}\) reduces the load vector \(\boldsymbol{P}\) of Eq. (1) and limits the possible input vector \(\boldsymbol{u}\in \mathbb {R}^{i}\) to forces and moments acting on i outstanding DOFs. To enable a subsequent coupled simulation of a controlled moving mechanical structure, the rigid body modes (\(\omega _k=0\)) of the statically underdetermined FEM system have to represent the kinematic permissions of the real machine tool.

2.2 Control Loop Model

In modern machine tools, cascaded control loop structures with innermost PI current control loop, PI velocity control loop and outermost P position control loop are state of the art [9]. Extensions, such as adaptive control parameters, reference models and filters can influence the control loops behavior significantly. The tracking error is reduced using additional feed forward actions. For large scale machine tool axes or carriages with low structural stiffness, drive torque is frequently provided by multiple, mutually independent drives, which improves the overall dynamical properties [16]. In numerical controls, e.g. Siemens Sinumerik NC, typical representatives of these multi-axis couplings are gantry and main-sub [12].

Gantry:

In a gantry axis grouping a guide axis is traversed in conjunction with at least one synchronized axis. Each drive constitutes a complete axis system and thus has its own measuring system. Setpoint values are provided by the guide axis. To prevent any damage to the machine, all involved gantry drives must be operated in absolute synchronism.

Main-Sub:

Main-sub coupling is a speed setpoint coupling between a main axis and some sub axes, involving a torque equalization controller for even torque distribution. The sub axis is traversed only speed-controlled, not position-controlled, with the setpoint speed of the main axis. An additional torque can be applied to achieve a mutual tension in the individual drives allowing for the compensation of backlash effects, e.g. gear backlash.

Figure 1 depicts schematically the principal implementation of the control loop of two main-sub coupled axes in the simulation model. Each drive system provides mechanical torque in the motor (\(M_1\), \(M_2\)). The actual current \(i_a\) is controlled in the innermost PI current control loop by use of proportional gain \(K_{pi}\) and integrator reset time \(T_{ni}\). The actual rotational velocity \(n_a\) of the motor encoder (\(E_1\), \(E_2\)) is regulated towards the setpoint velocity \(n_s\) by the velocity PI controller (\(K_{pn}\), \(T_{nn}\)). The P position control gain \(K_v\) amplifies the tracking error, i.e. the difference of position setpoint \(x_s\) and actual virtually measured position \(x_a\). Velocity and current feedforward (\(n_\text {ffw}\), \(i_\text {ffw}\)) reduce the tracking error considerably but can not affect the disturbance characteristics. Main axis position control provides the velocity setpoint for both, main and sub axis. A PI torque equalization controller (\(K_{pp}\), \(T_{np}\)) is involved to distribute the torque evenly to both drives by generating an extra velocity setpoint for each motor. The optional tensioning torque \(M_p\) can be applied smoothly by a prefilter with equivalent time \(T_{ep}\).

All feedback loops in the proposed mechatronic system simulation are modelled in discrete-time representation with real-world sampling rates considering delay times for digital measurement acquisition, data transmission and computing times. In addition to the approach presented in previous works [7, 13, 14], this paper also accounts for rotary drives and multi-axis coupling.

Fig. 1.
figure 1

Schematic representation of the cascaded control loop structure of two main-sub coupled drive axes including torque equalization control and tensioning torque.

2.3 Exact Feedforward and Trajectory Planning

Differential flatness is a nonlinear modelling approach, first introduced by Fliess et al. in 1992 [8]. It extends the notion of controllability from linear systems to nonlinear dynamical systems. In a differential flat system an output exists, with which all states and inputs can be expressed explicitly in terms of this flat output and a finite number of its derivatives.

In the MIMO case, a system of n nonlinear first order differential equations with m affine inputs \(\boldsymbol{u}=\begin{bmatrix} u_1&\ldots &u_m \end{bmatrix}^T\in \mathbb {R}^{m}\) and m outputs \(\boldsymbol{y}=\begin{bmatrix} y_1&\ldots &y_m \end{bmatrix}^T\in \mathbb {R}^{m}\) reads,

$$\begin{aligned} \dot{\boldsymbol{x}}&=\boldsymbol{f}(\boldsymbol{x})+\sum _{j=1}^m\boldsymbol{g}_j(\boldsymbol{x})u_j\end{aligned}$$
(4a)
$$\begin{aligned} \boldsymbol{y}&=\boldsymbol{h}(\boldsymbol{x}) \end{aligned}$$
(4b)

where \(\boldsymbol{x}\in \mathbb {R}^{n}\) are the states, \(\boldsymbol{f}(\boldsymbol{x})\) and \(\boldsymbol{g}_j(\boldsymbol{x}),\; j=1,\ldots ,m\) are smooth vector fields and \(h_l(\boldsymbol{x}),\; l=1,\ldots ,m\) are smooth functions.

Derivatives of all \(h_l(\boldsymbol{x})\) outputs can be noted elegantly using Lie-derivatives [15] and yield the transformation

$$\begin{aligned} \boldsymbol{z}=\boldsymbol{\varPhi }(\boldsymbol{x})=\begin{bmatrix} h_1(\boldsymbol{x}), & L_{\boldsymbol{f}}h_1(\boldsymbol{x}),& \ldots ,& L^{(r_1-1)}_{\boldsymbol{f}}h_1(\boldsymbol{x}), & h_2(\boldsymbol{x}),& \ldots ,& L^{(r_m-1)}_{\boldsymbol{f}}h_m(\boldsymbol{x}) \end{bmatrix}^T \text { ,} \end{aligned}$$
(5)

and consequently

$$\begin{aligned} \begin{bmatrix} y_1^{(r_1)}\\ \vdots \\ y_m^{(r_m)} \end{bmatrix}=\underbrace{ \begin{bmatrix} L_{\boldsymbol{f}}^{(r_1)}h_1(\boldsymbol{x})\\ \vdots \\ L_{\boldsymbol{f}}^{(r_m)}h_m(\boldsymbol{x}) \end{bmatrix}}_{\boldsymbol{b}(\boldsymbol{x})}+\underbrace{ \begin{bmatrix} L_{\boldsymbol{g}_1}L_{\boldsymbol{f}}^{(r_1-1)}h_1(\boldsymbol{x})&{}\ldots &{}L_{\boldsymbol{g}_m}L_{\boldsymbol{f}}^{(r_1-1)}h_1(\boldsymbol{x})\\ \vdots &{}\ddots &{}\vdots \\ L_{\boldsymbol{g}_1}L_{\boldsymbol{f}}^{(r_m-1)}h_m(\boldsymbol{x})&{}\ldots &{}L_{\boldsymbol{g}_m}L_{\boldsymbol{f}}^{(r_m-1)}h_m(\boldsymbol{x})\\ \end{bmatrix}}_{\boldsymbol{D}(\boldsymbol{x})}\begin{bmatrix} u_1\\ \vdots \\ u_m \end{bmatrix}\text { .} \end{aligned}$$
(6)

If \(\boldsymbol{D}(\boldsymbol{x})\) is regular in a vicinity \(\bar{\boldsymbol{x}}\in \mathcal {U}\), the vector relative degree \(r=r_1+\ldots +r_m=n\) and the desired trajectory matches the systems initial conditions \(\boldsymbol{x}_0=\boldsymbol{x}(0)=\boldsymbol{x}_d(0)\), the system can be exactly linearized and feed forward \(u_{j}^*\) can be planned using

$$\begin{aligned} \begin{bmatrix} u_{1}^*\\ \vdots \\ u_{m}^*\end{bmatrix}= \boldsymbol{D}^{-1}(\boldsymbol{x}_d)\left( \begin{bmatrix} y_{1,d}^{(r_1)}\\ \vdots \\ y_{m,d}^{(r_m)} \end{bmatrix} - \begin{bmatrix} L_{\boldsymbol{f}}^{(r_1)}h_1(\boldsymbol{x}_d)\\ \vdots \\ L_{\boldsymbol{f}}^{(r_m)}h_m(\boldsymbol{x}_d) \end{bmatrix}\right) \text { ,} \end{aligned}$$
(7)

where \(\boldsymbol{x}_d=\boldsymbol{\varPhi }^{-1}\left( \begin{bmatrix} y_{1,d}&\dot{y}_{1,d}&\ldots &y_{1,d}^{(r_1-1)}&y_{2,d}&\ldots &y_{m,d}^{(r_m-1)}\end{bmatrix}^T\right) \) is computed from the desired trajectory of the outputs and their derivatives. Consequently, the planned trajectories \(y_{l,d},\; l=1,\ldots ,m\) must be at least \(r_l\)-times continuously differentiable to result in a continuous system input. However, if the chosen outputs result in \(r=r_1+\ldots +r_m<n\), an internal zero dynamics remains in the system.

Among many existing approaches for trajectory planning, polynomial functions [10], Gevrey functions [5] and classical s-curve trajectories whose differentiability is increased through filters [6] are common. In this work polynomial functions for rest-to-rest trajectories of form

$$\begin{aligned} y_{l,d}(t)=y_{l,d,S}+\left( y_{l,d,E}-y_{l,d,S}\right) \left( \sum _{i=r_l+1}^{2r_l+1}\tilde{\gamma }_i\left( \frac{t-t_S}{t_E-t_S}\right) ^i\right) \end{aligned}$$
(8)

are used, where \(y_{l,d,S}=y_{l,d}(t_S)\) is the start position and \(y_{l,d,E}=y_{l,d}(t_E)\) is the end position, respectively. The requirement that all derivatives must be zero at the start and end point yields the coefficients \(\tilde{\gamma }_i\) of the polynomial [10]. The transition time \(t_T=t_E-t_S\) of the rest-to-rest movement can be optimized offline in a way, that all requirements regarding maximum acceleration, velocity and drive torque of the involved axes are met.

3 Application, Results and Discussion

In this work, the recently designed standard machine center syncromill c21-63/1500 of machine tool manufacturer Fill GmbH is considered. In particular its Y- and A- axis are of interest. Figure 2 depicts an overview of the machine tools axes configuration with the associated drives. Workpieces are mounted to a carriage (bridge) which traverses in the vertical Y- direction and rotates around the A- axis. The two axes form an open kinematic chain whose system dynamics can be formulated as nonlinear MIMO system. A mechatronic system simulation as proposed in Sect. 2 has been set up to investigate the individual axis dynamics. Simulations revealed that for the vertical movement two drives (Y1 and Y2) with gantry grouping are necessary to avoid unacceptable canting of the bridge. For the A-axis rotation, both sides of the bridge are driven in a gantry group. Each individual side consists of two motors in main-sub coupling engaging into a common gear wheel with mutual tensioning torque.

Fig. 2.
figure 2

Schematic representation of the nonlinear MIMO feed forward control in simulation studies. Frames offset in the background represent identical accompanying gantry group control loops.

The machine tool is equipped with a Siemens Sinumeric One CNC system, which offers a built-in data logger to acquire measurement data in time and frequency domain. Figure 3 (a) depicts the measured \(x_{meas}\) and simulated \(x_{sim}\), \(x=(A,Y)\) open loop frequency response function (FRF) of the velocity controlled axes. These FRFs describe in frequency domain the actual motor velocity output at given actual torque input and are considered as plant in control theory. Furthermore, in (b) and (c) measured and simulated data of closed loop velocity and position control is given. Note that simulated FRF data results from the comprehensive mechatronic system model, linearized at the specified machine tool pose. Considering the enormous complexity of the application, all measured and simulated FRFs agree excellently. Figures 5 (a) and (b) show that joint movement of Y and A by standard jerk limited s-curve trajectories, e.g. the acceleration characteristic is trapezoidal, excites the individual position control resonance frequency significantly. This results in oscillations approaching the end position. Furthermore, individual single axis operation (c) and (d) leads to strong disturbance of the respective non-moving axis.

Fig. 3.
figure 3

Measured and simulated FRFs at position \(Y=0\), \(A=90^\circ \): Velocity controlled system (a); Closed loop velocity control (b); Closed loop position control (c)

To improve the positioning performance, exact feed forward control based on trajectory planning of differential flat outputs has been developed. For exact feed forward planning a model covering the main nonlinearities of the Y- and A- axis combination is necessary. Figure 4 provides a sketch of the lumped model of this nonlinear system. Inertia \(J_{MY}\) accounts for the motors, couplings and spindles of the Y- axis. The motor rotation \(\phi _Y\) is transformed into a vertical movement y via pitch p by a ball screw spindle, modelled as spring \(c_N\) and damper \(d_N\). No posture dependency of \(c_N\) is considered, since the associated natural frequency occurs in the middle frequency range, which is of little interest for the position accuracy. A rigid guiding system connects the Y- carriage (\(m_Y\)) to the substructure. Load and bridge (\(m_L\), \(J_L\)) are pivoted in the Y- carriage and rotate with \(\phi _L\). The bridge is connected to a gearbox \(i_G\) and subsequently via spring \(c_G\) and damper \(d_G\) to the motors of the A- axis (\(J_{MA}\)). Input torque \(M_A\) and \(M_Y\) is provided by motors of A and Y which rotate with \(\phi _A\) and \(\phi _Y\), respectively. Although the overall machine tool installation condition and the guiding system influence the oscillations during positioning operations significantly, it is neglected as its consideration by additional degrees of freedom would detract the flatness property from the selected system outputs \(\phi _L\) and y. The four generalized variables (\(f=4\)) of the lumped system are \( \boldsymbol{q}=\begin{bmatrix} \phi _Y&y&\phi _A&\phi _L \end{bmatrix}^T \). Lagrange’s equation yield equations of motion

Fig. 4.
figure 4

Nonlinear, lumped, rigid multibody model of machine tool A- and Y- axis.

$$\begin{aligned} \frac{d}{dt}\left[ \frac{\partial \left( E_{kin}-E_{pot}\right) }{\partial \dot{q}_k}\right] -\frac{\partial \left( E_{kin}-E_{pot}\right) }{\partial q_k}+\frac{\partial R}{\partial \dot{q}_k}=Q_k\text { ,} \qquad k=1,\ldots ,f \end{aligned}$$
(9)

where \(E_{kin}\) holds all the systems kinetic energy and \(E_{pot}\) the potential energy, respectively. Rayleigh dissipation function R handles the effects of the velocity-proportional frictional forces of the outputs and on the right hand side \(Q_k\) considers all nonconservative forces and moments like \(M_A\) and \(M_Y\). Introduction of state vector \(\boldsymbol{x}=\begin{bmatrix} \phi _Y&\dot{\phi }_Y&y&\dot{y}&\phi _A&\dot{\phi }_A&\phi _L&\dot{\phi }_L \end{bmatrix}^T\), yields a system of nonlinear, first order differential equations with two affine inputs,

$$\begin{aligned} \dot{\boldsymbol{x}}&=\boldsymbol{f}(\boldsymbol{x})+\boldsymbol{g}_Y(\boldsymbol{x})M_Y+\boldsymbol{g}_A(\boldsymbol{x})M_A\text { ,}\end{aligned}$$
(10a)
$$\begin{aligned} y&=h_Y(\boldsymbol{x})\text { ,}\end{aligned}$$
(10b)
$$\begin{aligned} \phi _L&=h_A(\boldsymbol{x})\text { .} \end{aligned}$$
(10c)

Due to the lengthy expressions, this system () is not given explicitly. For the described model the selected outputs \(\phi _L\) and y are flat, inputs \(M_A\) and \(M_Y\) enters explicitly in derivatives \(r_Y=r_A=4\). Figure 2 gives an overview of the feed forward control in simulation studies. The individual cascaded control loops including main-sub and gantry groupings remain unaltered due to partly inaccessible interfaces and capsuled Siemens Sinamics S120 drive units. The drives receive setpoint and feedforward values for position \(x_{s}^*=y_{x,d}\), velocity \(\dot{x}_{s}^*=\dot{y}_{x,d}\) and motor current \(i_{x}^*\), \(x=(A,Y)\) generated from exact feedforward decoupling (7) of desired polynomial trajectories (8).

For fair comparison purpose in Fig. 5, the transition time \(t_T\) of the proposed polynomial setpoint trajectories \(x_{s}^*\) and standard jerk-limited s-curve setpoint trajectories \(x_{s}\) is equal. Due to the higher smoothness of the polynomial trajectory and the almost perfectly feed forwarded drive torque, less oscillations are excited in simulated actual position signals \(x_{a,sim}^*\) compared to measured and simulated actual position signals \(x_{a,meas}\) and \(x_{a,sim}\). The disturbance caused by the respective other moving axis is also reduced considerably. However, non-equal time constants of the velocity and current controllers as well as transmission delays prevent even better disturbance characteristics.

Fig. 5.
figure 5

Measured and simulated rest-to-test movements of standard s-curve trajectories with standard feed forward, compared to simulated polynomial trajectories with proposed exact feed forward: Joint positioning operation of Y axis (a) and A axis (b); Y axis response during A axis moving (c); A axis response during Y axis moving (d)

4 Conclusion

The developed mechatronic system simulation can implement all common machine tool drive systems including multidrive applications such as main-sub or gantry. It is an excellent analysis tool to evaluate the mechanical structure, axis kinematics, drive systems and control. The authors are confident that for Siemens Sinumeric One a nonlinear MIMO exact feed forward control can be implemented using so called compile cycles. Simulation studies promise a significant improvement of positioning performance using this exact feed forward control.