1 Introduction

DC Motors are one of the most popular actuators for position control applications in the industry. The need for effective and efficient position control in several applications has led to the development of a large number of control algorithms over the years. PD algorithm continues to be one of the most popular control algorithms due to its simplicity and robustness. However PD requires manual tuning and retuning for system parameter changes. Several sophisticated digital controllers which are adaptive to plant variations, have been studied in literature. However the performance of these controllers is highly depend upon the mathematical model used to describe the system to be controlled. Also the implementation of these techniques becomes difficult with increasing complexity of the system. The problems faced by various adaptive control methods have been outlined in [13].

The field of controls has taken great interest in adapting the techniques present in nature with an emphasis on the human brain over the past several decades. A large number of control techniques have been developed on concepts borrowed from the functioning of the brain [20]. The adaptation of the human brain in terms of both structural and functional plasticity with learning has been well documented over the years and this plasticity of the human motor control (HMC) is of importance from the controls point of view since this includes the use of both the sensors and the effectors of the body [46, 9, 16, 21]. The anatomical concepts of brain plasticity resulted in the development of neural networks [20, 21, 33]. However, increased plant complexity requires equally complex hardware for effective control [2325]. Even with the complex neural network involved in HMC, it has been observed that the reaction time to stimulus increases with an increase in the number of various possible responses [23]. The internal models developed for the study of HMC which help in estimation and prediction have resulted in the emergence of concepts such as the Kalman filter as an example of a predictor [1921]. However these techniques require an elaborate mathematical model of the plant for accurate control [2325].

The functional concepts of HMC are extremely relevant from the controls point of view. HMC relies on the acquisition of motor skills gradually through practice and by interacting with the system to be controlled in the intended environment [7, 8]. The adaptability of HMC is seen in its capacity to compensate for environmental changes [4, 8]. The ultimate capacity of HMC is that tasks are learned to the extent where they can be effortlessly performed without thought reducing closed loop resulting in a ‘quasi-open-loop’ control structure [4, 8]. With the quasi-open-loop approach, after every action the system response is only monitored and compared with the reference response developed with previous experiences. The action of the controller is modified only if the obtained response deviates. In contrast, conventional control systems are tightly close looped in which every feedback sample is used to generate or change the control action to the plant. HMC is highly dependent on direct interaction with the system for learning and this leads to structural changes in the cortex [8, 1618, 21, 22]. This has been confirmed through several experiments over the years [1115].

The prediction mechanism of HMC is another remarkable concept which has been documented in [10]. Learning skilled motor behaviour and controlling unknown mechanical systems relies on learning to predict the behaviour of the system for a given input and learning to predict the required input for the desired output [10]. The learning of these two processes is achieved through direct interaction with the system and it is seen that prediction of the control action for a required system response precedes control in motor learning [10]. Learning involves a new mapping between the desired consequence and the motor commands, while the ability to quickly learn prediction also plays an important role in learning to control and increasing efficiency of control [7, 10]. The various actions performed along with their consequences are mapped in memory as experiences depending on the nature of control [4, 7, 9, 17, 18].

Inspired by the concepts of HMC, a new type of simple, effective and robust controller named experience mapping based prediction controller (EMPC) has been designed [35, 36]. Similar to HMC, EMPC directly interacts with the system to be controlled, and develops experiences. These experiences which consist of actions for achieving various system responses are used to develop a knowledge base through an initial process. The initial learning does not need a mathematical model of the system for effective learning. The developed knowledge base is used by EMPC to control the system based on the demand. Similar to HMC, EMPC operates in a quasi-open-loop mode while controlling the system. Deviation of the system response when the control action is applied due to a change in system parameters triggers EMPC to go into on-job re-learning (OJR) mode to update its experiences and adapt to the changes. OJR is also accomplished only through new experiential learning and not with the help of a mathematical model of the system.

EMPC was developed for a DC motor based precision positioning system [35, 36]. The simulation and the experimental studies show that the EMPC achieves accurate position control for step and dynamic demands. A comparative study of performance of the position system based on the EMPC, PD and model reference adaptive controller (MRAC) in [35, 36] shows that the EMPC performs better. EMPC presented in [35, 36] uses a method of action where the voltage applied to the motor always generates torque to assist the rotation of the motor and not oppose it. We call this method of action as unipolar control action. In this paper, we explore position control systems where there is a need for bipolar control action. In Sect. 2, we look at the basis of the EMPC developed for unipolar control action and propose a new learning technique which improves the performance of the controller for small position demands. In Sect. 3, we look at the use of bipolar control action. The accuracy and performance of EMPC is studied with bipolar action and its adaptability studied for changes to system parameters. Section 4 looks into the experimental results of a practical position control system and compares the performance of bipolar and unipolar control actions using EMPC.

2 Experience mapping based prediction controller (EMPC)

2.1 Experience mapping

The core concept of HMC lies in the process of developing knowledge of the plant in terms of experience [4, 7, 9]. In humans it is seen that learning is achieved with bounded initial conditions and known patterns of input [6]. Therefore EMPC achieves learning through actively interacting with the system with well defined initial conditions and an action pattern. The system responses to these actions are stored in memory to create experience maps. The knowledge base created using these experience maps is termed experience mapped knowledge base (EMK).

The principle unipolar action and the corresponding system response is shown in Fig. 1 [35, 36]. EMPC utilizes rectangular control inputs with constant amplitude \(A_m\) and time duration \(T_{on}\) for the development of EMK. The time duration \(T_{on}\) is changed resulting in different system responses which are used as experiences during initial learning. The initial condition of steady state is ensured before the application of this control action. In a DC motor position control system, this is when the motor has zero velocity and zero acceleration.

Fig. 1
figure 1

Position control with unipolar and bipolar control action

Consider any stable nth order Type 1 system with transfer function \(H(s)\) with \((n + 1)\) poles (\(p_i\) where \(1\ge i\ge n\) and \(p_{n+1}=0\)) and \(m\) zeros (\(z_i\) where \(1\ge i\ge m\)) such that \((n + 1)\ge m\) which can also be expressed as

$$\begin{aligned} H(s)= \frac{((s-z_1 )(s-z_2 )\ldots (s-z_m))}{(s(s-p_1 )(s-p_2 )\ldots (s-p_n))} = \frac{Z(s)}{P(s)} \end{aligned}$$
(1)

When the steady state of the system is considered as the fixed initial conditions for learning and for a rectangular input of time duration \(T_{on}\) and maximum allowed amplitude \(A_m\), the output of the system \(Y(s)\) is given in Eq. 2.

$$\begin{aligned} Y(s) = \frac{A_m \times \left( 1-e^{(-s \times T_{on})}\right) }{s} \times H(s) \end{aligned}$$
(2)

Assuming constant system parameters and fixed zero initial conditions, the steady state output \(Y\) is given by Eq. 3.

$$\begin{aligned} Y = \frac{b_0}{a_0} \times A_m \times T_{on} \end{aligned}$$
(3)

where \(b_0 = \prod _{i=1}^{m}(-z_i)\) and \(a_0 = \prod _{i=1}^{n}(-p_i)\)

or

$$\begin{aligned} Y = K_s \times A_m \times T_{on} \end{aligned}$$
(4)

where \(K_s = \left( \frac{b_0}{a_0}\right) \) is the system constant of proportionality.

From Eq. 4 it is clear that for any Type 1 system with constant parameters the development of EMK can be achieved by finding the system proportionality constant \(K_s\) in a single attempt. A rectangular input of some time duration \(T_{on}\) which can be heuristically chosen is applied to the system ensuring zero initial condition. Since the amplitude of the rectangular input \(A_m\) is fixed at the maximum specified value for the plant, the fastest transient response is achieved. The knowledge of \(K_s\) can be used to predict the value of \(T_{on}\) required to achieve any demand of the system output. We look at the application of this concept for the position control of DC motors.

The simplified transfer function of the DC motor based position control system is given in [26] as

$$\begin{aligned} \frac{\theta (s)}{V_i(s)} \!&= \! \frac{K}{L_aJ_ms^3 + (R_aJ_m + B_mL_a)s^2 + (K_bK_i \!+\! R_aB_m)s}\nonumber \\ \end{aligned}$$
(5)

The transfer function in Eq. 5 however does not take static friction and stribeck friction into account. In practical systems the presence of above factors directly influence the system response. EMK is developed by directly interacting with the system and through Eq. 4 we realize that a single demand and steady state output value pair is sufficient to obtain knowledge of \(K_s\) and this can be used for control. However, this knowledge is not sufficient to control a practical position system due to the nonlinearities like static friction and stribeck friction and uncertainties present.

Simulation of a coreless DC motor based position control system for different static friction loads is done to study this. A coreless motor model 28D11-219E specifications are used for this purpose [37]. We observe that the presence of static friction results in a non-linear relation between the time \(T_{on}\) and \(P_{total}\). This is shown in Fig. 2. Practical position control of DC motors also requires current limiting circuit for armature protection. The current limiting arrangement in the power supply introduces non-linearity leading to further deviation from the ideal.

Fig. 2
figure 2

Plot of \(P_{total}\) v/s \(T_{on}\) for different values of static friction

2.2 Initial learning

To overcome the problems due to non-idealities in a practical system, EMK is developed using initial learning as described in [35, 36]. Here the duration of the rectangular pulse that should be applied in terms of \(T_{on}\) values for different values of \(P_{total}\) of the position control system is obtained instead of a single input–output recording as proposed before to counter the non-linearity of the relation. Values of \(T_{on}\) is recorded for equally spaced values of \(P_{total}\) as in [35, 36]. This is achieved by using a trial and error method in [35, 36].

In [35, 36], the EMK is developed by dividing the maximum possible demand of the considered system into equal intervals and learning the corresponding values of \(T_{on}\) and \(P_{on}\) through the trial and error method. However it is seen clearly in Fig. 2 that the relation between \(T_{on}\) and \(P_{total}\) is more non-linear for small values of \(T_{on}\) and becomes less non-linear for larger values. This is due to the fact that the effects of discontinuous and non-ideal elements are more prevalent in this region. Hence, in the region of smaller \(T_{on}\), learning with shorter intervals of \(T_{on}\) could lead to improved prediction accuracy. Further, the trial and error method of developing EMK in [35, 36] is time consuming. Hence we propose an alternate method which overcomes both these problems.

2.3 Velocity based initial learning procedure

The angular velocity of the system which can be obtained by taking the derivative of the position is used in this method. The maximum angular velocity (\(\omega _{max}\)) is found by switching on the motor and allowing the angular velocity to settle. \(\omega _{max}\) is divided into \(n\) equal intervals to get \(n\) different \(\omega _{req}\), where \(n\) is chosen heuristically dependent on the time available for learning and memory considerations. \(n\) is heuristically chosen to be 80 in our case. The system is given a rectangular input till the required angular velocity \(\omega _{req}\) is achieved and time \(T_{on}\) required is noted. The value of \(P_{on}\) which is the displacement of the motor during \(T_{on}\) is also noted. At the end of the rectangular pulse, the motor is allowed to come to rest and the corresponding steady state output \(P_{total}\) is also recorded against \(T_{on}\). This is done for all \(n\) values of \(\omega _{req}\). This overcomes the problem of multiple attempts required by the trial and error method. Then, the smallest value of \(T_{on}\) from the \(n\) recordings obtained is further subdivided into \(m\) values. Rectangular pulses with these new values of \(T_{on}\) are applied to the motor and the corresponding values of \(P_{on}\) and \(P_{total}\) are recorded. \(m\) is heuristically chosen as 20 resulting in an EMK with 100 values overall.

2.4 Iterative predictive control—time based control (TBC)

EMPC achieves control by predicting the input to be applied to the system for a given demand based on past experiences. Here, the duration of the rectangular input \(T_{on}\) is to be predicted. For a demand \(D\), this is done by using the experiences stored in EMK using simple linear interpolation if necessary. A rectangular input with a duration of the predicted \(T_{on}\) is applied to the position control system at initial condition when the motor is at rest. The motor is allowed to coast to a halt after the application of the control action. At the end of the predictive action, any error is considered as the new demand and the process is repeated again to ensure zero steady state error is achieved. Here, since control is achieved by predicting and varying the value of \(T_{on}\), this is termed time based control (TBC) [35, 36].

2.5 Position based control

If \(P_{on}\) is used instead of \(T_{on}\) to achieve position control, it is termed as position based control (PBC) [35, 36]. In this case, the rectangular input is applied to the motor till the motor reaches the required position \(P_{on}\) which is predicted using EMK before the application of the control action. Compared to TBC the errors due to small system parameter changes are reduced in PBC since it ensures that the rectangular pulse is stretched or compressed accordingly till \(P_{on}\) is reached. Since PBC ensures that the rectangular input action is maintained till \(P_{on}\) is reached, the errors in the 1st phase are removed. During the second phase of control, when the motor coasts to a halt it may settle at a different position other than the predicted position due to the parametric variations in the system [35, 36]. However, the limited resolution of position feedback reduces the effectiveness of PBC for small demands. Hence a combination of TBC and PBC is used to achieve accurate position control. In either case, position control is achieved through iterative predictive action. The response of the iterative predictive control is simulated and shown in Fig. 3 where multiple iterations are used if necessary to achieve zero steady state error. The error in the first iteration may be due to the small system parameter changes or due to minor prediction errors. A zoom-in of the step response seen in Fig. 3a is seen in Fig. 3b which clearly shows the iterative predictive action used to achieve zero steady state error.

Fig. 3
figure 3

a Simulated response of EMPC for different step demands b zoom of a part of a showing iterative action

EMPC uses PBC to reduce the effect of parameter changes and uncertainties for large demands and TBC for small demands to reduce steady state error. However, it is interesting to observe that the performance of EMPC depends upon the quality of initial learning, similar to the HMC. The advantage of the velocity based initial learning technique explained before compared to the trial and error initial learning technique described in [35, 36] is seen in Fig. 4. The iterative predictive control action is used in both the cases for control after the development of EMK. The performance of EMPC in both the cases is similar for large demands as seen in Fig. 4a, c since the resolution of the experiences developed is good for large demands irrespective of the Initial Learning method used. However, for the small errors at the end of the first iteration and also for small demands, it is clear that the use of angular velocity for sampling and finer division of small demands range instead of having uniform division over entire demand range result in significantly improved settling times as seen in Fig. 4b, d. Although, the previous method still ensures zero steady state error through iterative action, the errors in prediction due to the uniform division of range of demands during the development of EMK result in larger settling times. It must be noted that the step response shown in Fig. 3 also uses EMK developed using the velocity based initial learning method.

Fig. 4
figure 4

Position control with two different learning techniques. a Velocity based initial learning technique with (b) zoom in. c Trial and error initial learning technique described in [35, 36] with (d) zoom-in

The iterative predictive control action approach of EMPC either using TBC or PBC results in a deviation from the tight-closed-loop control approach of conventional control systems. Prediction of the control action based on prior learning and experiences of EMK is carried out and no correction of action is made once the predicted action is applied. This utilizes the action without conscious thought approach of HMC. Feedback at the end of the iteration is used to assess any error and perform the next iterative predictive control. This generation of a new action based on the feedback only at the end of the system settlement to the required initial condition and the reliance on past experiences and prediction control results in a quasi-open-loop control approach which is unique to EMPC among engineering controllers.

2.6 On-job relearning

Adaptation to changes in system parameters is introduced in EMPC through OJR [35, 36]. At the end of every iterative predictive action, the ratio of the predicted steady state output to the measured system steady state output is measured as parameter correction coefficient (PCC) and is used to correct future predictive actions and adapt to the changes. This is achieved using the Eqs. 68 where \(PM\) is the predicted parameter. \(PM\) is \(T_{on}\) for TBC and \(P_{on}\) for PBC. This adaptation technique using OJR retains the quasi-open-loop control structure since the error seen due to the inaccuracy in prediction or due to system parameter changes is used as feedback only at the end of the iterative predictive action. The feedback acts as new experiences similar to HMC and is used for future adaptation.

$$\begin{aligned}&PCC = \frac{Predicted\ P_{total}}{Measured\ P_{total}}\end{aligned}$$
(6)
$$\begin{aligned}&New\ PM = Predicted\ PM \times PCC\end{aligned}$$
(7)
$$\begin{aligned}&PCC = \frac{(new\ PCC \times W) + PCC}{W+1} \end{aligned}$$
(8)

The step response of EMPC with unipolar control action is provided in Fig. 5 along with the step response of a MRAC based position control system. The details of the MRAC system used to obtain the response are provided in Sect. 3. The response of EMPC has also been studied and compared with MRAC in detail in [35, 36]. The adaptation capabilities of EMPC using OJR has been tested both in simulation and implementation for changes in various system parameters and compared to the performance of MRAC in [35, 36]. The performance of EMPC using unipolar control action for changes in armature resistance and applied terminal voltage has also been shown along with that of MRAC in Figs. 11, 12, 17 and 18.

3 Use of bipolar action

The position control of DC motors is achieved in [35, 36] using unipolar action with EMPC. However there is a limitation to the unipolar action based control. In systems where an effective active load torque as seen by the motor is sufficiently large, rotation of the shaft may be caused even when the motor terminal voltage is zero and this will also exist during the second phase of the unipolar action. Such applications require that voltage be applied to the motor to generate opposing torque to bring the shaft to a halt. The control technique where active braking is used to quickly bring the motor shaft to a halt is termed here as bipolar control action.

We explore the possibility of using bipolar action for position control with current limits for armature protection. In the first phase, a step input voltage is applied to the motor for time \(T_{on}\) which is similar to the first phase of unipolar control action as explained in [35, 36]. This is shown in Fig. 1. In the second phase, after time \(T_{on}\), a negative step voltage is applied to the motor terminals in bipolar control. The negative voltage is applied to generate active braking to rapidly bring down the motor velocity to zero and then the terminal voltage is made zero. This is in contrast to the unipolar control action, where during the second phase, the motor speed is allowed to reach zero due to the friction torque naturally present in the system.

In the case of bipolar action, the relationship between \(Y\) and \(T_{on}\) is non-linear even for ideal systems. However, for EMPC all the non-linearities present in a practical position control system are immaterial, as it develops EMK purely based on experiences using Initial Learning. The EMK is developed for the bipolar control input action using the velocity based initial learning technique as explained earlier. The immediate advantage of the use of bipolar control action with EMPC is seen in the faster settling time which is seen in Fig. 5.

Fig. 5
figure 5

Position control with unipolar and bipolar control action EMPC and MRAC

EMK is developed for bipolar control in simulation for inertia \(I = 4.8e-5\,\mathrm{{kg\,m^2}}\) and static friction torque F = 30 m Nm with an incremental encoder with an effective resolution of 8,192 pulses per revolution used to obtain position feedback. Another EMK is developed for the same system for unipolar control action. The step performance of both unipolar and bipolar control of EMPC with a single iteration of PBC is studied for both an under-damped and over-damped system and the response is shown in Fig. 6. The inertia is increased to \(I = 6.7e-5\,\mathrm{{kg\,m^2}}\) to create an under-damped system, while the friction is increased to F = 50 m Nm to obtain an over-damped system. The results indicate an improved performance of bipolar control action in terms of final error in both the cases.

Fig. 6
figure 6

Position control with unipolar ((a) and (b)) and bipolar control action ((c) and (d)) for step change in system parameters. \(P_{on}(unipolar) = 3,005\ pulses, P_{on}(bipolar) = 5,844\ pulses\). \(P_{on}\) is indicated by the green dashed line in all the sub-figures. (Color figure online)

In the second phase of bipolar action the distance moved is less compared to unipolar case, due to the increased braking effect as seen in Fig. 1. Also due to this the value of \(P_{on}\) is larger for the bipolar action compared to the unipolar action as seen in Fig. 6. It must be noted that the EMKs developed for the unipolar and bipolar control actions are independent of each other and as a result the predicted \(P_{on}\) for the same value of \(P_{total}\) is different for the unipolar and bipolar methods of control. Since PBC ensures that a positive step voltage is applied to the motor till \(P_{on}\) is reached, any errors due to a change in the system parameters are mainly seen in the second phase of the control action. As a result, we see that in Fig. 6, the error is less for both the under-damped and over-damped systems in the case of bipolar action.

The use of bipolar action in EMPC significantly reduces errors due to changes in system parameters. However, the use of new experiences for adaptation as seen in HMC can lead to further improvement in control. The OJR technique explained in [35, 36] and in Sect. 2 using Eqs. 68 is also implemented with the bipolar control action to further improve accuracy and reduce errors.

MRAC has developed as one of the popular controllers in research for various applications [2830]. Several gain tuning methods like MIT Rule, Lyapunov technique etc. have been developed using the Model Reference approach for position control applications [31, 32, 34]. [34] proves that the advanced MRAC achieves better position control for load changes compared to the conventional PID controller. Hence, in this paper the performance of EMPC with bipolar control action is compared with MRAC along with the comparison with EMPC which uses unipolar control action. MRAC for the position control of DC motors is proposed, explained in detail and tested in [27]. The transfer function for the reference model Hm(s) is given below.

$$\begin{aligned} H_m(s)= \frac{1,225}{(s^2+70s+1,225)} \end{aligned}$$

The poles of the transfer function are chosen through trial and error to obtain the fastest possible transient response with little overshoot for Inertia \(I = 3e-5\,\mathrm{{kg\,m^2}}\) and static friction torque \(F = 20\,\mathrm{{m\,Nm}}\). The value of \(\alpha \) is chosen to be 10 as suggested in [27] for best possible adaptation. An increase in \(\alpha \) leads to reduced stability and an increase in the overshoot in the response. The step responses for unipolar and bipolar EMPC and MRAC for the system parameters stated above are shown in Fig. 5. It is clear that EMPC with bipolar control action provides the fastest possible transient response and provides a critically damped response with zero steady state error.

The performance of EMPC using bipolar control action is compared with the performance of MRAC for step change of different system parameters. The system inertia \(I = 4.8e-5\,\mathrm{{kg\,m^2}}\) and static friction torque \(F = 30\,\mathrm{{m\,Nm}}\) is maintained throughout the course of the simulations. The setup shown in Fig. 7 is used for both simulation and experiments. The shaft of the motor M whose position is to be controlled is coupled to the shaft of another motor Mt through the shaft of an electric load brake. Mt is used to apply the required external active load torque T through a controlled current source It. A H-bridge is used to drive the series combination of the motor armature and external variable resistance R. The H-bridge supply voltage V can also be changed. The external resistance R in series with the armature is used to introduce change in armature resistance as seen from the controller point of view. Prior to the simulation of position control, EMK is developed for the system with inertia \(I = 3.0e-5\,\mathrm{{kg\,m^2}}\) and static friction F = 20 m Nm with \(T = 0\), \(R = 0\) and \(V = 24 V\). MRAC is also allowed to adapt its gain parameters for this system.

Fig. 7
figure 7

Physical scheme of DC motor position control setup

3.1 Change in active load torque T

The simulated step responses for changes in the active load torque T for EMPC with bipolar control action and MRAC is shown in Fig. 8. The magnitude of T is greater than the static friction torque of the system. As a result the motor shaft freely rotates even in the absence of voltage applied to motor M. This requires bipolar control action and hence unipolar action EMPC is not simulated for these conditions.

Fig. 8
figure 8

Simulated response with changes in active load torque T with zoom in of dotted rectangle shown in Fig. 9

Fig. 9
figure 9

Zoomed portion of the dotted rectangle of Fig. 8 showing the response of EMPC for disturbances created by the active load torque T

Figure 8 shows a significant difference in the performance of the two controllers. A step change in the applied external torque T results in some overshoot in the step response of EMPC. This is due to the quasi-open-loop structure of EMPC where predictions are made based on past experiences and no corrective action is taken till steady state is achieved. However, the iterative predictive control approach ensures that these errors are reduced. Further the use of OJR removes all such overshoots by the second step change in demand and ensures that a critically damped response is achieved in all the cases. The presence of the external active load torque constantly creates disturbances and any error due to this is corrected to ensure that the required position is maintained within a margin of error. This is as shown in Fig. 9 which is a zoom in of a portion of Fig. 8. On the other hand, MRAC is unable to adapt to the changes in T and progressively deviates further from the required response. The transient response of EMPC using the quasi-open-loop control approach is better than that of MRAC in terms of rise-time, overshoots and oscillations.

3.2 Change in armature resistance

The simulated step responses of EMPC with unipolar and bipolar control and MRAC for step changes in the value of R are shown in Fig. 10. It is seen that EMPC performs better than MRAC irrespective of the control action used. The difference in performance is significant for \(R = 30\) where MRAC completely fails to adapt and has large overshoots in the response. MRAC fails to attain steady state between the changes in demands. The advantage of the use of the bipolar control action over unipolar is seen in the reduction in the overshoots and oscillations. Although both the unipolar and bipolar control methods use the quasi-open-loop control methods, the use of the bipolar method results in reduced errors due to errors in prediction.

3.3 Change in H-bridge supply voltage V

The simulated performance of EMPC and MRAC for step changes in the H-bridge supply voltage V is shown in Fig. 11. MRAC performs much better for changes in V compared to its performance for changes in T and R. EMPC performs better in terms of steady state error and the use of bipolar reduces overshoots and achieves faster transient responses and faster adaptation.

Fig. 10
figure 10

Simulated response with changes in resistance R

Fig. 11
figure 11

Simulated response with changes in terminal voltage V

Fig. 12
figure 12

Simulated response with changes in active load torque T with zoom in of dotted rectangle shown in Fig. 15

A reference model with a much larger time constant than that of the plant to be controlled can be used to improve the adaptation of MRAC for changes in the system parameters. This is as suggested in [27]. This can be used for critical systems where overshoot is unacceptable and good adaptation is more important than a fast transient response. A slower reference model as given below is tested and used for MRAC.

$$\begin{aligned} H_m(s) = \frac{400}{(s^2+40s+400)} \end{aligned}$$

3.4 Initial sampling technique

To adapt to systems where overshoot is to be avoided a method called ‘initial sampling’ is proposed for EMPC. In such systems, for every change in demand, when the motor is switched on as before, the system response is sampled when the motor reaches 20 % of the required demand D which is chosen heuristically. The time taken to reach the position (0.2 \(\times \) D) is measured. The time required to reach the position (0.2 \(\times \) D) is also predicted using EMK as \({T_{on}}_{(p)}\) with Eq. 9.

$$\begin{aligned} {T_{on}}_{(p)} = \frac{(({T_{on}}_1 - {T_{on}}_2) \times ((0.1 \times D) {P_{on}}_2))}{({P_{on}}_1 - {P_{on}}_2)} + {T_{on}}_2 \end{aligned}$$
(9)

where \({P_{on}}_1\ge (0.2 \times D)>{P_{on}}_2\) and \({T_{on}}_1\) and \({T_{on}}_2\) are corresponding values for \({P_{on}}_1\) and \({P_{on}}_2\) respectively in EMK.

If the measured time varies from the predicted time \({T_{on}}_{(p)}\) by more than the acceptable value, then a negative step voltage is immediately applied to the motor till the angular velocity reduces to zero, to avoid any possible overshoot. This is chosen as 5 % heuristically for testing. After the motor settles after the second phase of bipolar control, OJR can be used to adapt EMPC to the new parameters. The predicted value \({T_{on}}_{(p)}\) is also adapted appropriately using Eq. 10. This ensures a fast response after adaptation. This is however not the case with MRAC, where the response of the system remains slow throughout irrespective of the adaptation or parameter values.

$$\begin{aligned} \textit{Adjusted}\ T_{on} =\frac{{T_{on}}_{(p)}}{R} \end{aligned}$$
(10)

The response of EMPC with OJR and initial sampling is compared to that of EMPC with OJR and MRAC system with the slower reference model for changes in external active load torque T, series resistance R and the H-bridge supply voltage V in Figs. 12 ,13, and 14, respectively. In all the cases where initial sampling technique has been used in the 1st phase, OJR is used at the end of the iterative predictive action for adaptation. Further only bipolar control action is used for comparison. MRAC shows slight improvement in the response for changes in T and R in terms of reduced overshoot and settling times. However it fails to achieve a critically damped response. The response of MRAC in terms of adaptation remains good for changes in V. EMPC with initial sampling performs better than MRAC in terms of response time, steady state error and reduced overshoot. In most cases, the use of initial sampling completely removes overshoot. Even in cases where overshoot is not completely removed, the use of initial sampling significantly reduces the magnitude of the overshoot. The response time of bipolar action EMPC with initial sampling is slightly slow only in the case of a change in the system parameters. This is shown by zooming in on the response of Fig. 12 in Fig. 15. The response time becomes fast again after adaptation which is not the case with MRAC.

Fig. 13
figure 13

Simulated response with changes in resistance R

Fig. 14
figure 14

Simulated response with changes in terminal voltage V

Fig. 15
figure 15

Zoomed portion of the dotted rectangle of Fig. 12 showing the response of EMPC with initial sampling

Fig. 16
figure 16

Experimental response with changes in active load torque T

Fig. 17
figure 17

Experimental response with changes in resistance R

4 Experimental results

Position control of a DC motor using EMPC was carried out using a coreless DC motor whose specifications were used for simulation. A coreless motor 28D11-219P \((M_t)\) is used for the application of the active external torque [37]. The required external active load torque T is applied by maintaining the current through the armature of \(M_t\) at the appropriate value. The power supply to the H-bridge used for the motor \(M\) has a current limiting circuitry to prevent large currents flowing through the armature during bipolar action. The use of a simple current limiting circuitry introduces further non-linear elements into the system which were not present in the simulation model. EMK is developed for \(I = 3.0e-5\,\mathrm{{kg\,m^2}}\) and F = 20 m Nm for both unipolar and bipolar control actions. The values of I and F are not changed during the experiments.

The performance of EMPC with bipolar control action with and without initial sampling for changes in T, R and V are shown in Figs. 16, 17, and 18, respectively. The performance of EMPC with unipolar control action is only provided for changes in R and V in Figs. 17, 18, respectively. EMPC with unipolar action is not attempted for changes in T, since the magnitude of T is greater than the static friction torque F. In all the cases, the performance of EMPC is seen to match the simulated results. The experiential learning method of EMPC ensures that the zero steady state error is achieved even with extra practical non-idealities. Further the use of bipolar control action achieves fast rise times and reduced overshoots and oscillations. EMPC is able to adapt well with OJR to the different changes in system parameters and provide a consistent performance. The use of initial sampling further reduces overshoots with a slightly slower initial transient response.

Fig. 18
figure 18

Experimental response with changes in terminal voltage V

5 Conclusion

The experiential learning method of EMPC ensures that EMK is developed in the presence of the non-linerities introduced due to the bipolar control action and other system non-idealities present in a practical position system ensuring accurate prediction and control. The velocity based initial learning method presented in the paper for the development of EMK improves the performance of EMPC for small demands and achieves faster settling times. The inherent nature of the bipolar action results in faster response times and reduced errors with system parameter changes compared to unipolar action. Bipolar control action continues to use the quasi-open-loop control approach of EMPC which is unique among engineering controllers.

The performance comparison of EMPC using both unipolar and bipolar control actions with the popular MRAC for changes in external active load torque, armature resistance and applied H-bridge supply voltage shows that EMPC performs better than MRAC. EMPC ensures zero steady state error under all conditions through iterative predictive action with OJR used for adaptation. The use of bipolar action results in the fastest possible rise time and with reduced oscillations and overshoots. The transient characteristics of the response of EMPC are better than that of MRAC in terms of rise time, overshoots and oscillations. Bipolar control in the presence of external active torque ensures good position control and EMPC is able to maintain the required position within a margin of error even when the magnitude of T is greater than the static friction torque. Initial sampling technique can be used in systems where overshoots are not tolerable. Although MRAC can also be developed with a slower reference model for such systems it is seen that EMPC continues to perform better than MRAC in terms of transient and steady state characteristics.

The results from experiments performed on a practical system correlate very well with the simulated results, although the use of a simple current limiting circuit introduces more non-linearities into the system. EMPC with bipolar control action provides a simple low cost architecture with reduced computations by inculcating the concepts of intelligent human motor control and can be effectively used for position control in industrial applications under various conditions.