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.

Running a BLDC motor at very low speed (~0.2 RPM)

Other Parts Discussed in Thread: MCT8316Z, DRV8316
Hello!
Is was suggested I post this question here, in the hopes you could point me in the right direction.
I'm trying to run a BLDC motor very slowly, and ideally it should rotate very smoothly. RPM range should be 0.1 to 5 RPM, say.
It would help me if you could tell me if TI includes this type of very low RPM in their testing of their drivers/motors. If so, which drivers/motors were tested in this way.
Is there an example code you could point me to which was used in this testing?
Are there general recommendations TI could give me if I try and accomplish this myself (an example would be to select a motor with a high number of pole pairs rather than a low one) etc?
Any other information you think will be useful will be appreciated.
Thanks!
  • Hi Asaf,

    I will get back to you by Dec.13th with a response.

    Regards,

    Joshua

  • Hi Asaf, 

    Many of our team members are currently out of office for US holiday timeframe - but will be back in office by 1st week of January.

    Please anticipate a delayed response & feel free to provide additional information in the meantime.
    Best Regards,
    Andrew

  • Hello Asaf,

    We can generally drive a motor at 8% of its maximum rated speed. Although if the motor is able to generate enough BEMF at lower speeds then we can drive these motors lower than 8% to the motors max speed.

    Since the speed that the motor can be driven at is dependent on the motors construction we do not conduct low RPM testing.

    To drive a motor slowly we recommend either switching to a sensored device like the MCT8316Z or using a gearbox to slow the output speed of the motor allowing for the motor to be spun at higher speeds.

    Regards,

    Joshua

  • Hi Joshua!

    I've read this ticket, which is very similar to what I'd like to do as well.
    My sense of the answers there is that I should be able to run a BLDC motor very slowly and very smoothly if I implement a PID/PI controller to manage the outputs to the motor. This seems, as I understand the answers, to be independent of the specific motor used, but there may be motors better suited to this task than others.

    From other sources online, I gathered these pointers:

    For a slowly, smoothly rotating motor-
    1. use a high pole pair count motor

    2. Sinusoidal control is generally better than trapezoidal. I intend to use SPWM.

    3. When using a closed loop system, the motor resolution should be very high. I intend to use an encoder with a 0.01 or 0.04 angle resolution which should be more than enough.

    4. Will the DRV8316REM be a better fit for me compared to the MCT8316Z given the latter is a trapezoidal output and the former sinusoidal? I also don't plan on using the hall sensors for position feedback, but an external position encoder.

    Could you add/comment on anything you think is relevant?

    Am I heading in the right direction in your opinion?

  • Hi Asaf,

    You are on the right track. I do think that using the DRV8316 plus an external controller, which is running a PID/PI loop with an encoder as an input, would be a good system for driving a motor at very low speeds. 

    Regards,

    Joshua