1 Introduction

In order to achieve high precision of end-effector positioning of robot manipulators, heavy material and bulky design are generally adopted to maximize the system stiffness. But, on the other hand, flexible-link manipulators (FLMs) are more efficient than the rigid-link ones in power consumption and moving speed. However, traditional robot control strategies such as sliding mode control[1] will fail in FLM because the system from the the collocated joint torque to the non-collocated end-effector position is non-minimum phase. Several control techniques have been designed purposely to tackle the end-effector trajectory tracking problem of FLM. In [2], output redefinition was used in the FLM to make the zero dynamics related to the new output stable. In [3], based on a model order reduction strategy using singular perturbation, a slow control was designed for the slow subsystem characterized by the “rigid joint” motion, meanwhile, a fast control was designed to stabilize the fast subsystem associated with the “elastic links” motion. In [4], a method combining command shaping technique with multi-objective genetic optimization was presented on a single-link flexible manipulator. In [5], a sliding mode control with the augmented sliding surface was designed to suppress the vibration in FLM by generalized accelerations.

However, perfect tracking cannot be achieved by the aforementioned causal control laws for the non-minimum phase system like FLM, non-causal stable inversion is the unique bounded solution to perfect tracking due to the unstable zero dynamics[6]. Actually, in order to exactly reproduce an end-effector trajectory, the links of the flexible manipulator should undergo a specific output-related bounded deformation history and any attempt to control the arm deformation in a different way may destroy exact tracking and may induce closed-loop instability[7]. To address the unstable zero dynamics on non-minimum phase systems, Devasia et al.[8, 9] put forward a non-causal stable inversion theory specifically for non-minimum phase systems in a general framework, in which the initial condition x (0) = 0 is replaced with boundary conditions x (±∞) = 0 and the boundness of the control input is guaranteed by backward integration of the unstable dynamics. Sogo[10] pointed out that for linear time-invariant systems, the stable inversion was equivalent to the reciprocal transfer functions defined by the two-sided Laplace transform, thus making the calculation of stable inversion possible in the frequency domain. However, both of the two calculation techniques are hardly applicable in practical situation because of non-casuality. Zou[11] improved stable inversion by replacing the infinite integral interval with a finite preview time interval, which makes inversion control feasible in real situations but lacks robustness to the model uncertainty.

Iterative learning control[12] (ILC) can be used for implementing non-causal control because it is able to predict future information of the controlled system by using system input and output of previous trials. Meanwhile, robustness can be guaranteed because ILC demands little system knowledge to achieve geometric convergence speed[13]. Kinosta et al.[14] proposed a non-causal ILC algorithm based on the adjoint system. Instead of calculating the exact inverse, Ghosh and Paden[15] designed a pseudo-inverse type ILC algorithm based on the nominal linearized system and the algorithm was robust against unmodeled dynamics and input disturbances. Unfortunately, the aforementioned ILC algorithms still require the exact model, which restricts their applications.

To avoid relying on the known apriori model, one feasible idea is to use the basis space model to approximate the exact model. The main idea of the basis function based ILC (BFILC) is to project the input and output onto a finite dimensional space spanned by a set of orthonormal basis functions and design a control law in the basis function space. The complexity of the basis function model depends only on the number of basis functions and is unrelated with the order of the original system, which dispenses with the apriori knowledge for classical mechanical modeling and the experiments for data based control methods. Phan et al.[16, 17] designed learning laws in basis function space respectively for continuous and discrete time systems. In [18], an extended Laguerre basis function based ILC was specially designed for non-minimum phase systems, in which the constructed basis function space covers the space where stable inversion exists. However, the relative degree of the original system is needed to build the basis function space and apriori identification experiments are required, which causes much inconvenience for practical operation.

In this paper, a Fourier basis function based adaptive ILC (Fourier BFAILC) algorithm is proposed for a single-link FLM. In Section 2, the dynamics of a single-link FLM is established by using the assumed mode method and Lagrange equation and the end-effector angular position is chosen as the output. In Section 3, the Fourier basis function based adaptive ILC algorithm is introduced. Firstly, by decomposing and recombining the time domain stable inversion, a new form of calculation of stable inversion is derived. A necessary condition for approximation of stable inversion using Fourier basis function is naturally obtained. Then a Fourier basis function space model identification algorithm is designed. Finally, a pseudo-inverse learning law is adopted and its robust convergence is analyzed. In Section 4, numerical simulations for a single-link FLM are carried out and the performance and effectiveness of the proposed control scheme are verified.

2 Dynamic modeling of single-link FLM

This section establishes the state-space form dynamic model of the planar single-link flexible manipulator with a rotary joint. As depicted in Fig. 1, two coordinate frames are set up: inertial frame XOY and tangent-form moving frame X1OY1, where x, 0, u (x, t) and τ are the positions along the link of length l, joint angle, link deflection and joint torque, respectively.

Fig. 1
figure 1

Planar single-link flexible manipulator with rotary joint

The exact model of FLM is infinite-dimensional, characterized by a partial differential equation and a integral equation, which is difficult for controller synthesis. In this paper, the assumed mode method is used for discretization, i.e., to approximate the link deflection u (x, t) with the summation of spatial mode shape functions φ i (x) multiplied by time varying weight functions q i (t).

$$u(x,\;t) = \sum\limits_{i = 1}^n {{\varphi _i}(x){q_i}(t)}$$
(1)

where n is the truncated modal order. Lagrange energy method is adopted for the set-up of the dynamic equation.

$${{\rm{d}} \over {{\rm{d}}t}}\left({{{\partial L} \over {\partial \dot \xi}}} \right) - {{\partial L} \over {\partial \xi}} + {{\partial {E_F}} \over {\partial \dot \xi}} = Q$$
(2)

where L is Lagrangian defined as the difference of kinetic energy and potential energy, E F is the dissipated energy due to damping moment and force, ξ = [θ q1q n ]T is the generalized coordinate vector, Q is the generalized force associated with ξ. The resulting dynamic equation can be written as

$$M\ddot \xi + D\dot \xi + K\xi = T\tau$$
(3)

where M, D, KR(n+1)×(n+1) are the constant mass matrix, damping matrix, and stiffness matrix, respectively, T is the input weighting matrix. The tip angular position is chosen as the output of the system, i.e.,

$$p = S\xi$$
(4)

where \(S = \left[ {1{{{\varphi _1}(l)} \over l} \cdots {{{\varphi _n}(l)} \over l}} \right]\) is the output weighting matrix. The mass matrix, by its physical definition, is always invertible and the state space model of FLM is derived as

$$\matrix{\hfill {\dot \Xi = A\Xi + B\tau} \cr\hfill {p = C\Xi} \cr}$$
(5)

where .

The constructed model turns out to be linear and has unstable zero dynamics and thus is a non-minimum phase system.

3 Fourier basis function based adaptive ILC

In this section, a new control scheme for non-minimum phase system is proposed. Firstly, non-causal stable inversion theory is introduced. However, its high demand for an accurate model restricts its practical applications. In order to approximate stable inversion using basis functions, a new form of stable inversion is derived by decomposing and re-combining stable inversion. Then, it is concluded that stable inversion is contained in the Fourier basis space, i.e., it is possible to approximate stable inversion using the Fourier basis function. A Fourier basis function space model identification algorithm is designed to adaptively identify the Fourier basis function space model using input output data during iterations. Finally, a pseudo-inverse learning law is employed and its convergence is proved.

3.1 Non-causal stable inversion

As has been mentioned above, stable inversion is the unique bounded solution to perfect tracking of nonminimum phase systems[6]. Classical causal inversion fails to work for non-minimum phase systems because of the unstable zeros of the controlled systems. Compared with classical inversion, casualty is traded off for a bounded input and the initial condition is replaced with boundary conditions. The stable inversion of a single FLM put forward by Devasia[8] is as follows.

  • Definition 1. Consider the FLM described by (5), which has no zeros on the imagery axis. If the given reference trajectory p d satisfies \(p_d^{(i)} \in {L_1} \cap {L_\infty}\) for i = 0, 1, ⋯, r, where r is the relative degree, then there exist bounded Ξ d (t) and τ d (t), satisfying

    $$\matrix{\hfill {{{\dot \Xi}_d} = A{\Xi _d} + B{\tau _d}} \cr\hfill {{p_d} = C{\Xi _d}} \cr}$$
    (6)

    and τ d (t) → 0, Ξ d (t) → 0 when t → ±∞. τ d (t) and Ξ d (t) are called the stable inversion of FLM (5) with respect to p d (t).

The solution to (6), according to Devasia[8], is given by

$$\matrix{{{\tau _d} = {M_P}{P_d}(t) - {M_{{\sigma _s}}}\int_{- \infty}^t {{{\rm{e}}^{{A_s}(t - \tau)}}{B_s}{P_d}(\tau){\rm{d}}\tau +}} \hfill \cr{\quad \quad {M_{{\sigma _u}}}\int_t^{+ \infty} {{{\rm{e}}^{- {A_u}(\tau - t)}}{B_u}{P_d}(\tau){\rm{d}}\tau}} \hfill \cr}$$
(7)

where \({P_d}(t) = \left[ {{p_d}\quad \dot p\quad \cdots \quad p_d^{(r)}} \right]\), A s and A u are state matrices with respect to stable and unstable internal dynamics, respectively, M P , M σs , M σu , B s , B u are constant matrices with appropriate dimensions. A s has negative eigen values ; si and A u has positive eigen values λ ui .

In comparison with conventional inversion, stable inversion replaces the fixed initial condition Ξ(0) = 0 with boundary conditions Ξ(±∞) = 0. The FLM undergoes an output related oscillation while its tip position is maintained unchanged for t < 0. When t = 0, pre-actuation is finished and the FLM moves along the reference trajectory. When tracking is finished, the FLM still vibrates to release the energy while the tip position stands still. In this way, a finite energy input is ensured. However, the feedforward input τ d relies entirely on the accurate model, making it hardly applicable to practical situations due to lack of robustness.

From (7), we know that the stable inversion consists of 3 parts: the reference output part τ pd = M P P d (t), the stable part \({\tau _{{\sigma _s}}} = - {M_{{\sigma _s}}}\int_{- \infty}^t {{{\rm{e}}^{{A_s}(t - \tau)}}} {B_s}{P_d}(\tau)d\tau\), and the unstable part \({\tau _{{\sigma _s}}} = {M_{{\sigma _u}}}\int_t^{+ \infty} {{{\rm{e}}^{{\rm{-}}{A_u}(\tau - t)}}} {B_u}{P_d}(\tau){\rm{d}}\tau\). Theorem 1 rewrites stable inversion in a different form, which is useful for the choice of Fourier basis function to approximate stable inversion in an iterative way.

  • Theorem 1. For the FLM (5), the inverse input τ d can be decomposed and recombined to result in a new form as

    $$\matrix{{{\tau _d} = \sum\limits_{i = 0}^r {{k_{yi}}p_d^{(i)}(t) +}} \hfill \cr{\quad \quad \sum\limits_i {{k_{si}}\int_{- \infty}^t {{M_{si}}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{p_d}(\tau){\rm{d}}} \tau +}} \hfill \cr{\quad \quad \sum\limits_i {{k_{ui}}\int_t^{+ \infty} {{M_{ui}}(t - \tau){{\rm{e}}^{{\lambda _{ui}}(t - \tau)}}{p_d}(\tau){\rm{d}}\tau}}} \hfill \cr}$$
    (8)

    where k yi , k si , k ui i =1, ⋯, r are constants, M si (tτ) and M ui (tτ) are polynomials of tτ.

  • Proof. First consider the stable part \({\tau _{{\sigma _s}}} = - {M_{{\sigma _s}}}\int_{- \infty}^t {{{\rm{e}}^{{A_s}(t - \tau)}}} {B_s}{P_d}(\tau)d\tau\). Without loss of generality, suppose A s can be Jordanized. Note that τ σS is a scalar, can be represented as linear combinations of \({P_i}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}p_d^{(j)}(\tau)\).

    $$ - {M_{{\sigma _s}}}{{\rm{e}}^{{A_s}(t - \tau)}}{B_s}{P_d}(\tau) = \sum\limits_{i,j} {{b_i}{P_i}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}p_d^{(j)}(\tau)}$$

    where b i ≠ 0 is a constant coefficient, λ si < 0 is the i-th eigen value of A s , P i (tτ) is a polynomial of tτ. \(\smallint _{- \infty}^t{b_i}{P_i}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}p_d^{(j)}(\tau){\rm{d}}\tau\) can be reorganized as

    $$\matrix{{\int_{- \infty}^t {{b_i}{P_i}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}p_d^{(j)}(\tau){\rm{d}}\tau =}} \hfill \cr{\quad {{{b_i}} \over {{\lambda _{si}}}}\int_{- \infty}^t {{P_i}(t - \tau)p_d^{(j)}{\rm{d}}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}} =}} \hfill \cr{\quad {{{b_i}} \over {{\lambda _{si}}}}{P_i}(t - \tau)p_d^{(j)}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}}\vert _{- \infty}^t -} \hfill \cr{\quad {{{b_i}} \over {{\lambda _{si}}}}\int_{- \infty}^t {\left({{{\dot P}_i}(t - \tau)y_d^{(j)} + {P_i}(t - \tau)p_d^{(j + 1)}} \right){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{\rm{d}}\tau =}} \hfill \cr{\quad {{{c_i}} \over {{\lambda _{si}}}}p_d^{(j)} - {{{b_i}} \over {{\lambda _{si}}}}\int_{- \infty}^t {\dot P(t - \tau)p_d^{(j)}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{\rm{d}}\tau -}} \hfill \cr{\quad {{{b_i}} \over {{\lambda _{si}}}}\int_{- \infty}^t {{P_i}(t - \tau)p_d^{(j + 1)}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{\rm{d}}\tau .}} \hfill \cr}$$

    Thus,

    $$\matrix{{\int_{- \infty}^t {{P_i}(t - \tau)p_d^{(j + 1)}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{\rm{d}}\tau =}} \hfill \cr{\quad {{{c_i}} \over {{b_i}}}p_d^{(j)} - \int_{- \infty}^t {\left({\dot P(t - \tau) + {\lambda _{si}}{P_i}(t - \tau)} \right)p_d^{(j)}{{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{\rm{d}}\tau}} \hfill \cr}$$

    where c i is a related coefficient. The above equation reveals that an integral item containing \(p_d^{(j + 1)}\) can be decomposed into two parts: an integral item containing \(p_d^{(j)}\) and a solo \(p_d^{(j)}\). And in the decomposed integral item, \({{\dot P}_i}(t - \tau) + {\lambda _{si}}{P_i}(t - \tau)\) is still a polynomial of tτ. Based on this point, higher order derivatives of p d can be replaced with lower order derivatives of p d , and finally we get

    $$\matrix{{- {M_{{\sigma _s}}}\int_{- \infty}^t {{{\rm{e}}^{{A_s}(t - \tau)}}{B_s}{P_d}(\tau){\rm{d}}\tau =}} \hfill \cr{\quad \sum\limits_i {{k_{si}}\int_{- \infty}^t {} {M_{si}}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{p_d}(\tau){\rm{d}}\tau +}} \hfill \cr{\quad \sum\limits_{i = 0}^r {{d_{ui}}p_d^{(i)}}} \hfill \cr}$$

    where M si (tτ) is a polynomial of tτ. Similarly, for the unstable part τ σu , we have

    $$\matrix{{{M_{{\sigma _u}}}\int_t^{+ \infty} {{{\rm{e}}^{- {A_u}(t - \tau)}}{B_u}{P_d}(\tau){\rm{d}}\tau =}} \hfill \cr{\quad \sum\limits_i {{k_{ui}}\int_t^{+ \infty} {{M_{ui}}(t - \tau){{\rm{e}}^{{\lambda _{ui}}(t - \tau)}}{p_d}(\tau){\rm{d}}\tau + \sum\limits_{i = 0}^r {{d_{ui}}p_d^{(i)}.}}}} \hfill \cr}$$

By recombining the reference output part, the stable part and the unstable part of stable inversion, we get

$$\matrix{{{\tau _d} = \sum\limits_{i = 0}^r {{k_{pi}}p_d^{(i)}(t) +}} \hfill \cr{\quad \quad \sum\limits_i {{k_{si}}\int_{- \infty}^t {{M_{si}}(t - \tau){{\rm{e}}^{{\lambda _{si}}(t - \tau)}}{p_d}(\tau){\rm{d}}\tau +}}} \hfill \cr{\quad \quad \sum\limits_i {{k_{ui}}\int_t^{+ \infty} {{M_{ui}}(t - \tau){{\rm{e}}^{{\lambda _{ui}}(t - \tau)}}{p_d}(\tau){\rm{d}}\tau}}} \hfill \cr}$$

where k pi , k si and k ui are related coefficients. □

  • Remark 1. Theorem 1 gives another calculation form of stable inversion and the only point that matters in this paper is the form the stable inversion can be represented as, rather than the detailed coefficients. The detailed coefficients can be acquired through iterative methods.

3.2 Fourier basis function based ILC

Considering the FLM in (5), we choose an finite-dimensional input output space \({\cal A} \buildrel \Delta \over = span({\phi _1},{\phi _2}, \cdots ,{\phi _N})\), where NN+, φ = [ϕ1, ϕ2, ⋯, ϕ N ]T is a set of orthonormal basis functions, ϕ i L [0, T], ⟨ϕ i , ϕ j ⟩ = Δ ij . ⟨,⟩ denotes the inner product and Δ ij is the Kronecker function.

Projecting input τ and output p onto \({\cal A}\), we get the basis function model of (5) as

$$\beta = H\alpha$$
(9)

where α = [α1, α2, ⋯, α N ]T and β = [β1, β2, ⋯, β N ]T are the projections of input τ (t) and output p (t)onto \({\cal A}\), respectively, H is the model matrix, whose elements are

$${h_{ij}} = \left\langle {{\phi _i},\;g(t) \times {\phi _j}} \right\rangle$$
(10)

where g (t) is the unit impulse response of system (5). By describing the original system in the basis function space, we can design the learning law in the basis function space.

Given a reference trajectory p d , if the projection of the k-th output error e k (t)= p d (t) − p k (t) onto \({\cal A}\) is ε k , then the basis function based ILC (BFILC) law can be designed as

$${\alpha _{k + 1}} = {\alpha _k} + \Gamma {\varepsilon _k}.$$
(11)

For minimum phase systems and an appropriate Γ, it does work well, such that ∥ε k ∥ → 0 as k → ∞. However, for non-minimum phase systems, in order to cover the stable inversion, the input output space should be extended to L[−∞, +∞]. What’s more, the selected basis function space should contain the stable inversion. In the following, the Fourier basis function space is introduced.

The Fourier basis function spanning space can be defined as

$$F = span\{{{\phi _1},{\phi _2}, \cdots ,{\phi _N}} \}$$

and

where a0 is the direct current component and is determined by standardization, \(\omega = {{2\pi} \over T}\) is the fundamental frequency and N is an odd number denoting the number of Fourier basis functions.

  • Theorem 2. If a given reference trajectory p d for FLM (5) belongs to F, then the stable inversion associated with p d also exists in F.

  • Proof. If p d F, then p d can be expressed as linear combinations of ϕ i , namely

    $${p_d} = \sum\limits_{i = 1}^N {{\beta _i}{\phi _i}}$$
    (12)

    where β i , i = 1, ⋯, N are Fourier coefficients. Note that finite-order derivatives of sine or cosine functions do not change the frequencies, so τ pd can be expressed as linear combinations of ϕ i , i.e., τ pd F. By substituting (12) into τ σs and taking finite times of integral by parts, it can be deduced that τ σS can be expressedas linear combinations of ϕ i , i.e., τ σs F. Obviously, the same is true for τ σu , namely τ σu F. According to (8) and the additivity property of F, it can be concluded that τ d F. □

  • Remark 2. Because of the existence of exponential terms in (8), the stable inversion goes to zero rapidly as time goes infinity. Besides, the practical operational time interval is always finite. So it is preferable to expand the solution space from L [0, T] to L [t0, t f ] rather than L[−∞, + ∞], where t0 < 0and t f > T.

  • Remark 3. The number of Fourier basis functions can be determined through harmonic analysis of p d . In theory, in order to cover some trajectory, the number of chosen Fourier basis functions is very large or even infinite, but in practical application, the chosen basis functions should be finite rather than infinite, so there is convergence error of the trajectory tracking.

3.3 Fourier basis function model identification algorithm

Once Fourier basis functions are chosen according to the given trajectory, the only unknown item in the Fourier basis function model, described by (9) and (10), is the unit impulse response g (t). If g (t)is the g (t)projection in F

$$\hat g(t) = {\varphi ^{\rm{T}}}\gamma = \sum\limits_{k = 1}^N {{\gamma _k}{\phi _k}}$$

where γ = (γ1, γ2, ⋯ γN)T is unit impulse response expressed in F, then each element of H is

$$\matrix{{{h_{ij}} = \langle {{\phi _i},\;\hat g(t) \times {\phi _j}} \rangle =} \hfill \cr{\quad \quad \sum\limits_{k = 0}^N {\int_{{t_0}}^{{t_f}} {{\phi _i}(t)\int_{{t_0}}^{{t_f}} {{\gamma _k}{\phi _k}(t - \tau){\phi _j}(\tau){\rm{d}}\tau {\rm{d}}t \buildrel \Delta \over =}}}} \hfill \cr{\quad \quad \sum\limits_{k = 1}^N {{\gamma _k}{w_{ijk}}}} \hfill \cr}$$

where \({w_{ijk}} = \smallint _{{t_0}}^{{t_f}}{\phi _i}(t)\smallint _{{t_0}}^{{t_f}}{\phi _k}(t - \tau){\phi _j}(\tau)d\tau d\tau\) can be calculated off-line, because ϕ i is pre-chosen as Fourier basis function. Thus,

$${\beta _i} = \sum\limits_{j = 1}^N {{h_{ij}}{\alpha _j} =} \sum\limits_{j = 1}^N {\sum\limits_{k = 1}^N {{w_{ijk}}{\gamma _k}{\alpha _j} \buildrel \Delta \over = u_i^{\rm{T}}\alpha}}$$

where

$$\matrix{{{u_i}{{\left({\sum\limits_{k = 1}^N {{w_{i1k}}{\gamma _k},\sum\limits_{k = 1}^N {{w_{i2k}}{\gamma _k}, \cdots ,\sum\limits_{k = 1}^N {{w_{i{N_k}}}{\gamma _k}}}}} \right)}^{\rm{T}}} \buildrel \Delta \over =} \hfill \cr{\quad {{\left({u_{i1}^{\rm{T}}\gamma ,\;u_{i2}^{\rm{T}}\gamma , \cdots ,u_{iN}^{\rm{T}}\gamma} \right)}^{\rm{T}}}} \hfill \cr}$$

and

$${u_{ij}} = {({w_{ij1}},\;{w_{ij2}},\; \cdots ,\;{w_{ijN}})^{\rm{T}}}.$$

The Fourier basis function model can be expressed as \(H = (u_1^{\rm{T}},u_2^{\rm{T}}, \cdots ,u_N^{\rm{T}})\), and β = H(γ) α.

On the other hand, by noting the symmetry structure of r k and a j , β i can also be formulated as

$${\beta _i} = \sum\limits_{j = 1}^N {\sum\limits_{k = 1}^N {{w_{ijk}}{\gamma _k}{\alpha _j} =}} \sum\limits_{k = 1}^N {\sum\limits_{j = 1}^N {{w_{ijk}}{\alpha _j}{\gamma _k} \buildrel \Delta \over = u_i^{\rm{T}}\gamma}}$$

where

$$\matrix{{{b_i} = \left({\sum\limits_{j = 1}^N {{w_{ij1}}{\alpha _j},} \sum\limits_{j = 1}^N {{w_{ij2}}{\alpha _j},} \cdots ,\sum\limits_{j = 1}^N {{w_{ijN}}{\alpha _j}}} \right) \buildrel \Delta \over =} \hfill \cr{\quad \quad {{\left({v_{i1}^{\rm{T}}\alpha ,v_{i2}^{\rm{T}}\alpha , \cdots ,v_{iN}^{\rm{T}}\alpha} \right)}^{\rm{T}}}} \hfill \cr}$$

and

$${v_{ik}} = {({w_{i1k}},{w_{i2k}}, \cdots ,{w_{iNk}})^{\rm{T}}}.$$

If we define \(V \buildrel \Delta \over = (v_1^{\rm{T}},v_2^{\rm{T}}, \cdots ,v_N^{\rm{T}})\), then β = V (α) γ, and the Fourier basis function model is β = H (γ) α = V (α) γ.

If the system output can be measured or observed, then β can be calculated. The unknown parameters can be identified using the least squares method as

$$\gamma = {\left({{V^{\rm{T}}}(\alpha)V(\alpha)} \right)^{- 1}}{V^{\rm{T}}}(\alpha)\beta$$
(13)

and the Fourier basis function model is

$$H = H(\gamma).$$
(14)
  • Remark 4. The identification algorithm derived above shows that identification can be done using the input output data of the first iteration, which needs not off-line basis function model identification experiments. What’s more, the Fourier basis function model can be updated adaptively using the input output data of the previous iterations.

3.4 Pseudo-inverse learning law and its robust convergence

The pseudo-inverse learning law was proposed by Ghosh and Paden[15], with the purpose of approximating the exact inverse of the system through an iterative method. This learning law considers both convergence speed and robustness. In operator form, the pseudo-inverse learning law can be written as

$$\Gamma = {(\rho I + {H^{\ast}}H)^{- 1}}{H^{\ast}}$$
(15)

where H is the operator of the linearized system, H* is the adjoint operator of H, ρ is the learning law parameter. It is shown that the pseudo-inverse learning law is robust against input disturbances. In BFILC, the pseudo-inverse learning law can be written in matrix form as

$$\Gamma = {\left({\rho I + {H^{\rm{T}}}H} \right)^{- 1}}{H^{\rm{T}}}$$
(16)

where H is the identified Fourier basis function model. If the actual model is \({\hat H}\), then the error transfer function is

$${\varepsilon _{k + 1}} = \left({I - \hat H\Gamma} \right){\varepsilon _k}.$$
(17)

A sufficient condition for the convergence of the learning law is

$$\left\Vert {I - \hat H\Gamma} \right\Vert < 1.$$
(18)

The convergence of the pseudo-inverse learning law is proved in Theorem 3.

  • Lemma 1. Let F denote the Fourier basis space, where the inner product is defined as ⟨·, ·⟩ µ and norm is defined as \(\Vert \cdot \Vert_\mu ^2 = \left\langle {\cdot , \cdot} \right\rangle \mu\) and the induced matrix norm of ∥·∥ µ is denoted as ∥·∥ v . If the identified Fourier basis function model H satisfies ker (H)=0, then for any \(\rho > 0,{\Vert {{{(I + {\rho ^{- 1}}H{H^{\rm{T}}})}^{- 1}}} \Vert_v} < 1\).

  • Proof. Assume that \({\Vert {{{(I + {\rho ^{- 1}}H{H^{\rm{T}}})}^{- 1}}} \Vert _v} \geq 1\). Then, according to the definition of induced matrix norm

    $${\left\Vert {{{\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)}^{- 1}}} \right\Vert_v} = \mathop {\max}\limits_{{{\left\Vert \alpha \right\Vert}_\mu} = 1} {\left\Vert {{{\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)}^{- 1}}\alpha} \right\Vert_\mu}$$

    it can be inferred that there exist α0F and ∥α0 µ =1 such that \(\beta = {(I + {\rho ^{- 1}}H{H^{\rm{T}}})^{- 1}}{\alpha _0}\) holds. By defining β=(I + ρ−1HHT)−1α0, we have ∥β µ ≥ 1.

    On the other hand, α0= (I + ρ−1HHT)β, then we have

    $$\matrix{{\Vert {{\alpha _0}} \Vert _\mu ^2 = \left\Vert {\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)\beta} \right\Vert _\mu ^2 =} \hfill \cr{\quad {{\left\langle {\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)\beta ,\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)\beta} \right\rangle}_\mu} =} \hfill \cr{\quad \Vert \beta \Vert _\mu ^2 + {1 \over {{\rho ^2}}}\left\Vert {H{H^{\rm{T}}}\beta} \right\Vert _\mu ^2 + {2 \over \rho}{{\left\langle {\beta ,\;H{H^{\rm{T}}}B} \right\rangle}_\mu} =} \hfill \cr{\quad \Vert \beta \Vert _\mu ^2 + {1 \over {{\rho ^2}}}\left\Vert {H{H^{\rm{T}}}\beta} \right\Vert _\mu ^2 + {2 \over \rho}\left\Vert {{H^{\rm{T}}}\beta} \right\Vert _\mu ^2.} \hfill \cr}$$

    According to the definition of induced matrix norm, ∥α0 µ = 1, so we have \(\Vert \beta \Vert_\mu ^2 + {1 \over {{\rho ^2}}}\left\Vert {\hat H{{\hat H}^{\rm{T}}}\beta} \right\Vert_\mu ^2 + {2 \over \rho}\left\Vert {{{\hat H}^{\rm{T}}}\beta} \right\Vert_\mu ^2 = 1\). From the previous conclusion that ∥β µ ≥ 1, then \(\Vert \beta \Vert_\mu ^2 + {1 \over {{\rho ^2}}}\left\Vert {\hat H{{\hat H}^{\rm{T}}}\beta} \right\Vert_\mu ^2 + {2 \over \rho}\left\Vert {{{\hat H}^{\rm{T}}}\beta} \right\Vert_\mu ^2 = 1\) holds true if and only if ∥β µ = 1 and \({{\hat H}^{\rm{T}}}\beta = 0\), which is inconsistent with ker (H) = 0. Thus, the assumption is invalid, which means \({\left\Vert {{{(I + {\rho ^{- 1}}H{H^{\rm{T}}})}^{- 1}}} \right\Vert_v} < 1\). □

  • Theorem 3. If the identified Fourier basis function model satisfies ker (H) = 0 and the pseudo-inverse learning law Γ is adopted, then one sufficient condition of robust convergence is that the model error ΔH satisfies the inequality as

    $$\Vert {\Delta H} \Vert \left({\left\Vert {\Delta {H^{\rm{T}}}} \right\Vert + \left\Vert {\hat H} \right\Vert} \right) < \rho (1 - \varepsilon)$$
    (19)

    where \(\varepsilon = \left\Vert {I - H{{(\rho I + {H^{\rm{T}}}H)}^{- 1}}{H^{\rm{T}}}} \right\Vert < 1\)

  • Proof. Substituting (16) into (17), we have

    $${\varepsilon _{k + 1}} = \left({I - \hat H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}}} \right){\varepsilon _k}.$$

    Then, a sufficient condition of robust convergence is

    $$\left\Vert {I - \hat H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}}} \right\Vert < 1.$$
    (20)

    Because ΔH = HĤ, (20) can be written as

    $$\matrix{{\left\Vert {I - H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}} +} \right.} \hfill \cr{\quad \left. {\Delta H{{(\rho I + {H^{\rm{T}}}H)}^{- 1}}\left({\Delta {H^{\rm{T}}} + {{\hat H}^{\rm{T}}}} \right)} \right\Vert < 1.} \hfill \cr}$$

    One sufficient condition for the above inequality is

    $$\matrix{{\left\Vert {I - H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}}} \right\Vert +} \hfill \cr{\quad \left\Vert {\Delta H} \right\Vert \left\Vert {{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}} \right\Vert \left({\left\Vert {\Delta {H^{\rm{T}}}} \right\Vert + \left\Vert {{{\hat H}^{\rm{T}}}} \right\Vert} \right) < 1.} \hfill \cr}$$
    (21)

    According to Lemma 1, \({\left\Vert {{{(\rho I + {H^{\rm{T}}}H)}^{- 1}}} \right\Vert_v} < {1 \over \rho}\), so a sufficient condition of (21) is

    $$\matrix{{\left\Vert {I - H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}}} \right\Vert +} \hfill \cr{\;\;{1 \over \rho}\Vert {\Delta H} \Vert \left({\left\Vert {\Delta {H^{\rm{T}}}} \right\Vert + \left\Vert {{{\hat H}^{\rm{T}}}} \right\Vert} \right) < 1.} \hfill \cr}$$
    (22)

    Using matrix inversion lemma and Lemma 1, we have

    $$\matrix{{\left\Vert {I - H{{\left({\rho I + {H^{\rm{T}}}H} \right)}^{- 1}}{H^{\rm{T}}}} \right\Vert =} \hfill \cr{\;\;\left\Vert {{{\left({I + {\rho ^{- 1}}H{H^{\rm{T}}}} \right)}^{- 1}}} \right\Vert \buildrel \Delta \over = \varepsilon < 1.} \hfill \cr}$$

    So one sufficient condition for (22) is

    $$\Vert {\Delta H} \Vert \left({\left\Vert {\Delta {H^{\rm{T}}}} \right\Vert + \left\Vert {{{\hat H}^{\rm{T}}}} \right\Vert} \right) < \rho (1 - \varepsilon).$$

    On the other way round, if model error ΔH satisfies (19), then (20) holds, i.e., the learning law converges. □

  • Remark 5. If the Fourier basis function model is adaptively identified during each iteration, then convergence of the learning law can be guaranteed if the sufficient condition given in Theorem 3 is satisfied for each identified model.

3.5 Steps for application of the Fourier BFAILC

As has been mentioned above, the Fourier basis function model can be identified adaptively during iterations. In the following, the 5 steps to execute the proposed algorithms are listed.

  • Step 1. Set iteration number k = 1, appropriately chose an initial input signal u1(t), and apply it to the system and measure the output y1(t), then calculate the output error e1(t)= y d (t) − y1(t), and project it onto the Fourier basis space, then α1, β1, ε1 are obtained and update iteration number k = k + 1.

  • Step 2. For the k-th iteration, calculate γ k −1 using α k −1 and β k −1 according to (23), and calculate H k using γ k −1 according to (24) and update the model as

    $$\,\matrix{{{\gamma _{k - 1}} =} \hfill \cr{\quad {{\left({{V^{\rm{T}}}({\alpha _{k - 1}})V({\alpha _{k - 1}})} \right)}^{- 1}}{V^{\rm{T}}}({\alpha _{k - 1}}){\beta _{k - 1}},k \geq 2} \hfill \cr}$$
    (23)
    $${H_k} = H({\gamma _{k - 1}}).$$
    (24)
  • Step 3. Using H k , design pseudo-inverse learning law Γ k according to (25) and use (11) as the system input.

    $${\Gamma _k} = {\left({\rho I + H_k^{\rm{T}}{H_k}} \right)^{- 1}}H_k^{\rm{T}}.$$
    (25)
  • Step 4. If the current iteration number is smaller than the pre-specified maximum iteration number or the tracking error is smaller than the pre-specified maximum tracking error, i.e., k < K or ∥e k ∥ < ε, then update the iteration number as k = k + 1 and go to Step 2, else go to Step 5.

  • Step 5. End.

4 Simulations

In this section, simulations are carried out for the singlelink FLM model established in Section 2 using the Fourier BFAILC. The parameters for the single-link FLM are listed in Table 1.

Table 1 Parameters for the single-link FLM

Using the parameters above and taking the truncated modal order n = 2, the natural frequencies of the first two modes are ω1 = 15.93 Hz and ω2 = 51.80 Hz, respectively. The system has 4 zeros and one of them lies in the right-half plane, which shows the established FLM is a non-minimum phase system.

Suppose the given end-effector trajectory for FLM is

$${p_d} = {\pi \over 2}(- {f^6}(t) + 3{f^4}(t) - 3{f^2}(t) + 1)$$

where t ∈ [0, 1] and f (t) = 2 (t − 0.5). To account for the stable inversion, the given trajectory is extended into

$${p_e} = \left\{{\matrix{{{p_d},t \in [0,1]} \hfill \cr{0,t \in [ - 1,0] \cup [1,2].} \hfill \cr}} \right.$$

In the simulation, norm-optimal ILC[19] is used for comparison to verify the effectiveness of the proposed algorithm. In the proposed control scheme, no model information is known to the control algorithm whereas in normoptimal ILC, an accurate model is known aprior. In Fourier BFAILC, the number of Fourier basis functions is chosen to be 31 through harmonic analysis of p e , and the sampling period is 1.5 ms. The reference trajectory and actual trajectory by Fourier BFAILC after 25 iterations are shown in Fig. 2, which shows that the tracking error is extremely small.

Fig. 2
figure 2

Reference output and output by Fourier BFAILC

The reference trajectory and actual trajectory by normoptimal ILC after 25 iterations are depicted in Fig. 3, which shows norm-optimal ILC works ineffectively for non-minimum phase systems. In Fig. 4, the tracking error (infinite norm) in log coordinate, by Fourier BFAILC, decreases rapidly whereas that of norm-optimal ILC converges slowly. Fig. 5 shows the iterative inputs by Fourier BFAILC and stable inversion. It can be seen that the iterative learning process is essentially the approximation to the stable inversion and the 25th input is much the same as stable inversion.

Fig. 3
figure 3

Reference output and output by norm-optimal ILC

Fig. 4
figure 4

Error norms of the 2 algorithms during iterations

Fig. 5
figure 5

Inputs by Fourier BFAILC during iterations and stable inversion

The proposed learning law has a high convergence speed as the error norm drops fast to 0.009 8 in 5 iterations and remains almost unchanged (0.008 4) in the last 5 iterations. If the number of Fourier basis functions is chosen bigger, the ultimate tracking error would be less. The trajectories of joint angle 0, first-order modal variable q1 and second-order modal variable q2 by Fourier BFAILC are also shown in Fig. 6. Before t = 0, small torque is applied onto the motor and the link starts to oscillate while maintaining the end-effector angular position to be zero. After t = 1s the angular position of the end-effector remains zero while the link still vibrates to release the energy. Actually, according to stable inversion theory, during [−1, 0], the system operates on the unstable zero dynamics, and during [1, 2], it operates on the stable dynamics, and the real operation time interval [0, 1] is the the transition phase from unstable zero dynamics to stable zero dynamics.

Fig. 6
figure 6

Evolution of system states by Fourier BFAILC

5 Conclusions

In this paper, a dynamic model for a non-minimum phase single-link flexible manipulator is established. Conventional robotic control techniques fail to work for FLM. To address this problem, a Fourier basis function based adaptive ILC algorithm is proposed for the single-link FLM. A new form of stable inversion is derived, based on which it is concluded that stable inversion lies in the Fourier basis space. Thus, stable inversion can be approximated using Fourier basis function based ILC. Then, a Fourier basis function model identification algorithm is put forward, with which the model can be adaptively identified during iterations and spares apriori identification experiments. A pseudo-inverse learning law is adopted and its convergence is analyzed. To verify the effectiveness of the proposed algorithm, simulations are carried out on the single-link FLM.