Microchip logo
  • All
  • Products
  • Documents
  • Applications Notes

Switched Reluctance (SR) Motor

A Switched Reluctance (SR) or variable reluctance motor does not contain any permanent magnets. The tradeoff for this low-cost construction is a more complex drive with more switches and complex control techniques to achieve a smooth torque operation. SR motors are ideal for applications that require high-speed operation and power density in a compact form factor.

Typical Applications

  • Fuel pumps
  • Throttle controls
  • Oil pumps
  • Anti-Lock Braking Systems (ABS)
  • Vacuum cleaners
ProductsSensored Field
Oriented Control
Sensorless Field
Oriented Control
Microcontrollers (MCUs).
Digital Signal
Controllers (DSCs)
and Field-Programmable
Gate Arrays (FPGAs)
dsPIC33 DSCs
32-bit PIC32MK and SAM MCUs
SmartFusion® SoC FPGAs


3-Phase Gate DriversMCP8024

Some Basics About Switched Reluctance (SR) Motors

How a SR Motor Works

While SR motor control is simple to implement, this type of motor is not commonly available. The stator is similar to that of a Brushless DC (BDC) motor, however, the rotor is made only of iron laminates. The iron rotor is attracted to the energized stator pole, and the polarity of the stator pole does not matter. Torque is produced as a result of the attraction between the electromagnet and the iron rotor.

SR Motor Characteristics

  • Synchronous operation
  • Low-cost motor due to simple and magnet-free construction
  • More suitable for high-speed/power density applications

Implementing SR Motor Control

How It Works

The simple, inexpensive construction of a SR motor requires a microcontroller for speed control and to reduce torque ripple and audible noise. The rotor forms a magnetic circuit with the energized stator pole. The reluctance of this magnetic circuit is the magnetic equivalent of the resistance of an electric circuit. The reluctance of the magnetic circuit decreases as the rotor aligns with the stator pole. When the rotor is in line with the stator, the gap between the rotor and stator is very small. At this point, the reluctance is at its minimum. This is where the name Switched Reluctance comes from; the inductance of the energized winding also varies as the rotor rotates. When the rotor is out of alignment, the inductance is very low and the current will increase rapidly. When the rotor is aligned with the stator, the inductance will be very large and the current decreases slowly this results in  torque ripple. This is one of the difficulties in driving a switched reluctance motor.

Microcontroller Features for SR Motor Control

Basic I/ODigital/analog signal for speed direction and torque
Capture/Compare/Pulse-Width Modulation (CCP)Generate independent PWMs for multiple MOSFET switches and tachometer input for speed sensing using input capture
ComparatorsOvercurrent detection and protection
Analog-to-Digital Converter (ADC)Measurement of phase current and DC bus voltage for speed and position sensing in sensorless control
Quadrature Encoding Interface (QEI)Optical encoder interfacing for position sensing
Communication Peripherals (I2C, SPI, CAN)Typically torque, speed, position and/or direction

Motor Control Hardware and Software Solution

Software Tools


Motor Control Application Algorithm and Software Library

To support the development of motor applications, we provide motor control libraries and examples.


MPLAB® X Integrated Development Environment (IDE)

MPLAB X Integrated Development Environment (IDE) is an expandable, highly configurable software program that incorporates powerful tools to help you discover, configure, develop, debug and qualify embedded designs for Microchip’s microcontrollers and digital signal controllers.


MPLAB Code Configurator (MCC)

MPLAB Code Configurator (MCC) is a free, graphical programming environment that generates seamless, easy-to-understand C code to be inserted into your project.