Design Win

STM32 firmware example for resolver sensor signals decoding using the STEVAL-TTM005A

ソフトウェア入手 データブリーフのダウンロード



The STSW-TTM005 is an STM32 firmware application example that estimates the rotor angular position and speed, providing the excitation signal and decoding the resolver sin and cos signals.

The implemented algorithm exploits a low CPU workload demodulation using ADC triggered conversions.

The trigger point can be fully adjustable with a configurable delay respecting the excitation signal to compensate the delays introduced by the electronic circuit and by the sensor.

The excitation frequency can be fully programmable in the firmware covering a wide range from 2kHz up to 10kHz.

Angular speed and position of the rotor flux allows an accurate and efficient control of the motor starting from the stand still up to the maximum speed, with the most advanced field oriented control (FOC) algorithms implemented in the X-CUBE-MCSDK firmware library.

Both single-turn and multiturn resolvers are supported properly configuring the firmware.

The provided set of source codes and project files, represent a snapshot of the X-CUBE-MCSDK project generated by the ST motor control workbench v.5.4.8, according to the following hardware system: NUCLEO-G431RB, STEVAL-IPM10B, X-NUCLEO-IHM09M2, STEVAL-TTM005A.

The STSW-TTM005 contains specific modifications, respect to the project generated by the ST motor control workbench to add the support to generate the excitation signal and to decode the sin and cos signals coming from the encoder.

The estimation of the rotor flux angle and speed, and fed this information to the FOC algorithm implemented by the X-CUBE-MCSDK project.

The STSW-TTM005 is compatible with X-CUBE-MCSDK and STM32CubeMX architecture and it is fully configurable via the official STM32 PC tools.

Together with the source code, in the STSW-TTM005 pack, is provided also the workspace and project files for IAR Embedded Workbench® (v9.32.2), that can be used to compile and fine-tune the firmware.

The project for the other compatible compilers and IDEs, like the STM32CubeIDE, can be obtained using the STM32CubeMX (v6.5.0) for the project generation using the provided.ioc file.

  • 特徴

    • Firmware example for an STM32 microcontroller to estimate the rotor angular position and speed decoding the resolver signals
    • The angular speed and position of the rotor flux are used to achieve the control of the motor in an embedded application based on the X-CUBE-MCSDK v5.4.8
    • Compatible with a system composed of a NUCLEO-G431RB, plus a STEVAL-IPM10B, plus an X-NUCLEO-IHM09M2, plus the STEVAL-TTM005A
    • Programmable excitation frequency
    • Low CPU workload for sin and cos input signals demodulation using ADC trigger conversion with programmable delay
    • Support to multiturn resolvers
    • Compatible with X-CUBE-MCSDK and STM32CubeMX architecture for fully configurability of the user application