1 Introduction

Model reference adaptive control (MRAC) is a kind of adaptive control strategy which is widely used in various fields [1,2,3,4]. An online inductance identification method based on the model reference adaptive system is presented in [1] to compensate for the influence of inaccurate inductance parameter on the circulating current suppression and current control. An enhanced rotor position/speed estimation technique of doubly fed induction generator (DFIG) is studied in [2]. The estimator adopts model reference adaptive system. The advantage of the proposed scheme is stated that it is completely free from estimation error due to the mismatch of both stator and rotor resistances of DFIG. A model reference adaptive control method is also presented in [3] to eliminate the positioning nonlinearity of piezoelectric actuators.

With the continuous expansion of the application fields, the problems that MRAC must face in the practical applications are gradually highlighted. As a model-based control strategy, the control performance of the MRAC system is directly related to the accuracy of the object’s model. But in practical application, it is difficult to obtain accurate mathematical models of many objects. Even if the model can be obtained, the order of the model will be relatively high. A higher order model will significantly increase the complexity of the MRAC controller, which makes the cost of controller implementation to be higher.

In industrial applications, low-order models that can roughly describe the characteristics of the object are often easy to be obtained. Is it possible to use these low-order models with low accuracy to design low-complexity MRAC controllers and also maintain good control performance? In order to achieve this goal, the robustness of MRAC to model deviation must be improved, i.e. the MRAC controller needs to be changed. It may be a way to solve this problem by introducing the idea of iterative learning into MRAC control system. The iterative learning method with simple structure does not increase the complexity of the controller significantly, but it can improve the performance of MRAC controller through its learning ability.

Iterative learning control (ILC) is a kind of learning strategy [5,6,7]. There are some articles that combine iterative learning control and MRAC. Most of these articles utilize the derivation process of MRAC to improve ILC [8, 9]. The result of the derivation is an iterative learning control strategy with Lyapunov stability in theory. In order to transplant the derivation process of MRAC to the design of ILC, a special Lyapunov function, i.e. composite energy function [8], is used in these articles.

A feasible way to introduce the idea of iterative learning into the MRAC system is the indirect iterative learning control method proposed in [10,11,12,13]. In [10,11,12], ILC controller and PID controller are connected in series with each other. ILC controller is used to adjust the reference value of the PID controller. The method given in [13] uses the same idea, except that the generalized predictive controller is used to replace the PID controller.

In this paper, the indirect iterative learning method is used to improve the performance of MRAC to model deviation. Different from [8, 9], iterative learning controller is used to adjust the adaptive law of feed-forward gain of the MRAC system in this paper. In such a system, ILC and MRAC are two independent parts. The purpose of this study is not to obtain a new ILC strategy, but to utilize the idea of ILC to improve the performance of the existing MRAC system.

The MRAC strategy using input and output variables proposed by Narendra Kumpati S. and Valavani Lena S. is one of the most classic MRAC control schemes [14]. This MRAC control scheme is studied in this paper. The proposed control strategy is applied to the speed control system of ultrasonic motor. In the process of designing the MRAC controller, the first-order model instead of the commonly-used fourth-order model is used to describe the dynamic characteristics of the ultrasonic motor to verify the robustness of the proposed control strategy to model deviation.

Aiming at the problem of model accuracy, there are some updated control strategies to solve this problem. For example, disturbance observer based predicted performance fuzzy sliding mode control for PMSM in electric vehicles approximates the model through fuzzy logic system [15]. Considering the load disturbance of PMSM in the actual operation due to road roughness, a disturbance observer is proposed to the estimate the load disturbance in [15]. Comparing with these existing methods, the advantage of the proposed method in this paper is that the control algorithm is simple, and the control process does not depend on the information of the object’s model.

Ultrasonic motor are applied more and more in the industrial applications, and the research on its control method is also more and more. Due to the serious nonlinear characteristics of ultrasonic motor, the control strategy must match the characteristics of ultrasonic motor to obtain good control performance. Many different control strategies including MRAC have been used in ultrasonic motor control system. The MRAC control strategy was used in [16] to control the rotating position of ultrasonic motors, another observer was proposed to compensate the load-torque-dependent dead zone. The scheme of the MRAC controller used in [16] was the standard scheme of model reference adaptive control strategy. This paper did not make any changes to the control strategy. In [17], the iterative learning method was integrated into the MRAC control strategy, and the new MRAC control formulas including learning items were deduced. Then, the new control strategy was applied to the speed control system of ultrasonic motor. Different from the control method proposed in [17], the control strategy of ultrasonic motor proposed in this paper does not change the formulas of MRAC control strategy. Instead, a simple iterative learning controller is proposed to adjust the adaptive law of feed-forward gain in MRAC controller.

The main contributions of the paper are elaborated below.

  1. 1.

    The traditional indirect ILC proposed in [10,11,12,13] is used to improve the performance of MRAC system. Experimental results show that, the step response of the system has a large overshoot. The control performance is not so good.

  2. 2.

    Aiming at the problem of obvious overshoot, a new indirect iterative learning control method different from that in [10,11,12,13] is proposed. The P-type ILC controller is no longer used to change the reference value of MRAC system, but is used to adjust the adaptive law of feed-forward gain in MRAC controller.

  3. 3.

    Using ultrasonic motor [18, 19] as the controlled object, the control performance and applicability of the proposed control strategy is substantiated by comparative experiments. Even if a first-order model which is different from the high-order object is used in the design of MRAC controller, the proposed ILC control scheme can still overcome the influence of the model’s error, and make the dynamic response of the system tend to the desired characteristic after finite iterations.

The rest of the paper is organized as follows. In Section II, the traditional indirect ILC proposed in [10,11,12,13] is introduced into MRAC system. The advantages and disadvantages of the control strategy are verified by experiments. In order to improve the performance of the system, an improved indirect ILC method is proposed in Section III. Afterwards, comparative experiments are provided to verify the feasibility of the proposed strategy in Section IV. Finally, Section V concludes this paper.

2 Indirect Iterative Learning MRAC Controller

According to the indirect iterative learning control method given in [10,11,12,13], the speed control system of ultrasonic motor is designed as shown in Fig. 1. In Fig. 1, ILC controller is used to adjust the reference value of MRAC controller in real time. Therefore, the reference value of MRAC controller is the sum of the reference value of motor’s speed and the output of the ILC controller, namely

$$y_{{{\text{Tr}}k}} (i) = y_{{{\text{r}}k}} (i) + \Delta y_{{{\text{r}}k}} (i)$$
(1)

where, yTrk(i), yrk(i) and Δyrk(i) are the reference value of MRAC controller, reference value of speed and the output of ILC controller at time i in the kth iterative control process, respectively.

Fig. 1
figure 1

Structure block diagram of indirect iterative learning MRAC speed control system for ultrasonic motor

In the speed control system for ultrasonic motor, yrk is the reference value of the motor’s rotating speed, and yTrk is the modified reference value of speed. The output of the MRAC controller uk, which is also the input of the driving circuit, is the frequency of the motor’s driving voltage.

In order to design the MRAC speed controller of ultrasonic motor, it is necessary to know the motor’s model. Generally, the dynamic characteristics of the ultrasonic motor can be better described by a fourth-order model [20]. In order to verify the control performance of the proposed control strategy in the case of large error of model, the ultrasonic motor is modeled and identified in the form of first-order inertia model

$$G(s) = \frac{{k_{{\text{p}}} }}{\tau s + 1}$$
(2)

where, kp is the gain of motor’s model, τ is the inertial time constant. The obtained first-order model of the motor is used to design the controller.

In MRAC system, the reference model is used to express the desired control performance. The reference model I in Fig. 1 is used to ensure that the iterative learning process has the possibility of reaching the convergence state. Since the input of reference model II is no longer the reference value of speed, reference model I also plays the role of the reference model in the traditional MRAC system. The two reference models shown in Fig. 1 are designed as the following form

$$G_{{\text{m}}} (s) = \frac{1}{{\tau_{{\text{m}}} s + 1}}$$
(3)

where, τm is the inertial time constant. Take the time constant τm of the reference model as 0.04 s. The order of the reference model is the same as that of ultrasonic motor’s model shown in (2). The step response of the reference model has no overshoot.

In order to facilitate the use of DSP programming to realize the digital control algorithm, formula (3) is transformed into differential form

$$\begin{gathered} y_{{{\text{m}}k}} (i) = {\text{e}}^{{ - T_{{\text{s}}} /\tau_{{\text{m}}} }} y_{{{\text{m}}k}} (i - 1) + \left( {1 - {\text{e}}^{{ - T_{{\text{s}}} /\tau_{{\text{m}}} }} } \right)y_{{{\text{Tr}}k}} (i) \hfill \\ \quad \quad \;\;{\kern 1pt} = 0.72y_{{{\text{m}}k}} (i - 1) + 0.28y_{{{\text{Tr}}k}} (i) \hfill \\ \end{gathered}$$
(4)

where, ymk(i) and ymk(i-1) are the output of the reference model II at time i and time (i-1) in the kth iterative control process, respectively. yTrk(i) is the reference value of MRAC controller at time i in the kth iterative control process. Ts is the sampling time which is 0.013 s.

In Fig. 1, the control quantity uk applied to the driving circuit of motor is the frequency of the driving voltage, and its expression is

$$u_{k} (i) = k_{0} y_{{{\text{Tr}}k}} (i) + d_{{0}} y_{k} (i) = \theta^{{\text{T}}} \varphi$$
(5)

where, k0 and d0 are the feed-forward gain and feed-back gain of MRAC controller, respectively. uk(i) and yk(i) are the control quantity and output (motor’s rotating speed) at time i in the kth iterative control process, respectively. The signal vector is defined as φT = [yTrk(i) yk(i)]. The adjustable parameter vector of the controller is defined as θT = [k0 d0].

It should be noted that because the first-order model is used to describe the dynamic characteristics of the motor, the structure of the controller is correspondingly simplified. The motor’s model given in (2) contains two parameters, i.e. kp and τ. Correspondingly, the controller also has only two adjustable parameters, feed-forward gain k0 and feedback gain d0. In traditional MRAC controller, it is difficult to achieve the matching state of the reference model and the motor by adjusting these two parameters. The reason is that the actual motor is a fourth-order object, not a first-order object. As a result, the control performance will not be as good as expected. However, with the method given in Section III, the response of the motor can be consistent with the output of reference model by introducing the iterative learning idea, so as to achieve the desired control performance.

According to the MRAC strategy described in [14], the Lyapunov function is selected as

$$V = \frac{1}{2}\left( {e_{k}^{{\text{T}}} Pe_{k} + \tilde{\theta }^{{\text{T}}} \Gamma^{ - 1} \tilde{\theta }} \right)$$
(6)

where, P and Γ are positive definite symmetric matrix, Γ is adaptive gain matrix, ea is output error, \(\tilde{\theta }\) is parameter error vector.

The adaptive law of the control parameters obtained by derivation is

$$\dot{\theta } = \Gamma \varphi e_{k} (i)$$
(7)

where, ek(i) is output error at time i in the kth iterative control process, that is

$$e_{k} (i) = y_{{{\text{m}}k}} (i) - y_{k} (i)$$
(8)

Take Γ as the following positive definite diagonal matrix

$$\Gamma = \left[ {\begin{array}{*{20}c} r & 0 \\ 0 & r \\ \end{array} } \right]$$
(9)

where, the adaptive gain r is a positive real number. Substituting (9), φT = [yrk(i) yk(i)] and θ.T = [k0 d0] into (7), the adaptive laws of k0 and d0 can be obtained

$$\dot{k}_{0} = ry_{{{\text{Tr}}k}} (i)e_{k} (i)$$
(10)
$$\dot{d}_{0} = ry_{k} (i)e_{k} (i)$$
(11)

where, ek(i), yTrk(i) and yk(i) are measurable. Just specify the value of r, the adaptive adjustment of k0 and d0 can be achieved by using the above formula.

In Fig. 1, the ILC controller is designed as a simple P-type structure (P-ILC)

$$\Delta y_{{{\text{r}}k}} (i) = \Delta y_{{{\text{r(}}k - 1)}} (i) + \lambda_{{\text{P}}} e_{{{\text{I}}(k - 1)}} (i + 1)$$
(12)

where, the coefficient λP is the proportional learning gain. Δyr(k-1)(i) and eI(k-1)(i + 1) are the increment of the reference value at time i and input error of ILC controller at time i-1 in the (k − 1)-th iterative control process, respectively.

The control strategy shown in Fig. 1 is realized by using the DSP chip. The speed control experiment of ultrasonic motor is carried out to verify the effectiveness of the proposed control strategy. The ultrasonic motor used in the experiment is USR60 traveling-wave ultrasonic motor produced by Shinsei Company. The adjustable range of the motor’s rotating speed is 0r/min to 120r/min. The rated power, rated torque, rated current, and central frequency of the motor is 5 W, 0.4Nm, about 1.6A, and 40 kHz, respectively.

In order to modify the speed of motor, the phase angle, frequency, and amplitude of motor's terminal voltage can be used as controlled variable. Frequency of the voltage is selected as the controlled variable in this paper. The amplitude of terminal voltage is set to be 300 V, the value of phase angle is set to be 90°. Therefore, the controller adjusts the value of frequency around 40 kHz to make the motor's speed track the reference value.

The main structure of the motor’s driving circuit is H-bridge. Phase-shift PWM method is adopted to adjust the amplitude, phase angle and frequency of the driving voltage. The output of the controller is the frequency of driving voltage. The photo of the experimental test bench is shown in Fig. 2.

Fig. 2
figure 2

Photo of the experimental test bench. a Driving and control circuits. b Ultrasonic motor

The value of the adaptive gain is set as 0.001. The initial values of k0 and d0 are set as 3 and 0, respectively. The proportional learning gain λP is set as 0.6. The step signal is used as the reference signal of the motor's speed, and the step reference value is set as 30r/min. Nine consecutive iterative learning experiments are carried out, the experimental results are shown in Fig. 3. During the progress of iterative learning, rising rate of response curves continues to increase. However, the step responses have obvious overshoot.

Fig. 3
figure 3

Experimental results of indirect iterative learning MRAC speed control (P-ILC, λP = 0.6)

If the value of learning gain λP is increased, the amplitude of the overshoot will increase accordingly. Although under the action of ILC controller, the rotating speed’s overshoot decreases continuously, and it is reduced to 0 at the 9th step response, but there is obvious overshoot in the iterative learning process. In occasions where overshoot is not allowed, the application of this control strategy is limited.

3 Improved Indirect Iterative Learning MRAC Control Method

In order to eliminate the overshoot, the influence of using ILC controller to adjust the reference value on MRAC control system is investigated in the following.

It can be seen from the structure of control system shown in Fig. 1 that this effect is manifested in three aspects. The first is that the change of the reference value directly affects the control quantity applied to the motor, thus changing the operating state of the motor. The second is that, the changing reference value as the input of the reference model in MRAC control system (reference model II in Fig. 1) directly changes the output error ek(i), thus affecting the desired control goal of MRAC system. The third is that the change of the reference value affects the adaptive rate of feed-forward gain k0 through the adaptive law (10), thus changing the dynamic process of the speed response.

Among these three aspects, the first two aspects are the influence of directly changing the reference value of MRAC controller, only the third one does not directly change the reference value of MRAC controller. Because the direct cause of overshoot is that the reference value of MRAC controller is improperly raised, the structure of control system shown in Fig. 1 should be modified to remove the direct cause. In other words, removing the influence of the first two aspects mentioned above, only the third aspect is retained. That is, the output of ILC controller is still superimposed with the reference value of motor’s speed, but the modified reference value only acts on the adaptive law (10).

The improved indirect iterative learning MRAC system is shown in Fig. 4. The dashed line in Fig. 4 represents the previous control information stored in the memory of DSP chip. In Fig. 1, the reference model I and the reference model II are the same. In the improved system structure, the inputs of the two models become the same, so the two reference models are combined into one in Fig. 4. The output error of MRAC controller is used as the input signal of ILC controller.

Fig. 4
figure 4

Structure block diagram of improved indirect iterative learning MRAC speed control system

In the system shown in Fig. 4, the reference value of MRAC controller is no longer adjusted by ILC controller, thus eliminating the main cause of overshoot shown in Fig. 3a. The output of ILC controller acts on the adaptive law of feed-forward gain, which can change the dynamic response process of the system through continuous learning, so as to improve the control performance. In the system shown in Fig. 4, the adaptive law of feed-forward gain k0 is

$$\dot{k}_{0} = r\left( {y_{{{\text{r}}k}} (i) + \Delta y_{{{\text{r}}k}} (i)} \right)e_{k} (i)$$
(13)

ILC controller still adopts P-type structure shown in (12). The input variable is changed from eI(k-1) to e(k-1), that is

$$\Delta y_{{{\text{r}}k}} (i) = \Delta y_{{{\text{r(}}k - 1)}} (i) + \lambda_{{\text{P}}} e_{(k - 1)} (i + 1)$$
(14)

where, the coefficient λP is proportional learning gain. Δyr(k-1)(i) and e(k-1)(i + 1) are the increment of reference value at time i and the output error at time i + 1 in the (k-1)-th iterative control process, respectively.

4 Experimental Verification

4.1 Experiments Under No Load Condition

The DSP chip is programmed to realize the speed control system of ultrasonic motor shown in Fig. 4. The experimental results are shown in Fig. 5. The overshoot is reduced to 0 in all of the step responses. It shows that the proposed control strategy is effective. As the iterative learning process progresses, the speed of response gradually increases. The convergence speed of iterative learning is fast, and the fifth step response is close to the output of reference model. The subsequent sixth step response coincides with the fifth response curve. This shows that the learning process converges and stabilizes in the desired control state.

Fig. 5
figure 5

Experimental results of improved indirect iterative learning MRAC speed control (P-ILC, λP = 6). a Curve of speed step response. b Changing curve of the output of ILC controller. c Changing curve of the value of feed-forward gain k0

The changing curve of the output of ILC controller and the value of feed-forward gain k0 are shown in Fig. 5b and c, respectively. Figure 5b shows that the amplitude of Δyrk increases with the progress of iterative learning. It can be seen from (13) that the increasing Δyrk leads to an increase in the adjustment rate of feed-forward gain k0, which accelerates the rising rate of k0 in the dynamic stage of step response, as shown in Fig. 5c. It can be seen from the formula (5) of control quantity for MRAC that, this will increase the control quantity and enhance the control effect. So the response speed is getting faster and faster as shown in Fig. 5.

In Fig. 5c, the steady-state value of the feed-forward gain k0 gradually increases with the progress of iterative learning process, as shown in the data given in Table 1. This is due to the addition of adjustment measures based on iterative learning in the adaptive law of k0. The adaptive law (11) of feedback gain d0 is not adjusted. Therefore, as the amplitude of k0 gradually increases, the proportion of k0 in the control quantity calculation formula (5) gradually increases, and the proportion of the unadjusted d0 relatively decreases.

Table 1 The performance index of iterative learning control under different speed values (experimental results)

As shown in Fig. 4, a P-ILC controller is added to the original MRAC system. Because the P-ILC controller given in (14) is the simplest ILC strategy, the amount of on-line calculation increases only a little. But the control performance can be significantly improved and the adaptive ability of the system can be increased by utilizing the learning ability of ILC controller.

If other iterative learning control strategy is used instead of P-ILC, the control performance will be different. Therefore, it can meet the different requirements of control performance in different applications. For example, adding a differential term in (14) can form the following PD-type ILC control law

$$\begin{gathered} \Delta y_{{{\text{r}}k}} (i) = \Delta y_{{{\text{r(}}k - 1)}} (i) + \lambda_{{\text{P}}} e_{(k - 1)} (i + 1) \\ + \lambda_{{\text{D}}} \left( {e_{(k - 1)} (i + 1) - e_{(k - 1)} (i)} \right) \\ \end{gathered}$$
(15)

where, the coefficient λD is the differential learning gain.

The PD-ILC control law is applied to the system shown in Fig. 4. The reference model and other control parameters remain unchanged. The experimental results obtained are shown in Fig. 6. As shown in Fig. 6a, the control performance is gradually approaching the desired state. The PD-ILC controller is also effective. Compared with Fig. 5b, the amplitude of each curve in Fig. 6b is bigger in the initial stage due to the addition of differential term in ILC control law. Subsequently, the descent rate of the descending stage of the curve increases, and the value of Δyrk decreases to 0 more quickly.

Fig. 6
figure 6

Experimental results of improved indirect iterative learning MRAC speed control (PD-ILC, λP = 4, λD = 8). a Curve of step response. b Changing curve of the output of ILC controller

Both of the adjustment time of the sixth step response shown in Figs. 5a and 6a are less than 0.2 s. And both of the time required for Δyrk to decrease to 0 in Figs. 5b and 6b is greater than the adjustment time. In the period beyond the regulation time, the step response of rotating speed has entered the steady state. In this case, the larger Δyrk value will enhance the control effect, which is not conducive to maintaining the stability of the system. Therefore, it is hoped that the value of Δyrk will decrease to 0 as soon as possible after the motor’s speed has entered the steady state. From this perspective, it is beneficial to use PD-ILC controller.

The value of Δyrk in the initial stage in Fig. 6b is raised, so that the change rate of the step response shown in Fig. 6a at the initial stage is significantly faster than that in Fig. 5a. In some applications, this is also beneficial. Comparing the steady-state value of k0 given in Table 1, it can be seen that the data corresponding to Fig. 5 is generally larger than that of Fig. 6. This is consistent with that the adjustment time of the step response shown in Fig. 5a is slightly shorter than that in Fig. 6a.

It should also be noted that due to the addition of differential term in the controller, the curve of Δyrk shown in Fig. 6b is no longer as smooth as that in Fig. 5b. In Fig. 6b, there is jitter with small amplitude, which will lead to the fluctuation of motor’s speed. In practical applications, P-type or PD-type ILC controller can be selected according to the different requirements of control performance.

In order to compare the control performance of the proposed control strategy and MRAC, Fig. 7 shows the experimental result of MRAC controller and the experimental result of the proposed control strategy after six iterations. The initial parameter value of the improved indirect iterative learning MRAC controller is the same as the MRAC controller. It can be seen that, the response speed of improved indirect iterative learning MRAC controller is faster than that of MRAC controller. Therefore, compared with MRAC, the proposed control strategy can improve the control performance by learning.

Fig. 7
figure 7

Comparison of experimental result between MRAC and improved indirect iterative learning MRAC (PD-ILC)

4.2 Experiments Under Different Speed Reference Value

The reference values of the above experiments are 30r/min. In order to verify the adaptability of the proposed control strategy to different reference values of speed, the reference value of the step response is changed to 60r/min. The reference model remains unchanged. The experimental results are shown in Fig. 8. The changing trend of the response curves shown in Fig. 8 is the same as Fig. 6. The adjustment time of the sixth step response shown in Fig. 8 is 0.1965s, which is close to 0.1834s when the reference value is 30r/min.

Fig. 8
figure 8

Experimental results of improved indirect iterative learning MRAC speed control (PD-ILC, λP = 2, λD = 4, 60r/min)

Now, let's change the process of the experiment. In the six consecutive iterative learning control processes, the reference value of the first and second process is set to 60r/min, and then, the reference value of the subsequent four processes is set to 30r/min. In other words, at the beginning of the third control process, the reference value changes from 60r/min to 30r/min. Using the same reference model and same values of control parameter as the above experiment, the experimental results shown in Fig. 9 are obtained.

Fig. 9
figure 9

Experimental results under the condition of sudden change of reference value (PD-ILC, λP = 2, λD = 4) a Curve of speed step response. b Changing curve of the value of controller gain k0

It should be noted that, the control performance of traditional ILC control strategy is premised on the repeatability. The sudden change of the reference value is a kind of non-repetitive disturbance, which does not meet the premise of ILC strategies. When the reference value is changed suddenly, the steady-state error will appear with the traditional ILC system. But Fig. 9a shows that, there is no steady-state error in each step response. Moreover, the control performance is still gradually improved with the progress of iterative learning, which is not affected by the change of the reference value. The third step response inherits the learning effect of the first two step responses, and quickly approaches the desired control state. In Fig. 9a, the third step response has reached the desired control state specified by the reference model. The subsequent three step responses are maintain in this state, and the four curves coincide with each other. The corresponding adjustment time is 0.1834s, which is the same as the adjustment time of the sixth step response in Fig. 6a with the same reference value of 30r/min. Figure 9b indicates that the proposed control strategy can automatically adjust the value of the control gain k0 to adapt to the change of reference value and maintain good control performance.

As a contrast, Fig. 10 shows the experimental results of the traditional P-type iterative learning controller. In Fig. 10, the reference value of the first and second step responses is 30r/min. And then, from the third time on, the reference value suddenly changes to 90r/min. Here, the P-type ILC control law is specified as

$$u_{k} (i) = u_{k - 1} (i) + 0.4e_{k - 1} (i)$$
(16)
Fig. 10
figure 10

Experimental results under the condition of sudden change of reference value (traditional ILC)

After changing the reference speed to 90 r/min in the third response process, the traditional ILC failed to make corresponding changes immediately. In the third response process, the motor's speed under steady-state is still 30r/min, rather than the expected 90r/min. In the following several response processes, the steady-state error still exists, but the value of error is decreasing. That is to say, the response of traditional ILC to this disturbance has a significant delay.

The above experimental results show that the proposed control strategy can not only utilize the iterative learning ability to significantly improve the performance of MRAC, but also has good robustness to the non-repetitive disturbance of the reference value’s sudden change. Its performance is also better than the traditional ILC strategies.

4.3 Experiments Under Load

The above experiments are carried out under no-load condition. In the following, different loading experiments are carried out to further verify the adaptive ability of the proposed control strategy to load disturbance. During the next experiment, the motor is continuously applied with 0.5Nm load. The experiment is carried out by using PD-ILC controller. In addition, the values of control parameters and reference model are the same as the experiment shown in Fig. 6. The experimental results are shown in Fig. 11. Due to the heavy load, the step responses of motor’s speed in Fig. 11a shows a drop in the initial stage. However, under the action of ILC controller, the rising rate of step response is still accelerated successively. Moreover, none of these responses has overshoot.

Fig. 11
figure 11

Experimental results of improved indirect iterative learning MRAC speed control (PD-ILC, λP = 4, λD = 8, load 0.5Nm) a Curve of speed step response. b Changing curve of the output of ILC controller. c Curve of the current amplitude. d Curve of the frequency of driving voltage

In order to illustrate the regulation process of the proposed controller on the operation of the motor, Fig. 11c shows the curves of the amplitude of the motor's phase current. These curves show that the controller increases the phase current at the beginning of the response process to obtain a faster response. Figure 11d shows the frequency of the motor's driving voltage. Frequency is the output of the controller. The value of frequency changes faster and faster with the iterative learning process, resulting in the response speed gradually accelerating.

In order to further verify the anti-disturbance ability of the proposed control strategy, the loading process is changed. In the six iterative learning control processes, a load of 0.5Nm is applied to the motor in the second and fourth process, and the remaining four control processes are no-load. To simplify the description, this loading method is referred to as 2/4 loading below. The experimental results are shown in Fig. 12. The step response still has no overshoot.

Fig. 12
figure 12

Experimental results of improved indirect iterative learning MRAC speed control (PD-ILC, λP = 4, λD = 8, the second and fourth step response load 0.5Nm)

Table 1 compares the adjustment time of the three groups of experiments in Fig. 6 under no load, Figs. 11 and 12 under load. The adjustment time of the sixth step response is the same 0.1834s under no-load and the two different loading conditions. It shows that the proposed control method has good robustness to load disturbance.

The steady-state values of k0 are also given in Table 1. Under load conditions, a larger control quantity is required to resist the influence of load, so as to maintain control performance. Because the value of k0 is directly related to the magnitude of the control quantity (Eq. (5)), the different changes in the value of k0 automatically adjusted by ILC controller can more clearly reflect the anti-disturbance ability of the proposed control strategy. The data given in Table 1 shows that the steady-state value of k0 corresponding to each step response under continuous loading shown in Fig. 11 is greater than that in Fig. 6 under no load. The reason for this difference is that the amplitude of Δyrk shown in Fig. 11b is greater than that of Fig. 6b. On the other hand, in Fig. 12, the steady-state value of k0 for the second step response is greater than that for the third step response, and the steady-state value of k0 for the fourth step response is the maximum value of all six step responses. It shows that the proposed control strategy can make timely and appropriate response to the sudden load disturbance.

As a contrast, Fig. 13 shows the experimental results of the traditional P-type iterative learning strategy. The experimental conditions are the same as those in Fig. 12. It can be seen from Fig. 13 that in the case of traditional ILC, there are steady-state errors in the second and fourth step responses. Therefore, compared with the traditional ILC controller, the proposed control strategy is more robust.

Fig. 13
figure 13

Experimental results of traditional ILC (the second and fourth step response load 0.5Nm)

These experimental results show that the proposed control strategy can increase the adaptive ability of MRAC system. The experimental results under different speeds and different loads indicate that, the proposed method has good robustness to non-repetitive disturbances.

5 Conclusion

These experimental results show that the proposed control strategy can increase the adaptive ability of MRAC system. The experimental results under different speeds and different loads indicate that, the proposed method has good robustness to non-repetitive disturbances.

The learning ability of ILC controller is utilized to improve the robustness of MRAC to the model deviation. Even if a simplified model is used to design the controller, the good control performance that meets expectations can still be obtained through iterative learning. Moreover, the proposed control method has a simple structure, a small amount of online calculation, and is suitable for engineering applications with demanding cost requirements.