This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Sensorless small IPMSM with InstaSPIN motor solutions at very low speeds

I am developing a relatively small motor (12V, 3A) which should run sensorless at very low speeds (0 - 70 RPM) with a certain and almost constant torque (around 6 or 7 Nm, max) and as smoothly as possible (speed error below 5 or 10%). I know this is very challenging, and we have not achieved appropriate results yet.

Right now we are running tests and the first prototypes with an encoder, but that should definitely not be present in the final product. We have spent a lot of development time in an HFI implementation in an IPMSM motor (with saliency approx 0.7). I suspect it sometimes estimates the angle with a considerable error or offset, which causes the motor to run in the wrong direction, both from the start and when it is already running and a certain (not even too big) change in the load is applied. I understand from your information here http://www.ti.com/ww/en/mcu/instaspin/instaspin-zero-and-slow-speed.shtml?DCMP=ep-mcu-c2x-gen&HQS=ipd that you have a similar solution to offer. And some of the drawbacks you address might be similar to the ones I am finding.

One of the problems I found in the solution I am trying to implement now is that the lib is prepared to run mostly big motors and at much higher speeds (their speed control has a resolution of 6 RPM, their HFI Amplitude value has 1-Volt steps, etc). I managed to find some workarounds for these issues, but it would be ideal to find a platform which does not need this. Do you have any papers or have you run tests that might fit in my application? I would eventually analyze moving the whole project to your MCUs if a proper and promising solution was available. Even the motor design could be changed accordingly if there was a strong reason for it, not implying disadvantages in other aspects.

Thank you in advance.

  • Juan,
    We have not been able to reliably use the HFI on the types of motor you are describing, though we haven't really tried we don't expect it to work well. The HFI is extremely challenging to use and requires a known and very large saliency (your value of 0.7x is not nearly large enough in our experience, especially under load). At this point we are primarily only able to use HFI to help align and start-up a motor in a bit more controlled manner - still passing it off to FAST as soon as possible - and running either at higher speeds (in the case of e-bikes) or sometimes in nominally low speeds (10-20 Hz in the case of compressors). Achieving full speed control from 0 to 70 RPM (which is probably just a few Hz for your motor) is not achievable for us today, especially in a dynamically loaded application.
  • Thank you very much for your quick answer. You've been perfectly clear and convincing, especially given that was exactly what I was expecting after all the tests and information I had found, even though the other manufacturer never admitted this.
    Would you recommend a way of somehow implementing the solution with a different motor, different algorithm, etc without using an encoder? Maybe BLDC or so? Or should we definitely consider using an encoder and stay with a SM-PMSM?
    Thank you very much again
  • I don't have confidence that with our HFI - regardless of customized motor - that you would be able to do a full HFI based sensorless velocity solution for 0-70 RPM across dynamic loads.

    now, if your loads aren't so high, and the motor is even higher saliency, perhaps.

    the only HFI based solution that I've seen really work for what you are trying to do is from a Japanese drives company. but these are high voltage highly customized motors to work specifically with their HFI algo.

    when it comes to accurate velocity control at very low speeds, you are very likely to need rotor sensors of some sort.