# Identification Approach for Nonlinear MIMO Dynamics of Closed-Loop Active Magnetic Bearing System
## 4 System Identification of Rotor/RAMB Dynamics
It is noted that the terms shown in Equation (36) and Equation (38) cannot be measured from the dynamic system directly. By applying the following equations, the estimated values of these terms can be derived by [33]:  
\[\mathbf{\hat{\omega}}(t) =\mathbf{V}(t)-\boldsymbol{\varphi}(t)\mathbf{\theta} \tag{42}\] \[=\mathbf{V}(t)-\left[ \begin{array}{cc}\boldsymbol{\varphi}_{L}( t)&\boldsymbol{\hat{\varphi}}_{N}(t)\end{array} \right]\left[ \begin{array}{c} \mathbf{\hat{\theta}}_{L}\\ \mathbf{\hat{\theta}}_{N}\end{array} \right]\] \[\mathbf{\hat{\vartheta}}(t) =\mathbf{V}(t)-\boldsymbol{\varphi}_{L}(t)\mathbf{\hat{\theta}}_{L} \tag{43}\]  
Therefore, the parameters of the MIMO dynamic system can be estimated by the unbiased identification algorithm:  
\[\mathbf{\hat{\vartheta}}(t)=\mathbf{\hat{\vartheta}}(t-1)+\mathbf{K}(t) \big{[}\mathbf{V}(t)-\boldsymbol{\varphi}(t)\mathbf{\hat{\vartheta}}(t-1) \big{]}, \tag{44}\]  
\[\mathbf{K}(t)=\mathbf{P}(t-1)\boldsymbol{\varphi}^{T}(t)\Big{[}\boldsymbol{ \varphi}(t)\mathbf{P}(t-1)\boldsymbol{\varphi}^{T}(t)+\mathbf{I}\Big{]}^{-1}, \tag{45}\]  
\[\mathbf{P}(t)=\big{[}\mathbf{I}-\mathbf{K}(t)\boldsymbol{\varphi}(t)\big{]} \mathbf{P}(t-1), \tag{46}\]  
The products of the parameter matrices, \(\mathbf{C}_{i}\ (i=1,\cdots,n)\) and \(\mathbf{\hat{\vartheta}}_{l}\ (l=2,\cdots,n_{h})\), shown in the matrix, \(\boldsymbol{\theta}_{\mathbf{P}}\), are defined as:  
\[\boldsymbol{\theta}_{\mathbf{P}}=\begin{bmatrix}\mathbf{C}_{1}^{T}&\mathbf{C }_{2}^{T}&\cdots&\mathbf{C}_{n}^{T}  
length for validation is 4000, which is equivalent to the time length of 0.2 s. First, the estimated controller outputs are generated by feeding the recorded perturbation signals generated by the proposed parallel amplitude-modulated PRBS (PAPRBS) to the controller models presented in Section 2. The corresponding controller outputs are shown in Figure 20. The UX, UY, LX, and LY denote the upper RAMB along the X-axis, the upper RAMB along the Y-axis, the lower RAMB along the X-axis, and the lower RAMB along the Y-axis, respectively.  
The parameter \(\Delta\) shown in Equation (52) is set as 0.01.  
To verify the effectiveness of the identified Hammerstein-Wiener model, two conventional nonlinear model structures, i.e., NARX and NARMAX, are employed for comparison purposes. The NARX model is constructed by the MATLAB System Identification Toolbox. Both numbers of the delayed outputs, delayed inputs are selected as 4. The nonlinear estimator of NARX is selected as the Sigmoid network. The other nonlinear model for comparison is the NARMAX model with the FROLS (forward regression orthogonal least squares) algorithm [34]. The maximum numbers of the delayed outputs, delayed inputs are both selected as 4, and the maximum delayed noise is selected as 3. After several trials, the minimum number of NARMAX terms is selected as 14. By feeding the inputs to the identified models, shown in Figure 20, the responses of the proposed Hammerstein-Wiener model, NARX model, and NARMAX model are depicted in Figure 21. It is observed that the predicted responses of the Hammerstein-Wiener model show the best fit to the validation data, while the worst case is the NARMAX model. Although the predicted responses of the NARX model shows a good approximation result, the responses by the NARX model sometimes diverge with other sets of validation data.  
Figure 19: Flowchart of identification procedure of Wiener–Hammerstein model.  
To quantify the accuracy of the identified models, the following equation applies to evaluate the validation fit:  
\[Fit=100\%\times(1-\frac{\sqrt{\sum\limits_{k=1}^{N}\left[(y_{k}^{Valid}-\overline{y}^{Valid})-(y_{k}^{Est}-\overline{y}^{Est}) \right]^{2}}}{\left\|y^{Valid}-\overline{y}^{Valid}\right\|}) \tag{53}\]  
where \(N\) denotes data length, i.e., 4000. \(y_{k}^{Valid}\) and \(y_{k}^{Est}\) are the \(k\)th validation data and \(k\)th identified output, respectively. The upper bar represents the mean values.