What is the best electrical motor for generating a variable amount of stall torque? The motor would be used in a VR haptic glove application.

It would be placed on the hand/forearm, and would apply tension to a cord that is attached to the fingertip, in order to give resistance on the finger closing further and thus giving the feeling that you are holding something.

The motor should function in two modes: giving resistance to the finger when you are "holding something", in this mode the motor should generate a relatively large amount of stall torque, and ideally it should be able to increase the torque as the object is further "squeezed". The torque being increased as the object is further squeezed would simulate a soft object. The motor should be able to generate minimum 300 gcm in this mode. The second mode would be if the user is not holding anything and then the motor should apply a very small torque in order to keep the cord under light tension.

The main problems I see with the main types of motors are, a stepper motor is probably to big and powerful for this application, and it isn't supposed to be stalled. I think the internal resistance of a servo would be too big for the second mode of operation. And a DC motor draws large stall currents and the motor would often be in stall.

Currently I'm leaning towards the DC motor option and would try to limit the stall current in some way, and I would probably use PWM for the torque control. But is there a better option that I'm missing?

I hope my explanation was clear.

  • \$\begingroup\$ Cannot it be done with just selenoid? \$\endgroup\$ Oct 20, 2023 at 21:07

1 Answer 1


With a PM DC motor, simply controlling the current will result in a constant stall torque (ignoring friction). That's by far the easiest way to go.

You can control the current with a linear constant-current circuit or use PWM with current feedback.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.