Keywords

1 Introduction

The solutions to reduce the residual vibration of flexible systems could be roughly divided into passive approaches and proactive approaches. The former include adding damping materials and modifying the design of mechanics [1], and the latter include feedback control and feedforward control. Among them, the input-shaping, because of its low costs and low difficulty, has gotten a lot of attention and become the hotspot in the field [2].

Input-shaping puts a bandstop filter before the flexible systems, banning the modal frequencies of the flexible systems; thus, the vibration of flexible systems wouldn’t be activated. However, the original input-shaper is robust less, which makes input-shaping could hardly get good performance in applications. To improve its robustness, robust input-shaper are developed. Robust input-shaper could get better performance [3, 4], but it’s in expense of additional shaping impulses [5], which means it sacrifices some response velocity. Consequently, adaptive-input-shaping (AIS) got more attention [6], adapting its impulse amplitudes and each impulse lag times to the changing system dynamic properties. Early AIS adapts its coefficients of input-shaper by empirical transfer function estimate (ETFE), which gets the modals by doing Fourier transform of I/O data from the flexible system, called indirect-AIS [2, 7]. It brings heavy burden of computation, and no high accuracy of the flexible system dynamics. Thus, direct-AIS was presented, adapting its coefficients of input-shaper by the algorithms such as recursive least square (RLS) [8], algebraic identification (AI) [9], and neural network (NN) [10]. Direct-AIS calculates the impulse response sequences of the flexible system using I/O data directly, and the corresponding updated parameters in input-shaper could be obtained.

Because of little computation and easy operation, RLS algorithm got a lot of application in direct-AIS [8, 11, 12]; however, it could hardly achieve high-accuracy identification of severely time-varying flexible system because of the insufficient adaptability and noise effect. To get high-accuracy identification in adaptive control, a lot of approaches are presented, including fuzzy adaptive control [13], NN adaptive control [14, 15], and so on. However, the traditional NN algorithms have giant computation quantity, which causes their high demand on control systems. Extreme learning machine (ELM) algorithm, as a newly presented neural network algorithm in 2004 [16], could achieve much less computation but keep the advantages of high-accuracy [17]. After that, ELM algorithm attracts much attention, and many ELM based algorithms are promoted, including online sequential ELM (OS-ELM) [18], incremental ELM (I-ELM) [19], and so on. However, to the best knowledge of authors, it is still a blank in how to achieve real-time identification of online sequences for flexible system using the ELM algorithm.

To achieve satisfactory performance of zero residual vibration (ZRV) for severely time-varying flexible systems, the promoted AIS with OS-ELM is proposed in this paper. To improve the adaptability and identification accuracy of AIS, the OS-ELM algorithm is introduced, identifying the impulse response sequences of the flexible system. The effect of noise would be suppressed obviously in ELM’s fitting impulse response sequences, which means the accuracy of calculation would be improved. Furthermore, with the fixed length of identificated impulse response sequences, the adaptability of the recursive calculation could be strengthened. Finally, to prove the correctness of the presented AIS method, verification experiments are conducted on a two-link flexible manipulator, which is belonging to a classical severely time-varying system. Compared with the traditional AIS, the adaptability of the proposed method is obviously improved; thus, it could satisfy the demand of real-time vibration suppression of severely time-varying flexible systems.

This paper is organized as follows. In Sect. 2, there is a review of ZRV of flexible systems and the design of traditional direct-adaptive input-shaper. Subsequently, the promoted AIS based on OS-ELM identification is presented. In Sect. 3, there are verification experiments, in which a two-link flexible manipulator is introduced as a classical severely time-varying flexible system, the results of the experiments prove the expectant improvement of AIS with ELM on adaptation ability and high-accuracy identification of the input-shaper coefficients corresponding to the flexible system. Finally, conclusions are summarized in Sect. 4.

2 AIS Based on ELM Identification for Flexible System

2.1 Review of ZRV Condition and Traditional AIS

A flexible system could be commonly presented by its flexible segment G and overall motion segment P, as Fig. 1 shows. The shaped input sequences u could get corresponding vibration output sequences y assuming that the impulse response sequences of G is g. The coefficients of input-shaper are \( h = \{ h_{0} ,h_{1} ,h_{2} , \ldots ,h_{Q} \}^{T} \), where the number of impulse should satisfy \( Q + 1 \ge 2M + 1 \), M is the number of modals that need to be reduced. The delay time of two impulse in input-shaper is \( \Delta_{x} = n_{x} t_{s},\,x = 1,2, \ldots,Q, \) and \( n_{x} \) belong to positive integer. The total transfer segment from unshaped input i to vibration output y is f = h * g.

Fig. 1
figure 1

Structure of traditional AIS with a flexible system

According to the ZRV condition [11], the recursive calculation from flexible system’s input u and output y to the values of coefficients in input-shaper h could be as

$$ e_{N} = s_{N}^{T} \left[ {\begin{array}{*{20}c} \omega \\ x \\ \end{array} } \right]_{N} + \psi_{N}^{T} Ab $$
(1)
$$ d_{N} = - \left( {\frac{1}{{1 + s_{N}^{T} R_{N} s_{N} }}} \right)R_{N} s_{N} $$
(2)
$$ \left[ {\begin{array}{*{20}c} \omega \\ x \\ \end{array} } \right]_{N + 1} = \left[ {\begin{array}{*{20}c} \omega \\ x \\ \end{array} } \right]_{N} + d_{N} e_{N} $$
(3)
$$ \begin{array}{*{20}c} {R_{N + 1} = \left( {I + d_{N} s_{N}^{T} } \right)R_{N} } \\ \end{array} $$
(4)
$$ h = T\omega + b $$
(5)
$$ b = \frac{1}{Q + 1}\left[ {\begin{array}{*{20}c} 1 \\ \ldots \\ 1 \\ \end{array} } \right]_{{\left[ {Q + 1} \right] \times 1}} $$
(6)
$$ s_{N} = \left[ {\begin{array}{*{20}c} {T^{T} A^{T} \psi_{N} } \\ {\nu_{N} } \\ \end{array} } \right] $$
(7)
$$ \psi_{N} = [y_{N} \,y_{N - 1} \ldots y_{N - K} ]^{T} $$
(8)
$$ \nu_{N} = [u_{N} u_{N - 1} \ldots u_{N - K} ]^{T} $$
(9)

and \( T \in R^{{\left[ {K + 1} \right] \times K}} \) is an orthogonal complement of b to ensure the sum of input-shaper coefficients equal 1, \( {\text{A}} \in R^{{\left[ {K + 1} \right] \times \left[ {Q + 1} \right]}} \) containing 0 and 1 is used to assign the delay time of every two impulses in input-shaper and its corresponding sample time \( t_{s} \) in the system. ω and x are two intermediate vectors in calculation.

ZRV algorithm of Eqs. (1)–(4) is to calculate the corresponding values of input shaper by making the error’s quadratic sum minimum. However, the traditional AIS would calculate the least-square solution of I/O data from time zero to time N. Thus, with the increase of N in long-running and the larger total amount of I/O data, the problem of insufficient adaptability is produced. Furthermore, the least-square solution of all the I/O data from time zero to time N would bring another problem of noise-caused low-accuracy calculation.

$$ \hat{y} = y + d $$
(10)

where d is the noise with zero mean value and variance \( {\text{E}}\left( {d^{2} } \right) = \sigma^{2} \). So the error prediction in terms of h and f is given as

$$ \hat{e} = H\hat{y} + Fu $$
(11)

where H and F is the matrix form of h and f. Thus, the noise-perturbed quadratic cost with the length N data is

$$ \hat{J} = \hat{e}^{T} \hat{e} = h^{T} \hat{Y}_{N}^{T} \hat{Y}_{N} h + 2h^{T} \hat{Y}_{N}^{T} U_{N} f + f^{T} U_{N}^{T} U_{N} f $$
(12)

where \( \hat{Y}_{N} = Y_{N} + D_{N} \). Then, the noise-perturbed cost’s expectation is

$$ E\left( {\hat{J}} \right) = J + h^{T} E\left( {D_{N}^{T} D_{N} } \right)h = H + \sigma^{2} N\left| {\left| h \right|} \right|^{2} $$
(13)

Equation (13) shows the effects of noise to ZRV calculation. With the recursive algorithm running, the value of N would become bigger and bigger, and so does the \( \sigma^{2} N\left| {\left| h \right|} \right|^{2} \) in Eq. (13). However, the goal of ZRV is to get minimum value of \( E(\hat{J}) \). Consequently, the \( \left| {\left| h \right|} \right|^{2} \) in Eq. (13) has to be less and less. When the parameters of input-shaper h are all equal, \( \left| {\left| h \right|} \right|^{2} \) get minimum. Consequently, noise accumulation will make the coefficients of input-shaper closer and closer, which could cause the deterioration of vibration suppression’s performance.

From the mathematical analysis, it could be known that traditional AIS faces the problems of low-accuracy calculation caused by insufficient adaptability and noise. This means that it could hardly get good performance of vibration suppression towards severely time-varying flexible system.

2.2 AIS with ELM Identification

To solve the problems that traditional AIS faces, an OS-ELM algorithm is introduced to achieve real-time identification of the flexible system, as shown in Fig. 2. Transport the flexible system’s input sequences u and vibration output y to the OS-ELM, the OS-ELM would fitting the flexible segment G in real-time recursive calculation. After every time of training, given the OS-ELM network a unit impulse, the fitting impulse response sequences g of the flexible system could be gotten. Then the coefficients of input-shaper are calculated using g. With the adaptation of ELM algorithm, the coefficients of input-shaper will adjust in real-time. There will be the basic introduction of OS-ELM that applicated in AIS thereafter.

Fig. 2
figure 2

Structure of AIS introduced OS-ELM

For a classical single hidden layer feedforward neural network, its number of input nodes, hidden layer nodes, and output nodes is D, L, and M. Given N groups of I/O data \( \left\{ {\varvec{u}_{j} ,\varvec{y}_{j} } \right\} \). There is

$$ H\beta = T $$
(14)

where \( H = \left[ {\begin{array}{*{20}c} {h_{1} \left( {\varvec{u}_{1} } \right)} & \ldots & {h_{L} \left( {\varvec{u}_{1} } \right)} \\ \ldots & \ldots & \ldots \\ {h_{1} \left( {\varvec{u}_{N} } \right)} & \ldots & {h_{L} \left( {\varvec{u}_{N} } \right)} \\ \end{array} } \right]_{N \times L} \), \( \varvec{ u}_{\varvec{i}} = \left[ {\begin{array}{*{20}c} {u_{i} } \\ \ldots \\ {u_{i + D - 1} } \\ \end{array} } \right]_{D \times 1} \), \( h_{i} \left( x \right) = G_{i} \left( {\varvec{a}_{i} \cdot \varvec{u}_{\varvec{i}} + b} \right) \) is the mapping function, \( \beta = \left[ {\begin{array}{*{20}c} {\varvec{\beta}_{1} } \\ \ldots \\ {\varvec{\beta}_{L} } \\ \end{array} } \right]_{L \times m} \) is the matrix of output weight, \( T = \left[ {\begin{array}{*{20}c} {y_{1} } & \ldots & {y_{M} } \\ \ldots & \ldots & \ldots \\ {y_{N} } & \ldots & {y_{N + M - 1} } \\ \end{array} } \right]_{N \times M} \) is the matrix consist of output data. To align the time of input and output, the number of input nodes and output nodes are set equal, that is to say, D = L.

In ELM, the mapping function \( h_{i} \left( x \right) = G_{i} \left( {\varvec{a}_{i} \cdot \varvec{u} + b} \right) \) is given by oneself, and its input weights and input biases are randomly generalized, the neural network could fitting any function by different β. Thus, the T matrix is known. The H matrix is also known after the mapping function, input weights, input biases generalized and input data substituted. Consequently, calculate the matrix β now is obvious.

$$ \beta = H^{ + } T = \left( {H^{T} H} \right)^{ - 1} H^{T} T $$
(15)

With the online training using historical I/O data, the output weight matrix β is calculated in real-time. And the neural network could simulate the goal function G(u), and get fitting output from given input \( \tilde{u} \)

$$ G\left( {\tilde{u}} \right) = H\left( {\tilde{u}} \right)\beta $$
(16)

To make ELM solve the real-time identification from online sequences, OS-ELM is promoted [19], reforming the calculation in (15) into recursive calculation. Given historical matrix \( H_{0} \) and \( T_{0} \), there is

$$ \beta_{0} = \left( {H_{0}^{T} H_{0} } \right)^{ - 1} H_{0}^{T} T_{0} $$
(17)

After new I/O data coming, the new added matrix \( H_{1} \) and \( T_{1} \) is generalized. So the new equality is

$$ \beta_{1} = \left( {\left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]^{T} \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]} \right)^{ - 1} \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]^{T} \left[ {\begin{array}{*{20}c} {T_{0} } \\ {T_{1} } \\ \end{array} } \right] $$
(18)

Given \( K_{1} = \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]^{T} \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right] \), and which could be derived is

$$ K_{1} = K_{0} + H_{1}^{T} H_{1} $$
(19)

On the other hand, the \( \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]^{T} \left[ {\begin{array}{*{20}c} {T_{0} } \\ {T_{1} } \\ \end{array} } \right] \) in Eq. (18) satisfy

$$ \left[ {\begin{array}{*{20}c} {H_{0} } \\ {H_{1} } \\ \end{array} } \right]^{T} \left[ {\begin{array}{*{20}c} {T_{0} } \\ {T_{1} } \\ \end{array} } \right] = H_{0}^{T} T_{0} + H_{1}^{T} T_{1} = K_{1} \beta_{0} - H_{1}^{T} H_{1} \beta_{0} + H_{1}^{T} T_{1} $$
(20)

Given \( K^{ - 1} = P \); thus, the recursive calculation of OS-ELM in AIS could be described as follows.

When the \( N + 1 \) I/O data come, there are

$$ P_{N + 1} = P_{N} - P_{N} H_{N + 1}^{T} \left( {I + H_{N + 1} P_{N} H_{N + 1}^{T} } \right)^{ - 1} H_{N + 1} P_{N} $$
(21)
$$ \beta_{N + 1} = \beta_{N} + P_{N + 1} H_{N + 1}^{T} \left( {T_{N + 1} - H_{N + 1} \beta_{N} } \right) $$
(22)

Then make \( N = N + 1 \), and prepare for the next step of recursive calculation. The initial matrix \( H_{0} \) and \( T_{0} \) are calculated according to the first I/O data, and the initial matrix \( \beta_{0} \) and \( P_{0} \) are given approximately. The OS-ELM algorithm would fit the flexible system in online training, and the I/O sequences would update when there is new data coming. To reduce the computation quantity, the online training could be executed in bigger interval time. That is to say, the updation could be executed until \( u_{N + a} \) and \( y_{N + a} \) come, where a belongs to a given positive integer.

After the addition of OS-ELM, the variance of noise \( \sigma^{2} \) in g could be smaller than before [17], so the error quantic in Eq. (13) could be reduced. Secondly, the length of fitting impulse response sequences is fixed, which means the N in Eq. (13) won’t become bigger and bigger when in long-running. Consequently, the adaptability and calculation accuracy would be obviously improved.

3 Experiment on a Two-Link Flexible Manipulator

3.1 Experimental Setup

To prove the effectiveness of promoted AIS, test experiments will be executed on a lab-scale two-link flexible manipulator, as Fig. 3 show. The materiel of two links is aluminum with modulus of elasticity 69 GPa. Specific information of the two links and tip mass are listed in Table 1. The two joints’ actuator is DC brushless motors, and their specific information is listed in Table 2. The two joints’ angles \( \theta_{1} \) and \( \theta_{2} \) are measured by incremental encoders. The angle \( \theta_{1} \) of link 1 is presented in the intersection angle with a given datum, and angle \( \theta_{2} \) of link 2 is presented in the intersection angle with the extended line from link 1, as shown in Fig. 4. Both \( \theta_{1} \) and \( \theta_{2} \) are positive when clockwise and negative when counterclockwise. Two strain gauges are placed close to the back end of the links, measuring the bending of two joints. The original signals from strain gauges would be amplified and filtered by a circuit, the specific information of strain gauges and amplifying circuits are listed in Table 2. Thus, link deflection and residual vibration could be evaluated using the signals from amplifying circuits.

Fig. 3
figure 3

Two-link flexible manipulator

Table 1 Specification of two-links and tip mass
Table 2 Specification of two motors, strain gauges and amplifier circuits
Fig. 4
figure 4

Representation of two angles

To achieve the high angle accuracy together with rapid response, PID feedback controllers of joint angles are used in rotation control. The servo-control loop and adaptive input shaper’s algorithm are achieved by a DSP 2812 control circuit, it could control the two motors and transport the result of experiment to PC in real-time. The structure of experiment manipulator is shown as Fig. 5. It should be noted that the presentation θ in Fig. 5 stands for both angles. Specific information of the two DC brushless motors and their servo-control loops is given in Table 3.

Fig. 5
figure 5

Experimental settlement of two-link flexible manipulator with AIS

Table 3 Servo-control loop parameters of two joints

The coefficients of the input shapers are chosen as shown in Table 4, under the sampling time 10-ms-\( t_{s} \). The initial values of the \( R_{N} \) is set at

$$ R_{0} = \left[ {\begin{array}{*{20}c} {10^{7} } & \cdots & 0 \\ \vdots & \ddots & \vdots \\ 0 & \cdots & {10^{7} } \\ \end{array} } \right]_{[K + Q + 1] \times [K + Q + 1]} $$
(23)
Table 4 Set values of input shaper

There are two AIS methods tested in the experiment. Traditional AIS and the presented AIS with ELM. The number of nodes in ELM is 25, and its numbers of input-nodes and output-nodes are both 200. The mapping function used in ELM is sigmoid function, the values of input-weight and input-bias are given randomly.

3.2 Experimental Results

Firstly, the command track of the two joints’ angles in the experiment as shown in Figs. 6a and 7a. One motion period’s duration is 8 s. In each period, the two joints will rotate a predetermined angle in rest-to-rest and stop for a moment, after that they will rotate back to the original angle in the same method. In the first four periods, the rotation angles of two joints in each period are decreased from the last period, because it could make the dynamics of flexible system varying severely in different periods. However, in the second four-periods, the rotation angles will repeat the first four-periods, so that the dynamics of the flexible system will repeat similar variation in two four-periods. Consequently, there are totally 8 periods in the verification experiments. Besides, to show the effects of input shaping and give initialization time of AIS, there is no input shaping of two joints in the first period. Different input shaping will be started from the second period, including traditional AIS, and the presented AIS with ELM.

Fig. 6
figure 6

a Angle track of joint 1. b Joint 1’s result of vibration suppression with two AIS methods

Fig. 7
figure 7

a Angle track of joint 2. b Joint 2’s result of vibration suppression with two AIS methods

The vibration could be linearly represented by the outputs of strain gauges; consequently, the curve of the strain gauges’ output could reflect the strain’s variety of the flexible system in linearity. Joint 1’s output contrast from strain gauges with two different methods is shown in Fig. 6b, and joint 2’s output contrast is shown in Fig. 7b. All the unit of these curves are V.

To give clear contrast of the two different AIS approaches, the arbitrarily chosen period from 18 to 26 s is magnified. Correspondingly, the maximum residual-vibration and the mean square error of residual-vibration are given in Table 5.

Table 5 Results contrast of the vibration with two AIS methods

From Table 5, it could be seen that the proposed method of AIS with ELM achieve better performance in vibration suppression. To analyze the source of better performance, the corresponding filter coefficients of adaptive input-shaper are shown in Figs. 8 and 9. It could be seen from Fig. 8 that the filter coefficients tend to close and could hardly achieve real-time adjustment using traditional AIS. After the addition of ELM, the filter coefficients of AIS with ELM are significantly different from traditional AIS, and similar change of coefficients could be observed from 4 to 34 s and 36 to 66 s, corresponding to the same angle tracks in these times. This means that the AIS with ELM could adjust to the time-varying dynamics of the flexible system; thus, it could achieve better performance in vibration suppression.

Fig. 8
figure 8

Filter coefficients in traditional AIS

Fig. 9
figure 9

Filter coefficients in AIS with ELM

4 Conclusions

In this paper, a promoted approach of AIS with ELM identification is proposed. To improve the adaptability and calculation accuracy of traditional AIS. Firstly, using the characteristic that ELM could fitting any non-linear function, the impulse response sequences of flexible system is being fitted, with better suppression of noise. Thus, the noise-caused low accuracy in calculation could be reduced significantly. Secondly, with the fixed length of the fitting impulse response sequences, the adaptivity of AIS could be improved obviously, as well as better calculation accuracy. After that, verification experiments are executed on a two-link flexible manipulator. The results of the verification experiment certified the promotion of AIS with ELM in calculation accuracy and its performance of residual vibration reduction.