How ESCs Commutate Sensorless BLDC Motors Using Back-EMF
This article explains the technical process of how three-phase electronic speed controllers (ESCs) drive sensorless brushless DC (BLDC) motors in drone electronics. By monitoring Back Electromotive Force (Back-EMF) and detecting zero-crossing events on unpowered motor windings, the ESC determines the exact rotor position without physical Hall effect sensors. The following sections break down the mechanics of three-phase trapezoidal commutation, the physics of Back-EMF, the detection of zero crossings, and the startup sequence required to initiate sensorless rotation.
Three-Phase Trapezoidal Commutation
Brushless DC motors used in drones rely on three sets of electromagnetic windings, known as phases (typically labeled A, B, and C), and a permanent magnet rotor. To make the rotor spin, the ESC must energize these phases in a specific sequence, creating a rotating magnetic field that pulls the rotor magnets along.
In standard six-step trapezoidal commutation, the ESC drives current through only two of the three phases at any given microsecond. One phase is pulled high (connected to positive voltage), one phase is pulled low (connected to ground), and the third phase is left unpowered, or "floating." A complete electrical revolution consists of six distinct switching steps. Moving from one step to the next is called commutation. For the motor to run efficiently and produce maximum torque, the ESC must commutate at the exact moment the rotor reaches a specific angle relative to the stator windings.
Understanding Back-EMF
Without physical sensors inside the motor to report the rotor's position, the ESC uses the motor itself as a sensor. As the permanent magnets on the rotor spin past the stator coils, they induce a voltage in those coils through electromagnetic induction. This induced voltage is called Back Electromotive Force (Back-EMF), as it opposes the main voltage applied by the ESC.
Because standard commutation only powers two phases at a time, the third floating phase acts as a temporary voltage probe. While current flows through the two active phases to generate torque, the ESC's microcontroller monitors the voltage induced on the floating phase. As the rotor magnets pass the floating coil, the Back-EMF voltage on that phase rises or falls depending on the polarity of the passing magnet.
Detecting the Zero-Crossing Event
The core of sensorless commutation is finding the "zero-crossing" point on the floating phase. In a three-phase motor, the three windings are electrically connected at a central point, creating a virtual neutral voltage. This virtual neutral voltage is mathematically equal to half of the battery supply voltage.
As the rotor spins, the Back-EMF voltage on the floating phase transitions from high to low, or low to high, depending on the commutation step. The exact moment the voltage on the floating phase equals the virtual neutral voltage is called the zero crossing.
The ESC detects this event using two primary methods:
- Analog Comparators: Voltage dividers scale down the voltage from all three phases to create a physical reference point representing the virtual neutral. An analog comparator triggers an interrupt when the floating phase voltage crosses this reference.
- Analog-to-Digital Converters (ADC): The microcontroller rapidly samples the voltage of the floating phase and calculates the zero crossing digitally by comparing it against half of the known bus voltage.
Commutation Timing and Filtering
The zero-crossing event does not mean the ESC should switch phases immediately. In a three-phase motor, a full electrical cycle is 360 degrees, meaning each of the six commutation steps lasts 60 electrical degrees. The zero crossing occurs precisely in the middle of a commutation step, when the rotor is 30 electrical degrees away from the optimal switching point.
Once the ESC detects the zero crossing, it calculates the current rotational speed of the motor based on the time elapsed since the previous zero crossing. It then sets an internal timer to wait for the rotor to travel the remaining 30 electrical degrees. When that timer expires, the ESC switches the MOSFETs to the next step in the sequence, turning off one phase, turning on the previously floating phase, and leaving a new phase floating to monitor for the next zero crossing.
To ensure accuracy, the ESC must filter out high-frequency electrical noise caused by Pulse Width Modulation (PWM), which is used to control the motor's speed. ESCs use hardware low-pass filters or software blanking—a technique where the microcontroller only samples the floating phase during the microscopic windows when the PWM signal is actively driving the circuit, ignoring the noisy switching transitions.
The Startup Sequence
Back-EMF is directly proportional to the rotational speed of the motor. When a drone motor is completely stopped, there is no magnetic movement, meaning there is zero Back-EMF. Without Back-EMF, the ESC is blind to the rotor's position and cannot use zero-crossing detection to start the motor.
To overcome this, the ESC executes a three-stage startup sequence:
- Alignment: The ESC briefly energizes a specific pair of phases to lock the rotor into a known starting position.
- Open-Loop Ramp: The ESC begins commutating the phases blindly using a pre-programmed, accelerating timing table. It forces the magnetic field to rotate, dragging the rotor along with it.
- Closed-Loop Transition: As the rotor gains speed during the open-loop ramp, it begins generating measurable Back-EMF. Once the voltage spikes are strong enough for the comparators to reliably detect several consecutive zero crossings, the ESC switches to closed-loop operation, handing control entirely over to the Back-EMF feedback loop.