We detect you are using an unsupported browser. For the best experience, please visit the site using Chrome, Firefox, Safari, or Edge. X

Need Help?

Privacy Policy

Live Chat

Developers of modern motor control applications need to implement many complex control algorithms to meet efficiency and performance specifications. We provide motor control software libraries and example applications that can be used with our microcontrollers (MCUs) and Digital Signal Controllers (DSCs) to jump start your design and reduce your development time.

Brushed DC Motors


Brushed DC (BDC) motors can be operated with a simple on/off control or a variable-speed control with optional feedback mechanism. The control system also depends on the drive type, which can be a unidirectional low-side drive, unidirectional high-side drive or bidirectional drive.

Brushed DC Motor Control Application Notes, Tuning Guides and Example Software

Algorithm 8-bit PIC® and AVR® MCUs
Brushed DC Motor Fundamentals AN905
PIC18Cxx/PIC16Cxxx DC Servomotor Applications AN696
Servo Control of a Brushed DC Motor AN532
Low-Cost Bidirectional Brushed DC Motor Control Using the PIC16F684 AN893
Sensorless Position Control of Brushed DC Motor Using Ripple Counting Technique AN3049

Stepper Motors


Stepper motors have various drive techniques depending on the application and phase configuration of the motor. The drive can be either unipolar or bipolar and the step mode can be wave drive, full-step drive, half-step drive or microstep drive.

Stepper Motor Control Application Notes, Tuning Guides and Example Software

Algorithm 8-bit AVR® MCUs 8-bit PIC® MCUs dsPIC33 DSCs
Stepper Motor Fundamentals AN907 AN907 AN907
Full- and Half -Stepping AN8017 AN906, AN2326 AN1307
Microstepping   AN822, AN2326 AN1307

Brushless DC Motors


Brushless DC (BLDC) motors are Permanent Magnet Synchronous Motors (PMSMs) that are designed to use six-step trapezoidal control. This can be implemented by using Hall sensors for sensored control or by measuring the motor’s back EMF for a sensorless implementation.

BLDC Motor Control Application Notes, Tuning Guides and Example Software

Algorithm 8-bit
AVR® MCUs
8-bit
PIC® MCUs
dsPIC33 DSCs 32-bit
PIC32MK/SAM MCUs
SmartFusion® 2/
IGLOO® 2 FPGAs
Brushless DC (BLDC)
Motor Fundamentals
AN857AN885,
AN7671
AN857, AN885,
AN7671
AN857, AN885,
AN7671
AN857AN885
AN7671
AC445
Sensored AN2522 AN899AN1779,
AN2049
AN957 42711A AC445
Sensored Sinusoidal AN8010AN8030 AN2557 AN1017   AC445
Sensorless BEMF AN8012, AN7658 AN970AN1175,
AN1305, AN857
AN901AN992   AC445
Sensorless Filtered BEMF
with Majority Detect
    AN1160   AC445
Tuning Guide: Sensorless
BLDC Control with Back-EMF
Filtering Using a Majority Function
    AN1160   AC445

Permanent Magnet Synchronous Motors


Closed-loop Field-Oriented Control (FOC) is essential for getting the best performance from Permanent Magnet Synchronous Motors (PMSMs). Our complete ecosystem for developing FOC control algorithm includes these resources:

Zero-Speed/Maximum-Torque Control


The Zero-Speed/Maximum-Torque (ZS/MT) control algorithm is a new variation of the sensorless Field-Oriented Control (FOC) algorithm that enables the adoption of sensorless control techniques in high-torque or low-speed motor control applications. These types of applications typically require three Hall effect position sensors. ZS/MT eliminates the need for Hall effect sensors, connectors and cables by using a reliable Initial Position Detection (IPD) method based on High-Frequency Injection (HFI) to determine the exact rotor position at zero and low speeds. This enables the control algorithm to deliver maximum torque to a variety of applications including drilling machines, garage door openers, automotive starters and e-bikes. The ZS/MT algorithm runs on dsPIC33 Motor Control Digital Signal Controllers and SAM C2x, SAM D/E5x, SAM E7x and PIC32MK MCUs and can be used with salient motors, especially Interior Permanent Magnet (IPM) motors.

Advantages:

  • Reduces overall system cost in applications requiring high torque at zero (standstill) or low motor speeds
  • Offers improved reliability by eliminating potential issues due to faulty cables and ESD-sensitive Hall effect sensors

Versions 2.45 and later of motorBench® Development Suite provide the ZS/MT algorithm for dsPIC33 DSCs. To access the algorithm, please download MPLAB® X IDE, install the MPLAB Code Configurator (Melody) plug-in then download and run the motorBench Development Suite library.

Application-Specific Algorithms for Field Oriented Control


To help you overcome the challenges of implementing FOC and improve the performance of your PMSM application, we offer a number of application notes and a variety of algorithms within our motor control software library such as:

  • Flux weakening
  • Initial Position Detection (IPD)
  • Soft stop
  • Stall detection
  • Windmilling
  • Torque compensation

Our technical brief discusses some algorithms that can improve the Field-Oriented Control of your PMSM.

Examples of Application-Specific Algorithms


Air conditioners and refrigerators: To enable heat exchange, motor-driven compressors are major components in air conditioning and refrigeration systems. Due to pressure variations during a compression cycle, the compressor loads the motor unevenly, causing vibrations in the motor, compressor and pipes. These vibrations, especially at low speeds, can cause fatigue in pipes and can lead to premature failure of the unit. At high speeds, the motor, compressor and pipes react less due to their typical mechanical responses. The Torque Compensation algorithm can be used to minimize vibrations in compressors.

Washing machines: With the combination of a high-inertia load and a motor running at a very high speed, an abrupt stop can suddenly transfer the energy back to the electrical system. The Soft Stop algorithm provides a controlled reduction to the motor speed to prevent a surge in the DC bus voltage when a washing machine is running in spin-dry mode and is suddenly stopped.

PMSM Control Application Notes, Tuning Guides and Example Software

Algorithm dsPIC33
DSCs
32-bit
PIC32MK/
SAM MCUs
SmartFusion® 2/
IGLOO® 2 FPGAs
Sensored Sinusoidal AN1017 AN2757 AC445
Sensorless Dual-Shunt FOC with
Reduced Order Luenberger Observer
  AN2590 AC445
Sensorless Dual-Shunt FOC with
SMO Estimator and Field Weakening
AN1078   AC445
Sensorless Single-Shunt FOC with
PLL Estimator and Field Weakening
AN1299   AC445
Sensorless Dual-Shunt FOC with
PLL and PFC
AN1208   AC445
Sensorless Dual-Shunt FOC with
PLL Estimator and Field Weakening
AN1292 AN2520 AC445
Sensorless Dual-Shunt FOC with
PLL Estimator and PFC
  AN2584 AC445
Tuning Guide: Sensorless Single-Shunt
FOC with PLL Estimator PMSM
AN1299   AC445

AC Induction Motors


AC Induction Motors (ACIMs) are the most popular motors for Variable Frequency Drives (VFDs). Speed control of ACIMs can be implemented using either the Scalar Control Algorithm (V/f Control) or Field-Oriented Control (FOC).

ACIM Application Notes, Tuning Guides and Example Software

Algorithm 8-bit
AVR® MCUs
8-bit
PIC® MCUs
dsPIC33
DSCs
AC Induction Motor Fundamentals AN887 AN887 AN887
Open-Loop V/f AN7545, AN7546 AN900, AN843,
AN889, AN955,
AN967, AN1660
AN984
Closed-Loop Vector Control     AN908
Sensorless Dual-Shunt FOC with
PLL Estimator
    AN1162
Sensorless Dual-Shunt FOC with
PLL Estimator and Field Weakening
    AN1206

Products


Documentation


Title
AN1206 - Sensorless Field Oriented Control (FOC) of an AC Induction Motor (ACIM) Using Field Weakening Download
AN1292 - Dual-Shunt FOC with PLL Download
AN3049 - Sensorless Position Control of Brushed DC Motor Using Ripple Counting Technique Download
AN2584 - Integrated Power Factor Correction (PFC) and Sensorless Download
AN1162 - Sensorless Field Oriented Control (FOC) of an AC Induction Motor (ACIM) Download
AN887 - AC Induction Motor Fundamentals Download
AN955 - VF Control of 3-Phase Induction Motor Download
AN1305 - Sensorless 3-Phase Brushless Motor Control with the PIC16FXXX Download
AN900 - Controlling 3-Phase AC Induction Motors Using the PIC18F4431 Download
AN905 - Brushed DC Motor Fundamentals Download
AN2757 - Sensored (Encoder-Based) Field Oriented Control of a Three Phase Permanent Magnet Synchronous Motor (PMSM) Download
AN2520 - Sensorless Field Oriented Control (FOC) for a Permanent Magnet Synchronous Motor (PMSM) Using a PLL Estimator and Equation-based Flux Weakening (FW) Application Note Download
AN2590 - Sensorless FOC for PMSM Using Reduced Order Luenberger Observer - Sensorless FOC for PMSM Using Reduced Order Luenberger Observer Application Note Download
AN984 - An Introduction to AC Induction Motor Control Download
AN967 - Bidirectional VF Control of Single and 3-Phase Induction Motors Using the PIC16F72 Download
AN822 - Stepper Motor Microstepping with PIC18C452 Download
AN843 - Speed Control of 3-Phase Induction Motor Using PIC18 Microcontrollers Download
AN696 - PIC18CXXX/PIC16CXXX DC Servomotor Download
AN857 - Brushless DC Motor Control Made Easy Download
Title
Motor Control and Drive Brochure Download
Title
CE002 Configuring 10-Bit dsPIC DSC A/D Converters for 1 Msps Conversion Rate Download
CE019 - Proportional Integral Derivative (PID) controllers & closed-loop control Download
CE155 - Real-Time Data Monitoring (RTDM) Example Download
PFC Sensorless FOC PLL Estimator MCHV Download
Sensorless FOC PLL Estimator MCLV Download
Title
dsPIC33 Motor Control Library for FOC Download
Title
dsPICDEM MCLV-2 (DM330021-2) Development Board User's Guide Download
dsPICDEM MCSM Development Board Users Guide Download
Motor Control Starter Kit with mTouch User Guide Download
dsPICDEM MCHV-2 Development Board User's Guide Download
Title
WP100 - How to Turn an AC Induction Motor Into a DC Motor (A Matter of Perspective) Download

Title

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vehicula velit sit amet turpis rutrum vehicula. Donec eu varius velit, nec ultricies arcu. Fusce vitae pulvinar lorem. Etiam sodales et ipsum volutpat suscipit. Aliquam non mauris ut lectus volutpat feugiat id eget massa. Aliquam vel eleifend metus. Nam ultricies, risus sed tempor suscipit, dolor ligula sodales erat, et porta magna sem fermentum felis. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec commodo magna at scelerisque sollicitudin. Morbi elit tortor, blandit vel imperdiet in, ullamcorper eu tortor. Etiam dapibus eleifend elementum. Vestibulum finibus efficitur mauris, vitae convallis ex molestie non. Etiam luctus at mauris accumsan finibus.