How to Write your own Flight Controller Software — Part 11

Managing Brushless DC (BLDC) Motors

David Such
24 min readSep 9, 2022

In part 10 we explained the care and feeding of brushed DC motors. In this article we examine their bushless cousins and how to control them. Controlling brushless DC (BLDC) motors is a lot harder than for brushed, particularly if they don’t include a sensor for rotor position. This is why Electronic Speed Controllers (ESC’s) exist.

1.0 Brushless DC Motors

Brushless DC (BLDC) Motors are like brushed motors but use electronic commutation instead of mechanical. Hence the term brushless. Typically, BLDC motors have a rotating permanent magnet and a fixed armature coil. This makes it easy to connect a voltage across the coil with no need for brushes. BLDC motors are like AC synchronous motors. The major difference is that synchronous motors develop a sinusoidal back EMF, as compared to a rectangular, or trapezoidal, back EMF for brushless DC motors. Both have stator created rotating magnetic fields producing torque in a magnetic rotor. The speed of a brushless DC motor is not fixed unless driven by a phased locked loop slaved to a reference frequency.

Commutation

--

--

David Such

Reefwing Software · Embedded Systems Engineer · iOS & AI Development · Robotics · Drones · Arduino · Raspberry Pi · Flight Control