4.1
x-LMS Algorithm with State Feedback
X-LMS algorithm as a kind of feedforward control method is widely used in active structural vibration control due to its small calculation amount, easy implementation and strong adaptive ability. The control diagram of x-LMS algorithm is shown in Figure 3a, the excitation signal is selected as the filter reference signal \(u\left(k\right)\), which limits the application of x-LMS algorithm when the excitation signal is unmeasurable. Therefore, a solution is proposed to use the system state as the reference signal, the control diagram of the corresponding x-LMS algorithm with state feedback is shown in Figure 3b.
In a discrete system, the system state equation can be expressed as
$${X}_{k}=G{X}_{k-1} +{H}_{1}{F}_{c.k-1}+{H}_{2}{u}_{k-1},$$
(13a)
$${e}_{k}=C{X}_{k}+D{F}_{c.k},$$
(13b)
where \({X}_{k}\) represents system status, \({F}_{c.k}\) is control signal, \({u}_{k}\) is excitation signal, \({e}_{k}\) is residual vibration signal. Therefore, the x-LMS algorithm with state feedback shown in Figure 3b can be expressed as
$${F}_{c.k}= \sum_{j=1}^{M}\sum_{i=0}^{N-1}{w}_{ji.k}{x}_{j.k-i} =\sum_{j}^{M}{{w}_{j.k}}^{\mathrm{T}}{X}_{j.k}=\sum_{j}^{M}{{{X}_{j.k}}^{\mathrm{T}}w}_{j.k},$$
(14a)
$${w}_{j.k+1}={w}_{j.k}-2\mu {{e}_{k}}^{\mathrm{T}}\cdot L\cdot {f}_{j.k},$$
(14b)
$${f}_{j.k}=c\cdot {{XX}_{j.k}}^{\mathrm{T}},$$
(14c)
where
$${X}_{j.k}={\left[{x}_{j.k}\;\; {x}_{j.k-1}\;\; {x}_{j.k-2} \cdots {x}_{j.k-\left(N-1\right)}\right]}^{\mathrm{T}},$$
(15a)
$${w}_{j.k}={\left[{w}_{j0.k}\;\; {w}_{j1.k}\;\; { w}_{j2.k} \cdots {w}_{jN-1.k} \right]}^{\mathrm{T}},$$
(15b)
$${{XX}_{j.k}}^{\mathrm{T}}=\left[{{X}_{j.k}}^{\mathrm{T}};{{X}_{j.k-1}}^{\mathrm{T}};\cdots ;{{X}_{j.k-m+1}}^{\mathrm{T}}\right],$$
(15c)
where Xj.k is the \(N\times 1\) dimensional vector corresponding to the jth state variable of the reference signal, and wj.k is the \(N\times 1\) dimensional tap-weight vector at time k; XXj.kT is the \(m\times N\) matrix of the reference signal corresponding to the current and past jth state variable at time k; \(c\) is the \(n\times m\) finite pulse filter corresponding to the transfer function of control channel; \(\mu\) is the step factor; fj.k is the signal filtered by the finite pulse filter \(c\) for the reference signal corresponding to the jth state variable; \(L\) is target-weight matrix; N, M, m and n indicate the order of the x-LMS filter, the number of state parameters and the order of the finite pulse filter corresponding to the control channel respectively.
For the iterative Eqs. (14b) and (14c) of the tap-weight vector in the x-LMS algorithm with state feedback, taking system state parameter Xj.k as reference signal, the control signal \({F}_{c.k}\) can be expressed as
$${F}_{c.k}={\left[{F}_{c.k}\;\; {F}_{c.k-1}\;\; {F}_{c.k-2}\cdots {F}_{c.k-m+1}\right]}^{\mathrm{T}},$$
(16)
$${F}_{c.k}=\sum_{j=1}^{M}{{{XX}_{j.k}}^{\mathrm{T}}\cdot w}_{j.k}.$$
(17)
The residual vibration signal \({e}_{k}\) is the sum of the effect of excitation source \({p}_{k}\) and the effect of active control \({s}_{k}\)
$${e}_{k}={p}_{k}+{s}_{k}.$$
(18)
The control criterion of x-LMS algorithm with state feedback is the minimum mean square error \({\xi }_{k}\) of the residual vibration signal, \({\xi }_{k}=E\left\{{{e}_{k}}^{2}\right\}\). It is treated by transient approximation in actual application, \({\xi }_{k}\approx {{e}_{k}}^{2}\), then
$${{e}_{k}}^{2}={\left({p}_{k}+{s}_{k}\right)}^{\mathrm{T}}\cdot L\cdot \left({p}_{k}+{s}_{k}\right).$$
(19)
Taking the partial derivative of Eq. (19), the tap-weight vector can be obtained
$$\Delta {w}_{j.k}=\frac{\partial {{e}_{k}}^{2}}{\partial {w}_{j}}=2{{e}_{k}}^{\mathrm{T}}\cdot L\cdot {f}_{j.k},$$
(20)
$${w}_{j.k+1}={w}_{j.k}-\mu \Delta {w}_{j.k}={w}_{j.k}-2\mu {{e}_{k}}^{\mathrm{T}}\cdot L\cdot {f}_{j.k}.$$
(21)
Based on Eq. (19), it can be seen that \({e}_{k}\) is an \(n\times 1\) dimensional vector, so x-LMS algorithm with state feedback is a multi-objective control algorithm, which realizes the coordination and synthesis of different control objectives through the selection of the weight matrix \(L\). Based on Eqs. (20) and (21), it can be found that the filtering process of each state variable and the iteration of the corresponding tap-weight vector run independently in x-LMS algorithm with state feedback. When the number of system state variables is large and the filter order is high, the calculation amount and data storage of the system will increase, thereby reducing the calculation efficiency. For this reason, the state vector can be preprocessed by using the \(1\times M\) dimensional weight vector S to simplify the calculation. This simplified processing will be applied to the control of the active mounting system in the section 5. In order to achieve a faster convergence rate, the normalization method is applied [33]
$${w}_{j.k+1}={w}_{j.k}-\frac{\lambda {{e}_{k}}^{\mathrm{T}}\cdot L\cdot {f}_{j.k}}{\gamma +{{f}_{j.k}}^{\mathrm{T}}\cdot {f}_{j.k}},$$
(22)
where \(\lambda\) is a fixed convergence factor; \(\gamma\) is a control factor to prevent fj.kT·fj.k from being too small.
4.2 System Controller Based on x-LMS Algorithm with State Feedback
In the application of x-LMS algorithm with state feedback, detecting the state variables of the system is the first step. However in the actual mounting system, the state variables of the system are not all measurable, so a state observer or filter is needed to estimate the system state, the corresponding control principle of the active mounting system is shown in Figure 4.
Because the engine excitation force in the active mounting system is related to the engine speed, that is, the variance matrix Q of the excitation signal is time-varying. Therefore, the Sage-Husa Kalman filter is explored to realize the state estimation of the system when the statistical characteristics of the excitation signal are time-varying.
First, the state Eq. (1) of the active mounting system is discretized:
$${X}_{k}=G{X}_{k-1} +{H}_{1}{F}_{c.k-1}+{H}_{2}{F}_{in.k-1},$$
(23a)
$${e}_{k}=C{X}_{k}+D{F}_{c.k}+{\eta }_{k}$$
(23b)
$$\begin{aligned}G=\mathrm{expm}\left(AT\right), \\{H}_{1}={A}^{-1}\cdot \left(G-{I}_{\mathrm{M}}\right)\cdot {B}_{1}, \\{H}_{2}={A}^{-1}\cdot \left(G-{I}_{\mathrm{M}}\right)\cdot {B}_{2},\end{aligned}$$
(23c)
where \(\mathrm{expm}\left(\cdot \right)\) is the matrix index; \({I}_{\mathrm{M}}\) is the identity matrix. Based on the measured relative displacement and transmitted force of the active mount as input, the Sage-Husa Kalman filter [34] can be expressed as
$${P}_{k/k-1}=G{P}_{k-1}{G}^{\mathrm{T}}+{{H}_{2}\widehat{Q}}_{k-1}{H}_{2}^{\mathrm{T}},$$
(24a)
$${\widehat{X}}_{k,k-1}=G{\widehat{X}}_{k-1}+{H}_{1}{F}_{c.k-1}+{H}_{2}{\widehat{q}}_{k-1},$$
(24b)
$${v}_{k}=e\left(k\right)-C{\widehat{X}}_{k,k-1}-D{F}_{c.k}-{r}_{k},$$
(24c)
$${K}_{k}={P}_{k/k-1}{C}^{\mathrm{T}}{\left[C{P}_{k/k-1}{C}^{\mathrm{T}}+{R}_{k}\right]}^{-1},$$
(24d)
$${P}_{k}=\left({I}_{\mathrm{M}}-{K}_{k}C\right){P}_{k/k-1}{\left({I}_{\mathrm{M}}-{K}_{k}C\right)}^{\mathrm{T}}+{K}_{k}{R}_{k}{{K}_{k}}^{\mathrm{T}},$$
(24e)
$${\widehat{X}}_{k}={\widehat{X}}_{k-1}+{K}_{k}\cdot {v}_{k},$$
(24f)
$${\widehat{q}}_{k}=\left(1-{d}_{k}\right){\widehat{q}}_{k-1}+{d}_{k}{\left[{H}_{2}^{\mathrm{T}}{H}_{2}\right]}^{-1}{H}_{2}^{\mathrm{T}}\left({\widehat{X}}_{k}-G{\widehat{X}}_{k-1}-{H}_{1}{F}_{c.k-1}\right),$$
(24g)
$${\widehat{Q}}_{k}=\left(1-{d}_{k}\right){\widehat{Q}}_{k-1}+{d}_{k}{\left[{H}_{2}^{\mathrm{T}}{H}_{2}\right]}^{-1}{H}_{2}^{\mathrm{T}}\left({K}_{k}{v}_{k}{{v}_{k}}^{\mathrm{T}}{{K}_{k}}^{\mathrm{T}}+{P}_{k}-G{P}_{k-1}{G}^{\mathrm{T}}\right){H}_{2}{\left[{H}_{2}^{\mathrm{T}}{H}_{2}\right]}^{-1},$$
(24h)
$${d}_{k}=\left(1-b\right)/\left(1-{b}^{k+1}\right),$$
(24i)
where \(E\left[{F}_{in.k-1}\right]={q}_{k-1}\); \(E\left[{\eta }_{k}\right]={r}_{k}\); \(cov\left[{F}_{in.k},{F}_{in.j}\right]={Q}_{k}\); \(cov\left[{\eta }_{k},{\eta }_{j}\right]={R}_{k}\); forgetting factor \(b\in \left(\mathrm{0,1}\right)\); \({\widehat{X}}_{k}\) is the estimate of system state \({X}_{k}\); based on \({\widehat{X}}_{k}\), \({F}_{c.k}\) can be obtained by discretizing Eq. (12)
$${F}_{c.k}={(E}^{H} {A}_{\mathrm{T}}d\frac{n{I}_{k}}{{l}_{\mathrm{T}}}-{k}_{\mathrm{a}}\frac{{\widehat{X}}_{1.k}-{\widehat{X}}_{3.k}}{{K}_{\mathrm{amp}}}-{b}_{\mathrm{T}}\frac{{\widehat{X}}_{2.k}-{\widehat{X}}_{4.k}}{{K}_{\mathrm{amp}}}-{m}_{\mathrm{a}}\frac{{(\widehat{X}}_{2.k}-{\widehat{X}}_{2.k-1})-{(\widehat{X}}_{4.k}-{\widehat{X}}_{4.k-1})}{\Delta t{K}_{\mathrm{amp}}}-{\sigma }_{\mathrm{p}}{A}_{\mathrm{T}}-{F}_{\mathrm{r}})/{K}_{\mathrm{amp}}.$$
(25)
Combining Eqs. (14) and (25), the control current \({I}_{k}\) of the MA can be given by
$${I}_{k}=\frac{\left({K}_{\mathrm{amp}}\sum_{j}^{M}{{{\widehat{X}}_{j.k}}^{\mathrm{T}}w}_{j.k}+{k}_{\mathrm{a}}\frac{{\widehat{X}}_{1.k}-{\widehat{X}}_{3.k}}{{K}_{\mathrm{amp}}}+{b}_{\mathrm{T}}\frac{{\widehat{X}}_{2.k}-{\widehat{X}}_{4.k}}{{K}_{\mathrm{amp}}}+{m}_{\mathrm{a}}\frac{{(\widehat{X}}_{2.k}-{\widehat{X}}_{2.k-1})-{(\widehat{X}}_{4.k}-{\widehat{X}}_{4.k-1})}{\Delta t{K}_{\mathrm{amp}}}+{\sigma }_{\mathrm{p}}{A}_{\mathrm{T}}+{F}_{\mathrm{r}}\right){l}_{\mathrm{T}}}{{nE}^{H}{A}_{\mathrm{T}}d}.$$
(26)