Electrical – How does HFI (high frequency injection) work with BLDC motors

brushless-dc-motormotor controllerpwmsinusoidalvector-control

How does HFI work with BLDC motors.
In this video: VESC HFI: Sensorless position tracking at zero speed he explains how HFI works, however i don't get how it can work with motors that have trapezoid back-EMF such as the one he is using.

The code belongs to the author of the VESC project which is an open source firmware implementing FOC with HFI. I tried understanding the code, however i couldn't given the level of complexity.

Can someone explain how HFI is implemented and how it works with trapezoid back-EMF BLDC motors?

VESC github repo

Best Answer

I skimmed through Google materials and there are two steps.

  1. First it measures the impedance of the coils by sending in current at a particular D-Q angle (I think). Then it changes the angle and compares the two impedances. In other words, it's measuring inductance or the strength of the two flux paths through the motor. This lets you get the rotor position, more or less.

enter image description here enter image description here https://www.controleng.com/articles/understanding-permanent-magnet-motors/

  1. But you can see from the graph above that it is symmetrical so there is an ambiguity which needs to be resolved. Unless perfectly centered, the presence of the PM field will bias the ferromagnetic domains in the iron core so it saturates in one direction earlier than the other. You can ramp up current in both directions and measure when it saturates to differentiate whether you are near a N or S pole. I'm not sure quite sure when this is done though.

Pretty cool. I'll have to read up on it more tommorrow.