## Figures

## Abstract

A sensorless algorithm was developed to predict rotor speeds in an electric three-phase induction motor. This sensorless model requires a measurement of the stator currents and voltages, and the rotor speed is predicted accurately without any mechanical measurement of the rotor speed. A model of an electric vehicle undergoing acceleration was built, and the sensorless prediction of the simulation rotor speed was determined to be robust even in the presence of fluctuating motor parameters and significant sensor errors. Studies were conducted for varying pulse width modulator resolutions, and the sensorless model was accurate for all resolutions of sinusoidal voltage functions.

**Citation: **Marko MD, Shevach G (2017) Sensorless Modeling of Varying Pulse Width Modulator Resolutions in Three-Phase Induction Motors. PLoS ONE 12(1):
e0168149.
https://doi.org/10.1371/journal.pone.0168149

**Editor: **Yongtang Shi,
Nankai University, CHINA

**Received: **May 25, 2016; **Accepted: **November 25, 2016; **Published: ** January 11, 2017

This is an open access article, free of all copyright, and may be freely reproduced, distributed, transmitted, modified, built upon, or otherwise used by anyone for any lawful purpose. The work is made available under the Creative Commons CC0 public domain dedication.

**Data Availability: **All relevant data are within the paper and its Supporting Information files.

**Funding: **This effort is funded by the In-house Laboratory Independent Research (ILIR) project “Sensorless Failover Design in High Criticality / High Performance Applications.” The funder had no role in study design, data collection and analysis, or preparation of the manuscript.

**Competing interests: ** The authors have declared that no competing interests exist.

## Introduction

Electric motors were an important component of industry for well over 100 years, and especially so today. Electric motors are advantageous as they are extremely efficient, environmentally friendly, and are simple to control; much more than mechanical engines that often require complex transmissions. As a result, today electric vehicles (ELV) are becoming more and more available on the road, with hybrids such as the Toyota Prius, plug-in hybrids such as the Chevy Volt, and all-electric cars such as the Tesla becoming much more mainstream on the roads. The US Navy is heavily invested in electric motors for the modern Ford (CVN-78) Class aircraft carrier, with the new Advanced Arresting Gear (AAG) and Electromagnetic Aircraft Launch System (EMALS) utilizing many new motor technologies to improve aircraft launch and recovery. Finally, while subways have used electric motors for well over a century, today advance high-speed trains are being built all over the world. With every passing year, society becomes more and more dependent on the benefits of electric motor technology.

By far the biggest advantage of electric motors is that they are relatively easy to control. Most mechanical engines, whether internal combustion, gas turbine, or steam driven, all require a complex mechanical transmission to give the operator some level of control of the final speed and torque output of the engine. The speed and torque of an electric motor, however, can be controlled by simply adjusting the magnitude and frequency of the power input. One common tool for electric motor control is a Pulse Width Modulator (PWM), which can be used to control the input electric frequency, which can control torque and speed [1]. It is essential to fully understand all of the effects of the PWM in order that a proper control algorithm can be developed for the electric motor.

One important feature of electric motor technology is the ability to have sensorless control. In any motor controller, it is necessary to know the rotor position and speed in order to determine what electric inputs to use for the given application. In an ELV, for example, the cruise control or the driver may want to increase or decrease the motor power depending on the motor speed. An external speed sensor and encoder can be used to measure the rotor speed, but such a system will take up space and weight, as well as be a potential point of failure on an electric motor system. If the encoder is replaced with a sensorless approach that only measures the motor current to determine the speed, the system may be built smaller and more compact. If the sensorless approach is used in combination with a speed encoder, the sensorless system can provide information on the current in real time, which helps to alert the user if there is an issue with the electric motor system. Finally, adding the sensorless approach to complement a traditional encoder adds redundancy to the system in the event of encoder failure.

There have been numerous previous journal publications on sensorless approaches for electric motors [2–18], and even for three-phase motors [19–21]. These modeling approaches, however, have overwhelmingly been analytical, with little focus on the effects of the PWM. The PWM has a series of discrete pulses, with a fixed resolution, where the direct current input can be either on or off. There are several PWM approaches [1], but they result in an approximation of an electric voltage cycle; the greater the PWM resolution, the more the electric current represents a sinusoidal waveform. This effort will seek to model the input current, not as a waveform, but as the discrete components one can expect in a PWM waveform of finite resolution.

## Electric Motor Model

This effort will seek to model a three-phase electric induction motor, created from DC power modified by a PWM, in order to compare and test out any sensorless algorithm. In three-phase electric power, there are three alternating voltage legs offset by 120°, where
(1)
where *U*_{M} (volts) is the average voltage amplitude, and *ω*_{f} (radians/s) is the electric voltage angular frequency.

In order to simplify the motor analysis, a Park Transform [1] is performed to convert the voltage and current into two separate values instead of three. A Park Transform matrix is defined as
where is the Park Transform matrix, and *θ* is the reference angle. For a stationary reference frame *θ* = 0, which will be used throughout this effort, the Park Transform is simply
and thus this matrix can be applied towards the three-phase voltage vector with the values defined in Eq (1) (2)
where
and where
Just so long as the three-phase input is balanced, where all three legs are of equal magnitude and separated by 120°, the Park Transform can convert three separate voltage values to two, which simplifies the motor analysis.

The Park Transform is used to convert the three-phase currents into two separate values; referred to as the *quadrature* and *direct* axis components. Throughout the analysis, there are two voltages within the stator *u*_{qs} and *u*_{ds}, two voltages within the rotor *u*_{qr} and *u*_{dr}, two currents within the stator *I*_{qs} and *I*_{ds}, and two currents within the rotor *I*_{qr} and *I*_{dr}. During the motor simulation, all of the voltage and current parameters in the rotor and stator from the previous time-step are known and used in the analysis, along with the true rotor speed. For the sensorless prediction, however, the algorithm can only work with measurable properties such as the voltage and current in the stator; the rotor currents obviously cannot be measured directly, and the goal of the algorithm is to determine the unknown rotor speed.

The next step is to calculate the quadrature and direct axis components of the rotor voltage with the known rotor speed *ω*_{r} (rad/s), rotor and stator currents from the previous time-step, as well as the new stator voltages in the next time-step. The zero-axis component is not necessary in this specific model for predicting the torque. The current rates of changes start off as zero, and go into and out of the model
(3) (4)
and the rotor voltages can be used to calculate the rate of change of the (quadrature and direct axis) rotor and stator currents
(5)
where the voltage and current vectors are
and the matrices in Eq (5) are defined as
where the values of these parameters are defined as
(6) (7) (8) (9)
where *R*_{r} (Ω) is the rotor resistance, *R*_{s} (Ω) is the stator resistance, *L*_{ms} (Henry) is the stator magnetizing inductance, *L*_{ls} (Henry) is the stator leakage inductance, and *L*_{lr} (Henry) is the rotor leakage inductance.

The change in current is calculated simply by
(10)
The model uses iteration to converge on both the previous time-step current *I*_{0} and current rate-of-change . The initial guess for the new time-step is simply the current data from the previous time-step.

Throughout the motor simulation, the motor parameters are offset by a random fluctuation. In any practical application, the motor parameters will always fluctuate from the published or measured values, and therefore in order to test the robustness of the model, the simulation will offset the simulated motor parameters by a specified amount (typically 5%); these offset parameters will *not* be used within the sensorless algorithm. The motor fluctuation equation is
(11)
where Θ is a transient arbitrary motor property, Θ_{0} is a arbitrary motor property as it is specified, *ϵ* (%) is the percent random error that will be simulated, and *δ* is a random number ranging from 0 to 1.

Finally, once the rotor and stator current are determined, the motor torque *T*_{motor} (N ⋅ m) can be calculated
(12)
where *P* is the number of poles in the motor. This torque can be used to determine the change in speed on the rotor and ultimately the vehicle powered by the motor.

## Sensorless Algorithm

All of the equations in the previous section are to accurately model a three-phase electric motor for a given electrical input; all of the parameters including the motor parameter fluctuation, the rotor speed, and the rotor voltages and currents were used in the motor model. The goal of the sensorless algorithm is, however, to determine the rotor speed that is unknown to the motor controller. It is obviously impossible to measure the rotor voltage and current in real time, but the stator currents can be measured and compared with the controller input voltages. The goal of the sensorless algorithm will be to attempt to determine the unknown rotor speed, rotor voltage, and rotor current, from the measured and known stator input voltage out of the PWM, as well as the stator current (which can be physically measured in real time) determined by the motor model.

The sensorless algorithm first will attempt to determine the rotor currents; this can be determined from the stator flux. The rate of change of the stator flux can be calculated from known stator voltages and currents (13) (14) and the stator flux can be determined from the calculated rate of change (15) (16) and the flux is tracked throughout the simulation. At any point of no voltage, such as at the start of the simulation, the flux is initially assumed to be zero. Once the stator flux is predicted, the rotor current can be calculated (17) (18) and the rotor current predicted value is tracked throughout the simulation. Unlike the stator flux, the rotor flux is not useful in this sensorless algorithm, but it can nevertheless be determined with the rotor currents (19) (20)

Looking at Eq (5), a function for the rotor speed (rad/s) can be found provided one knows all of the voltages. The stator voltages are known, but the rotor voltages need to be predicted. If the rotor speed is known, the rotor voltages can be calculated with Eqs (3) and (4), but since the rotor voltage is not known, the sensorless algorithm splits these equations into terms that are and are not a function of the rotor speed (21) and (22) These terms can be used to find new voltage vectors and and these new voltage vectors can be plugged into the equation for the rate of change of the current (Eq (5)) (23) which can be separated into (24) and thus the rotor speed can be separated out as (25)

## Model Parameters

This effort is not seeking to model a particular ELV; only an arbitrary scenario to demonstrate this sensorless algorithm and how it’s accuracy is immune to both variation in the PWM resolution, as well as random fluctuations of the voltage and current sensors. For the sake of this arbitrary simulation, an ELV will be modeled, where the controller will ramp up the speed from 0 to 100 mph over 5 minutes, in 30 second increments of 10 mph. The speed will be predicted based solely on measurements of the stator voltages and currents, and the overall distance traveled will be compared to the integrated velocity predicted by the stator voltages and currents. The voltage will be set to the maximum 10 kV when accelerating, and a cruising voltage of 2.5 kV will be applied when the predicted voltage is within 5% of the cruising speed.

In addition, a random hill function is applied to adjust the gravity force accelerating or decelerating the EVL; the standard deviation of the random hill grade is ±17.3184°, while the maximum hill angle possible is ±30°. When the angle is known, a vehicle (and thus rotor) acceleration / deceleration is applied from the force of gravity
(26)
where *θ* is the random hill angle, *g* is the gravitational acceleration of 9.81 m/s^{2}, and *a*_{hill} (m/s^{2}) is the accelation / deceleration of the ELV due to the random hills on the road. This can be modified to represent an angular acceleration
(27)
where *M*_{car} (kg) is the mass of the ELV, *D*_{W} (m) is the diameter of the tire, and (rad/s^{2}) is the angular acceleration of the wheel axial due to the randomly fluctuating hill.

Finally, the model will use a drag coefficient, applying a decelerating force proportional to the square of the forward speed
(28)
where *ω*_{RPM} is the rotor speed in revolutions per minute, and *K*_{drag} is an arbitary coefficient for drag
(29)
where *ρ* (kg/m^{3}) is the density, *A* (m^{2}) is the surface area, and *C*_{D} is the dimensionless drag coefficient; for the vehicle’s shape, *C*_{D} is a function of the dimensionless Reynolds Number. In this simulation, the drag coefficient is set at *K*_{drag} = 2 N/RPM^{2}.

A parametric study of the sensorless model under varying conditions was performed. Each 5 minute run was conducted with a consistent time step of 5 milliseconds, but with varying PWM resolutions that ran from 20 Hz to 200 Hz in increments of 20 Hz; varying PWM angular functions are simulated in Fig 1. These PWM resolutions and the time-step were selected due to the simulated electric motor frequency of 6 Hz. To further test the robustness of the sensorless algorithm, after every minute of simulation, the overall motor parameters would fluctuate randomly by 1%; the adjusted motor parameters would be unknown to the sensorless prediction algorithm. Finally, the error range was varied in 5% to 45% in increments of 10%; this percent error was randomly applied to the measured stator voltages and currents at each time step, to validate the robustness of the prediction method. These fifty independent computation tests were validated by comparing the integrated simulated and predicted distances traveled at every time step increment.

## Model Results

In each of these fifty simulations, at each of the 60,000 time steps, the distance traveled was calculated by numerically integrating the true analytical velocity. A second, predicted distance was determined by numerically integrating the velocity predicted by the measured stator voltage and current. It is qualitatively obvious in Fig 2a that the predicted velocity at each specific time-step will vary considerably to the actual velocity; however, the numerically integrated distance traveled was observed in Fig 2b to match remarkably.

At every time-step, the percent error of the distance traveled was calculated. The sensorless algorithm is considered to have matched if the predicted distance traveled varied from the actual distance traveled by more than 0.01%. As observed in Table 1, the predicted integrated distance traveled matches remarkably; only a few percentage points of time-steps varied more than this threshhold! There was an expected increase in error with increasing voltage and current sensor fluctuation; this error was very minor, as the prediction method managed to correct itself. In addition, the sensorless prediction method had no discernable change in error rate with differing PWM fluctuations, even as the PWM resolution was increased by an order of magnitude. This parametric study has demonstrated the robustness of this prediction method for determining the velocity and distance traveled by a vehicle, without having direct measurements of the wheel speed.

## Conclusion

This effort succeeded in first building a numerical motor model [1] to replicate the controls on an arbitrary ELV traveling through random hilly conditions. A sensorless rotor-speed prediction algorithm was then developed, which used analytical equations [1, 2, 4, 19–21] to predict the change in stator flux, which could be used to predict (based on the previous time step flux) the stator flux. This flux can be used to predict the rotor currents, which are ultimately used to predict the rotor voltages, flux, and most importantly the unknown rotor speed. This method allows the motor controller to have redundancy on the rotor speed sensor, or even disregard it if the size and weight are an issue; the only measurements needed were the stator voltage and currents.

Of course, sensorless motor modeling is nothing new [1–21]. What makes this technique unique is the emphasis on AC signals that are not quite sinusoidal due to limits in the resolution of the PWM. This sensorless prediction method has been validated to be extremely robust even in the presence of unknown motor fluctuations, with voltage and current sensors fluctuating up to 45% of the true value, and it can be used for any PWM output. Provided the sensorless time-step is small enough, the sensorless model can work with any alternating electrical current function provided it is separated into three separate legs. As a result, this technique, which only requires a computer and a voltage and current sensor in the motor’s stator, can contribute greatly to ensuring greater reliability and safety for critical applications of three-phase induction motor controllers.

## Supporting Information

### S1 File. MatLab Source Code.

A PDF file of all of the MatLab source code used in this study.

https://doi.org/10.1371/journal.pone.0168149.s001

(PDF)

## Acknowledgments

The authors would like to thank Jason Hamant, Norman Chan, Igor Bezsonov, Mark Husni, and the NAVAIR Technology Office. This effort is funded by the In-house Laboratory Independent Research (ILIR) project “Sensorless Failover Design in High Criticality / High Performance Applications.”

## Author Contributions

**Conceptualization:**GS.**Formal analysis:**MDM.**Funding acquisition:**GS.**Investigation:**MDM.**Methodology:**MDM.**Project administration:**GS.**Resources:**GS.**Software:**MDM.**Supervision:**GS.**Validation:**MDM.**Visualization:**MDM.**Writing – original draft:**MDM.**Writing – review & editing:**MDM.

## References

- 1.
Lyshevski SE. Electromagnetic systems, electric machines, and applied mechatronics. 2000 N.W. Corporate Blvd, Boca Raton, Florida 33431: CRC Press LLC; 1999.
- 2. Tajima H, Hori Y. Speed Sensorless Field-Orientation Control of the Induction Machine. IEEE Transactions on Industry Applications. 1993;29(1):175–180.
- 3. Lascu C, Boldea I, Blaabjerg F. A Modified Direct Torque Control for Induction Motor Sensorless Drive. IEEE Transactions on Industry Applications. 2000;36(1):122–130.
- 4. Furuhashi T, Sangwongwanich S, Okuma S. A Position-and-Velocity Sensorless Control for Brushless DC Motors Using an Adaptive Sliding Mode Observer. IEEE Transactions on Industry Applications. 1992;39(2):89–95.
- 5. Kubota H, Matsuse K. Speed Sensorless Field-Orientation Control of the Induction Machine. IEEE Transactions on Industry Applications. 1993;29:175–180.
- 6. Jansen PL, Lorenz RD. A Physically Insightful Approach to the Design and Accuracy Assessment of Flux Observers for Field Oriented Induction Machine Drives. IEEE Transactions on Industry Applications. 1994;30(1):101–110.
- 7.
Senjyu T, Uezato K. Adjustable Speed Control of Brushless DC Motors without Position and Speed Sensors. IEEE IAS Conference on Industrial Automation and Control: Emerging Technologies. 1995; p. 160–164.
- 8.
Johnson JP, Ehsani M, Giizelgiinler Y. Review of Sensorless Methods for Brushless DC. Industry Applications Conference. 1999; p. 143–150.
- 9. Chen Z, Tomita M, Doki S, Okuma S. New Adaptive Sliding Observers for Position-and Velocity-Sensorless Controls of Brushless DC Motors. IEEE Transactions on Industrial Electronics. 2000;47(3):582–591.
- 10. Kim TH, Ehsani M. Sensorless Control of the BLDC Motors From Near-Zero to High Speeds. IEEE Transactions on Power Electronics. 2004;19(6):1635–1645.
- 11.
Ying M, Zaiping P. A Novel Starting Method of Sensorless BLDC Motors for Electric Vehicles. International Conference on Electrical and Control Engineering. 2010; p. 3212–3215.
- 12. Damodharan P, Vasudevan K. Sensorless Brushless DC Motor Drive Based on the Zero-Crossing Detection of Back Electromotive Force (EMF) From the Line Voltage Difference. IEEE Transactions on Energy Conversion. 2010;25(3):661–668.
- 13.
Chern TL, Pan PL, Chern YL, Tsay DM. Sensorless Speed Control of BLDC Motor Using Six Step Square Wave and Rotor Position Detection. IEEE Conference on Industrial Electronics and Applicationsis. 2010; p. 1358–1362.
- 14.
Makiela D. Sensorless Control of High-Speed PM BLDC Motor. IEEE International Symposium on Industrial Electronics. 2011; p. 722–727.
- 15. Noroozi MA, Moghani JS, Dehnavi A. A Sensorless Direct Speed Control for Brushless DC Motor Drives. Power Electronics Drive Systems and Technologies Conference. 2013;4:26–30.
- 16. Rashed M, MacConnell PFA, Stronach AF, Acarnley P. Sensorless Indirect-Rotor-Field-Orientation Speed Control of a Permanent-Magnet Synchronous Motor With Stator-Resistance Estimation. IEEE Transactions on Industrial Electronics. 2007;54(3):1664–1675.
- 17. Zhang Y, Zhu J, Zhao Z, Xu W, Dorrell DG. An Improved Direct Torque Control for Three-Level Inverter-Fed Induction Motor Sensorless Drive. IEEE Transactions on Power Electronics. 2012;27(3):1502–1513.
- 18. Areed FG, Haikal AY, Mohammed RH. Adaptive neuro-fuzzy control of an induction motor. Ain Shams Engineering Journal. 2010;1:71–78.
- 19. Consoli A, Musumeci S, Raciti A, Testa A. Sensorless Vector and Speed Control of Brushless Motor Drives. IEEE Transactions on Industrial Electronics. 1994;41(1):91–96.
- 20. Matsui N. Sensorless DC Brushless DC Motor Drives. IEEE Transactions on Industrial Electronics. 1996;43(2):300–308.
- 21. Takahashi I, Noguchi T. A New Quick-Response and High-Efficiency Control Strategy of an Induction Motor. IEEE Transactions on Industry Applications. 1986;IA-22(5):820–827.