Servo Motor Control using Arduino

Servo Motor Control using Arduino
In the tutorial Servo Motor Control using Arduino, I will tell you step by step procedure for connecting the servo motor with Arduino and how to design a algorithm in Arduino software to control its angular position with the help of servo coded signal. First of all I would like to tell you about the hardware components necessary for Servo Motor Control using Arduino.- You can download the complete Arduino source code here by clicking on the button below.
- Just download .rar file, extract it and enjoy the complete source code.
Hardware Required
A complete list of the hardware equipment necessary for this task is given below.- Computer/Laptop
- Arduino UNO (Micro Controller)
- Appropriate USB Cable
- Servo Motor (4.8 to 6.0V with 2.5 kgf-cm torque)
- Jumper Wires (Cables)
Circuit Diagram
- The circuit diagram for Servo Motor Control using Arduino is shown in the figure below.
- I have supplied 5V to red wire of the servo motor as shown in the above figure.
- The black wire is the attached to the GND pin of the Arduino UNO.
- Yellow wire is basically the wire used to control the angular motion as well as the angle of the servo motor.
Source Code Description
- The complete Arduino source code for Servo Motor Control using Arduino is given below.
- You have to just copy the code given below and to past it in your Arduino software.
- By uploading the source code to your Arduino board you will be able to control the servo motor using Arduino.
#include <Servo.h> //library for servo motor
Servo myservo; // servo motor object for its control
int ang = 0; // a variable to store the servo angle
void setup() {
Serial.begin(9600);
myservo.attach(8); // servo motor is attached to pin no 8 og Arduino
}
void loop() {
for (ang = 0; ang <= 180; ang += 5) // goes from 0 degrees to 180 degrees with a step og 5 degree
{
myservo.write(ang); // rotates the servo to rotate at specific angle
delay(50); // adding delay of 50 msec
Serial.println("Motor has started its rotation from 0 to 180 degress");
}
for (ang = 180; ang >= 0; ang -= 5) // goes from 180 degrees to 0 degrees with a step of 5 degree
{
myservo.write(ang); // rotates the servo to rotate at specific angle
delay(50); // adding delay of 50 msec
Serial.println("Motor has started its rotation from 180 to 0 degress");
}
}
- First of all I have inserted the library for servo motor.
- Then I have created a servo object and declared the initial angle of the servo motor.
- After that I have have adjust the baud rate, the rate at which Arduino communicates with the laptop/computer.
- Then I have defined the pin at which the servo motor is attached to the Arduino UNO's board.
- Inside the main loop, I have applied the condition that in between 0 and 180 degrees, the servo motor's angle will be increased with different steps and each step has 5 degrees of angular movement.
- When maximum limit is reached, the angle will be reduced from 180 to 0 degree with different steps, each step having 5 degrees of angular movement.
- That was the brief description of the Arduino complete source code designed for Servo Motor Control using Arduino.
×
![]()





































































