Introduction to Motor Control with STM32

Revision as of 15:55, 29 January 2020 by Registered User
Under construction.png Coming soon

On this page you will find applications examples, document, tips and tricks,... related to STM32 Motor control.

1. What is STM32 Motor Control Ecosystem?

From hardware tools and embedded software to training resources and documentation, the STM32 ecosystem offers many tools to ease the development of motor control applications. STM32 MCUs are particularly suitable to develop Permanent Magnet Synchronous Motors (PMSM), Brushless DC motors (BLDC) and Stepper motors.

2. Getting started with STM32 and Motor Control

Article where it is explained how to start with STM32 & Motor control feature

3. Video related to STM32 and Motor Control

All videos related to MC
Getting started with STM32 Motor control SDK5.0
Getting started with the STM32 Motor Control Nucleo Pack (P-Nucleo-IHM001)
Getting starting with P-NUCLEO-IHM03
Product overview: ST-MC-SUITE

4. STM32 compliant with Motor Control application

The STM32 portfolio includes devices based on Arm® Cortex®-M cores (M0, M0+, M3, M33, M4, and M7). Thanks to the MCUs' shared ecosystem, developers benefit from enhanced flexibility to move forward with their motor control design.

Each STM32 series offers a different set of peripherals matching different Motor Control application requirements.

STM32 Series ARM Core More CPU frequency Flash range Analog integration level MC timer
STM32G0xx Cortex-M0+ 64MHz 16KB-512KB + 1x (128MHz)
STM32F303 Cortex-M4 (DSP/FPU) 72MHz 32KB-512KB ++++ 3x (144 MHz)
STM32F302 Cortex-M4 (DSP/FPU) 72 MHz 32KB-512KB +++ 1x (144 MHz)
STM32F301 Cortex-M4 (DSP/FPU) 72 MHz 16KB-64KB ++ 1x (144 MHz)
STM32G431 Cortex-M4 (DSP/FPU) 170MHz 32KB-128KB] +++ 2x (170 MHz)
STM32G474 Cortex-M4 (DSP/FPU) 170 MHz 32KB-128KB ++++ 3x (170 MHz)
STM32F4xx Cortex-M4 (DSP/FPU) 180MHz 256KB-1024KB ++ 2x (180 MHz)
STM32F7xx Cortex-M7 216 MHz 64KB-2048KB ++ 2x (216 MHz)
STM32H7xx Cortex-M7 + M4 (option) 480 MHz 128KB-2018KB ++ 2x (240 MHz)

The STM32G4 series combines a 32-bit Arm® Cortex®-M4 core (with FPU and DSP instructions) running at 170 MHz combined with three different hardware accelerators, rich analog peripherals and advanced motor control timers to meet all motor control application requirements. These product series are ideal for Motor Control applications.

The STSPIN32F0 is a System-In-Package providing an integrated solution suitable for driving three-phase BLDC motors using different driving modes. This product series combines an STM32F031 microcontroller with triple half-bridge gate driver able to drive power MOSFETs or IGBTs with a current capability of 600 mA (sink and source) as well as other analog components.


5. STM32 Motor Control specific tools

ST-MC-SUITE st.com dedicated page

6. STMicroelectronics Resources

Links to ST.com dedicated web page

Here you find all official ST documentation to help on application STM32 Motor control development.

7. MCSDK Feature Set

The Motor Control Library included in X-CUBE-MCSDK (today available for PMSM/BLDC motors) enables the features listed below. Full Integration/configuration in MC Workbench tools:

STM32 series F0 F1 F3 F4 F7 L4 G0 G4
1 shunt Example Example Example Example Example Example Example Example
3 shunt Example Example Example Example Example Example Example Example
Hall sensors Example Example Example Example Example Example Example Example
ICS Example Example Example Example Example Example Example Example
Flux weakening Example Example Example Example Example Example Example Example
MTPA Example Example Example Example Example Example Example Example
Sensorless (PLL/ Cordic) Example Example Example Example Example Example Example Example
Feed Forward Example Example Example Example Example Example Example Example
Single FOC Example Example Example Example Example Example Example Example
Dual FOC Example Example Example Example Example Example Example Example
Position Control Example Example Example Example Example Example Example Example