Example Code for Arduino-Moving a Servo

Last revision 2026/01/08

This article provides a comprehensive guide on how to control a servo motor using Arduino, including hardware and software preparation, wiring instructions, and a sample code for smoothly moving the servo from 0 to 180 degrees and back, making it an ideal resource for beginners.

Wiring Diagram

Sample Code

// Moving a Servo
// by BARRAGAN <http://barraganstudio.com>
// This example code is in the public domain.

#include <Servo.h>
Servo myservo;         // create servo object to control a servo
                       // a maximum of eight servo objects can be created
int pos = 0;            // variable to store the servo position

void setup() {
    myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
    for(pos = 0; pos < 180; pos += 1){   // goes from 0 degrees to 180 degrees
                                         // in steps of 1 degree
        myservo.write(pos);              // tell servo to go to position in variable 'pos'
        delay(15);                       // waits 15ms for the servo to reach the position
    }

    for(pos = 180; pos>=1; pos-=1) {     // goes from 180 degrees to 0 degrees
        myservo.write(pos);              // tell servo to go to position in variable 'pos'
        delay(15);                       // waits 15ms for the servo to reach the position
    }
}

Was this article helpful?

ON THIS PAGE

TOP