Saturday, April 13, 2013

Steering Motor



Hello :). Today I’ll try to describe how brushless direct current motor (BLDC motor) works, and how to steer it. At the end I’ll show our movie how its rotating :)
Such a motors contains of some coils, which are connected to each other in star interconnection. Basically, there’s only 3 coils which are immovable - in opposition to a magnetos. A drive shaft could rotate because it is attached to a  movable case. Due to low friction it can rotates freely. If we want to rotate the shaft, we have to deliver current to a single coil, and it have to leave circuit by another coil (third one should be Hi-Z, and it doesn’t conduct current). In this situation some magnetic field is inducing, and it acting with magnetos in nearest area – it moves them. Next, the current is conducted by another couple of coils. It is shown at below figure.


Figure 1. Coils

BLDCs are kind of actuators which haven’t got any commutator. It is very helpful, and it’s caused by fact that it works as current inverter from DC to (approximately) AC. It is not sinusoidal current. Next figure presents some BLDC actuators. To our quadrocopter we are using out-runner type.
Figure 2. Types of BLDC motors
There’s still a question – how to steer such a motor? We have to use some equipment, which acts like inverter – it converts direct current into alternate current. We are using some Electronic Speed Control (ESC). It delivers current in some triangle/trapezoid shape. It is shown at next picture.
Figure 3. Plot of currents
That shapes are a bit complicated, so I decided to not describe them ;) In fact, such a steering is good enough to force motor to rotate. But, ESC would not act as it wants; we have to use some microcontroller. On below figure is shown, how to connect uC with ESC, and generally how ESC looks like inside.
Figure 4. How to connect uC and ESC to BLDC motor

As you can see, inside the ESC are some kind of bridge (build from MOSFET transistors with diodes). It provides properly shift phases and thanks to that, current looks like in the upper figure. Of course, there’s also some protection circuits, feedback signals and current measuring. And I have to add, that how fast the motor is rotating (angular velocity) depends directly by us. We could steer ESC by PWM signals, and it is translated by some control circuit in ESC to proper motor steering. In most cases, it looks like on below figure:

 
Figure 5. PWM steering signal
Our microcontroller send PWM signals with ~50 Hz frequency (every 20 ms). The angular velocity of BLDC motor depends of pulse width. The lowest case (lowest rotates) are if pulse is 1 ms width, the greatest – 2 ms. If our ESC provides rotation in both directions (clockwise and counterclockwise) there we could divide our pulse range into a two areas – the first 0.5 ms (form 1.0 to 1.5 ms) our motor will rotate clockwise, in second part (from 1.5 to 2.0 ms) it will rotate in opposite direction. If we have ECS which provide rotates only in one direction, we are forced to use pulses in range only 1ms – 1.5 ms. But, direction of rotate depends on how we connect motor – changing two cables we could obtain rotating in opposite direction.
And there’s a movie which shows how our motor rotates :) please watch it only in high quality ;)

References:
(Sorry for mainly polish references)

No comments:

Post a Comment