Building stuff and getting them work, the way we want, has always been sheer fun. While that being agreed, building stuff that could fly would defiantly pump a bit more anxiety among the hobbyists and hardware tinkerers. Yes! I am talking about Gliders, Helicopters, Planes and mainly multi-copters. Today it has become very easy to build one on your own due to the community support available online. One common thing with all the things that fly is that they use a BLDC motor, so what is this BLDC motor? Why do we need it to fly things? What is so special about it? How to buy the right motor and interface it with your controller? What is an ESC and why do we use it? If you have questions like these then this tutorial is your one stop solution.
So basically in this tutorial we will control the speed of an A2212/13T Sensorless BLDC outrunner motor (the commonly used to build drones) with a 20A Electronic Speed Controller (ESC) using Arduino.
- A2212/13T BLDC Motor
- ESC (20A)
- Power Source (12V 20A)
Understanding BLDC Motors
BLDC Motor stands for Brush Less DC motor, it is commonly used in ceiling fans and electric vehicles due to its smooth operation. Unlike other motors, the BLDC motors have three wires coming out of them and each wire forms its own phase thus given us a three phase Motor. Wait… what!!??
Yes, although BLDC motors are considered to be DC motors, they work with the help of Pulsed waves. The Electronic speed controller (ESC) converts the DC voltage from the battery in to pulses and provides it to the 3 wires of the Motor. At any given time only two Phase of the motor will be powered, so that current enters through one phase and leaves through other. During this process the coil inside the motor is energised and hence the magnets on the rotor align itself to the energised coil. Then the next two wires are energised by the ESC, this process is continued to make the motor rotate. The speed of the motor depends on how fast the coil is energised and direction of motor depends on in which order the coils are energised. We will learn more about ESC later in this article.
There are many types of BLDC motors available, let’s take look at the most common classifications.
In-runner and Out-Runner BLDC motor: In runner BLDC Motors work like any other motor. That is the shaft inside the motor rotates while casing remains fixed. While out runner BLDC motors are just the opposite, the Outer casing of the motor rotates along with the shaft while the coil inside stays fixed. Out runner motors are very advantages in Electric bikes since the outer casing (the one that rotates) itself is made into a Rim for the tyres and hence a coupling mechanism is avoided. Also the out runner motors tend to give more torque than in runner types, hence it becomes an ideal choice in EV and Drones. The one that we are using here is also an out runner type.
Note: There is another type of motor called the coreless BLDC motors which are also used for pocket Drones, they have a different working principle but for now let’s skip it for the sake of this tutorial.
Sensor and Sensorless BLDC Motor: For a BLDC motor to rotate without any jerk a feedback is required. That is the ESC has to know the position and pole of the magnets in the rotor so as to energise the stator according. This information can be acquired in two ways; one is by placing hall sensor inside the motor. The hall sensor will detect the magnet and send the information to ESC this type of motor is called a Sensord BLDC motor and is used in Electric vehicles. The second method is by using the back EMF generated by the coils when the magnets cross them, this required not additional hardware or wires the phase wire itself is used as a feedback to check for back EMF. This method is used in our motor and is common for drones and other flying projects.
Why do Drones and other Multi-copters use BLDC Motors?
There are many types of cool drones out there from Quad copter to helicopters and gliders everything has one hardware in common. That is the BLDC motors, but why? Why do they use a BLDC motor which is a bit expensive compared to DC Motors?
There are quite a few valid reasons for this, one main reason is the torque provided by these motors are very high which is very important to gain/loose thrust rapidly to take off or land down a drone. Also these motors are available as out runners which again increases the thrust of the motors. Another reason for select BLDC motor is its smooth vibration less operation, this is very ideal to our drone stable in mid-air.
This Post / Project can also be found using search terms:
- bldc arduino working code