Skip to main content

Online equivalent parameter estimation using BPANN controller with low-frequency signal injection for a sensorless induction motor drive


The development of a sensorless induction motor drive is elaborated in this paper with a unique feature of online estimation of equivalent circuit parameters (ECPs) during its running condition. The cases like temperature rise of the motor, change in drive speed due to sudden changes in its loading, or even in supply voltage are the sources of error in accurate ECPs evaluation. The indirect field-oriented control (IFOC) scheme is adopted in its controller to deal with these challenges. The drive controller is designed with a model reference adaptive system (MRAS) having two models—one is the plant model to estimate the ECPs during running conditions while the other one is the reference model. The H-G diagram method is utilized in the reference model to estimate the reference ECPs (ECPR) before starting without the need of performing any physical tests on the motor. During the transition period of the drive, the feedback signal is fed to the reference model to generate the ECPR. The technique of the backpropagation algorithm with an artificial neural network (BPANN) is utilized in the plant model while its weight and gain parameters are tuned with the reference ECPs. The Adam rule is utilized for fast convergence of the BPANN weights during the transition period while stator temperature and speed feedback enhance the overall accuracy in ECPs. A discrete-time low-frequency signal injection-based resistance assessment and sensorless speed estimation method to determine inductances are adopted for minimizing the ECPs errors. The results from MATLAB-based simulation and a hardware prototype using a DSPIC microcontroller with different running conditions show the efficacy of the proposed algorithm.


Nowadays IFOC schemes are generally adopted in ASD controllers of IM for better speed control, both during its transient and steady-state running [1]. Determination of accurate values of ECPs is essential based on which the time constant, slip speed relationship, d-q axis currents, etc., can be evaluated for successful implementation of IFOC. But during running conditions some of the ECPs, stator, and rotor resistances, in particular, are getting changed due to harmonics heating effect, skin effect, change in load, and under-voltage running reasons [2, 3]. These changes in ECPs are the sources of errors resulting in the inaccurate generation of gate triggering pulses and hence proper control of speed could not be achieved. In IFOC-based VSI-IM drive, accurate estimation of ECPs during steady-state and transient conditions is an age-old challenge. Moreover, high-speed DSP-based processors are also being utilized to process these ECPs data following the IFOC algorithm with the feedback of speed, temperature, loading conditions, etc. [4,5,6,7,8].

For estimation and optimization of IM parameters, various conventional methods like spectrum analysis and sinusoidal signal perturbation as well as intelligent control algorithms like GA, PSO and their hybrid form, bacterial foraging, anthill, GSA, etc., offline methods [9, 10] are proposed. These algorithms are easy to implement and support multi-objective optimization but the convergence time is large, which makes these algorithms incapable of online application. To overcome these problems, FLCs are used but the rule-based FLC requires all the possible variations of the motor condition. Hence FLC could not be able to produce a satisfactory result where all of this information is not available. Various other state observers like EKF, Luenberger observer and its extended form, polynomial regression method [11], etc., can estimate parameters efficiently but higher complexities make these algorithms time-consuming and becoming difficult for their real-time implementation even with DSP-based processors [3, 4].

In works [12,13,14,15,16], ANN algorithms using high-speed DSP-based processors are proposed as these algorithms perform faster than other heuristic ones. The efficiency of the ANN algorithm depends upon its structure, chosen optimizer, and training logic. Accordingly, RNNs, LSTM, CNNs, encoder-decoder-based networks, and GNNs are preferred [12]. But these types of network are either unsupervised or self-supervised type for which the training of these NN models is relatively slow and also needs extra memory to hold all the set of sampled data [12,13,14,15,16]. Besides, most of the NN, RNN, and GNN also suffer from exploding and vanishing gradient problems. To minimize these, some improved activation functions like Leaky ReLu [17] and Adam optimizers [18] are chosen to get a fast and stable convergence. However, the activation function like Leaky ReLu does not provide a satisfactory result with RNN.

For close-loop scalar or vector control methods, estimation of speed is very essential and any arrangement for speed sensor mounting makes the drive less reliable and costly. Without these sensors, it is possible to estimate speed from the feedback of stator voltage and current signals, but these processes are complex and their accuracy depends on motor parameters. Various methods have been proposed for sensorless speed estimation like slip calculation, EKF, Luenberger observer, AI, MRAS, sliding mode observers, flux linkage method, back emf method, etc. [19,20,21,22].

Temperature variation is the main cause of variation in the stator and rotor resistances. This may lead to inaccurate speed estimation and vector control logic may get detuned. Thus temperature correction of these resistances is essential. Various methods are proposed like dc signal injection, ac signal injection, Goertzel algorithm to the complex current and voltage space vectors, thermal observers, voltage disturbance observers, etc., to estimate the temperature or the stator resistance directly [23,24,25,26].

Getting motivated by these, the authors of this paper propose a model reference, the adaptive system-based plant model, where a BPANN-based efficient algorithm is adopted to estimate accurate equivalent circuit parameters. The ECPs are estimated both in pre-starting in off-line mode, during starting transient and running conditions as well in an on-line mode without the requirement of physical tests like no-load and blocked rotor tests. The BPANN-based online estimation scheme is adopted to consider any change in parameters due to changes in the running conditions like temperature variation which in turn makes the drive more accurate and efficient. Adoption of the Adam method [18] makes the tuning of the weight factors of ANN at a faster convergence rate such that this tuning is completed during the starting of the motor irrespective of the capacity of the motor. The H-G [27, 28] method is adopted for the evaluation of ECPR in the reference model during starting the transient period with the help of nameplate data [29] and the feedback signals of voltage and current. This ECPR is used to train the BPANN during motors starting transient period. Besides, for diagnosis purposes, a machine monitoring unit is also developed that interfaces with the DSP-based microcontroller and displays all the machine parameters, variables, and feedback values before and during running conditions. The proposed system has the following unique features: (i) The IFOC controller is broadly constituted with two models namely the reference model and the Plant model to generate ECPs independently. (ii) The ECPs have been generated accurately from MR using motor nameplate data and the H-G diagram method up to the starting transient period. (iii) The BPANN gain parameters of MP are getting tuned during the starting transient period. After then, ECPs are evaluated during the entire running condition of the motor. (iv) To maintain the accuracy in ECPs evaluation from MP, the estimation of motor resistance during running conditions as well as temperature using the SSI method as well as rotor speed using the sensorless scheme is adopted. (v) The various parameters during running conditions can be monitored from a remote GUI using its MMU module. This can also be used for diagnosis purposes.

The uniqueness of the proposed work is that an online accurate ECPs estimation scheme is developed with the help of a robust IFOC controller using BPANN based plant model along with their necessary corrections using feedback of sensorless estimated values of speed and motor temperature.

Proposed IFOC based induction machine drive

Equivalent circuit parameter model of IM

The steady-state per phase equivalent circuit of the IM referred to the stator side in the d-q reference frame is shown in Fig. 1 where Rs, Rr, Xs, Xr, Ls, and Lr represent the stator and rotor resistance, reactive inductances while Rm, Xc, and Lm represent core resistance, reactance, and mutual inductance, respectively. The equivalent impedance of the system is given by Eq. (1)

$$ Z_{{{\text{eq}}}} = \frac{{V_{{\text{s}}} }}{{I_{{\text{s}}} }} = (R_{{\text{s}}} + j\omega_{{\text{s}}} L_{{\text{s}}} ) + \frac{{\left( {\frac{{R_{{\text{r}}} }}{s} + j\omega_{{\text{s}}} L_{{\text{r}}} } \right) \times (j\omega_{{\text{s}}} L_{{\text{m}}} )}}{{\left( {\frac{{R_{{\text{r}}} }}{s} + j\omega_{{\text{s}}} L_{{\text{r}}} } \right) + (j\omega_{{\text{s}}} L_{{\text{m}}} )}} $$
Fig. 1
figure 1

Per phase equivalent circuit of IM in d-q frame

To study the various dynamic conditions during the running of the motor, the IFOC scheme is generally adopted. To implement IFOC, this steady-state per phase equivalent circuit is represented by dynamic equivalent circuit in the synchronously rotating d-q model as shown in Fig. 1, where the stator current Is is represented by (ids, iqs) and rotor current Ir as (idr, iqr), the stator and rotor fluxes by (ψds, ψqs) and (ψdr, ψqr), stator and rotor voltages by (vds, vqs) and (vdr, vqr). The synchronous speed is ωs and the rotor speed is ωr.

Proposed schematic for IFOC drive

The schematic diagram of the proposed IFOC of the VSI-IM drive, as shown in Fig. 2, has four major blocks—namely (i) power unit, (ii) control unit, (iii) sensor unit, and (iv) machine monitoring unit (MMU). The power unit is built with IGBTs in the H-Bridge configuration to provide the controlled power output to the IM. The control unit is built with a fast operating DSP microcontroller; the firmware of which estimates the proposed equivalent circuit parameter required to generate triggering pulses following IFOC algorithms with greater accuracy. The IFOC controller logics are described in detail in the following “The IFOC controller schematic” section to generate modulating signal corresponding to the SVM scheme. Accordingly, the generated triggering pulses are fed to the respective IGBTs through their proper gate driver circuit so that the desired speed of the IM can be achieved. To achieve better speed control, the feedback signals of voltage, current, and speed are fed to the IFOC logic. Thus, the sensor unit is equipped with voltage hall sensors for voltage sensing, a current hall sensor for current sensing, and an optical encoder for rotor speed sensing. To have a better understanding of the changes in the internal parameters of IM during ts running conditions, a PC-based data acquisition system is developed where the ECPs from IFOC is communicated serially. The MMU is a PC-based GUI to display, analyze and control various running states by collecting data from the microcontroller using serial communication. This state-of-the-art GUI is extremely helpful in designing and debugging the control algorithm, for initial training of single layer BPANN weight factors, etc. From this GUI, the desired speed can also be set.

Fig. 2
figure 2

IFOC based VSI-IM drive prototype model

The IFOC controller schematic

The adopted IFOC controller schematic with independent paths for the torque and flux control using orthogonal currents ids and iqs as shown in Fig. 3. The d-q stator currents as reference are generated from flux and torque flow paths using Eq. (2) and (3).

$$ \psi_{{\text{r}}} = L_{{\text{m}}} i_{{{\text{ds}}}}^{*} {, }i_{{{\text{ds}}}}^{*} \triangleq \frac{{\psi_{{\text{r}}} }}{{L_{{\text{m}}} }} , K_{1} = \frac{1}{{L_{{\text{m}}} }} $$
$$ T_{{\text{e}}} \simeq \frac{3}{2}\left( \frac{p}{2} \right)\frac{{L_{{\text{m}}} }}{{L_{{\text{r}}} }}\psi_{{\text{r}}} i_{{{\text{qs}}}}^{*} \triangleq \frac{3p}{4}\frac{{L_{{\text{m}}}^{2} }}{{L_{{\text{r}}} }}i_{{{\text{ds}}}}^{*} i_{{{\text{qs}}}}^{*} ,i_{{{\text{qs}}}}^{*} = \frac{{T_{{\text{e}}} K_{2} }}{{i_{{{\text{ds}}}}^{*} }},K_{2} = \frac{{4L_{{\text{r}}} }}{{3pL_{{\text{m}}}^{2} }} $$

where \(\psi_{{\text{r}}}\) is the rotor flux and Te is the electromechanical torque, p is the number of poles, K1 and K2 are the gains of the flux flow path and torque flow path, respectively. In IFOC, the ψqr = 0 and ψdr = ψr. The gain K3 is used to generate the ωsl following Eq. (4) which in turn helps to generate a unit vector for axis transformation as shown in Eq. (5)

$$ K_{3}^{*} = \omega_{{{\text{sl}}}}^{*} = \frac{1}{{T_{{\text{r}}} }}\frac{{i_{{{\text{qs}}}}^{*} }}{{i_{{{\text{ds}}}}^{*} }}, \, K_{3} = \omega_{{{\text{sl}}}} = \frac{1}{{T_{{\text{r}}} }}\frac{{i_{{{\text{qs}}}} }}{{i_{{{\text{ds}}}} }}, \, T_{{\text{r}}} = \frac{{L_{{\text{r}}} }}{{R_{{\text{r}}} }} $$
$$ \theta_{s} \triangleq \int {\omega_{s} dt} $$
Fig. 3
figure 3

Schematic of IFOC controller

As seen in Fig. 3, three PI controllers are used, in the torque and flux flow path along with ids* and iqs* signals. The torque control can be achieved from speed error since the developed electromagnetic torque affects the speed dynamically. Applying PI controller into the error signal between reference and measured or calculated speed and current. The PIs are the representation of the PI controller in the torque flow path.

$$ T_{{\text{e}}} \triangleq \left( {K_{{{\text{pIs}}}} + \frac{{K_{{{\text{iIs}}}} }}{s}} \right)\left( {\omega_{{\text{r}}}^{*} - \omega_{{\text{r}}} } \right), \, i_{{{\text{qs}}}}^{*} = \frac{{\left( {K_{{{\text{pIs}}}} + \frac{{K_{{{\text{iIs}}}} }}{s}} \right)\left( {\omega_{{\text{r}}}^{*} - \omega_{{\text{r}}} } \right)K_{2} }}{{i_{{{\text{ds}}}}^{*} }} $$

The errors between the actual and reference values of ids and iqs are fed to the respective PI controllers (PIf and PIT) to generate equivalent d-q axis voltages (vds*, vqs*).

$$ v_{{{\text{ds}}}}^{*} = \left( {K_{{{\text{pIf}}}} + \frac{{K_{{i{\text{If}}}} }}{s}} \right)\left( {i_{{{\text{ds}}}}^{*} - i_{{{\text{ds}}}} } \right), \, v_{{{\text{qs}}}}^{*} = \left( {K_{{{\text{pIt}}}} + \frac{{K_{{i{\text{It}}}} }}{s}} \right)\left( {i_{{{\text{qs}}}}^{*} - i_{{{\text{qs}}}} } \right) $$

The flux ψr is estimated with the Vs and ωr from the nameplate data before the start of the motor and remains almost constant during running for which ids also remain constant. After transformation to vα and vβ, the vsvm is generated for the SVM to produce PWM pulses for the inverter [1]. The vsvm and its inclination angle α [1, 2] are calculated as

$$ v_{{{\text{svm}}}} = \sqrt {v_{\alpha }^{2} + v_{\beta }^{2} } , \, \alpha = \tan^{ - 1} \frac{{V_{{{\text{qs}}}} }}{{V_{{{\text{ds}}}} }} = \tan^{ - 1} \frac{{v_{\alpha } }}{{v_{\beta } }} $$

Using Eq. (8) the switching instances of the space vector modulation (SVM) are determined as

$$ t_{1} \triangleq \frac{{2\sqrt 3 MT_{{\text{c}}} \sin \left( {\frac{\pi }{3} - \alpha } \right)}}{\pi }, \, t_{2} \triangleq \frac{{2\sqrt 3 MT_{{\text{c}}} \sin \left( \alpha \right)}}{\pi },\;\;{\text{and}}\;\;t_{0} ,t_{7} \triangleq (T_{{\text{c}}} - t_{1} - t_{2} ) $$

where the modulation index M is given by

$$ M = \frac{{v_{{{\text{svm}}}} }}{{2v_{{{\text{dc}}}} /\pi }} $$

where Tc = Tpwm/2, and Tpwm. The instantaneous phase voltage is shown in Eq. (11) by time averaging of the space vectors during one switching period for the sector.

$$ V_{{{\text{an}}}} = \frac{{V_{{\text{s}}} }}{{2T_{{\text{c}}} }}\left( {\frac{{ - t_{0} }}{2} + t_{1} + t_{2} + \frac{{t_{0} }}{2}} \right), \, V_{{{\text{bn}}}} = \frac{{V_{{\text{s}}} }}{{2T_{{\text{c}}} }}\left( {\frac{{ - t_{0} }}{2} - t_{1} + t_{2} + \frac{{t_{0} }}{2}} \right), \, V_{{{\text{cn}}}} = \frac{{V_{{\text{s}}} }}{{2T_{{\text{c}}} }}\left( {\frac{{ - t_{0} }}{2} - t_{1} - t_{2} + \frac{{t_{0} }}{2}} \right) $$

where Tc = Tpwm/2. It is evident from the above equations that the performance of the IFOC controller is primarily dependent on the equivalent parameters of the IM as well as the gains of the PI controllers. Thus evaluation of equivalent parameters of IM before starting, during the transition phase as well as during running is essential. Generally, no load and blocked rotor tests of IM are performed to estimate its equivalent parameters. But with our scheme, these tests are avoided as ECPs are evaluated using the proposed MRAS model during the stalled, transition, and running conditions.

Model reference adaptive system for ECPs estimation

To implement the IFOC scheme for the drive, the accurate estimation of the required ECPs is the most challenging task as these ECPs get changed with the running conditions of the motor.

The ECPs depend mostly on the slip, supply frequency, loading, and inside temperature of the motor, the accurate measurement of which are very much essential to get better control performance of the IFOC. Accordingly, an MRAS model [5, 7] for ECPs estimation is developed as shown in Fig. 4. In the form of BPANN, the Reference model and BPANN-based plant model are the two basic building blocks of the controller.

Fig. 4
figure 4

MRAS scheme for ECPs estimation

Formulation for reference model M R

This model is used to generate ECPR set, i.e. the reference values of ECPs namely Rs1, Rr1, Lm1, Ls1, Lr1 during the pre-start and post-start transition period up to the steady-state running condition of the induction motor. This ECPR set is utilized to train the gains in the plant model during this entire transition period i.e. till the steady-state running of the motor up to the desired speed is achieved.

ECPR generation before start

The H-G diagram method, IEEE 112, and the NEMA specification are used to generate the ECPR set based on the nameplate data before starting the motor. The stator voltage Vs, stator current Is (Ia, Ib), rotor speed Nr, input power factor pf, and output power Pout are the nameplate data to be provided. The H-G diagram is represented by an operating circle in the complex plane to analyze the power consumption scenario of an IM. The G and H functions [27] are having the dimension of inductance to represent the active and reactive power consumption status, respectively. The G function is directly related to developed torque and the H function is concerned with the magnetizing flux. The per-phase equivalent circuit impedance of Eq. (1) is modified by ignoring Rc and is expressed as in Eq. (12). The ECPR set is evaluated using the equations derived as follows:

$$ Z_{{{\text{eqR}}}} = \frac{{V_{{\text{s}}} }}{{I_{{\text{s}}} }} = R_{{\text{s}}} + \omega_{{\text{s}}} G(\omega_{{{\text{sl}}}} ) + j\omega_{{\text{s}}} H(\omega_{{{\text{sl}}}} ) $$

Following the construction method of the H-G diagram, the operating points on the diagram are a function of slip ωsl and can be expressed as

$$ G(\omega_{sl} ) = \frac{{L_{m1} \omega_{sl} R_{r1} }}{{R_{r1}^{2} + L_{r1}^{2} \omega_{sl}^{2} }}L_{m1} $$
$$ H(\omega_{sl} ) = L_{s1} - \frac{{L_{m1}^{2} \omega_{sl}^{2} }}{{R_{r1}^{2} + L_{r1}^{2} \omega_{sl}^{2} }}L_{r1} $$

Since G(ωsl) and H(ωsl) represent active and reactive power consumption, their locus describes a circle in the so-called H-G plane for the variation in load or even change in the ECPs for any other reasons [17]. This circle is graduated with the ωsl increasing from the purely synchronous point H0 to its point H, from which stator inductance Ls and the total leakage coefficient σ can be derived using Eq. (15)

$$ L_{{\text{s}}} = H_{0} = \frac{{\phi_{{{\text{nl}}}} }}{{I_{{{\text{nl}}}} }} = \frac{{V_{{\text{s}}} }}{{I_{{{\text{nl}}}} \omega_{{\text{s}}} }}, \, \sigma = \frac{{H_{\infty } }}{{H_{0} }} $$

where the current Inl can be evaluated from the nameplate data and NEMA specification without performing the real hardware test. It is assumed that σ is quite small for which H 0, circle diameters become directly a function of the stator flux ψs as shown in Eq. (16). The H-G diagram identifies the parameters in the (α, β) reference frame. The P and Q power components are estimated from the dot and cross product of the Vs and Is vectors in the (α, β) reference frame using Clarke Transformation. The values of P and Q are obtained as

$$ \left. \begin{aligned} P & = V_{{{\text{s}}(\alpha ,\beta )}} \cdot I_{{{\text{s}}(\alpha ,\beta )}} = V_{{{\text{s}}\alpha }} I_{{{\text{s}}\alpha }} - V_{{{\text{s}}\beta }} I_{{{\text{s}}\beta }} \\ Q & = V_{{{\text{s}}(\alpha ,\beta )}} \times I_{{{\text{s}}(\alpha ,\beta }}) = V_{{{\text{s}}\alpha }} I_{{{\text{s}}\beta }} - V_{{{\text{s}}\beta }} I_{{{\text{s}}\alpha }} \\ \end{aligned} \right\} $$

The values of G(ωsl) and H(ωsl) at any instantaneous point i can also be calculated from given P and Q as

$$ G_{i} = G(\omega_{{{\text{sl}}}} ) = \frac{1}{{\omega_{{\text{s}}} }}\left( {\frac{P}{{I_{{{\text{s}}(\alpha ,\beta )}}^{2} }} - R_{{\text{s}}} } \right) $$
$$ H_{i} = H(\omega_{{{\text{sl}}}} ) = \frac{{Q_{i} }}{{\omega_{{\text{s}}} I_{{{\text{s}}(\alpha ,\beta )}}^{2} }} $$
$$ R_{{{\text{r}}1}} = \frac{{\frac{P}{{I_{{{\text{s}}(\alpha ,\beta )}}^{2} }}}}{{\left( {1 - \frac{{H_{i} }}{{H_{0} }} + k} \right)}},R_{{{\text{s}}1}} = kR_{{{\text{r}}1}} $$

where k is obtained from NEMA guidelines. The stator and rotor resistance Rs1 and Rr1 and rotor time constant τr can then be estimated from G(i) and H(i) as,

$$ \tau_{{\text{r}}} = \frac{{L_{{{\text{r}}1}} }}{{R_{{{\text{r}}1}} }} = \frac{{H_{0} - H_{i} }}{{\omega_{{{\text{sl}}}} G_{i} }}\;\;{\text{and}}\;{\text{thus}}\;\;L_{{{\text{r}}1}} = L_{{{\text{s}}1}} \, $$

Thus the value of rotor inductance Lr1 can be estimated from τr and Rr1. The mutual inductance can thus be evaluated as

$$ L_{{{\text{ml}}}} = \sqrt {\left( {\frac{{(L_{{{\text{s}}1}} - H_{i} )(R_{{{\text{r}}1}}^{2} + L_{{{\text{r}}1}}^{2} \omega_{{{\text{sl}}}}^{2} )}}{{L_{{{\text{r}}1}} \omega_{{{\text{sl}}}}^{2} }}} \right)} $$

The gain parameters of IFOC K1, K2, and K3 as shown in Eqs. (2)–(4) are evaluated using the ECPR set from the nameplate data before starting.

ECPR generation during the transition phase

It is evident from Eq. (2) that the value of ψr is dependent on the mutual inductance. But the mutual inductance varies on variations in resistances and both of them vary due to variations in motor temperature during the running condition. This in turn causes a change in ids and IFOC logic accordingly. Thus though the H-G diagram method is efficient enough for estimating the ECPs during the pre-start condition, its use is not suggested during the running condition. Accordingly, during the transition phase, the feedback values like Vs, Ia, and Ib are provided as input to the reference model on basis of which the ECPR is generated using equations are (16)–(21) to tune the plant model ECPp. The value of Isαβ (iα,iβ) and the Vsαβ (Vα, Vβ) are evaluated using Clarke transformation as shown in figure vii7.

Formulation for plant model M P

The estimated ECPR set, using the above-described method, provides accurate results so long the operating conditions, i.e. load demand, slip, temperature, supply frequency remain unaltered. But, as the values of Rs1, ωsl varies with change in motor temperature and slip, the estimated ECPR set, Lm value in particular, from the H-G method produces an erroneous result. This needs a switchover of the ECPs estimation from the reference model to the plant model during the running condition of the motor. The plant model is built based on the backpropagation principle where ANN with an input layer of three neurons and three hidden layers of five, four, and two neurons respectively, and one output neuron model (3-5-4-2-1) is used in its forward path as shown in Fig. 5. The value of each of the ECPs, i.e. Rs, Rr, Lr, Ls, and Lm, have been evaluated accurately during steady state. For working of BPANN, an input matrix [A]3×5 is constituted where each row contains three values of one of the parameters and each column represents each of the parameters of Rs, Rr, Lr, Ls, and Lm. Out of the three values of each row j, one value (aj) is calculated by using the respective equations from (22) to (24) and the other two values are estimated considering a deviation range of ± €. This creates a set of values like [ajε, aj, aj+ε] for each row j of [A]3×5 and is treated as the input neurons for the ANN module to estimate the parameter corresponding to that row j. As j can vary from 1 to 5 to represent Rs, Rr, Lr, Ls, and Lm, respectively, the ANN structure is to be utilized four times to estimate all the ECPs in a one-time step. The entire operation of the plant model can be divided into two subparts—namely (i) starting, i.e. start of the motor from standstill to the set speed achievement and (ii) running conditions of the motor. The functioning of ECPs under these conditions is described below.

Fig. 5
figure 5

Plant Model for ECPs estimation

ECPs evaluation during the transition period

Before start, the ECPR values are utilized for input matrix [A]3×5 and the weight updation procedure begins offline so that the overall time of convergence can be minimized. After the offline training is done the IM is started with the parameters obtained from MR. During this period, ECPs copy the values of ECPR to generate the triggering pulses following IFOC schemes. It is considered that the value of Ls and Lr are assumed to be the same for small to medium motors whereas the ratio between these two parameters can be taken as per NEMA specifications for larger motors for their evaluation. The value of Rs and Rr is estimated using (22) where vssi and issi are the voltage and current signals derived from the SSI method as illustrated in “Estimation of Rs using small signal injection method” section.

$$ R_{{\text{s}}} = \, \frac{{v_{{{\text{ssi}}}} }}{{i_{{{\text{ssi}}}} }},R_{{\text{r}}} = R_{{\text{s}}} /k $$

Therefore the inductances can be evaluated as

$$ L_{{\text{s}}} + L_{{\text{r}}} = \frac{1}{2\pi f}\sqrt {\left( {\frac{{V_{{\text{s}}} }}{{I_{{\text{r}}} }}} \right)^{2} - \left( {R_{{\text{s}}} + \frac{{R_{{\text{r}}} }}{s}} \right)^{2} } $$

where slip s is changing with the estimated speed

$$ L_{{\text{m}}} = \frac{1}{2\pi f}\frac{{P_{{{\text{nl}}}} }}{{V_{{\text{s}}} I_{{{\text{nl}}}} \sqrt {1 - p_{{{\text{fnl}}}}^{2} } }} $$

Considering the inputs of each BPANN topology as

$$ a_{j1} = a_{j} - \varepsilon , \, a_{j2} = a_{j} , \, a_{j2} = a_{j} + \varepsilon $$

three such inputs for each j are mapped to the four neurons of the first hidden layer by their corresponding weight factor w. The selection of the weights is done in a random manner such that the neurons of this layer are initialized as in Eq. (26)

$$ \left[ {\begin{array}{*{20}c} {h_{11j} } \\ {h_{12j} } \\ {h_{13j} } \\ \begin{gathered} h_{14j} \hfill \\ h_{15j} \hfill \\ \end{gathered} \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {w_{1j} } & {w_{6j} } & {w_{11j} } \\ {w_{2j} } & {w_{7j} } & {w_{12j} } \\ {w_{3j} } & {w_{8j} } & {w_{13j} } \\ {w_{4j} } & {w_{9j} } & {w_{14j} } \\ {w_{5j} } & {w_{10j} } & {w_{15j} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {a_{j1} } \\ {a_{j2} } \\ {a_{j3} } \\ \end{array} } \right] $$

The BPANN structure is designed in such a way that the vanishing gradient and exploding gradient problems are minimum. For simplicity, the number of the hidden layer is considered to be two where Leaky Relu and Adam activation function is used for optimization. But in some work [30, 31] use of three hidden layers has also been considered to improve accuracy. The use of three hidden layers poses the problems like: (i) increase in network complexity, (ii) increase in convergence time, as well as the number of iterations to converge, (iii), increases the processor’s computational overhead, and accordingly, high power processors are required for its implementation. Whereas with the use of two hidden layers, these problems are very less and the system with two hidden layers can easily be implemented with a low-power processor. But considering the accuracy aspects for the evaluation of ECPs of IM, three hidden layer system control structure is considered in this work. The activation function used here is Leaky Relu which is defined as Sir(h) = hir for hir ≥ 0 or Sir(h) = 0.01hir for hir < 0 where i represents the number of hidden layers and r represents the number of neurons in that particular hidden layer. For this design, i and r maybe 1 to 2 and 1 to 4, respectively. The second hidden layer neurons are represented similarly as given by

$$ \left[ {\begin{array}{*{20}c} {h_{21j} } \\ {h_{22j} } \\ {h_{23j} } \\ {h_{24j} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {w_{16j} } & {w_{20j} } & {w_{24j} } & {w_{28j} } & {w_{32j} } \\ {w_{17j} } & {w_{21j} } & {w_{25j} } & {w_{29j} } & {w_{33j} } \\ {w_{18j} } & {w_{22j} } & {w_{26j} } & {w_{30j} } & {w_{34j} } \\ {w_{19j} } & {w_{23j} } & {w_{27j} } & {w_{31j} } & {w_{35j} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {s_{11j} } \\ {s_{12j} } \\ {s_{13j} } \\ {s_{14j} } \\ {s_{15j} } \\ \end{array} } \right] $$
$$ \left[ {\begin{array}{*{20}c} {h_{31j} } \\ {h_{32j} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {w_{36j} } & {w_{38j} } & {w_{40j} } & {w_{42j} } \\ {w_{37j} } & {w_{39j} } & {w_{41j} } & {w_{43j} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {s_{21j} } \\ {s_{22j} } \\ {s_{23j} } \\ {s_{24j} } \\ \end{array} } \right] $$

The output of the ECPpj is expressed as

$$ {\text{ECP}}_{{{\text{p}}j}} = \left[ {\begin{array}{*{20}c} {w_{44j} } & {w_{45j} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {s_{31j} } \\ {s_{32j} } \\ \end{array} } \right] $$

Besides, the BPANN algorithm is designed in such a way that the weight factors are trained during the speed transient period and/or starting period of the motor while these periods are identified till the desired set speed is achieved from the very start i.e. stopped or stalled condition of the motor.

For the training purposes, each of the output parameters from MP is compared with the respective reference parameters coming out from MR i.e. the error between the parameters of the MR and MP are Ej = (ECPRj-ECPPj) are evaluated such that The loss or error functions are then generated following Eqs. (35) which are minimized using Adam rule to recalculate the weights in backpropagation manner,

$$ b_{j} = \frac{1}{2}E_{j}^{2} ,j = [R_{{\text{s}}} = {\text{ECP}}_{{{\text{Rs}}}} ,R_{{\text{r}}} = {\text{ECP}}_{{{\text{Rr}}}} ,L_{{\text{s}}} = {\text{ECP}}_{{{\text{Ls}}}} ,L_{{\text{m}}} = {\text{ECP}}_{{{\text{Lm}}}} ] $$

where bj is the loss function for each of the jth parameters. Thus the weight updation process or the training process continues until the difference between the output of all the elements of MR and MP will be less than or equal to the tolerance limit δ,

$$ E_{j} = {\text{ECP}}_{{\text{R}}} - {\text{ECP}}_{{{\text{P}}j}} = \pm \delta $$

The basic weight updation rule as stated in the gradient descend (GD) method is expressed as in Eq. (32). This weight updation method is modified as per the ADAM rule as described in Eq. (3538). This ADAM rule is a combined form of the Adagrad and RMSProp adaptive GD method, the details of which are explained in reference (25), and hence the description is not included in this paper.

$$ w_{(n + 1)} = w_{(n)} - \eta \frac{\partial E}{{\partial w_{n} }},g_{n} = \frac{\partial E}{{\partial w_{n} }} $$
$$ w_{(n + 1)} = w_{(n)} - \frac{\eta }{{\sqrt {\gamma + r_{n}^{*} } }} \times m_{n}^{*} $$

where mn is the momentum term and the value of mn and rn is given by

$$ m_{n} = \beta_{n} \times (m_{n - 1} - 1) + (1 - \beta_{1} ) \times g_{n} ,g_{n} = \frac{\partial E}{{\partial w_{n} }} $$
$$ r_{n}^{*} = \beta_{n} \times (r_{n - 1} - 1) + (1 - \beta_{2} ) \times g_{n}^{2} $$


$$ m_{n}^{*} = \frac{{m_{n} }}{{1 - \beta_{1}^{n} }},r_{n}^{*} = \frac{{r_{n} }}{{1 - \beta_{2}^{n} }},\beta_{1} = 0.9,\beta_{2} = 0.999 $$

The BPANN gain tuning procedure continues till the weight updating rule is satisfied, the duration of which is well within the starting transition period of the motor.

ECPs evaluation during running

Once the training period is over, the ECPs estimation is started with the plant model by making a switch over to the selection of input towards sampled feedback of (Vs, Is(Ia, Ib)). The parameters are calculated using Eqs. (22)–(24) to form the input matrix of BPANN and then this [A]3×5 is used to evaluate ECPP. The values of K1, K2, and K3 are also evaluated following Eq. (37), and all the IFOC d-q voltage, current, flux, slip frequency, etc., are calculated using Eq. (2)–(11).

$$ K_{1} = \frac{1}{{{\text{ECP}}_{{L_{{\text{m}}} }} }},K_{2} = \frac{{4{\text{ECP}}_{{L_{{\text{r}}} }} }}{{3p{\text{ECP}}_{{L_{{\text{m}}}^{2} }} }},K_{3} = \frac{{{\text{ECP}}_{{R_{{\text{r}}} }} }}{{{\text{ECP}}_{{L_{{\text{r}}} }} }} $$

Stator resistance and speed estimation

Estimation of R s using small signal injection method

The Rs measurement method is based on the injection of a very low-frequency, low amplitude lock-in signal to the stator along with the three-phase supply fed to the motor using the converter. A basic lock-in system consists of a lock-in signal generator, an amplifier, a PSD, and a low pass filter, the schematic diagram of which is shown in Fig. 6. All the constituent blocks of Fig. 6 are grouped into DSP-based lock-in signal generators with LIA for voltage and LIA for current, sensor unit, and power unit blocks for a better understanding of their working. The DSP-generated lock-in signal of very low amplitude is passed through the stator along with the stator voltage after their necessary modulation to produce a lock-in stator current depending on the stator resistance. This lock-in current is amplified to a level adequate for the PSD in the sensor unit and is then passed through an LPF to extract the noise-free return current signal. The stator resistance is estimated during running conditions with the ratio of the injected lock-in voltage and the return current signal. The amplitude of lock-in voltage vr is made so small that it is unable to contribute any impact on the running of the motor while its frequency is made very low so that its inductive effect can be neglected and the return current Ir will be limited only by the stator resistance Rs. Besides, this kind of infinitesimally small impact is further reduced with the intricacies of intermittent injection of lock-in signals. In its intermittent operation, the lock-in signal is injected for its one-period duration at an interval of nTlc making a duty cycle δlc such that δlc = Tlc/nTlc where n is the number of cycles and Tlc = 1/f2 is the period of lock-in signal of frequency f2. The term f3 = 1/nTlc can also be termed as refresh rate for Rs estimation. The vsvm(t) is added with a very small ac signal of amplitude vr(t) and frequency (f2) to produce a resultant voltage v(t) for δlc period such that

$$ v\left( t \right) = v_{{{\text{svm}}}} (t) + v_{r} (t)\;\;{\text{for}}\;\;0 \le t \le \delta_{lc } \;\;{\text{and}}\;\;v(t) = v_{{{\text{svm}}}} \left( t \right) {\text{ else}} $$
Fig. 6
figure 6

Schematic of Signal injection method

For detection purposes during δlc period, the DSP-based processor multiplies the feedback voltage Vb(t) with a modulating signal r(t) having the same amplitude and frequency as that of the vr(t). The in-phase component of vr(t) is rx(t) = sin(2πf2t) and quadrature (90° shifted) ry(t) = cos(2πf2t) components which produces xvb(t) and yvb(t), respectively, so that

$$ x_{{{\text{vb}}}} (t) = v_{{\text{b}}} (t) \times r_{x} (t),\quad y_{{{\text{vb}}}} (t) = v_{{\text{b}}} (t) \times r_{y} (t) $$

After this, both the signals are passed through the digital low pass filter to eliminate all the ac components and only the dc component is obtained of both in-phase xvbdc and quadrature component yvbdc. Thus the voltage obtained after filtering is

$$ v_{{{\text{ssi}}}} = \sqrt {x_{{{\text{vbdc}}}}^{2} + y_{{{\text{vbdc}}}}^{2} } $$

The current ib(t) is also sensed by the Hall sensor which contains the load current, harmonic distortion, and noise component. The i(t) is also multiplied by the same r(t).

$$ x_{{i{\text{b}}}} (t) = i_{{\text{b}}} (t) \times r_{x} (t),\;\;y_{{i{\text{b}}}} (t) = i_{{\text{b}}} (t) \times r_{y} (t) $$

After this, both the signals are passed through the digital low pass filter where the noise, harmonic distortion, and the other ac components get filtered and the only dc component is obtained as xibdc and yibdc. Thus the value of issi is given by

$$ i_{{{\text{ssi}}}} = \sqrt {x_{{i{\text{bdc}}}}^{2} + y_{{i{\text{bdc}}}}^{2} } $$

The frequency (f2), as well as the amplitude of vr(t), is kept very low so that its contribution to the net flux production is negligibly small such that

$$ \left| {j \times 2pi \times f_{2} \times L_{{\text{M}}} } \right| \le \left| {\frac{{R_{{\text{r}}} }}{s} + jL_{{\text{r}}} \times 2pi \times f_{2} } \right| $$

Thus the stator resistance can thus be computed as follows

$$ R_{{\text{s}}} = \frac{{v_{{{\text{ssi}}}} }}{{i_{{{\text{ssi}}}} }} $$

Thus this method of resistance estimation takes care of the temperature effect of the motor and thus the use of a temperature sensor is avoided. Again if the temperatures of the motor (T(lc+1) and Tlc) are known at two different running conditions, the corresponding resistances can also be evaluated using equation ( 43) provided the coefficient of expansion λ is known

$$ R_{{{\text{slc}} + 1}} = R_{{{\text{slc}}}} \left( {1 + \lambda \Delta T_{{{\text{lc}}}} } \right)\quad {\text{where}}\quad \Delta T_{{{\text{lc}}}} = T_{{{\text{lc}} + 1}} - T_{{{\text{lc}}}} $$

where Rs(lc+1) and tlc+1 represent the current value of the resistance and temperature, and Rslc and tlc denote the precious value, respectively.

Sensorless speed estimation scheme

The performance of the IFOC scheme depends on the variation of temperature which varies due to environmental changes, the presence of harmonics, and overloading as both the stator resistance Rs and the rotor resistance Rr vary with it. Fluctuations in the speed may occur due to a change in load, change in the time constant due to temperature rise. For a variation of Rr, the time constant (τr = Lr/Rr) varies inversely. An increase in temperature in general increases the rotor and stator copper losses Prcl, Pscl for which the total loss Ploss increases. Thus if the supply voltage Vs and the output power (Pout) remain constant, IM will draw more power from the input for which the motor efficiency will reduce and the stator and rotor currents (Is, Ir) will also increase. In normal operating conditions, as the motor starts picking up with the speed the torque Te becomes maximum at slip sm before coming to the operating point following Eq. (45)

$$ \omega_{{\text{r}}} = \omega_{{\text{s}}} \left( {1 - \frac{{s_{{\text{m}}} T_{{\text{e}}} }}{{2T_{{{\text{em}}}} }}} \right), \, s_{{\text{m}}} = \frac{{R_{{\text{r}}} }}{{L_{{\text{s}}} + L_{{\text{r}}} }} $$

Thus the rotor speed varies with ECPs variation. At steady state, the d-q axis voltages can be expressed by Eqs. (45) and (46) considering constant flux by neglecting the rate of change of flux.

$$ v_{{{\text{ds}}}}^{*} = R_{{\text{s}}} i_{{{\text{ds}}}}^{*} - \omega_{{\text{s}}} \sigma L_{{\text{s}}} i_{{{\text{qs}}}}^{*} , \, \sigma_{1} = 1 - \frac{{L_{{\text{m}}}^{2} }}{{L_{{\text{s}}} L_{{\text{r}}} }} $$
$$ v_{{{\text{qs}}}}^{*} = R_{{\text{s}}} i_{{{\text{qs}}}}^{*} + \omega_{{\text{s}}} \sigma_{1} L_{{\text{s}}} i_{{{\text{ds}}}}^{*} $$

The reactive power can be expressed as in Eq. (47)

$$ Q_{1} = v_{{{\text{qs}}}} i_{{{\text{ds}}}} - v_{{{\text{ds}}}} i_{{{\text{qs}}}} $$

By substituting the value of vds* and vqs* in the above equation, the reference value of the reactive power is

$$ Q_{1}^{*} = \omega_{{\text{s}}} (L_{{\text{s}}} i_{{{\text{ds}}}}^{*2} + \sigma_{1} L_{{\text{s}}} i_{{{\text{qs}}}}^{*2} ) $$

assuming negligibly small measurement error, the reference values of (vds*, vqs*, ids*, iqs*) must be equal to the measured values (vds, vqs, ids, iqs), and hence the reactive power evaluated with reference values must be equal to the actual value. Thus by equating (47) and (48)

$$ \omega_{{\text{s}}} = \frac{{v_{{{\text{qs}}}} i_{{{\text{ds}}}} - v_{{{\text{ds}}}} i_{{{\text{qs}}}} }}{{(L_{{\text{s}}} i_{{{\text{ds}}}}^{*2} + \sigma_{1} L_{{\text{s}}} i_{{{\text{qs}}}}^{*2} )}} $$

Accordingly, the shaft speed is estimated by

$$ \omega_{{\text{r}}} = \omega_{{\text{s}}} - \omega_{{{\text{sl}}}} ,\;\;{\text{where}}\;\omega_{{{\text{sl}}}} = \left( {K_{{{\text{psl}}}} + \frac{{K_{{i{\text{sl}}}} }}{s}} \right)\left( {K_{3}^{*} - K_{3} } \right) $$

where ωsl* and ωsl can be expressed as in Eq. (4). Before start, the ωr is estimated by

$$ \omega_{{\text{r}}} = \omega_{{\text{s}}} - \omega_{{{\text{sl}}}}^{*} $$

To ensure accurate estimation of the ωsl, a PI controller with gain kpωsl, ksl is introduced as in Eq. (51) Substituting this ωsl in Eq. (51) the expression modified shaft speed expression will be.

$$ \omega_{{\text{r}}} = \omega_{{\text{s}}} - \left( {K_{{{\text{psl}}}} + \frac{{K_{{i{\text{sl}}}} }}{s}} \right)\left( {K_{3}^{*} - K_{3} } \right) $$

With this accurate performance speed estimation is achieved. The PI controller here is tuned using the Z-N method. The schematic of the speed estimation method is shown in Fig. 7.

Fig. 7
figure 7

Schematic of Speed estimation method

Flowchart for the proposed BPANN based optimization method

figure a


The viability of the proposed controller development based on the Adam technique is tested in two stages—(i) in the first stage, the entire scheme is simulated using MATLAB/Simulink environment while (ii) the simulated development is tested with actual hardware implementation as well a customized graphical user interface (GUI) development for parameter monitoring purposes, all of which are described as follows.

Simulation results

Case 1: Avoidance of physical tests

The parameters of an IM are simulated using both GD and Adam algorithms based on the nameplate data viz. 3.3 kW, 3-φ, 415 V, 50 Hz, 6.9A, 1415 rpm and pf = 0.8. For validation purposes, the equivalent circuit parameters of the motor are evaluated from conventional physical no-load and blocked rotor tests (PT). The parameters estimated from PT, MR, and MP are presented in Table 1 along with the percentage error of ECPs with that of paper [12] for comparison purposes. It is evident from Table 1 that the errors are very similar between different methods suggesting the need of performing PT can be avoided.

Table 1 ECPs evaluation using system models and physical tests

The ECPs evaluated in Table 1 is based on the BPANN with three hidden layer structure of the plant model as shown in Fig. 5. But for simplicity in implementation purposes, two hidden layer structure is widely used. Thus to make a comparison in achieved accuracy the experiment is also performed with two hidden layers and the result of both two and three are tabulated in Table 2. It is evident from this Table 2 that betterment in accuracy for almost all of the parameters is achieved with a three-layer structure.

Table 2 ECPs evaluation using 2 and 3 hidden layers

Case 2: Tracking performance

The performances of the drive like its speed response at a constant load torque as well as its sudden change are simulated and shown in Figs. 8 and 9 respectively during the running condition. It is evident from these Figs. 8 and 9 that the speed responses are similar both in their steady-state and transient conditions for all the BPANN methods.

Fig. 8
figure 8

Speed Response of IFOC VSI-IM drive with constant load

Fig. 9
figure 9

Speed Response of IFOC VSI-IM drive with a sudden change in load

Case 3: BPANN convergence

The convergence status for BPANN to evaluate the resistance of stator and rotor by using AD and GD methods is shown in Figs. 10 and 11, respectively. Figures 12 and 13 show the convergence graph of reactance Lr/Ls and Lm, respectively. Reaching the steady-state value is considered as the point of convergence. It is evident from these figures that the steady-state value is reached with AD at a faster rate than that with the GD method. This is the reason for which the AD method is adopted in this work.

Fig. 10
figure 10

Convergence of BPANN based estimation of stator resistance Rs

Fig. 11
figure 11

Convergence of BPANN based estimation of rotor resistance Rr

Fig. 12
figure 12

Convergence of BPANN based estimation of Ls with GD, ADAM methods

Fig. 13
figure 13

Convergence of BPANN based estimation of Lm with GD, ADAM methods

Case 4: Rs estimation using SSI

The small ac signal of 1 V and 1 Hz is injected along with the A phase supply of Vs of 240 V, 50 Hz, for estimating temperature effect on Rs. The FFT analysis, as shown in Fig. 14, of the A-phase feedback data confirms the presence of this 1 Hz signal injection. As per the proposed design, the only voltage sensor and one of the two current sensors are used in the A phase, the other one is placed either in the B or C phase. The convolutions of Va and Ia with vrx and vry are used to demodulate the lock-in signals while DLPFs are used to extract Vssi and Issi for the estimation of the Rs. As stated in “Estimation of Rs using small signal injection method” section, this Rs estimation is done only during the δlc period of the lock-in signal and is refreshed with frequency f3. The motor temperature proportional values of Rs thus obtained are shown in Table 3 and are assumed to remain constant during the refresh period of the lock-in signal. For this study, δlc is considered 1 s while the refresh rate is f3 = 0.1 Hz. The evaluated resistances are shown at four different temperatures at T, (T + 10), (T + 20), and (T + 25) where T is the room temperature (25 °C). The same is also estimated using the positive temperature coefficient of stator winding λ is the (3.83 × 10–3/°C) [30] and the % error is evaluated for estimating the efficacy of the proposed SSI.

Fig. 14
figure 14

FFT analysis (presence of 49 and 51 Hz) of received voltage after injection of Lock-in signal

Table 3 Rs estimation using SSI method at various temperatures

Case 5: Effect of resistance change

The effect of change in stator resistance on the other parameters of ECPs and speed is also shown in Table 3. It shows how the stator and rotor resistance and rotor time constant τR change with temperature. The change in speed indicates that a correction in the firing pulse modulation index is essential otherwise the desired speed can’t be achieved. Besides, independent ECPs evaluation using two models at different temperatures is also shown in Table 4. Since Eqs. (17)–(21) and Eqs. (22)–(24) are utilized for ECPR and ECPP evaluation, the ECPs values evaluated using these two methods are different for variation in the motor temperature. But considering the running of the motor with fixed load torque, the mutual inductance value should not be changed with temperature. But remarkable change is observed in ECPs evaluation through the MR model. This suggests ECPs estimation with the H-G diagram method where temperature variation is considered is not suitable during the running of the motor. This also justifies the use of BPANN based plant model in this proposed design.

Table 4 Variation in Lm evaluation using ECPR and ECPP with T

The changes in stator and rotor resistance and rotor time constant τR with temperature change are shown in Table 3. It is observed from the ECPs values in the Table 4 that the modulation index (MI) is needed to be changed to incorporate the effect of temperature changes. If the correction in the MI for this temperature change is not considered, a fluctuation in the developed torque i.e. torque ripple is observed. In other words, there is a fluctuation in the speed as observed in Fig. 15. The reason behind it is that due to the increase in Rs with temperature rise, the developed torque, Te is reduced, following Eqs. 2 and 6, resulting in a momentary decrease in rotor speed and this error is corrected by the controller and a fluctuation in torque or speed be the result. The no fluctuation in speed is also observed for correction in MI. On the other hand, the change in stator current Is with and without correction in the MI with the change in Rs is also observed from the Fig. 16. This justifies that a temperature correction is essential to avoid any ripple in the speed or developed torque of the motor.

Fig. 15
figure 15

Speed variation without and with changing MI

Fig. 16
figure 16

Current ripple without and with changing MI

Experimental results with MMU GUI

Case 6: Hardware controller with MMU system

A DSP-enabled digital signal controller (DSC) featured microcontroller (DSPIC33EP512MC502) with 70 MIPS-based control board is developed for this proposed motor drive system where SVM PWM trigger pulses are generated as per the proposed control algorithm along with the desired feedback signals. These pulses are utilized to control the IGBT-based 3 phase H bridge power hardware through its gate driver system. The IGBT gate driver has also the facility to detect any abnormal operation of the drive for protection purposes. The entire controller logic is embedded within the firmware of this DSC to make it a standalone drive controller. The PWM is designed to operate at 5 kHz (or 200 µs period) and it is observed that the duration for ECPs generation following the above-discussed control algorithm is within 140–180 µs. This proves that the developed drive can be used for online controlling purposes. A snapshot of the developed hardware prototype is shown in Fig. 17. In addition, the values of the internal parameters are sent to a PC through serial communication at a speed of 115.2 kbps for their display in a customized GUI of MMU for monitoring and storage purposes. Some parameters, the nameplate data in particular for starting of the motor and the desired speed are sent to the controller from this GUI. A customized GUI-based MMU using visual basic is designed in such a way that it sends the machine nameplate data to the drive controller once these are fed. The controller then evaluates the equivalent parameters and re-transmits them to the PC for its display in the GUI as shown in Fig. 18. The MMU receives the sample values for motor terminal voltage and current, estimated speed, and measured temperature for their evaluation and display in the GUI. Besides, it is also able to display and store the ECPs of the motor as received from the hardware controller.

Fig. 17
figure 17

Hardware prototype model of VSI-IM

Fig. 18
figure 18

MMU of VSI-IM showing motor parameters

The microcontroller acquires voltage and current signals through its inbuilt ADC and these data are also transmitted to the PC for monitoring purposes along with other parameter values. The MMU displays these normalized data as shown in Fig. 19 while it's part (a) shows the voltage waveforms and part (b) is for current. The voltage and current data are acquired using voltage (VH1K0T02) and current (HE025T01) sensors respectively. As shown, the lock-in signal to be used to measure Rs is embedded within the acquired voltage or current signals. MMU also displays the estimated ECPs both from MP and MR models in its part (c) while its part (d) displays the measured values of voltage and current at an intermediate stage of speed change.

Fig. 19
figure 19

Waveforms of sensor data for a voltage, b current, c evaluated ECPs and d evaluated values from feedback data as communicated to MMU

Case 7: ECPs estimation using drive controller

The ECPs values as evaluated by the hardware controller are communicated to the PC at a regular interval of 1 kHz once the training of the BPANN algorithm is completed. Out of all such values, Table 5 shows the ECPs values just after the completion of the training of BPAN along with the other values for comparison purposes. The ECPs data are obtained after taking the average of over 100 observations and accordingly appear very close to the simulated values. The data for % error of this table justifies the avoidance of PT for the evaluation of ECPs.

Table 5 ECPs obtained from the DSP-based controller

Case 8: Sensorless Speed estimation

The speed of the motor is estimated without any speed sensor based on the ECPs of the motor during its running condition as well as feedback values of voltage and current following Eq. (52). The estimated speed is tabulated for a wide range of reference speeds in Table 6. The same is verified with the speed estimated using an optical sensor mounted on the rotor shaft of the motor, the waveform of which is shown in Fig. 20. The y axis of the figure here represents the amplitude of the signal obtained from the optical sensor and the x-axis represents the time. The % error is computed for both the sensored and sensorless methods and it is observed that the sensorless method is equally applicable for speed estimation. The optical sensor has a resolution such that one complete revolution produces 60 pulses.

Table 6 Speed estimation by the proposed method
Fig. 20
figure 20

MMU of VSI-IM showing speed


This paper elaborates on the automatic estimation of ECPs during the starting transients and running conditions of an induction motor. The result from Tables 1 and 2 reveals that the proposed scheme avoids any physical tests of the motor and applicable to all rated motors. The speed tracking errors performance shown in Figs. 8 and 9 and the convergence criteria of ECPs evaluation as shown in Figs. 10, 11, 12 and 13 prove the efficacy of the proposed H-G and Adam-based BPANN schemes. The variation in Rs and its impact on other ECPs with motor temperature is also shown in Tables 3 and 4. An intelligent SSI for Rs and sensorless speed estimation methods are adopted to incorporate the temperature and speed error correction schemes. A hardware prototype along with a PC-based GUI is developed for its standalone operation as shown in Figs. 17 and 18. The ripple in the torque or speed is reduced drastically with this BPANN controller as evident from Figs. 15 and 16. Thus the development of an intelligent controller for induction motor drive with online parameter estimation and GUI-based display facility is described.

Availability of data and materials

The data of the motor that has been considered here are taken from the nameplate of the motor. The NEMA specifications of AC machine IEEE 112 data have also been used.



Adam optimizer


Artificial intelligence


Artificial neural network


Adjustable speed drive


Backpropagation artificial neural network


Convolution neural network


Digital low pass filter


Digital signal processing


Equivalent circuit parameters obtained from plant model


Equivalent circuit parameters obtained from the reference model

ECPs :

Equivalent circuit parameters


Extended Kalman's filter


Fuzzy logic controller


Field-oriented control


Genetic algorithm


Gradient descent method


Graphical neural networks


Gravitational search algorithm


Graphical user interface


Indirect field-oriented control


Induction motor


Low pass filter


Long short term memory


Machine monitoring unit


Model reference adaptive structure


Neural network


Phase-sensitive detector


Particle swarm optimization


Physical test


Pulse width modulation


Recurrent neural network


Small signal injection method


Space vector modulation


Voltage source inverter

B :

Loss function

E :


f :


f 2 :

Lock-in signal of frequency in SSI

f 3 :

Refresh rate in SSI

g n :

Gradient of the error

h :

Hidden layer

i dr, i qr :

D-q axis rotor current

i ds , * i qs * :

Stator reference current in the d-q axis

i ds, i qs :

D-q axis stator current

I nl :

No-load current

I r :

Rotor current

I s :

Rated stator current

K :

The ratio between Rs and Rr

K 1 :

Controller gain of the flux flow path

K 2 :

Controller gain of the torque flow path

K 3 :

Controller gain of the slip frequency

K pIs, K i Is :

PI controller gain in the torque flow path

L m :

Magnetizing inductance

L r :

Rotor inductance

L s :

Stator inductance

L m1 :

Mutual inductance of MR

L r1 :

Rotor inductance of MR

L s1 :

Stator inductance of MR

M :

Modulation index

m :

Momentum term in ADAM rule

M P :

Plant model

M R :

Reference model

N r :

Rated speed

p :

Number of poles

p f :

Power factor rated condition

p fnl :

Power factor at no load

P nl, P rcl, P scl, P out :

No-load power, rotor copper loss, stator copper-loss, rated power

P :

Active power referred to the α-β

Q :

Reactive power referred to the α-β

Q 1 :

Reactive power in the d-q axis

R c :

Core resistance

R r :

Rotor resistance

R r1 :

Rotor resistance of MR

R s :

Stator resistance

R s1 :

Stator resistance of MR

r n :

Summation of the squared term of gradients


Modulating signal of SSI

S :

Activation function

s :


s m :

Maximum slip

T :

Temperature at start

T e :

Electromechanical torque

T pwm :

Time period of PWM

T lc :

Period of lock-in signal in SSI

t 1 ,t 2 ,t 0 :

Switching instances of SPWM

V s :

Rated stator voltage

V an, V bn, V cn :

Instantaneous phase voltages of VSI

v dc :

Dc supply voltage

v dr, v qr :

D-q axis rotor voltage

v dr, v qr :

D-q axis rotor voltage

v ds *, v qs * :

Stator reference voltage in the d-q axis

v r :

Lock-in voltage

V ssi, i ssi :

Voltage and current of SSI method

v svm :

Voltage vector of SVM

v α ,v β :

α-β Axis voltage

w n :

Current weight of nth iterations

w ( n +1) :

Modified weight after nth iterations

X m :

Magnetizing reactance

x vbdc, y vbdc :

Dc component voltage in-phase and quadrature component in SSI

Y :

Output of the forward path of MP

Y MP :

Output ECPs for plant model

Y MR :

Output ECPs for reference model

Z eqP :

Per phase impedance of MP

Z eq :

Per phase impedance

Z eqR :

Per phase impedance of MR

δ :

Tolerance limit

δ lc :

Duty cycle in SSI

η :

Learning rate

σ :

Total leakage coefficient

ψ ds, ψ qs, ψ qr, ψ dr :

D-q axis flux

ω r :

Rotor speed

ω s :

Synchronous speed

ω sl :

Slip Speed

τ R :

Rotor time constant


  1. Bose BK (2002) Modern power electronics and AC drives. Prentice Hall, Upper Saddle River, pp 70–74

    Google Scholar 

  2. Odhano SA, Pescetto P, Awan HAA, Hinkkanen M, Pellegrino G, Bojoi R (2019) Parameter identification and self-commissioning in AC motor drives: a technology status review. IEEE Trans Power Electron 34(4):3603–3614

    Article  Google Scholar 

  3. Tang J, Yang Y, Blaabjerg F, Chen J, Diao L, Liu Z (2018) Parameter identification of inverter-fed induction motors: a review. Energies 11(9):2194

    Article  Google Scholar 

  4. Chandra BM, Prasantlr BV, Manindher KG (2018) A review on parameter estimation techniques in decoupling control of induction motor drive. In: 2018 4th international conference on electrical energy systems (ICEES), Chennai, India, 7–9 Feb. 2018.

  5. Maiti S, Chakraborty C, Hori Y, Ta MC (2008) Model reference adaptive controller-based rotor resistance and speed estimation techniques for vector controlled induction motor drive utilizing reactive power. IEEE Trans Ind Electron 55(2):594–601

    Article  Google Scholar 

  6. Kan J, Zhang K, Wang Z (2015) Indirect vector control with simplified rotor resistance adaptation for induction machines. IET Power Electron 8(7):1284–1294

    Article  Google Scholar 

  7. Cao P, Zhang X, Yang S (2017) A unified-model-based analysis of MRAS for online rotor time constant estimation in an induction motor drive. IEEE Trans Ind Electron 64(6):4361–4371

    Article  Google Scholar 

  8. Yang S, Ding D, Li X, Xie Z, Zhang X, Chang L (2017) A novel online parameter estimation method for indirect field oriented induction motor drives. IEEE Trans Energy Convers 32(4):1562–1573

    Article  Google Scholar 

  9. Zamboti Fortes M, Hugo Ferreira V, Palma Francisco Coelho A (2013) The induction motor parameter estimation using genetic algorithm. IEEE Lat Am Trans 11(5):1273–1278

    Article  Google Scholar 

  10. Awadallah MA (2008) Parameter estimation of induction machines from nameplate data using particle swarm optimization and genetic algorithm techniques. Electr Power Compon Syst 36(8):801–814

    Article  Google Scholar 

  11. Wu RC, Tseng YW, Chen CY (2018) Estimating parameters of the induction machine by the polynomial regression. Appl Sci 8(7):1073

    Article  Google Scholar 

  12. Chaturvedi DK, Singh MP (2019) Online equivalent circuit parameter estimation of three-phase induction motor using ANN. J Inst Eng Ser B 100(4):343–347

    Article  Google Scholar 

  13. Jirdehi MA, Rezaei A (2016) Parameters estimation of squirrel-cage induction motors using ANN and ANFIS. Alex Eng J 55(1):357–368.

    Article  Google Scholar 

  14. Wlas M, Krzeminski Z, Toliyat HA (2008) Neural-network-based parameter estimations of induction motors. IEEE Trans Ind Electron 55(4):1783–1794

    Article  Google Scholar 

  15. Karanayil B, Rahman MF, Grantham C (2007) Online stator and rotor resistance estimation scheme using artificial neural networks for vector controlled speed sensorless induction motor drive. IEEE Trans Ind Electron 54(1):167–176

    Article  Google Scholar 

  16. Çetin O, Dalcalı A, Temurtaş F (2020) A comparative study on parameters estimation of squirrel cage induction motors using neural networks with unmemorized training. Eng Sci Technol Int J 23(5):1126–1133

    Google Scholar 

  17. Dubey AK, Jain V (2019) Comparative study of convolution neural network’s relu and leaky-relu activation functions. Applications of Computing, Automation and Wireless Systems in Electrical Engineering, pp 873–880

  18. Kingma DP, Ba J (2014) Adam: a method for stochastic optimization. arXiv preprint arXiv:1412.6980

  19. Gao Z, Habetler TG, Harley RG (2009) A complex space vector approach to rotor temperature estimation for line-connected induction machines with impaired cooling. IEEE Trans Ind Electron 56(1):239–247

    Article  Google Scholar 

  20. Zhang P, Du Y, Habetler TG, Lu B (2011) Magnetic effects of DC signal injection on induction motors for thermal evaluation of stator windings. IEEE Trans Ind Electron 58(5):1479–1489

    Article  Google Scholar 

  21. Ying Wu, Gao H (2006) Induction-motor stator and rotor winding temperature estimation using signal injection method. IEEE Trans Ind Appl 42(4):1038–1044

    Article  Google Scholar 

  22. Sonnaillon MO, Bisheimer G, De Angelo C, García GO (2010) Online sensorless induction motor temperature monitoring. IEEE Trans Energy Convers 25(2):273–280

    Article  Google Scholar 

  23. Wang H, Ge X, Yue Y, Liu Y-C (2020) Dual phase-locked loop-based speed estimation scheme for sensorless vector control of linear induction motor drives. IEEE Trans Ind Electron 67(7):5900–5912

    Article  Google Scholar 

  24. Davari SA, Wang F, Kennel RM (2018) Robust deadbeat control of an induction motor by stable MRAS speed and stator estimation. IEEE Trans Ind Inf 14(1):200–209

    Article  Google Scholar 

  25. Chen J, Huang J, Sun Y (2019) Resistances and speed estimation in sensorless induction motor drives using a model with known regressors. IEEE Trans Ind Electron 66(4):2659–2667

    Article  Google Scholar 

  26. Zaky MS, Metwaly MK, Azazi HZ, Deraz SA (2018) A new adaptive SMO for speed estimation of sensorless induction motor drives at zero and very low frequencies. IEEE Trans Ind Electron 65(9):6901–6911

    Google Scholar 

  27. Benbouzid (2003) The HG diagram model for induction motors analysis: theoretical approach and applications. Electr Power Compon Syst 31(3):211–239

    Article  Google Scholar 

  28. Bhowmick D, Manna M, Chowdhury SK (2018) Estimation of equivalent circuit parameters of transformer and induction motor from load data. IEEE Trans Ind Appl 54(3):2784–2791

    Article  Google Scholar 

  29. Lee K, Frank S, Sen PK, Polese LG, Alahmad M, Waters C (2012) Estimation of induction motor equivalent circuit parameters from nameplate data. In: 2012 North American power symposium (NAPS), Champaign, IL, USA, 9–11 Sept. 2012.

  30. Uzair M, Jamil N (2020) Effects of hidden layers on the efficiency of neural networks. In: 2020 IEEE 23rd international multitopic conference (INMIC). IEEE. Bahawalpur, Pakistan, 5–7 Nov. 2020, pp 1–6.

  31. Panchal FS, Panchal M (2014) Review on methods of selecting number of hidden nodes in artificial neural network. Int J Comput Sci Mob Comput 3(11):455–464

    MathSciNet  Google Scholar 

Download references


We would like to thank Mr. Rakesh Das for his generous help for development of the hardware system.


This is a self-sponsored project. There is no source of any funding for this research from any other external resources.

Author information

Authors and Affiliations



The theory has been developed, and also the simulation and practical verification of the work is being done by the corresponding author. Prof (Dr) J.N. Bera has supervised the entire work. Both authors read and approved the final manuscript.

Authors' information

Tista Banerjee received a B.Tech. degree in electrical engineering from Techno India in 2006, M.Tech. in electrical engineering from the University of Calcutta, in 2008. She has worked as an Assistant Professor in the College of Engineering and Management Kolaghat (2008–2009) and at B.P.Poddar Institute of Management and Technology, (2009–2017). Her research interest is on power electronics and control systems.

Jitendra Nath Bera is associated with the Department of Applied Physics of the University of Calcutta, Kolkata. He has obtained his B.Tech. and M.Tech. degrees from the University of Calcutta and Ph.D. degrees from Jadavpur University. He has more than 35 in national and international journals. His research areas include Power Electronics, Smart Grid, Electrical Machines, control system wireless communication, and Embedded Systems.

Corresponding author

Correspondence to Tista Banerjee.

Ethics declarations

Competing interests

The authors, Tista Banerjee and Prof. (Dr.) J.N. Bera, declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Banerjee, T., Bera, J.N. Online equivalent parameter estimation using BPANN controller with low-frequency signal injection for a sensorless induction motor drive. Journal of Electrical Systems and Inf Technol 9, 20 (2022).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • IFOC
  • Parameter estimation
  • Space vector modulation
  • H-G diagram
  • Adam
  • Small-signal injection
  • Speed estimation