The breakthrough and updates of X-CUBE-MCSDK
Claire OKU
Why use X-CUBE-MCSDK for your motor control application?
Spinning and controlling your electrical motor for your application isn't straightforward. We can help you...
The STM32 MC SDK provides a comprehensive solution for motor control applications.
From hardware to final motor control application
The process involves several key steps:
- Hardware setup: Use the ST-MC-SUITE online tool to identify the most appropriate hardware board.
- Motor characterization: Define electrical and mechanical models.
- Motor Control Workbench System configuration: Configure the system using STM32CubeMX & IDE.
- Project configuration and build: Utilize STM32CubeMX, STM32CubeIDE, or IAR/KEIL tools.
- Motor drive tuning: Use Motor Pilot for fine-tuning.
- Final application development: Implement user code, for example:
#include "MC.h" { CMCI OMCI = GetMCI(M1); MCI_ExecSpeedRamp(oMCI, final speed, ramp duration); MCI_StartMotor(oMCI); }
Transferring from ST hardware to custom hardware is easy
You can easily transfer your motor control solution from ST hardware to your custom hardware layout.
Hardware modification flow
The flow includes:
- Hardware modification
- Hardware board description
- Motor Control Workbench System configuration
- Project configuration and Project build (STM32CubeMX & IDE)
- Motor drive tuning (Motor Pilot)
- Final application development
X-CUBE-MCSDK Features
Motor Control Workbench
Visualize and configure power supply, drive settings, and motor parameters.
Motor Pilot
Offers advanced features for motor control, including real-time monitoring, GUI customization, and the ability to monitor MCU registers.
Motor Profiler
Analyze electrical and mechanical models of the motor.
Embedded software example:
#include "MC.h"
{
CMCI OMCI = GetMCI(M1);
MCI_ExecSpeedRamp(oMCI, final speed, ramp duration);
MCI_StartMotor(oMCI);
}
X-CUBE-MCSDK: what's important to you?
User feedback highlights key features:
- Sensorless algorithm improvement (27%)
- New MCU support (17%)
- Dual motor drive with same MCU (14%)
- Full support for ACIM motors (12%)
- Graphical version of the board manager (10%)
- Safety feature class B (8%)
- Stepper motors support (7%)
- Switch reluctance motors support (5%)
Top additions to new X-CUBE-MCSDK delivery
- Improved sensorless algorithm
- STM32 large support
- Dual motor capability
- Support for customer boards
- Monitoring and debugging capabilities
FOC sensorless motor control algorithm status
Breakthrough FOC sensorless algorithm: high sensitivity observer
Version 6.1 and before: Standard STO Cordic and PLL algorithms available for PMSM motors.
Version 6.2 with HSO:
- Low speed performance
- Easier to tune (1 regulation loop only)
- Better performance at startup
- Reduced current consumption
New high sensitivity observer
Hardware impact:
- Voltage input + 2 ADC min
- Necessary for HSO algorithm
- 3 shunt configuration only
- STM32G4 only
Current consumption during startup procedure between STO PLL and HSO:
The HSO algorithm shows a lower current peak (16A) compared to STO PLL (23A).
HSO: increasing performance at low speed
Speed curves comparison STO PLL vs HSO control at 30% load:
- With STO PLL, control is lost below 70 rpm.
- With HSO, control is maintained at 20 rpm.
Key events:
- 1st speed command set to 60 rpm: STO PLL lost at this step.
- 2nd speed command set to 20 rpm: HSO still running until this step.
New ST low voltage low power hardware board
Available for best HSO performance:
- Power Board: B-DRIVE-LVLP01
- Control board: B-G473E-ZEST1S
Motor Control Connector V2: The STM32 B-ZEST-ADAPT1 adapter board allows connecting up to 3x power boards to the same control board.
STM32 support
The X-CUBE-MCSDK supports a wide range of STM32 microcontrollers:
STM32F0, STSPIN32F0, STM32F4, STM32L4, STM32F3, STM32G0, STM32G4, STSPIN32G4, STM32H7, STM32C0 (NEW), STM32H5 (NEW).
Dual motor application is back
Support for STM32F3, STM32F4, and STM32G4.
The MC Workbench allows configuration for dual motor applications, including power supply, drive settings, and motor parameters for each motor.
Support board customization
Configure your own solution based on your hardware capabilities:
- Firmware configuration matches the hardware board capability (MCU and power components).
- User is informed about impossible configurations.
- ST provides a large choice of boards (JSON file description).
- User can describe his/her own board.
- Improved user guidance with accurate inline documentation about board's modifications.
Customization example
Configuration details for STEVAL-IHM42V1 and a custom derivative, showing pin mapping for PWM generation, current sensing, bus voltage sensing, and temperature sensing.
Monitoring and debugging: Motor Pilot
Control, monitor, tune, and debug your real-time applications with Motor Pilot.
- Real time monitoring: each sample can be plotted and recorded.
- GUI customization: any developers can easily customize Motor Pilot GUI to fit application needs.
- Most MCU registers can be monitored.
Motor Pilot customizable UI
Chinese version of Motor Pilot user interface coming.
The Motor Pilot offers customizable UIs for MCSDK FOC, MCSDK position control, and MCSDK 6-step applications.
STM32 X-CUBE-MCSDK designed for you!
Visit the STM32 Motor control dedicated web page: www.st.com/content/st_com/en/stm32-motor-control-ecosystem.html
Why use STMicroelectronics X-CUBE-MCSDK?
- New FOC sensorless algorithm: high sensitivity observer
- Possibility to tune code for YOUR hardware design
- Great software tools = MC Workbench + Motor Pilot