Servo library
This library allows an Arduino board to Functions
control RC (hobby) servo motors.
Servos have integrated gears and a attach()
shaft that can be precisely controlled. write()
Standard servos allow the shaft to be writeMicroseconds()
positioned at various angles, usually read()
attached()
between 0 and 180 degrees.
detach()
Continuous rotation servos allow the
rotation of the shaft to be set to
Examples
various speeds.
Knob: control the shaft of a
The Servo library supports up to 12 servo motor by turning a
motors on most Arduino boards and 48 potentiometer.
on the Arduino Mega. On boards other Sweep : sweeps the shaft of a
than the Mega, use of the library servo motor back and forth.
disables analogWrite() (PWM)
functionality on pins 9 and 10, whether
or not there is a Servo on those pins.
On the Mega, up to 12 servos can be
used without interfering with PWM
functionality; use of 12 to 23 motors
will disable PWM on pins 11 and 12.
Circuit
Servo motors have three wires: power,
ground, and signal. The power wire is
typically red, and should be connected
to the 5V pin on the Arduino board.
The ground wire is typically black or
brown and should be connected to a
ground pin on the Arduino board. The
signal pin is typically yellow, orange or
white and should be connected to a
digital pin on the Arduino board. Note
that servos draw considerable power,
so if you need to drive more than one
or two, you'll probably need to power
them from a separate supply (i.e. not
the +5V pin on your Arduino). Be sure
to connect the grounds of the Arduino
and external power supply together.
Examples
Knob: Control the position of a servo with a
potentiometer.
Sweep: Sweep the shaft of a servo motor back
and forth.
Reference Home
http://www.arduino.cc/en/Tutorial/Knob :
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
void setup() {
myservo.attach(9); // attaches the servo on pin 9 to the servo object
void loop() {
val = analogRead(potpin); // reads the value of the potentiometer (value
between 0 and 1023)
val = map(val, 0, 1023, 0, 180); // scale it to use it with the servo (value between 0
and 180)
myservo.write(val); // sets the servo position according to the scaled value
delay(15); // waits for the servo to get there