Electronic Speed Controller

PWM and ESC (Video 3/3 in Signals Series)


  •     Motor controllers are used to control the speed at which motors spin
  •     ESCs use a technique called pulse width modulation to do this!
  •     If you have a propeller attached to your motor, be sure to keep yourself clear of the area before turning on the motor


Motor controllers are used to control how fast motors spin on quadrotors. The motor controllers work by affecting the Revolutions Per Minute, or RPMs, of each motor, thus changing the thrust produced by the propeller attached to the motor. When the RPMs are increased, the thrust increases, and when RPMs decrease, so does the thrust. By controlling each motor separately, the four motors can be used in combination to perform maneuvers in the air. To hover, all 4 motors must generate equal thrust each roughly equal to a quarter of the quadcopter’s weight. To turn, the thrust of two motors is decreased to create a force imbalance that tilts the quad rotor’s force vector. With all four motors controlled independently, full control of the vehicle in all dimensions is achieved.

The Feedback Control Lesson will focus on how the 4 propellers are actually used to achieve vehicle control. This lesson will focus on how the motor controllers actually affect the RPMs of the motor, and give a basic understanding of the key concepts behind the device. But first, the concept of frequency must be introduced.

Frequency is simply a measure of the timeframe within which a regular and predictable variation occurs in a wave. Waves are regular oscillations that occur with distance and/or time. There are two key characteristics that describe a wave. The amplitude, usually A, is the height of the wave from the equilibrium point to the peak, and the period, T is the total time between peaks.

The frequency is a common measure of the periodicity of the wave, and is defined as the inverse of the period measured in seconds. Frequency, f, is measured in Hz, which is one over seconds. If the period is large (i.e., the peaks are far apart), the frequency is low, and if the period is small (i.e., the peaks are close together), the frequency is high.

Motor controllers use a process called pulse width modulation, or PWM, to tell a motor how fast to spin. The motor controller sends out a pulse of constant voltage at regular time intervals (the period of the square wave). This creates a square wave pattern, with the signal seen by the motor oscillating between no voltage and full voltage.

The length of time at which the controller is sending voltage during the overall period is called the pulse width. For example, if the controller sent a 1.5V signal for 3 seconds, and repeated that every 10 seconds, the pulse width would be 3 seconds and the total period would be 10 seconds. When the voltage is applied to the motor, it causes the motor to accelerate. When the voltage is removed, the motor decelerates. By turning the voltage signal on and off at a high frequency, the accelerations and decelerations are evened out and the motor spins at a virtually constant RPM. To decrease the RPM, the pulse width is decreased, and to increase the RPM, the pulse width is increased.

Since there is some variation between motor controllers and motors it is important to calibrate the motor controller whenever a new motor controller is attached to a motor. This calibration allows the pulse width variations to be correctly correlated to the RPM variations, and ultimately to the overall thrust variations. Without this calibration, it would be impossible to predict the behavior of the system in response to control inputs. The calibration process for different motor controllers is often slightly different, so it is important to read the instructions with the motor control to perform the initial calibration. For the kit provided as part of this course, instructions on the calibration will be included with the kit build.

Your Score:  

Your Ranking:  

Additional Information