Technical note
Sensorless FOC that starts under load
Field-oriented control needs to know where the rotor is. Put an encoder on the shaft and that is easy. Take the encoder away, for cost, size, reliability, or because there is nowhere to mount one, and the drive has to infer position from the currents and voltages it already measures. That is sensorless FOC, and it works beautifully right up until the moments you actually care about.
Where estimators are easy, and where they are not
Most sensorless schemes lean on the motor's back-EMF, the voltage a spinning rotor induces. At a healthy speed that signal is strong and position falls out cleanly. The trouble is that back-EMF scales with speed, so it shrinks to nothing exactly where you often need control most:
- Standstill and low speed. No back-EMF means no signal for a back-EMF observer to track. A drive that cannot find the angle at zero speed cannot make controlled torque to get moving.
- Startup under load. Starting into a spring, a propeller with wind on it, or a stalled mechanism demands full, correctly-oriented torque from the first instant, before there is any speed to estimate from.
- Fast load steps. A sudden load can swing the true rotor angle faster than a lazily-tuned estimator follows. The angle error costs torque, which slows the rotor, which grows the error. That is how drives stall.
What it takes to hold through them
Making sensorless FOC survive those moments is less about one clever trick and more about several things done together:
- A robust flux or back-EMF observer that degrades gracefully rather than diverging when the signal is weak, and that is tuned against the real machine, not a nameplate model.
- A low-speed method for salient machines, such as high-frequency injection that reads rotor position from the motor's magnetic saliency, so you have an angle when there is no back-EMF at all.
- A clean handoff between the low-speed and high-speed methods, so the drive does not lurch as it crosses from one regime to the other.
- Enough deterministic compute to run the estimator fast, so its angle stays valid through a load step rather than lagging it. This is one reason we run estimators on FPGA rather than hoping a general-purpose processor keeps up.
None of that is exotic on its own. Getting all of it to cooperate, on a specific motor, across the full operating envelope, is the work. It is also usually where a drive that "almost works" is stuck.
Have a sensorless drive that stalls or will not start under load?
That is squarely the kind of loop we fix. A diagnostic sprint finds out why. Start one.