How do Servo Motors Work
Servo with Encoder
A servo motor is used in many situations to control motion. Some places you might have sen a servo motor is on a remote control model plane, car or boat. Servo motors are also used on industrial equipment such as CNC Lathes and Milling Machines as well as 3D Printers.
A servo motor is basically a DC electric motor with a digital encoder attached. The encoder counts how far the motor rotates. If the motor has done one revolution then the encoder has sent the correct number of signals to the controller to let it know one revolution has been done.
The controller is responsible for starting and stopping the motor at the correct number of rotations or part rotations. The controller also can control the voltage applied to the motor which controls the speed. A servo in a remote control toy will probably not have a voltage control, when a CNC Lathe certainly will.
Servo Motor Controller
A servo motor in a lathe will require a higher torque the a regular DC motor. The servo motor is required to move the tooling at low speed so when a low voltage is applied to the motor it needs the torque or force to steadily move.
Servo motors are usually geared to give higher torque. The lower the gearing the more torque the motor will have. But at the same time it will not have a high speed. Higher gearing will give a higher speed, but lower torque.
Arduino Board and Motor Controllers. Control a servo motor from your PC
Remote Control Servo Motors
A servo motor for a remote control will use a potentiometer or a variable resistor as an encoder. As the resistance goes up, the controller will know the motor has turned to a specific point. The resistance can be measured and used to know the position of the motor and the actuator it is connected to. Servo’s for models generally do not require a speed control. They just turn on and off when they the encoder senses the correct resistance. To be able to go in the reverse position a servo motor needs to be able to reverse its polarity or switch the DC current.
Remote Control Servo
Servo motors used in industry for CNC equipment are similar to model servo motors. The motors are usually DC but can be AC and there are even brushless motors that can be used. brushless motors and AC motors use a more advanced controller to control their rotation rather than just a simple forward and reverse and speed control.
A servo for a CNC machine can use a potentiometer for its sensor. The potentiometer is used to determine the degrees a motor has turned to. Potentiometers measure up to 180 degree revolutions. Each degree increment sends a signal to the controller letting the controller know exactly where the motor has rotated to. In the case of an error or over turning, the controller can determine the position and correct the position or send an error message to tell of the problem.
CNC Milling Machine
Servo motors also need to measure Velocity. This is important as a spinning motor cannot stop instantly. It takes time to wind down. Knowing the velocity lets the motor know to slow down as it approaches a reversing point or a point where it has to slow down. Velocity can also tell the controller about the load and if it is likely to stall. If a servo motor does stall or get stuck for some reason, the encoder sends a signal to the controller letting it know of its’ exact position. Some servo motors use a tachometer to determine velocity.
Remote Control Models with Servo Motors
A digital encoder can use a light and a sensor to determine position. A disc with slits at specific points rotates and the light passes through the slits to give a signal. The slits are at a multiple of 360 degrees so the controller knows exactly when one revolution has passed. For even more accuracy additional lights and sensors can be used. With Additional sensors the encoder can determine fractions of degrees in rotation by using interpolation.
Digital encoders are also used to measure speed of rotation on industrial equipment. If you want to make a thread on a CNC Lathe, knowing the speed and location of the spindle is as important as knowing the location of the tooling. Using a digital encoder on the spindle lets you precisely cut a thread as you can return to the start position of your cut accurately and accurately rotate the spindle in unison with the tooling for a smooth accurate cut.
Home CNC with Servo Motors
For a home CNC project using a Windows PC you could use servo motors such as these from http://www.kelinginc.net/ServoMotors.html
You would also need servo controllers such as the Gekko 320X
A motion controller such as
the motion controller relays the signals from the computer to the stepper controller. It also has encoder inputs. There are other controllers available and I have never tested this board.
and the control program such as
Mach3 is designed to control stepper motors, but is also great for servo motor control.