A servomotor is a closed-loop servomechanism that uses position feedback (either linear or rotational position) to control its motion and final position. The input to its control is a signal (either analog or digital) representing the desired position of the output shaft.
The motor is paired with some type of position encoder to provide position feedback (and potentially also speed feedback in more sophisticated designs). The controller compares the measured position with the desired position to generate an error signal, which when fed back causes the motor to rotate in the direction needed to bring the shaft to the desired position. The error signal reduces to zero as the desired position is approached, stopping the motor.
Simple servomotors use position-only sensing via a potentiometer and bang-bang control of their motor; the motor only rotates at full speed or is stopped. This type of servomotor is not widely used in industrial motion control, but it forms the basis of the simple and cheap servos used for radio-controlled models.
More sophisticated servomotors make use of an absolute encoder (a type of rotary encoder) to calculate the shaft’s position and infer the speed of the output shaft. A variable-speed drive is used to control the motor speed. Both of these enhancements, usually in combination with a PID control algorithm, allow the servomotor to be brought to its commanded position more quickly and more precisely, with less overshooting.



