## 3 Setup of the Planar Nanopositioning Machine
Following the notation of Figure 4, the control error \(\vec{e}\) is thereby given as:  
\[\vec{e}=\left( \begin{array}{c}x\\ y\\ \varphi_{z}\end{array} \right)_{set}-\left( \begin{array}{c}x\\ y\\ \varphi_{z}\end{array} \right)_{real} \tag{5}\]  
The left side of Figure 5 shows the reconstructed transfer characteristics of the electromechanical system (plant), including the transformations. There are no significant disturbances in the relevant frequency range up to 50 Hz. The system then can be reduced to a double integrator and small damping term for all movement directions:  
\[ \begin{split}\frac{d\vec{x}}{dt}&=\left(\begin{array}{cc}0&1 \\ 0&-\frac{d}{m}\end{array}\right)\vec{x}+\left(\begin{array}{c}0\\ \frac{k_{m}}{m}\end{array}\right)i\\ y&=\left(\begin{array}{cc}1&0\end{array}\right)\vec{x}\end{split}  \tag{6}\]  
Figure 4: Control scheme of the NFM-100 and its positioning system. where \(\vec{x}=(x_{1},x_{2})^{T}\) and \(y=x_{1}\) are the state-space variables for each movement direction \((x,y,\varphi_{z})^{T}\). Assuming the mass of the platform \(m=9\) kg as a well-defined value, the other plant parameters have been found as \(d=2.43\) kg/s for the low-frequency damping constant and \(k_{m}=2.196\) N/A the motor constant. The latter is in well agreement with electromagnetic simulation data, expecting \(k_{m}=2.24\) N/A. The rotational parameters for the \(\varphi_{z}\)-system can be derived in analogue manner using torques instead of forces. The PID controller has been designed within the pole-zero plane using the Nyquist stability criterion for each axis individually. The designed gains for Equation (4) are:  
\[K_{P}=\left( \begin{array}{c}400\times 10^{3}\,\mathrm{s}^{-2}\\ 400\times 10^{3}\,\mathrm{s}^{-2}\\ 50\times 10^{3}\,\mathrm{s}^{-2}\end{array} \right)\quad K_{I}=\left( \begin{array} []{c}3.0\times 10^{6}\,\mathrm{s}^{-3}\\ 3.0\times 10^{6}\,\mathrm{s}^{-3}\\ 400\times 10^{3}\,\mathrm{s}^{-3}\end{array} \right)\quad K_{D}=\left( \begin{array} []{c}500\,\mathrm{s}^{-1}\\ 500\,\mathrm{s}^{-1}\\ 900\,\mathrm{s}^{-1}\end{array} \right) \tag{7}\]  
It shall be noted that the integrator has been bounded to limit wind-up. The right side of Figure 5 shows the resulting open-loop response of the combined controller and plant. At the bandwidth limit at 100 Hz, a phase margin of comfortable 63\({}^{\circ}\) is kept to attain robustness. This is of particular importance, because specimens of different size and weight are frequently changed for examination. At higher frequencies around \(f>500\) Hz, the plant shows several higher-order resonances of unidentified origin (left side of Figure 5). To prevent a sensitive reaction of the plant excited by PID controllers at these frequencies, the controller output is supressed through a notch filter from \(f_{1}^{N}=495\) Hz to \(f_{2}^{N}=595\) Hz. Besides its use for the PID design, the model is used to improve the state estimation through an observer. A steady-state Kalman filter will be employed for this purpose. The discrete state-space update equation for the Kalman filter is given for an individual moving direction as [27]:  
\[\hat{\vec{x}}(n+1,n)=A_{z}(I-MC_{z})\hat{\vec{x}}(n,n-1)+[B_{z}\quad A_{z}M][ a_{i}(n),y_{i}(n)]^{T} \tag{8}\]  
Figure 5: Comparison of the reconstructed transfer function of the plant alone (diagrams in the left half) and the open loop, including the controller (diagrams in the right half). The diagrams show the amplitude responses in decibels in the upper row and the phase responses in the lower row. where \(\hat{\vec{x}}\) are the estimates of the states from the measured and transformed noisy movement positions \(y_{i}\) and the PID controller output acceleration \(a_{i}\). The noise co-variances are estimated to be \(Q=1\) for the plant and \(R=1{\times}10^{-10}\) for the measurement. With these follows an innovation of \(M=(0.5027,1721)^{T}\) and the specific Kalman filter as:  
\[\hat{\vec{x}}(n+1,n)=\left( \begin{array}{cc}0.3253&0.0001\\ -1721&1\end{array} \right)\hat{\vec{x}}(n,n-1)+\left(