Force output control on Brushless DC Motor?

Hello! I'm trying to make a robot gripper similar with the 2-Finger Adaptive Gripper form Robotiq ( The main feature of this gripper is that it can grip objects with an adjustable force without using force sensors. I ask Robotiq what kind of actuator use on this gripper and they told me that the actuator is a Brushless DC Motor with a special encoder. Now I wonder, how can they control the force output of the motor? Do they limit the voltage or current draw to obtain a certain force output limitation and when the actuator stops rotating the encoder sees that and stop it in that position? Some opinions?

I'd think that the motor current (torque equivalent) is monitored and controlled by PWM. In normal operation (free running) the PWM duty cycle has to be decreased already with decreasing rotation speed, to compensate for the decreasing back-EMF, in order to achieve the desired average motor current.

Then a given low torque/current in griping (stalled) state can result in equivalently low positioning speed, so that the set current may be adjusted differently for free running (high=fast) and stalled (low=desired torque) state. Eventually more states can/should be reflected in the controller code, to distinguish idle and griping states (of 0 RPM), and opening (uncritical) movement from critical closing movement. Also the mechanical inner and outer limits have to be handled, to deactivate the motor when reached.

Thank you for your response! Although for the moment I'm just a student in robotics in second year and my knowledge in electronics are not so great, I will study in detail this case. After all, the reason I want to make this gripper is to learn. Can you recommend me a motor and/or a driver suited for this project? It would help me a lot!

No, I can't recommend you a specific pet ;-)

Search the web for "brushless dc motor" and "brushless dc motor driver chip" for offers. Find out which motor may match your needs, then find a suitable driver chip or breakout board.

No problem! :)