Basics about BLDC motor control

To illustrate the commutating process of a DC brushless motor, let's consider one of its implementations - a BLDC motor with twelve coils in the stator and fourteen magnets in the rotor. There are many options for winding and the number of coils/magnets, but the principle remains the same. Below is a diagram (the poles of the magnets are marked in red and blue), the winding is shown in blue, red and orange, the Hall sensors are not yet marked.

Let's start commutation. At the first step, we energize windings A (+) and B (-). C remained unconnected. As a result, current will flow in the coils wound with the orange wire. The coils are wound in different directions, so the top two coils will be attracted to magnets m and n, and the bottom two to the magnets g and f. The remaining coils and magnets play virtually no role in this configuration. With such power supply to the motor, it obviously will not spin, and will have seven stable rotor positions, evenly distributed around the entire circumference (the upper left orange stator coil can attract magnets m, a, c, e, g, i, k).

And now let’s change commutation - apply power to B (-) and C (+).The red coils will attract magnets a, b, h and i, the rotor will turn slightly. Rotor rotation angle can be calculated as (360*2/12) – (360*2/7) = 8.57°. If change commutation to C (+) and A (-), the rotation angle will be 17.14°.

Let’s apply voltage to align the magnets with the green coils. The red and blue magnets have swapped places, so now we need to apply reverse voltage. Rotation angle is 25.71°.

The same with the remaining two positions. Rotation angle is 34.29°.

Rotation angle is 42.85°.

Let’s repeat the first step again - the rotor will turn exactly one-seventh of a full revolution. So, the motor has three leads in total, and it is possible to apply voltage to two of them in six different ways 6 (23-2 = 6). All of these 6 positions are already gone through. If the voltage is not applied chaotically, but in a strict order, which depends on the position of the rotor, then the motor will rotate. Below is the summary table of commutations and rotation angles.

Rotor rotation angle A B C
+ - Not connected
8.57 Not connected - +
17.14 - Not connected +
25.71 - + Not connected
34.29 Not connected + -
42.85 + Not connected -

Compared to a DC brush motors, where the commutation is done using brushes, a BLDC motors need a way to determine the rotor position. There are different implementations of such methods. The most common ones are using Hall sensors or back EMF.

Rotor position detection using Hall sensors

If three Hall sensors are added to the existing diagram of the BLDC motor so, that a logical 1 appears at the moment when it is opposite the red magnet, it is possible to get 6 different states. Strictly speaking, there are a total of 8 possible different states (0 or 1) for 3 Hall sensors. But due to the distance between the sensors, all three of them cannot be at logical 0 or logical 1. Therefore, in this case, 6 states (23 – 2) can be considered.

It is important that the sensors generate three signals located at a distance of a third of a period relative to each other. A third of a period is 120 degrees. Thus, it is considered that the sensors are located at 120 degrees relative to each other. To control a brushless motor, it is enough to read the signals from the Hall sensors, and accordingly switch the voltage at the windings.

You can choose a DC brushless motor with Hall sensors, that is best suited for your project on our website in the section
DC brushless motors (BLDC).

DC brushless motor controllers for BLDC motors with Hall sensors are available to be purchased in our online store

In many cases, the rotor position is determined without the use of Hall sensors. To do this, the current in the windings and back EMF are analyzed. However, this method has its drawbacks and is poorly applicable in cases where low speeds and high starting torque are required, and is also less commonly used in positioning tasks.

Compare to stepper motors

To some approximation, stepper motors and some BLDC motor designs without Hall sensors are conceptually similar. The main difference is the number of phases and poles. Stepper motors, as a rule, are commutated with two phases shifted by 90°, and brushless motors are mostly commutated with three phases shifted by 120°. In addition, stepper motors are designed to increase the holding torque and steps repeatability steps, while brushless motors without Hall sensors are designed to increase the speed and smoothness of rotation, which affects the number of windings, bearings, etc. But in the end, a regular brushless motor can be used in stepper mode, and a stepper motor can be used in constant rotation mode. Their controls will be the same.