Motor Control and Drive
Motor Control and Drive
- Motor Types
- Reference Designs
- Motor Control Products
- Motor Control Algorithms
- Motor Control Library
- Motor Control Simulations
- motorBench Development Suite
- Hardware Development Tools
- Design Partners
Brushless DC (BLDC) Motors
Are you looking for a high-reliability, high-efficiency and high power-to-size ratio motor? The obvious solution is a Brushless DC (BLDC) motor. It shares many of the same torque and speed characteristics with the Brushed DC (BDC) motor but does not include the brushes. Technically, it is a Permanent Magnet Synchronous Motor (PMSM), but it's named Brushless DC as it operates from a DC power supply using an inverter with a simple commutation method and that there are no brushes involved. In some cases, the stator windings are constructed to match the non-sinusoidal commutation.
The BLDC motor’s simpler commutation method allows a wide range of our products to be used to control it, from 8-bit PIC® and AVR® microcontrollers (MCUs), to the MTD650x family of dedicated BLDC driver chips, to advanced dsPIC ® Digtal Signal Controllers (DSCs) and PIC32MK and SAM Arm® Cortex®-M0 based MCUs for sophisticated applications. Selecting the device that is best suited for your application depends on the performance, cost and efficiency you are trying to achieve in your design. Our comprehensive development ecosystem for BLDC motor control enables you to get started with your application quickly.
- Anti-lock braking systems
- Disk drive servos
- Throttle controls
- Fuel pumps
- Oil pumps
|BLDC Control |
|Microcontrollers (MCUs). |
Gate Arrays (FPGAs)
|8-bit PIC® and AVR® MCUs|
|32-bit PIC32MK and SAM MCUs|
|SmartFusion® SoC FPGAs|
|Single-Chip Motor Drivers||MTD650x|
|3-Phase Gate Drivers||MCP8024|
Some Basics About Brushless DC (BLDC) Motors
How a Brushless DC Motor Works
A Brushless DC (BLDC) motor is a Permanent Magnet Synchronous Motor with a unique back EMF waveform that allows it to behave similar to a Brushed DC (BDC) motor. Some confusion can arise from the name, as a Brushless DC motor does not directly operate off a DC voltage source. However, since a BLCD is essentially a DC motor turned inside out, the basic principle of operation is like that of a DC motor.
A BLDC motor has a rotor with permanent magnets and a stator with windings. The brushes and commutator have been eliminated and the windings are connected to the control electronics. The control electronics replace the function of the commutator and energize the windings in a pattern that rotates around the stator. The energized stator winding leads the rotor magnet and switches just as the rotor aligns with the stator.
BLDC Motor Characteristics
- There are no sparks
- Potentially cleaner, faster, more efficient, less noisy and more reliable
- Heat is generated in the stator which is easier to remove and maintain
- Rotor has permanent magnets vs. coils making it lighter and easier to start/stop
- Linear torque/current relationship offers smooth acceleration or constant torque
- Low cost to manufacture
Implementing BLDC Motor Control
How It Works
A BLDC motor does not operate directly off a DC voltage source. It has a rotor with permanent magnets, a stator with windings and commutation that is performed electronically. Typically, three Hall sensors are used to detect the rotor position and commutation is performed based on Hall sensor inputs. The motor is driven by rectangular or trapezoidal voltage strokes coupled with the given rotor position. The voltage strokes must be properly applied between the phases, so that the angle between the stator flux and the rotor flux is kept close to 90° to generate maximum torque. The position sensor required for the commutation can be very simple since only six pulses per revolution (in a three-phase machine) are required. Typically, the position feedback is implemented by using three Hall effect sensors aligned with the back EMF of the motor. In sensorless control, back EMF zero-crossing detection is used for commutation.
Microcontroller Features for BLDC Motor Control
|Basic I/O||Digital communication/pulse inputs and feedback input from switches and Hall sensors|
|Capture/Compare/Pulse-Width Modulation (CCP) or Motor Control Pulse-Width Modulation (PWM)||Generation of six-step, three-phase PWMs and speed sensing using input capture|
|Comparators||Speed sensing in sensorless control and overcurrent detection and protection|
|Analog-to-Digital Converter (ADC)||Measurement of current for torque control, measurement of back EMF in sensorless control and measurement of analog input signals|
|Quadrature Encoding Interface (QEI)||Optical encoder interfacing for position sensing|
|Communication Peripherals (I2C, SPI, CAN)||Torque, speed, position and/or direction information exchange|
FPGAs for Multi-Axis Motor Control
Build safe and reliable multi-axis deterministic motor control on a single System-on-Chip (SoC) FPGA. FPGAs provide many advantages for motor control applications, including:
- Compact solution to save board space and reduce product size
- Motor speeds exceeding 100,000 RPM for sensorless Field-Oriented Control (FOC).
- Low latency of 1 μs for FOC loop from ADC measurement to PWM generation allows switching frequencies up to 500 kHz
- Design flexibility with modular IP suite
- Advanced safety features such as rotor slip and overload detection and overcurrent protection
- SoC integration of system functions reduces Total Cost of Ownership (TCO)
Motor Control Hardware and Software Solutions
Featured Software Tools
Motor Control Application Algorithm and Application Software
To support the development of motor applications, we provide motor control libraries and examples for Field-Oriented Control (FOC), windmilling, DC-link compensation, field weakening and many other control algorithms.
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.
Featured Hardware Tools
SAM D21 BLDC 24V Motor Control Kit
dsPICDEM™ MCLV-2 Low-Voltage Motor Control Development Board
dsPICDEM MCHV-3 High-Voltage Motor Control Development Board
Featured Application Notes and Software
Motor control application notes on control algorithms include example software and source code.
- AN1160 – Sensorless BLDC with Back-EMF Filtering Using a Majority Function
- AN1017 – Sinusoidal Control of PMSM Motors with dsPIC30F / dsPIC33F/ dsPIC33E DSC
- AN1175 – Sensorless Brushless DC Motor Control with PIC16 (PIC16F1619/PIC16F15355 Code Examples)
- AN2522 – Core Independent Brushless DC Fan Control using CCL AVR® Microcontrollers
- AN2557 – Sinusoidal Current Drive for Brushless DC Motor
- AC445: Motor Control Design Using SmartFusion®2 and IGLOO®2 Devices
Sinusoidal and FOC control application notes are listed under the PMSM motor type.