Electrical – Motor for precise low speed motion but also capable of high speeds

brushless-dc-motormotorstepper motor

I'm trying to design a system that should rotate at up to 4000 rpm when needed but also be capable of precise (hopefully sub degree) positioning at under 100 rpm or less. I have an absolute position encoder for closed loop control. The load on the motor is very small (a thin piece of plastic).

What I've tried so far:

  • A hobby BLDC motor with an ESC. This works perfectly for high speeds but I haven't been able to get the ESC to go slower than ~1000rpm.
  • A stepper motor works perfectly at low speeds and micro-stepping + the encoder give great resolution. However I haven't been able to get a standard NEMA 17 stepper to go faster than 200rpm at 12V even when accelerating slowly.

These are an order of magnitude off from what I want in terms of speed range.

Some possibilities I've thought of:

  • Gearing down the BLDC. The downside is that the maximum speed will also drop proportionately and we are back to needing a motor with a high speed range.
  • Gearing up the stepper motor. This would reduce the effective resolution unacceptably while increasing speed.
  • Controlling the BLDC manually without the ESC. I'm not sure if I can get an average hobby motor to run slow and smooth even if I found an appropriate controller.

What is the best way to solve this problem where I can have precise control at low speeds but also the possibility of high speeds when needed? Is there some other type of motor or way to control these motors that can give me what I want?

Best Answer

Most hobby ESC operate its motor sensorless. So the RPM is unstable to detect at cetain level. It means correct speed control isn' easy at low speed because the sensoless control would work some level of speed.

Stepper motor is good at position application. If you want use stepper motor as speed control, you should apply vector control instead of open loop. Then you will get more than 600 RPM.