1 Introduction

Modern mechanical systems, such as machine tools and automatic inspection machines, often require high-speed high-accuracy linear motions. These linear motions are usually realized using the rotary motors with a mechanical transmission, such as reduction gears and lead screw. These transmission mechanisms not only significantly reduce the linear motion speed and dynamic response, but also introduce the backlash and large friction. To tackle this problem, linear ultrasonic motor (LUSM) has been introduced to apply the linear motion without using any mechanical transmission. LUSM has much merit, such as high precision, fast control dynamics, large driving force, small dimension, high holding force, silence and high resolution, so that it can be used in many different applications [1]. The driving principle of LUSM is based on the ultrasonic vibration force of piezoelectric ceramic elements and mechanical frictional force. Therefore, its mathematical model is complex and the motor parameters are time-varying because of increasing temperature and changes in motor drive operating conditions [2]. For control system design, the conventional control technologies always need a good understanding of the controlled system; therefore, it is very difficult to control LUSM by using the conventional control technologies. To tackle this problem, some design techniques have been adopted for LUSM control [35]; however, these design procedures are overly complex or may cause large chattering in the control efforts which will wear the bearing mechanism and excite unmodelled dynamics.

Recently, the neural network control technique has presented an alternative design method for the control of unknown dynamic systems [610]. It is well known that neural network is capable of approximating mapping through choosing adequately learning method. Because of this property, many neural network controllers have been developed for the compensation of the nonlinearities and system uncertainties in control system so that the system performance such as the stability, convergence, and robustness can be improved. However, the structures of the neural networks presented in [610] are the feedforward neural networks, which are static mapping schemes. For dynamic mapping, some researches have proposed the recurrent neural networks [1115]. Since the recurrent neural networks have the internal feedback loops, they capture the dynamic response of systems with feedback through delays. It has been shown that for the dynamic function estimation, the recurrent neural network can achieve superior estimation performance than the feedforward neural network [11].

To tackle the problem of unobtainable of the precise dynamic model of LUSM, this study develops a robust neural network control (RNNC) system to achieve trajectory tracking performance based on the neural network approach and L 2 control technique. The developed RNNC scheme does not require the system model of LUSM, meanwhile it is capable of yielding good tracking performance. The developed RNNC system is composed of a neural network controller and a robust controller. The neural network controller using a recurrent neural network is designed to approximate an ideal controller and the robust controller is developed to guarantee the attenuation of the tracking error to a specified level. Finally, a computer-control-based experimental system is developed to verify the effectiveness of the proposed RNNC design method.

2 Modeling of linear ultrasonic motor

The structure of LUSM is a large face of a relatively thin rectangular piezoelectric ceramic device. The driving principles of LUSM are based on the ultrasonic vibration force of piezoelectric ceramic element and mechanical frictional force [13]. Figure 1 shows the principal structure of LUSM considered in this study [4]. The stator vibrator is fitted with bending and longitudinal piezoelectric actuators. They are driven by two electrical sources of identical frequency, but with a phase difference that is carefully controlled. At the vibration tip, an elliptical motion is thus created, resultant of the elliptical and longitudinal motion. The bending actuators convert a large electrical power to mechanical output and the longitudinal actuator dynamically changes the force along the pre-load direction to adjust the frictional force between the stator and the rotor. Friction is inevitable in LUSM. It is a highly complicated process to attempt to build an explicit mathematical friction model for LUSM because friction plays a dual role: it not only contributes to the nonlinear dynamics (e.g., dead zone) of LUSM, but also serves as the driving force for the moving part. Therefore, the dynamic equation of LUSM is very complicated and the parameters of the elements are not easy to obtain.

Fig. 1
figure 1

Functional structure of the piezoelectric-type linear ultrasonic motor

For developing the control law, LUSM can be described as a second-order nonlinear dynamic equation by the Newton’s Law as [4]

$$ [M + m(t)]\ddot{d}(t) = F({\mathbf{d}};t) + G({\mathbf{d}};t)u(t) $$
(1)

where M is the mass of the moving table; m(t) is the mass of the payload; \( {\mathbf{d}} = [d(t)\,\,\dot{d}(t)]^{T} \) represents the position and velocity of the moving table; F(d; t) is the nonlinear dynamic function including friction, ripple force and external disturbance; G(d; t) is the gain of LUSM resonant inverter; and u(t) is the input force to LUSM. Rewriting Eq. (1), the dynamic equation of LUSM can be obtained as

$$ \ddot{d}(t) = \frac{{F({\mathbf{d}};t)}}{M + m(t)} + \frac{{G({\mathbf{d}};t)}}{M + m(t)}u(t) = F_{p} ({\mathbf{d}};t) + G_{p} ({\mathbf{d}};t)u(t) $$
(2)

where \( F_{p} ({\mathbf{d}};\,t) = \frac{{F({\mathbf{d}};\,t)}}{M + m(t)} \) and \( G_{p} ({\mathbf{d}};\,t) = \frac{{G({\mathbf{d}};\,t)}}{M + m(t)}. \)Since the model of LUSM is difficult to obtain, a model-free design method termed as robust neural network control (RNNC) system is developed for LUSM control. The LUSM robust neural network control system is shown in Fig. 2. The control objective of this system is to force the output d(t) to follow a reference trajectory d m (t). Define the tracking error as

Fig. 2
figure 2

LUSM robust neural network control system

$$ e(t) = d_{m} (t) - d(t) $$
(3)

where d m (t) is the reference trajectory specified by a reference model following a command input d c (t). If the dynamic function of the nonlinear system in Eq. (2) is well known, there exits an ideal controller as [16]

$$ u^{*} (t) = G_{p} ({\mathbf{d}};t)^{ - 1} [ - F_{p} ({\mathbf{d}};t) + \ddot{d}_{m} (t) + k_{2} \dot{e}(t) + k_{1} e(t)] $$
(4)

Applying Eq. (4) to Eq. (2), gives the following tracking error equation

$$ \ddot{e}(t) + k_{2} \dot{e}(t) + k_{1} e(t) = 0 $$
(5)

If k 1 and k 2 are chosen to correspond to the coefficients of a Hurwitz polynomial, that is a polynomial whose roots lie strictly in the open left half of the complex plane, then lim t→∞ e(t) = 0. Due to the nonlinearity and time-varying characteristics of LUSM, the precise dynamic functions of F p (d; t) and G p (d; t) are unobtainable in practical applications. Therefore, the ideal controller u*(t) can not be implemented. Thus, a robust neural network control system is proposed to control LUSM.

3 Structure of recurrent neural network

In this study, a recurrent neural network will be utilized as the principal controller of the LUSM control system. A three-layer recurrent neural network is shown in Fig. 3, which consists of an input layer (the i layer), a hidden layer (the j layer) and an output layer (the k layer). The signal propagation and the basic function in each layer are shown as follows:

Fig. 3
figure 3

Structure of the recurrent neural network

3.1 Layer 1: input layer

For every node i in this layer, the net input and the net output are represented as

$$ {\text{net}}_{i}^{1} = x_{i} $$
(6)
$$ O_{i}^{1} = f_{i}^{1} ({\text{net}}_{i}^{1} ) = {\text{net}}_{i}^{1} $$
(7)

where x i , i = 1, 2,…, l are the input variables; and f 1 i (·) is the activation function of the input layer, which is chosen as an unity function in this layer.

3.2 Layer 2: hidden layer

In this layer, each node performs an output represented as

$$ {\text{net}}_{j}^{2} = r_{j} O_{jT}^{2} + \sum\limits_{i = 1}^{l} {v_{ij} O_{i}^{1} } $$
(8)
$$ O_{j}^{2} = f_{j}^{2} ({\text{net}}_{j}^{2} ) = \frac{1}{{1 + e^{{ - {\text{net}}_{j}^{2} }} }} $$
(9)

where v ij , j = 1, 2,…, m are the connect weights between the input and the hidden layers; r j is the internal feedback gain of O 2 j ; O 2 jT denotes the output value of O 2 j through the delay time T; and f 2 j (·) is the activation function of the hidden layer, which is chosen as a sigmoid function in this layer. Since the network contains a delayed feedback, it possesses the dynamic characteristic.

3.3 Layer 3: output layer

The node k in this layer is labeled as Σ, which computes the overall output as the summation of all incoming signals

$$ {\text{net}}_{k}^{3} = \sum\limits_{j = 1}^{m} {w_{jk} O_{j}^{2} } $$
(10)
$$ O_{k}^{3} = f_{k}^{3} ({\text{net}}_{k}^{3} ) = {\text{net}}_{k}^{3} $$
(11)

where w jk , k = 1, 2,…, n are the connect weights between the hidden and the output layers; and f 3 k (·) is the activation function of the output layer, which is chosen as an unity function in this layer. O 3 k is the kth output variable.

4 Design of robust neural network controller

The robust neural network controller is composed of a neural network controller and a robust controller

$$ u_{\rm RN} (t) = u_{N} (t) + u_{R} (t) $$
(12)

where the neural network controller u N (t) using a recurrent neural network is designed to approximate the ideal controller and the robust controller u R (t) is adopted to achieve specified robust tracking performance. By substituting Eq. (12) into Eq. (2) and combining with Eq. (4), the tracking error dynamic equation can be obtained as follows:

$$ {\dot{\mathbf{{e}}}} = {\mathbf{A}}_{\text{m}} {\mathbf{e}} + G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\mathbf{m}} (u^{*} (t) - u_{N} (t) - u_{R} (t)) $$
(13)

where \( {\mathbf{e}} = [e(t)\;\dot{e}(t)]^{T} \), \( {\mathbf{A}}_{{\mathbf{m}}} = \left[ {\begin{array}{*{20}c} 0 & 1 \\ { - k_{1} } & { - k_{2} } \\ \end{array} } \right] \) and \( {\mathbf{b}}_{{\mathbf{m}}} = \left[ {\begin{array}{*{20}c} 0 & 1 \\ \end{array} } \right]^{T} \).

4.1 A. On-line learning algorithm

In the following, the learning algorithm of the recurrent neural network is derived to achieve favorable approximation performance. Define a cost function \( V = \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{e}} \), then \( \dot{V} = {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}} \). Multiplying both sides by eT in Eq. (13), yields

$$ {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}} = {\mathbf{e}}^{T} {\mathbf{A}}_{\text{m}} {\mathbf{e}} + {\mathbf{e}}^{T} G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} (u(t)^{*} - u_{N} (t) - u_{R} (t)) $$
(14)

In order to train the recurrent neural network, the online learning algorithm of the recurrent neural network controller is a gradient descent search algorithm in the space of network parameters, and aims to minimize the function \( \dot{V} = {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}\). According to the chain rule of the gradient descent method, the weights in the output layer are updated by the following equation

$$ \dot{w}_{jk} = - \eta_{k} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial w_{jk} }} = - \eta_{k} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial {\text{net}}_{k}^{3} }}\frac{{\partial {\text{net}}_{k}^{3} }}{{\partial w_{jk} }} = - \eta_{k} \delta_{k} O_{j}^{2} $$
(15)

where the approximation error term needs to be calculated and back-propagated by

$$ \delta_{k} \mathop = \limits^{\Updelta } \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial {\text{net}}_{k}^{3} }} = \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial u_{N} }}\frac{{\partial u_{N} }}{{\partial O_{k}^{3} }}\frac{{\partial O_{k}^{3} }}{{\partial {\text{net}}_{k}^{3} }} = - e^{T} G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} $$
(16)

The weights in the hidden layer are updated by

$$ \dot{v}_{ij} = - \eta_{j} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial v_{ij} }} = - \eta_{j} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial {\text{net}}_{k}^{3} }}\frac{{\partial {\text{net}}_{k}^{3} }}{{\partial O_{j}^{2} }}\frac{{\partial O_{j}^{2} }}{{\partial {\text{net}}_{j}^{2} }}\frac{{\partial {\text{net}}_{j}^{2} }}{{\partial v_{ij} }} = - \eta_{j} f_{j}^{{2^{\prime } }} ({\text{net}}_{j}^{2} )O_{i}^{1} \sum\limits_{k} {w_{jk} \delta_{k} } $$
(17)

where f 2′ j (net 2 j ) is the derivative of activation function. The weights in the recurrent signal are updated by

$$ \dot{r}_{j} = - \eta_{r} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial r_{j} }} = - \eta_{r} \frac{{\partial {\mathbf{e}}^{T} {\dot{\mathbf{{e}}}}}}{{\partial {\text{net}}_{k}^{3} }}\frac{{\partial {\text{net}}_{k}^{3} }}{{\partial O_{j}^{2} }}\frac{{\partial O_{j}^{2} }}{{\partial {\text{net}}_{j}^{2} }}\frac{{\partial {\text{net}}_{j}^{2} }}{{\partial r_{j} }} = - \eta_{r} f_{j}^{{2^{'} }} ({\text{net}}_{j}^{2} )O_{jT}^{2} \sum\limits_{k} {w_{jk} \delta_{k} } $$
(18)

where η k , η j and η r are the learning-rates with positive constant. According to the unavailable system dynamics, G p (d; t) in Eq. (16) is rewritten as |G p (d; t)|sgn(G p (d; t)). Therefore, the update laws of the neural network controller shown in Eqs. (15), (17) and (18) can be rewritten as follows:

$$ \dot{w}_{jk} = - \beta_{k} \tau_{k} O_{j}^{2} $$
(19)
$$ \dot{v}_{ij} = - \beta_{j} f_{j}^{{2^{'} }} ({\text{net}}_{j}^{2} )O_{i}^{2} \sum\limits_{k} {w_{jk} \tau_{k} } $$
(20)
$$ \dot{r}_{j} = - \beta_{r} f_{j}^{{2^{'} }} ({\text{net}}_{j}^{2} )O_{jT}^{2} \sum\limits_{k} {w_{jk} \tau_{k} } $$
(21)

where τ k  = −sgn[G p (d; t)]e T b m , the terms β k , β j and β r are some positive constants absorbing the control gain |G p (d; t)| and representing the new learning-rates. Consequently, only the sign of G p (d; t) is required in the design procedure, and it can be easily obtained from the physical characteristic of the controlled system.

4.2 B. Robust controller design with L 2 tracking performance

In the following, a robust controller will be developed to achieve L 2 robust tracking performance for the approximation error between the neural network controller and the ideal controller. Suppose there exists a neural network controller to approximate the ideal controller such that

$$ u^{*} (t) = u_{N} (\hat{\mathbf{{\Uptheta}}},t) + \varepsilon (t) $$
(22)

where \( {\hat{\mathbf{{\Uptheta}}}} = [\hat{w}_{jk}^{{}} \;\hat{v}_{ij}^{{}} \;\hat{r}_{j}^{{}} ]^{T} \) is the estimated weighting vector of the neural network controller; and ɛ denotes the matching error between the neural network controller u N and the ideal controller u*. While ɛ appears, the following L 2 tracking performance is defined [17]

$$ \int\limits_{0}^{T} {{\mathbf{e}}^{T} (t){\mathbf{Qe}}(t)\,{\rm d}t} \le {\mathbf{e}}^{T} (0){\mathbf{Pe}}(0) + \delta^{2} \int\limits_{ 0}^{T} {\varepsilon^{2} (t)\,{\rm d}t} ,\,\forall T \in [0,\infty ),\varepsilon \in L_{2} [0,T] $$
(23)

for given constant weighting matrices Q = Q T ≥ 0 and P = P T ≥ 0, and a prescribed attenuation constant δ. If the system starts with initial condition e(0) = 0, then the L 2 tracking performance in Eq. (23) can be rewritten as

$$ \mathop {\sup }\limits_{{\varepsilon \in L_{2} [0,T]}} \frac{{\left\| {\mathbf{e}} \right\|_{\text{Q}} }}{{\left\| \varepsilon \right\|_{2} }} \le \delta $$
(24)

where ‖e 2 Q  = ∫ T0 e T Qe dt and ‖ɛ 22  = ∫ T0 ɛ 2 dt, i.e., the L 2-gain from ɛ to the tracking error e must be equal to or less than δ.

By substituting Eq. (22) into Eq. (13), the tracking error dynamic equation can be rewritten as

$$ {\dot{\mathbf{e}}} = {\mathbf{A}}_{{\mathbf{m}}} {\mathbf{e}} + G_{p} ({\mathbf{d}};t){\mathbf{b}}_{{\mathbf{m}}} (\varepsilon - u_{R} ) $$
(25)

Then the following theorem can be stated and proved.

Theorem 1: Consider a linear ultrasonic motor presented by Eq. (2). If the robust neural network control system is designed as Eq. (12), where the update laws of the neural network controller are designed as Eqs. (19)–(21) and the robust controller is designed as

$$ u_{R} = \frac{1}{{\kappa G_{p} ({\mathbf{d}};t)}}{\mathbf{b}}_{\text{m}}^{T} {\mathbf{Pe}} $$
(26)

where κ is a positive factor and P = P T is a solution of the following Riccati-like equation

$$ {\mathbf{PA}}_{\text{m}} + {\mathbf{A}}_{\text{m}}^{T} {\mathbf{P}} + {\mathbf{Q}} - \frac{2}{\kappa }{\mathbf{Pb}}_{\text{m}} {\mathbf{b}}_{\text{m}}^{T} {\mathbf{P}} + \frac{1}{{\rho^{2} }}{\mathbf{Pb}}_{\text{m}} {\mathbf{b}}_{\text{m}}^{T} {\mathbf{P}} = 0 $$
(27)

where ρ is a specified positive constant, then the L 2 tracking performance in Eq. (23) can be achieved.

Proof: Define a Lyapunov function in the following form

$$ V = \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{Pe}} $$
(28)

Taking the derivative of the Lyapunov function and using Eqs. (25) and (26), yields

$$ \begin{aligned} \dot{V} & = \frac{1}{2}{\dot{\mathbf{e}}}^{T} {\mathbf{Pe}} + \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{P}}{\dot{\mathbf{e}}} \\ & = \frac{1}{2}[{\mathbf{A}}_{\text{m}} {\mathbf{e}} + G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} (\varepsilon - u_{R} )]^{T} {\mathbf{Pe}} + \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{P}}[{\mathbf{A}}_{\text{m}} {\mathbf{e}} + G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} (\varepsilon - u_{R} )] \\ & = \frac{1}{2}{\mathbf{e}}^{T} ({\mathbf{A}}_{\text{m}}^{T} {\mathbf{P}} + {\mathbf{PA}}_{\text{m}} ){\mathbf{e}} + {\mathbf{e}}^{T} {\mathbf{P}}G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} (\varepsilon - \frac{1}{{\kappa G_{p} ({\mathbf{d}};t)}}{\mathbf{b}}_{\text{m}}^{T} {\mathbf{Pe}}) \\ \end{aligned} $$
(29)

By straightforward manipulations from Riccati-like equation (27), Eq. 29) can be rewritten as

$$ \begin{aligned} \dot{V} & = - \frac{1}{2}{\mathbf{e}}^{T} ({\mathbf{Q}} + \frac{1}{{\rho^{2} }}{\mathbf{Pb}}_{\text{m}} {\mathbf{b}}_{\text{m}}^{T} {\mathbf{P}}){\mathbf{e}} + \frac{1}{2}\varepsilon {\mathbf{b}}_{\text{m}}^{T} G_{p} ({\mathbf{d}};t){\mathbf{Pe}} + \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{P}}G_{p} ({\mathbf{d}};t){\mathbf{b}}_{\text{m}} \varepsilon \\ & = - \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{Qe}} - \frac{1}{2}(\frac{1}{\rho }{\mathbf{b}}_{\text{m}}^{T} {\mathbf{Pe}} - G_{p} ({\mathbf{d}};t)\rho \varepsilon )^{T} (\frac{1}{\rho }{\mathbf{b}}_{\text{m}}^{T} {\mathbf{Pe}} - G_{p} ({\mathbf{d}};t)\rho \varepsilon ) + \frac{1}{2}G_{p}^{2} ({\mathbf{d}};t)\rho^{2} \varepsilon^{2} \\ & \le - \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{Qe}} + \frac{1}{2}G_{p}^{2} ({\mathbf{d}};t)\rho^{2} \varepsilon^{2} \\ & \le - \frac{1}{2}{\mathbf{e}}^{T} {\mathbf{Qe}} + \frac{1}{2}\delta^{2} \varepsilon^{2} \\ \end{aligned} $$
(30)

where ɛ b T m G p (d; t)Pe = e T P G p (d; t)b m ɛ is used since it is a scale, and the new prescribed attenuation constant is defined as ρ|G p (dt)| ≤ δ. Integrating the above equation from t = 0 to t = T yields

$$ V(T) - V(0) \le - \frac{1}{2}\int\limits_{0}^{T} {{\mathbf{e}}^{T} {\mathbf{Qe}}\,{\rm d}t} + \frac{1}{2}\delta^{2} \int\limits_{0}^{T} {\varepsilon^{2}\,{\rm d}t} $$
(31)

Since V(T) ≥ 0, the above inequality implies the following inequality

$$ \frac{1}{2}\int\limits_{0}^{T} {{\mathbf{e}}^{T} {\mathbf{Qe}}\,{\rm d}t} \le V(0) + \frac{1}{2}\delta^{2} \int\limits_{0}^{T} {\varepsilon^{2}\,{\rm d}t} = \frac{1}{2}{\mathbf{e}}^{T} (0){\mathbf{Pe}}(0) + \frac{1}{2}\delta^{2} \int\limits_{0}^{T} {\varepsilon^{2}\,{\rm d}t} $$
(32)

As the result, the robust neural network control system achieves the L 2 robust tracking performance in the Lyapunov sense.

In the implementation of the robust controller, since the control gain G p (d; t) may be unknown, Eq. (26) can be rewritten as

$$ u_{R} = \frac{1}{{\alpha \text{sgn} (G_{p} ({\mathbf{d}};t))}}{\mathbf{b}}_{\text{m}}^{T} {\mathbf{Pe}} $$
(33)

where α κ|G p (d; t)| is a positive constant absorbing the control gain |G p (d; t)|.

5 Experimental results

The computer control experimental system for LUSM is shown in Fig. 4. A servo control card is installed in the control computer, which included multi-channels of D/A, A/D, PIO and encoder interface circuits. The position of the moving table is fed back using a linear scale. The proposed robust neural network control system is realized in the Pentium using the “Turbo C” language. The control interval of the control system is set as 2 ms. Two test conditions are provided in the experiments, which are the nominal condition and the payload condition. The payload condition is the addition of one iron disk with 4.3 kg weight to the mass of the moving table which is with 0.9 kg weight. The control objective is to control the moving table to follow a 0.02 m periodic step command. Moreover, a second-order transfer function \( \frac{64}{{s^{2} + 16s + 64}} \) is chosen as the reference model for the step command.

Fig. 4
figure 4

Linear ultrasonic motor computer control system

The neural network is chosen with 2 input, 7 hidden-layer neurons, and 1 output; thus, there are 28 adjustable weights. In Eq.  (19) the parameter β k is the leaning-rate of the interconnection weight, w jk , between the hidden and output layers. In Eq. (20) the parameter β j is the leaning-rate of the interconnection weight, v ij , between the input and hidden layers. In Eq. (21) the parameter β r is the leaning-rate of the interconnection weight, r j , of hidden layer. If these learning-rates are chosen too small, then the parameter convergence of the RNNC system will be easily achieved; however, this will result in slow learning speed. On the other hand, if the learning-rates are chosen too large, then the learning speed will be fast; however, the RNNC system may become more unstable for the parameter convergence. δ in Eq. (24) represents the attenuation gain of the tracking error. Solving the Riccati-like equation (27) with κ = 2ρ 2, it is obtained that

$$ {\mathbf{Q}} = \left[ {\begin{array}{*{20}c} { - 1} & 0 \\ 0 & { - 1} \\ \end{array} } \right]\quad{\text{and}}\quad {\mathbf{P}} = \left[ {\begin{array}{*{20}c} {1.7625} & {0.7812} \\ {0.7812} & {0.8088} \\ \end{array} } \right] $$
(34)

First, consider the small learning-rates with β k  = β j  = β r  = 10 and attenuation gain δ = 0.45. With these parameters, the experimental results of LUSM control system for two test conditions are shown in Fig. 5. The tracking responses are shown in Fig. 5a and c; and the associated control efforts are shown in Fig. 5b and d for nominal condition and payload condition, respectively. Simulation results show that tracking performance is not good enough because the learning-rates β k , β j and β r are too small and the attenuation gain δ is too large. To speed up the convergence, the learning-rates are increased as β k  = β j  = β r  = 50 and δ is retained as δ = 0.45. With these parameters, the experimental results of LUSM control system for two test conditions are shown in Fig. 6. The tracking responses are shown in Fig. 6a and c; and the associated control efforts are shown in Fig. 6b and d for nominal condition and payload condition, respectively. Comparing to Fig. 5, it is shown that Fig. 6 can achieve better tracking performance by choosing larger learning-rates. Moreover, by specifying δ = 0.225 to increase L 2 tracking performance and the learning-rates are retained as β k  = β j  = β r  = 50, the experimental results for two test conditions are shown in Fig. 7. The tracking responses are shown in Fig. 7a and c; and the associated control efforts are shown in Fig. 7b and d for nominal condition and payload condition, respectively. From the experimental results, it can be seen that robust tracking performance can be further improved as the attenuation gain δ is decreased. For observing the on-line learning processes, with β k  = β j  = β r  = 50 and δ = 0.225, the time responses of neural network weighs w jk , v ij and r j for nominal condition and payload condition are shown in Figs. 8 and 9, respectively. The responses of weight w j1 are shown in Figs. 8a and 9a; the responses of weight v 1j are shown in Figs. 8b and 9b; the responses of weight v 2j are shown in Figs. 8c and 9c; and the responses of weight r j are shown in Figs. 8d and 9d, respectively. These results show that the neural network weights can be on-line tuned to achieve favorable tracking performance.

Fig. 5
figure 5

Experimental results of LUSM control system with β k  = β j  = β r  = 10 and δ = 0.45

Fig. 6
figure 6

Experimental results of LUSM control system with β k  = β j  = β r  = 50 and δ = 0.45

Fig. 7
figure 7

Experimental results of LUSM control system with β k  = β j  = β r  = 50 and. δ = 0.225

Fig. 8
figure 8

Time responses of neural network weights for nominal condition

Fig. 9
figure 9

Time responses of neural network weights for payload condition

6 Conclusions

This study has successfully demonstrated the design and implementation of a robust neural network control (RNNC) system for the position control of a linear ultrasonic motor (LUSM) system. Since the dynamic characteristic of LUSM is nonlinear and the precise dynamic model is unobtainable, the developed model-free RNNC system has been applied to achieve precision position control of LUSM. Experimental results have demonstrated the effectiveness of the proposed design method. The major contributions of this paper are: (1) the successful development of a RNNC system, in which the gradient descent method is used to derive the on-line learning algorithm. (2) the L 2 tracking performance can be achieved with a desired attenuation level. (3) the successful applications of RNNC system to control LUSM. (4) the proposed model-free control methodology can be easily extended to other motors. In this study, the experimental system is implemented on PC-based, future work on the proposed RNNC design includes the hardware implementation using the high-performance microprocessor or digital signal processor (DSP) to provide flexible environments with high execution rate. As shown in the experiments, different learning-rates of neural network will affect the control performance. Another future study could be the derivation of optimal learning-rate of neural network for achieving better control performance. In order to further improve control performance, the other future study can be the derivation of mathematical model of LUSM and the controller design with partially known of system dynamics.