2025-12-03 1:25 AM
Hello everyone,
I'm using MCSDK v6.4.1 to drive a 2-pole SM-PMSM in sensorless FOC mode (Observer + PLL) with a 3-shunt topology on the STM32G491RE.
Even after a lot of trial and error, I was unable to find a reliable rev-up sequence for the motor and attached load.
This particular motor has quite a high reluctance force, therefore the alignment phase needs to be long but my application requires very fast startup so I can't afford that.
I soon realized that the startup reliability is dependent on the initial rotor position, the closer it is to the starting angle of the stator field vector, the more reliable the start up. So I manually tuned and iterated the rev-up phases for each possible initial rotor position (in my case six). The sequence is now 99.5% reliable but still fails occasionally and my application strictly requires 100% rev-up reliability.
I did not find a lot of documentation on the tuning of that sequence, is there a systematic way or any alternative to achieve this? Is there any way to measure the initial rotor position with the SDK to adjust the starting angle?
I am also considering a long alignment phase after power on, so that the motor can later spin up fast from a known position when needed. Is there a simple way of doing this using the SDK?
Thanks and best regards