DOI QR코드

DOI QR Code

Sensorless Detection of Position and Speed in Brushless DC Motors using the Derivative of Terminal Phase Voltages Technique with a Simple and Versatile Motor Driver Implementation

  • Carlos Gamazo Real, Jose (Dept. of Signal Theory, Communications and Telematics Engineering, University of Valladolid) ;
  • Jaime Gomez, Gil (Dept. of Signal Theory, Communications and Telematics Engineering, University of Valladolid)
  • Received : 2014.07.04
  • Accepted : 2015.01.29
  • Published : 2015.07.01

Abstract

The detection of position and speed in BLDC motors without using position sensors has meant many efforts for the last decades. The aim of this paper is to develop a sensorless technique for detecting the position and speed of BLDC motors, and to overcome the drawbacks of position sensor-based methods by improving the performance of traditional approaches oriented to motor phase voltage sensing. The position and speed information is obtained by computing the derivative of the terminal phase voltages regarding to a virtual neutral point. For starting-up the motor and implementing the algorithms of the detection technique, a FPGA board with a real-time processor is used. Also, a versatile hardware has been developed for driving BLDC motors through pulse width modulation (PWM) signals. Delta and wye winding motors have been considered for evaluating the performance of the designed hardware and software, and tests with and without load are performed. Experimental results for validating the detection technique were attained in the range 5-1500 rpm and 5-150 rpm under no-load and full-load conditions, respectively. Specifically, speed and position square errors lower than 3 rpm and between 10º-30º were obtained without load. In addition, the speed and position errors after full-load tests were around 1 rpm and between 10º-15º, respectively. These results provide the evidence that the developed technique allows to detect the position and speed of BLDC motors with low accuracy errors at starting-up and over a wide speed range, and reduce the influence of noise in position sensing, which suggest that it can be satisfactorily used as a reliable alternative to position sensors in precision applications.

Keywords

1. Introduction

BLDC motors are increasingly being used in different areas such as industry, residential and automotive applications, mainly because of their advantages over traditional brushed DC and induction motors. Better speed and torque characteristics, high efficiency and reliability, long operating life and noiseless operation are their most relevant features [1]. Different types of position sensors such as encoders, resolvers and Hall sensors are used for achieving a proper motor commutation in these applications. Sensors are commonly mounted inside the motor, so they are subjected to stressful operating conditions, and position measurements could be deteriorated. In order to overcome the disadvantages of rotor position sensors, sensorless techniques have arisen in recent years [2].

There are many categories of sensorless methods [1], such as zero crossing detection of back electromotive force (BEMF) [3, 4], third harmonic voltage sensing of BEMF [5, 6; 7], detection of free-wheeling diodes [8], integration of BEMF [9] and phase current sensing [10]. Advanced sensorless techniques are estimation and model-based methods such as sliding-mode observer [11], Extended Kalman Filter [12], adaptative observers [13, 14] and artificial neural networks [15]. The most common signals considered in position sensing and commutation techniques are the line to line motor voltages, motor terminal voltages in respect to the half of the DC bias, and terminal motor voltages regarding a virtual neutral point [2].

BEMF techniques have been traditionally considered for detecting the rotor position or speed [16]. However, it is difficult to detect the BEMF in a lower speed range because these signals are proportional to the rotor speed. For that reason, new detection algorithms with a simple starting procedure and high quality-cost ratio are needed for overcoming the problems of conventional techniques. In the proposed method, the position information is detected by processing the derivative of phase terminal voltages regarding to a virtual neutral point, and its precision is verified using an incremental shaft encoder. This approach makes it possible to detect the rotor position over a wide speed range, solving the problems of BEMF methods at low speeds, and to use a simple starting procedure. The effectiveness of the proposed detection technique is analyzed through the implementation of a prototype with general purpose real-time hardware and software. Experimental results are obtained in order to confirm its practical validity.

The description of the motor driver and detection system is included in section 2. In this section, all the relevant elements considered in the system are analyzed, such as the BLDC motor, three-phase inverter, controller, motor signals conditioning circuitry, and the encoder used as reference. The methodology for motor starting-up and driving are explained in section 3. Section 4 describes the detection technique, including the developed hardware and algorithms for signal conditioning and processing. Experimental results at different speeds show the validity of the method in section 5 using an encoder. Finally, paper conclusions are presented in section 6.

 

2. Detection System Description

The control and detection system is composed of different modules for motor signals acquisition, conditioning and processing. The main elements are depicted in Fig. 1, such as the equivalent circuit of a BLDC motor, a three-phase inverter with power transistors and free-wheeling diodes, the conditioning circuitry for motor phase voltages, and the processing hardware for PWM control and rotor position / speed detection through a FPGA and a real-time processor. Hardware also includes shunt resistors (Rsa, Rsb and Rsc) and conditioning circuitry for analyzing phase currents if necessary, and an encoder for position reference. An image of the developed prototype is shown in Fig. 2.

Fig. 1.Control and detection system

Fig. 2.Image of the experimental set-up

2.1 BLDC motors

The implementation has been performed using BLDC motors with iron-core and star or wye winding configuration. The selected device is Maxon EC 45 Flat with a nominal voltage of 12 V, 8 pole pairs, and without Hall sensors embedded. Additionally, two BLDC motors with a delta winding configuration, that is the neutral point is not available, have been also considered in the analysis for evaluating the performance of the inverter. These models are DPM 42BL41 and DPM 42BL100, both with a nominal voltage of 24 V, 4 pole pairs and internal Hall sensors. Their main parameters are shown in Table 1.

Table 1.Parameters of BLDC motors

A typical brushless motor with a star configuration respect to a neutral point N is shown in Fig. 1. It is considered that the motor is not saturated, iron losses are negligible, stator resistances (R) of all windings are equal, self inductances (L) are constant and mutual inductances (M) are zero [1]. Taking into account these assumptions, the motor is characterized with Eqs. (1)-(3).

where E is the trapezoidal shaped BEMF and I is the armature current through a specific phase.

However, for reducing the common mode noise that affects to terminal phase voltages [2], a virtual neutral point S has been provided with three star-connected resistors Rs, as Eqs. (4)-(6) show.

According to Eq. (7), only two motor terminal voltages regarding to the virtual neutral point are necessary for position and speed detection.

During motor operation the current flows through two phases at any instant, which leaves the third phase opened or floating. If the motor is running at a constant speed, due to the magnetic field of the motor is uniformly distributed in the air gap, this results in a BEMF with a trapezoidal shape with a magnitude proportional to the rotor speed. Considering that phases A and B are conducting and phase C is opened, Ia=−Ib, Ic=0 and Ea=−Eb [17]. Terminal voltages regarding to the virtual neutral potential are shown in Eqs. (8)-(10).

The voltage between neutral and virtual neutral points is proportional to the BEMF of the floating phase, as Eq. (11) shows, which is obtained with the combination of Eqs. (7)-(10). It explains the influence of the virtual neutral potential over the terminal voltages of the conducting phases.

2.2 Three-phase inverter

The inverter is based on a six-step sequence for stator winding commutation. At any moment, there is always a phase with its upper or lower leg in a disconnected state [18], which can be used for predicting the six rotor position instants of an electrical cycle. A mechanical cycle is proportional to a number of electrical cycles according to Eq. (12).

where TM is the mechanical period, KP is the number of rotor pole pairs, and TE is the electrical period. The proposed detection technique is validated using the motor Maxon EC 45 with KP=8, so a mechanical cycle is composed of 8 electrical cycles.

Different types of devices could be used for implementing the inverter, such as MOSFETs, IGBTs or bipolar transistors. However, the integrated half-bridge bipolar switch Texas Instruments UC2950T has been selected due to the high-current provided with low saturation voltages and low-level logic signals for enabling the device. Also, high-speed flyback diodes with a forward voltage of 1.4 V are embedded inside the bridge for the free-wheeling operation. The main switching characteristics of the device taken into account for setting the processing tasks of the controller, and generating the PWM duty cycles are included in Table 2. Another relevant advantage is the versatility of the device because of the wide range of nominal motor voltages (8 V to 35 V) that can be driven, like the 12 V and 24 V BLDC motors included in Table 1.

Table 2.Switching characteristics of the UC2950T half-bridge for 12V supply voltage

2.3 Motor signals conditioning

The proposed detection technique can use two or three terminal voltages with respect to the virtual neutral point, so hardware requirements are reduced. The common mode noise due to the virtual node S can influence on acquired signals, which is avoided by using differential amplifiers, such as Burr-Brown INA126 with a high common mode rejection ratio (94 dB) and low voltage noise (35 nV/√Hz at 1 kHz).

The use of filters is required to remove high switching frequency signals caused by the PWM inverter operation, which could result in a time delay that depends on the rotor speed and affect the dynamic performance of the drive [2]. These effects are not relevant in the developed prototype, so motor signals acquisition have been optimized using low pass filters for limiting the high frequency noise, voltage-level limiters based on Schottky Barrier diodes, and current limiting resistors.

Once each motor phase voltage is conditioned for being acquired, a specific conditioning is implemented according to the derivation method. Operational amplifiers Texas Instruments LM258AP and low-pass filters have been used for reducing the effects of high frequency components.

2.4 Controller

The core processing is based on a FPGA Xilinx Spartan-6 LX45 and a real-time processor running up to 400 MHz. Both are embedded in the board National Instruments sbRIO-9636 with high signal integrity characteristics. For interfacing with the motor driver, the controller includes 16 analog inputs, 4 analog outputs and 24 digital I/O lines.

The system runs in open-loop for motor starting and in closed-loop for precision applications, such as rotary mechanical tools, robotics arms or aerodynamic surfaces. In these cases a PI or fuzzy controller could be introduced for improving the system stability [19].

2.5 Position sensor

An incremental encoder Kübler 2400 with 1024 pulses per revolution has been included in the prototype. It is only used as a reference for analyzing and contrasting the position and speed precision errors of the proposed detection method, where 1024 pulses corresponds to 360 mechanical degrees and the resolution is 360º/1024=0.35º.

 

3. Motor Driving and Starting Procedure

This section describes the procedure for starting the motor from standstill and driving until a reference speed is reached.

3.1 Description of sequential motor control

The three phase motor is driven through a six-step switching sequence. However, one electrical cycle may not correspond to a complete mechanical revolution of the rotor. This is determined with the number of rotor pole pairs according to Eq. (12). Considering the Maxon EC 45 motor, one mechanical cycle is equivalent to 8 electrical cycles and the resolution of detection method is 7.5º (mechanical degrees), which is demonstrated in Eqs. (13)-(14).

where RE is the resolution per electrical cycle, NC is the electrical cycles per mechanical revolution, RT is the resolution of the proposed detection technique and Ns is the switching steps per electrical cycle. For the implemented prototype with Maxon EC 45 motor: NC=8, NS=6, RE=45º and RT=7.5º.

The sequence for activating the power switches Q1 to Q6 for clockwise motor rotation is shown in Table 3. The rotor position in electrical and mechanical degrees for Maxon EC 45 motor is only included for the first electrical cycle of one mechanical revolution.

Table 3.Sequence for clockwise rotation and rotor position in electrical and mechanical degrees

3.2 PWM motor driving

PWM signals (PWM1 to PWM6) are connected to the base of the power transistors in Fig. 1, and are switched on/off according to the sequence indicated in Table 3. For varying the speed, the voltage across the motor must be modified, which could be achieved by changing the duty cycle of the PWM signals or configuring the commutation period between phases TC with a fixed PWM frequency and duty cycle. When the duty cycle is modified, the average voltage supplied to the stator changes, thus affecting the speed. However, the variation of PWM duty cycle is limited by the switching characteristics of active power devices, whose switching period is determined by turn-on and turn-off delays. These restrictions can be overcome if the device switching period is fixed at the minimum level and the speed is controlled by changing the commutation period between phases.

One advantage of using PWM signals for controlling the motor is the flexibility for hooking up motors with different rated voltages. It is achieved owing to the average voltage output of the controller can be matched to the motor rated voltage by limiting the percent of PWM duty cycle. With this consideration, PWM techniques are very important in the controller design for a low noise operation and running at higher speeds [1]. Because of only two out of three phases are excited at any instant time, the BLDC motor can be driven with different PWM configurations [20]. PWM signals could be only applied on the high side switch and the low side is active during the step, PWM applied on the low side switch and high side enabled during the step, or PWM applied on both sides and switched on / off together [21, 22]. Other special PWM techniques could be applied for reducing the influence of the switching noise in the position sensing and optimizing the rotor position tracking at low speeds. This improvement can be achieved by splitting the active period of each switch into two intervals, so each switch is held in on state during the first interval and PWM switching is executed during the second [4].

The controller has been designed for applying PWM signals on both sides. Frequency and duty cycle configuration of PWM signals has been optimized according to the switching characteristics of UC2950T devices summarized in Table 2. A PWM frequency of 20 kHz and a duty cycle of 50% have been selected after different evaluation tests. The rotor speed ωR is configured by changing the commutation period between phases TC, so for a higher speed a lower period is needed. PWM signals have been designed for being generated with the FPGA processing board sbRIO-9636 with an output high level of 3.3 V. Fig. 3 illustrates this procedure with a duty cycle D=TON /TPWM ; where TON is fixed at the optimum switching time of power devices and TC is varied for different speeds.

Fig. 3.PWM procedure for configuring the rotor speed ωR in the experimental set-up.

3.3 Starting from standtill

The problem of conventional open-loop start-up methods exists when the motor is at standstill or operates at low speeds. In this situation, phase voltages have not an enough level and the signal-to-noise ratio is too small, so it is very difficult to get the position information from the motor. The most common method for solving this problem is the open-loop start-up with three states: alignment, open-loop starting and open-loop speed control mode [23]. When the motor is running at a minimum speed, motor signals have a detectable level and a closed-loop control mode can be applied [24]. Other methods are based on the saturation effect of the stator iron core [25] or in a 180-degree commutation scheme [26] for improving the use of machine capacity regarding to the 120-degree method.

The estimation of the rotor initial position plays a relevant role for a stable starting with maximum torque in order to reduce the start-up time. A simplified open-loop starting is accomplished by providing switching signals to motor with a frequency ramp model based on the sequence shown in Table 3. The rotor is linearly accelerated up to a reference speed, which is more effective and easier to implement than other techniques for similar applications [2]. Some of the traditional drawbacks of this type of techniques, such as the oscillation of the rotor speed with a temporary reverse rotation [25], are not relevant enough in the current implementation.

In a traditional BEMF-based method, a minimum speed level is needed before position detection since the BEMF voltage is proportional to the rotating speed [17]. However, the proposed detection technique does not depend on the BEMF level and only phase voltage changes are considered. In this paper, an open-loop ramping control scheme is adopted to accelerate the motor without using a previous alignment, which simplifies the starting. The rotor position and speed are detected with enough precision at very low speeds, so the commutation signal could be estimated accurately near to standstill and a closed-loop scheme can be applied. Fig. 4 illustrates the speed ramp used in the experimental set-up for accelerating up to a reference speed of 1450 rpm.

Fig. 4.Starting speed ramp up to 1450 rpm

The start-up algorithm has been implemented in the processing board sbRIO-9636 in order to achieve a real-time and deterministic behavior. The generation of PWM signals is embedded in a FPGA Spartan 6 with a clock frequency of 40 MHz, obtaining a precise PWM cycle with setup and hold times lower than 50 ns. The control sequence of power switches indicated in Table 3 is integrated in a real-time processor.

The flow chart of the starting algorithm is included in Fig. 5. The motor is accelerated by increasing the speed according to a ramp shape, whose slope determines the acceleration up to the limit speed. The prototype is configured for a slope with unit value, as Fig. 4 shows. Depending upon the application, other slopes could be selected for starting the motor faster or slower. When the speed limit is reached, the motor rotates at this speed in steady mode. A pink circle indicates the loop for generating PWM signals at 20 kHz and 50% duty cycle using the FPGA. These signals are transmitted to the inverter switches for performing the commutation. A new electrical cycle starts if the sequence counter reaches NS−1 iterations, and the instantaneous switching loop period is computed according to the rotor speed, as Eq. (15) indicates.

where ωi is the instantaneous motor speed in rpm.

Fig. 5.Flow chart of starting algorithm and steady running mode

 

4. Detection Technique Implementation

The derivative technique is based on applying the mathematical operation of differentiation to the phase motor voltages with a virtual neutral point as reference. The points when the motor voltage varies due to a phase commutation are detected as voltage peaks or spikes. With this approach, it is not necessary to sense noise-sensitive zero crossing points as the conventional BEMF method, so the hardware and software implementation is cost effective and less complex. In addition, two phase voltages are only needed for detecting speed and position, and the third voltage can be obtained due to the structure of the six-step sequence used for driving the motor.

4.1 Conditioning of motor signals

In order to obtain the derivative of phase voltages in real-time without the influence of processing delays, specific conditioning hardware has been developed. Based on the general scheme of Fig. 1, the hardware stages for conditioning motor phase voltages Va , Vb and Vc regarding to the virtual neutral point S and derivation spikes train are depicted in Fig. 6. Taking as reference the phase A (similar to phases B and C), the differential voltage Vas is amplified. However, switching noise is also amplified with the phase voltage, so filtering is necessary for reducing the influence of high frequency components. Voltage limiters are also included for adapting the signal to the input levels of processing board. Next, the derivative operation is applied to the amplified phase voltage, and “ghost” spikes that could be obtained from undesirable voltage level changes are filtered. This filter must be designed in order to obtain voltage spikes narrow enough (low rise and fall times) for a precise detection of phase commutations. An additional voltage level limiter is included before sending the signal dVas /dt to the processing card.

Fig. 6.Block diagram of conditioning hardware

The voltages Vas, Vbs and Vcs are used in the measurement process according to Eqs. (4)-(6), so the motor neutral reference is not considered and a relevant amount of switching noise is avoided. Due to motor voltages are differential amplified, the three motor phase voltages Va , Vb and Vc and the virtual neutral potential Vs. are assumed as inputs of the conditioning hardware module, as Eqs. (16)-(18) demonstrate.

The development of accurate and low noise signal conditioning stages is based on precision differential amplifiers Texas Instruments INA126. Fig. 7 shows only the required circuitry for the phase A (similar for phases B and C). Decoupling capacitors has been included close to the device power pin for avoiding the effect of noisy power supplies. The power supply voltage VDC is 12 V or 24 V depending on the BLDC motor nominal voltage (12 V for Maxon EC45). The gain G is set to 5 V/V for an appropriate amplification within the permissible levels. A good common-mode rejection with a low-impedance connection to reference ground terminal is ensured with this implementation. Fig. 9(a) depicts the phase voltage Va and the differential voltage Vas’. It has been verified that the voltage waveforms depicted in Fig. 9 are very similar using the prototype set-up with or without load.

Fig. 7.Differential amplification of the phase A voltage with low-pass filters and a voltage/current limiter

Fig. 9.Measured waveforms with the motor running at 75 rpm. (a) Phase voltage Va and differential filtered voltage Vas’; (b) Vas’ and derivative voltage Vas”; (c) Vas’ and filtered derivative voltage Vas’’’.

After the amplification process, phase voltages are filtered for reducing the voltage ripple, the inverter switching noise and other high frequency components on the ground terminal owing to motor currents. Filtering is composed of a conventional low-pass filter and a PI-low-pass filter in cascade. The first one reduces voltage ripples and the second one enables a fine adjustment for smoothing the current provided to the load. Eqs. (19) and (20) indicate the cut-off frequency of the first low-pass filter ( fc1) and PI-low-pass filter ( fc2), respectively, both with a voltage gain of 1. A spectral analysis through FFT has been performed for selecting both cut-off frequencies. The first filter is more restrictive, so its cut-off frequency is lower (7 kHz to 20 kHz), and the second filter has a greater frequency for attenuating spurious high-frequency components (100 kHz to 200 kHz).

Before transmitting signals to the processing board, the filtered differential voltages must be limited for avoiding damages due to overvoltages, undervoltages and over-currents. A current limiting resistor (R2) is included and a diode clamping circuit with Schottky rectifiers 1N5817 (D1, D2) is used as overvoltage / undervoltage protection (VCC =5V). Taking into account that the maximum current for measuring each voltage is 10 mA and the forward voltage (VF) of 1N5817 devices is 0.22 V for 25 ℃ operation, the valid range of Vas’ is between VCC+VF,D1 and −(VCC+VF,D2) which is 5.22 V and −5.22 V respectively.

4.2 Derivative operation

This process is the key of the detection method and a train of voltage spikes for each phase is obtained after its application. Each spike indicates when a phase commutation occurs, so after an adequate processing the rotor position and speed is extracted. The implementation is performed for obtaining real-time results and eliminating processing delays. The operational amplifier Texas Instruments LM258AP is used owing to its good characteristics of common-mode rejection ratio (80 dB) and slew rate (0.3 V/µs at unity gain) with a low input noise voltage (40 nV/√Hz). Fig. 8 illustrates the hardware implementation for the phase A (similar for phases B and C). Based on this circuit, Eq. (21) represents the derivative operation.

Fig. 8.Derivation of the differential phase voltage A with a filter and a voltage / current limiter

where the constant R3 · C3 is low enough (≈10−3) for compensating the high level of voltage spikes due to phase commutations. Fig. 9(b) shows the waveforms of Vas’ and Vas” with the motor running at 75 rpm.

The derivation voltage spikes train must have an adequate level for the subsequent FPGA processing, so filtering and level limiting are needed. The cut-off frequency of the low-pass filter (fc3) must be matched to the maximum detectable rotor speed, so in the current implementation for medium-high speeds the cut-off frequency is between 300 Hz and 1000 Hz, according to Eq. (19) with R4 and C4 instead of R1 and C1. Fig. 9(c) shows the waveforms of Vas’ and Vas’’’ at 75 rpm. The comparison of this figure regarding to Fig. 9(b) demonstrates the efficiency of filtering for removing high-frequency spurious from derivative voltage spikes.

In a similar way to the previous design, a current limiting resistor (R5) and a diode clamping circuit (D3, D4) for overvoltage/undervoltage protection are included in Fig. 8. Considering a maximum current 30 mA for transmitting the spikes train, the diode forward voltage is near to 0.25 V, so the valid range of Vas” is between −5.25 V and 5.25 V.

4.3 Processing software and algorithms

The algorithms embedded in FPGA and real-time processor for computing the rotor position and speed are explained through two flow charts.

The processing of the derivation voltage is depicted in Fig. 10. Analog voltages are acquired with an execution thread of 10 µs rate period (half of the minimum signal period as Nyquist sampling theorem exposes) with a 16-bit resolution. Voltage detectors are used for obtaining positive and negative digital pulses according to the spikes train of the derivative operation. A positive digital pulse is generated when a negative and a positive voltage spikes are detected successively. By contrast, a negative pulse is obtained if a positive and a negative voltage spikes appear, as see Fig. 12(a) depicts. For each electrical cycle six pulses are obtained, so six digital codes must be considered for the rotor position detection, as Table 4 indicates.

Fig. 10.Flow chart of the algorithm for processing the phase voltage derivation

Fig. 12.Waveforms of derivation technique processing at 75 rpm. (a) Vas, derivative voltage Vas’’’ and digital pulses for phase A. (b) Sequence pulses for phases A, B and C

Table 4.Digital sequences for clockwise rotation

The commented flow chart includes a Ghost Peak Filter for rejecting the derivation spikes that are not compliant with the digital pulse generation criteria. For instance, if two negative spikes are detected successively, the second is removed because the algorithm waits a positive spike for obtaining a positive digital pulse. The origin of ghost peaks is fluctuations in the differential phase voltage that induces incorrect derivation spikes.

The flow chart of the position/speed decoding algorithm is illustrated in Fig. 11, where the processing loop lasts 30 µs. When a new sequence code is detected, if it is validated, a new electrical sequence step is identified. The rotor position is updated according to the previous position and the resolution of Eq. (14), and the rotor speed is computed with the elapsed time for completing a mechanical cycle.

Fig. 11.Flow chart of the decoding algorithm for updating the rotor position and speed

The operation of the derivation technique for phase A is illustrated in Fig. 12(a), where negative digital pulses are included for remarking the sign of the phase voltage detected, but they are processed as ‘0’ or ‘1’. Derivation spikes are shown, and a ghost spike is also depicted, which is filtered by the processing algorithm. Fig. 12(b) depicts the processed voltages Vas and Vbs and their associated digital pulses for position detection. Pulses of phase C can be obtained taking into the voltage of phases A and B, which contributes to reduce the computing requirements. The waveforms obtained after derivation processing are very similar with or without a motor load, obviously within the admissible speed ranges. With these considerations, the performance at full-load is only analyzed at low speed.

 

5. Experimental Results and Discussion

For evaluating the performance of the detection technique, an encoder has been used for establishing speed and position references. The rotor speed and position are analyzed through tests at different speeds in order to compare the values obtained with the detection technique and the encoder. No-load tests are aimed at low-medium speeds (5-1500 rpm) due to the most relevant limitations of conventional detection methods are located in these ranges, taken into account the specific limitations under no-load or full-load conditions. The load included in the prototype set-up behaves as a motor brake, and it has been configured in full-load tests for being equivalent to a torque between 52 and 53 mNm that opposes the motor rotation (maximum continuous torque of Maxon EC 45 motor is 53.2 mNm, see Table 1). Full-load tests are only analyzed at low speeds (under 150 rpm) due to the influence of the load over the maximum torque/speed ratio of the BLDC motor.

Fig. 13 shows the evaluation of the technique with sharp speed changes with no-load (or low load). At low speeds the detected speed is similar the reference. However, when speed is increased, the technique needs a stabilization time that causes an oscillation around the reference, such as the undershoot that appears in the change from 600 rpm to 700 rpm. Fig. 14 depicts the system response from standstill to 700 rpm, and it clearly illustrates how the detection technique tracks the reference speed line with a minimum error (square error lower than 3 rpm) and small oscillations.

Fig. 13.Speed detection without load at 10 rpm, 50 rpm, 200 rpm, 350 rpm, 500 rpm, 600 rpm and 700 rpm

Fig. 14.Speed detection without load at 700 rpm from standstill

Some tests have been accomplished for testing the position detection, as Fig. 15 and Fig. 16 illustrate. Normally, the detection system needs two mechanical periods for engaging with encoder position using a linear acceleration ramp from standstill. Considering the detection case of 700 rpm, Fig. 5 indicates that reference position is reached in 6 s with this acceleration scheme. With other starting configurations, like an exponential curve, the encoder position could be reached around 1-2 s. During the reference reaching time, the rotor speed is lower than 100 rpm (around 10-20 rpm according to Fig. 14), which demonstrates that the method is fast enough for a wide range of positioning applications. If the rotor speed is relatively low, the position reference is reached faster (under 1 s) and position oscillations in steady state are reduced, as Fig. 16 shows for 125 rpm. The position square error is between 10º-30º, which improves the performance of some complex estimation methods with resolution of 30º.

Fig. 15.Position detection without load at 700 rpm

Fig. 16.Position detection without load at 125 rpm

Fig. 17 and Fig. 18 depict the speed and position tracking of the technique in the range 5-150 rpm, respectively. Multiple speeds within this range have been considered for validating the accuracy and precision at full-load. As a result, the technique follows the reference speed with a square error lower than 1 rpm, the stabilization times between speed changes are reduced, and undershoots/overshoots of speed are avoided regarding to no-load tests (see Fig. 13). The position tracking error with these conditions is between 10º-15º, according to Fig. 18.

Fig. 17.Speed detection with full-load at 5 rpm, 10 rpm, 20 rpm, 40 rpm, 60 rpm, 80 rpm, 100 rpm, 125 rpm, and 150 rpm

Fig. 18.Position detection with full-load at 5 rpm, 10 rpm, 20 rpm, 40 rpm, 60 rpm, 80 rpm, 100 rpm, 125 rpm, and 150 rpm

In addition, Fig. 19 and Fig. 20 illustrate in detail that under full-load conditions the position ramps are more linear (slopes are almost constant from 0º to 360º), and the position/speed tracking of the technique is more stable against sharp speed changes (for instance, transition from 45 rpm to 8 rpm), due to the steps of motor sequences are also more progressive and less impulse owing to the “filter” effect that provides the load, which opposes motor inertia.

Fig. 19.Speed detection with full-load at 5 rpm, 10 rpm, 20 rpm, 28 rpm, 40 rpm, and 45 rpm, with a sharp speed change from 45 to 8 rpm

Fig. 20.Position detection with full-load at 5 rpm, 10 rpm, 20 rpm, 28 rpm, 40 rpm, and 45 rpm, with a sharp speed change from 45 to 8 rpm

A detail of Fig. 17 and Fig. 19 must be clarified, where the speed tracking is only updated after finishing a full rotor mechanical cycle. This could be improved by modifying the algorithm of Fig. 11 in order to update the speed after each electrical cycle, which would provide a faster speed response. This is a common behavior with or without load, and that is the reason why the first speed step of 5 rpm starts in 13 s in both figures.

The experimental results indicate that the accuracy errors are lower with full-load tests than under no-load conditions. However, it must be taken into account than full-load tests are performed at low speeds, and position / speed errors tend to increase when the speed is higher due to the appearance of tracking faults, such as oscillations and under/over-shoots that influence over the accuracy and precision. In summary, the tests results in this section provide the evidence that the developed technique allows the estimation of the position and speed of BLDC motors (at no-load and full-load conditions) with relatively low accuracy errors over a wide speed range.

 

6. Future scope

An optimization of the proposed technique is the digital implementation of the derivative operation, including the low-pass filtering, inside the FPGA. A more advanced improvement is to pattern recognition techniques with the classifier Vector Machines (SVM) in order to consider the position and speed detection of BLDC motors as a problem of statistical learning theory, which will allow to map motor voltages to commutation signals.

 

7. Conclusion

An efficient position and speed detection technique for BLDC motors has been developed in this paper with a simple motor driver implementation and without using position sensors. Common disadvantages of methods based on sensors, such as high development and maintenance costs, are overcome with the new technique. It is based on the derivative of two or three motor terminal voltages regarding to a virtual neutral potential, and the implementation cost is minimized due to its reduced requirements with the use of general-purpose devices and a FPGA processing board. Though filters are used for avoiding the influence of inverter switching PWM signals, their effects over the dynamic performance are not relevant. Different models of motors have been considered for verifying the system, and the proposed technique has been validated in open-loop mode for starting-up in order to reach a reference speed using an improved position tracking, with and without load, over a wide speed range. In closed loop mode, it can be combined with a controller, such as PI or Fuzzy, for providing the feedback speed or position. Experimental results were performed in the range 5-1500 rpm and 5-150 rpm at no-load and full-load conditions, respectively. Speed and position square errors lower than 3 rpm and between 10º-30º were attained after no-load tests. The results with full-load tests improve the performance under no-load criteria, whose square errors are under 1 rpm and between 10º-15º for speed and position detection, respectively. Analyses performed throughout the paper and experimental results verify the effectiveness of the proposed technique for position and speed detection of BLDC motors under no-load and full-load conditions, and its operational performance regarding to similar techniques based on phase voltage sensing. The results were obtained with low accuracy errors over a relatively wide speed range, which suggest that the proposed technique is a reliable alternative to traditional sensorless detection approaches.

References

  1. J.C. Gamazo Real, E. Vázquez Sánchez, J. Gómez Gil, “Position and Speed Control of Brushless DC Motors Using Sensorless Techniques and Application Trends,” Sensors, 10, July 2010.
  2. S. Tsotoulidis, A. Safacas, “A sensorless commutation technique of a brushless DC motor drive system using two terminal voltages in respect to a virtual neutral potential,” in Proceedings of 20th Int. Conf. Elect. Mach. (ICEM), pp. 830-836, 2-5 Sept. 2012.
  3. P. Damodharan, K. Vasudevan, “Sensorless Brushless DC Motor Drive Based on the Zero-Crossing Detection of Back Electromotive Force (EMF) From the Line Voltage Difference,” IEEE Trans. Energy Convers., vol. 25, no 3, pp. 661-668, Sept. 2010. https://doi.org/10.1109/TEC.2010.2041781
  4. R. C. Becerra, T. M. Jahns, M. Ehsani, “Four-quadrant sensorless brushless ECM drive,” in Proceedings of 6th Annu. Appl. Power Electron. Conf. and Expo. (APEC), pp. 202-209, 10-15 Mar 1991.
  5. J. Moreira, “Indirect sensing for rotor flux position of permanent magnet AC motors operating over a wide speed range,” IEEE Trans. Ind. Appl., vol. 32, no. 6, pp. 1394-1401, Nov./Dec. 1996. https://doi.org/10.1109/28.556643
  6. J. X. Shen, S. Iwasaki, “Sensorless control of ultrahigh-speed PM brushless motor using PLL and third harmonic back EMF”, IEEE Trans. Ind. Electron., vol. 53, no. 2, pp. 421-428, April 2006. https://doi.org/10.1109/TIE.2006.870664
  7. P. P. Acarnley, J. F. Watson, “Review of positionsensorless operation of brushless permanent-magnet machines”, IEEE Trans. Ind. Electron., vol. 53, no. 2, pp. 352-362, April 2006. https://doi.org/10.1109/TIE.2006.870868
  8. S. Ogasawara, H. Akagi, “An approach to position sensorless drive for brushless dc motors,” IEEE Trans. Ind. Appl., vol. 27, no. 5, pp. 928-923, Sep./Oct. 1991. https://doi.org/10.1109/28.90349
  9. T. M. Jahns, R. C. Becerra, M. Ehsani, “Integrated current regulation for a brushless ECM drive,” IEEE Trans. Power Electron., vol. 6, no. 1, pp. 118-126, Jan 1991. https://doi.org/10.1109/63.65010
  10. Chin-Long Cham, Z. B. Samad, “Brushless DC Motor Electromagnetic Torque Estimation with Single-Phase Current Sensing,” J. Electr. Eng. Technol., vol. 9, no. 3, pp. 866-872, May 2014. https://doi.org/10.5370/JEET.2014.9.3.866
  11. M. S. Zaky, M. Khater, H. Yasin, S. S. Shokralla, “Very low speed and zero speed estimations of sensorless induction motor drives,” Electr. Power Syst. Res., vol. 80, Issue 2, pp. 143-151, February 2010. https://doi.org/10.1016/j.epsr.2009.07.012
  12. M. Barut, “Bi Input-extended Kalman filter based estimation technique for speed-sensorless control of induction motors,” Energy Conv. Manag., vol. 51, Issue 10, pp. 2032-2040, October 2010. https://doi.org/10.1016/j.enconman.2010.02.037
  13. J. Maes, J. A. Melkebeek, “Speed-sensorless direct torque control of induction motors using an adaptive flux observer,” IEEE Trans. Ind. Appl., vol. 36, no. 3, pp. 778-785, May/Jun 2000. https://doi.org/10.1109/28.845053
  14. Yih-Neng Lin, Chern-Lin Chen, “Adaptive pseudo reduced-order flux observer for speed sensorless field-oriented control of IM,” IEEE Trans. Ind. Electron., vol. 46, no. 5, pp. 1042-1045, October 1999.
  15. B. K. Bose, “Fuzzy logic and neural networks in power electronics and drives,” IEEE Ind. Appl. Mag., vol. 6, no. 3, pp. 57-63, May/June 2000. https://doi.org/10.1109/2943.838042
  16. I. Kenichi, U. Hideo, K. Minoru, E. Tsunehiro, M. Katsuo, “Microcomputer Control for Sensorless Brushless Motor,” IEEE Trans. Ind. Appl., vol. 21, no. 3, pp. 595-601, 1985.
  17. Kuang-Yao Cheng, Ying-Yu Tzou, “Design of a sensorless commutation IC for BLDC motors,” IEEE Trans. Power Electron., vol. 18, no. 6, pp. 1365-1375, Nov. 2003. https://doi.org/10.1109/TPEL.2003.818867
  18. Y. Gao, Y. Liu, “Research of sensorless controller of BLDC motor,” in Proceedings of 10th IEEE Int. Conf. Ind. Inform. (INDIN), pp. 725-728, 25-27 July 2012.
  19. Sang-Hoon Song, Yong-Ho Yoon, Byoung-Kuk Lee, Chung-Yuen Won, “Autonomous Underwater Vehicles with Modeling and Analysis of 7-Phase BLDC Motor Drives,” J. Electr. Eng. Technol., vol. 9, no. 3, pp. 932-941, May 2014. https://doi.org/10.5370/JEET.2014.9.3.932
  20. Yen-Shin Lai, Fu-San Shyu, Yung-Hsin Chang, “Novel loss reduction pulsewidth modulation technique for brushless dc motor drives fed by MOSFET inverter,” IEEE Trans. Power Electron., vol. 19, no. 6, pp. 1646-1652, Nov. 2004. https://doi.org/10.1109/TPEL.2004.836626
  21. J. Shao, D. Nolan, M. Teissier, D. Swanson, “A novel microcontroller-based sensorless brushless DC (BLDC) motor drive for automotive fuel pumps,” IEEE Trans. Ind. Appl., vol. 39, no. 6, pp. 1734-1740, Nov./Dec. 2003. https://doi.org/10.1109/TIA.2003.818973
  22. M. Shanmugapriya, P. A. Michael, “Sensorless control of an four switch three phase inverter using FPGA,” in Proceedings of Int. Conf. Adv. in Eng., Sci. and Manage. (ICAESM), pp. 689-693, 30-31 March 2012.
  23. Kai-Sheng Kan, Ying-Yu Tzou, “Adaptive soft starting method with current limit strategy for sensorless BLDC motors,” in Proceedings of IEEE Int. Symp. Ind. Electron. (ISIE), pp. 605-610, 28-31 May 2012.
  24. Hung-Chi Chen, Chang-Ming Liaw, “Current-mode control for sensorless BDCM drive with intelligent commutation tuning,” IEEE Trans. Power Electron., vol. 17, no. 5, pp. 747-756, Sep. 2002.
  25. M. Tursini, R. Petrella, F. Parasiliti, “Initial rotor position estimation method for PM motors,” IEEE Trans. Ind. Appl., vol. 39, no. 6, pp. 1630-1640, Nov.-Dec. 2003. https://doi.org/10.1109/TIA.2003.818977
  26. M. A. Noroozi, J. S. Moghani, J. Mili Monfared, H. Givi, “Sensorless starting method for Brushless DC Motors using 180 degree commutation,” in Proceedings of 3rd Power Electron. and Drive Syst. Technol. (PEDSTC), pp. 57-61, 15-16 Feb. 2012.