Interfacing Servo Motor with PIC Microcontroller – MPLAB XC8
Servo Motor is an ordinary geared dc motor equipped with closed loop servo mechanism which uses position feedback to control exact angular position of the rotor. These are commonly used in robotic arms, legs etc. Servo Motors do not rotate continuously, their rotation is limited to fixed angles. Usually these motors have rotation limit from 90º to 180° and some special have limits 360° or more.
Servo Motors usually have three wires. RED and BLACK wires are used to provide power. Required voltage will depend upon the type of servo you are using, so please refer the specifications given by the manufacture. The third wire is used to provide control signals to control exact angular position of the servo motor. Its color varies for different manufactures such as YELLOW, BROWN, WHITE etc.
Unlike DC Motors, reversing the power supply polarity does not reverse the rotation instead of it may damage the control circuitry.
Servo Motors can be easily interfaced with PIC Microcontroller. Here for demonstration we are using PIC 16F877A and VIGOR VS-10A servo motor. The required pulse width of this servo motor ranges from 800μS to 2200μS and rotation angle is greater than or equal to 170°. Its operating voltage range is 4.8V to 6V.
For more detail: Interfacing Servo Motor with PIC Microcontroller – MPLAB XC8