How to find a motor that spins fast and has precise control?

Hi all, I’m trying to create a robot arm that will have a free spinning motor at the end, and I’m having trouble figuring out what direction to go in terms of finding the right motor that would be compact, cost effective, and most importantly be able to handle the situations below.

The motor should be able to spin freely (unlike a servo which can only spin up to 270 degrees back and forth), but I still want to be able to have precise control of back and forth motion.

The reason is that this motor will need to perform two functions:

  1. It will need to be able to spin at up to 1500-2000rpm freely, I’m not exactly sure how much torque but I’m guessing about 1 Newton-meter (~0.738 lb-ft). The motor would be pointing vertically upwards. Precise position control does not matter at this speed, it just needs to be able to spin clockwise at this fast RPM until I tell it to stop.
  2. It will need to be able to rotate +/-180 degrees at 30-60rpm, and with precise position control. In this configuration, the motor would be pointing horizontally The heaviest thing it would need be attached to is a block (about 150x200x40mm) up to about 1-1.5lbs in weight.

I have attached a basic image hoping to make the two situations clearer. My goal is to attach the motor to a servo so that it can rotate the motor up, horizontally, or down, which is why scenario 1 has it pointing upwards, and scenario 2 is pointing sideways.

Originally I thought a hobby CNC spindle may be able to do this, but that seems pretty bulky and doesn’t have precise control. I feel like I would need to pick some sort of DC motor and add a rotary/magnetic encoder, but not really sure what to look for.

Any advice is appreciated!

Hello @coolarj10 and welcome to the RobotShop forum,

The motor should be able to spin freely (unlike a servo which can only spin up to 270 degrees back and forth)

Keep in mind that there are continuous rotation servos that can spin freely.

It will need to be able to spin at up to 1500-2000rpm freely

The speed might be a problem if you want to use a servo as 2000rpm is rather high. The best option for this application would be a brushless DC motor.

It will need to be able to rotate +/-180 degrees at 30-60rpm, and with precise position control.

How precise does it need to be? For high precision, the best option would be a stepper motor but you probably won’t find a stepper motor that can spin fast enough as you mentioned in the first point. The second option would be a dual-mode (continuous and regular) servo motor, but you will have the same problem, the speed won’t be as high as 2000rpm. Maybe an AC brushless servo could or you but those are rather expensive, so your best option might be simply getting two different motors.

I hope that helps!

1 Like

Thank you for the reply! In terms of precision, I don’t have a great answer for you but I do not believe precision is as important as, say, a CNC machine. For example, if I want it to rotate 90 degrees at 30rpm and then stop, and instead it rotates to 93 degrees, I don’t think that would be a problem. Not sure if that helps widen the range of types of motors I could use… it seems tough finding slowly and fast, while also having reasonable torque. I also realized that I may be okay with lowering the torque expectation. In other words, if it can have 0.5 Nm torque at 30 rpm and maybe 0.25 to 0.5 Nm at 1000-2000rpm that would probably be fine. I’d prefer 1 Nm of torque but I think even 0.5 Nm might be okay…

For example, if I want it to rotate 90 degrees at 30rpm and then stop, and instead it rotates to 93 degrees

Noted, in that case a servo would be just fine.

The biggest limiting factor is that you need high speed and not many servos can reach 2000rpm, maybe an industrial brushless servo. The torque you mentioned doesn’t seem high so probably one without a gearbox so it can reach high speeds.