|
/* Sweep
|
|
by BARRAGAN <http://barraganstudio.com>
|
|
This example code is in the public domain.
|
|
|
|
modified 8 Nov 2013
|
|
by Scott Fitzgerald
|
|
http://www.arduino.cc/en/Tutorial/Sweep
|
|
*/
|
|
|
|
#include <Servo.h>
|
|
|
|
Servo myservo_C;
|
|
Servo myservo_B;
|
|
Servo myservo_A;
|
|
// create servo object to control a servo
|
|
// twelve servo objects can be created on most boards
|
|
|
|
int pos = 30; // variable to store the servo position
|
|
|
|
void setup() {
|
|
pinMode(10, OUTPUT);
|
|
pinMode(9, OUTPUT);//
|
|
pinMode(6, OUTPUT);
|
|
myservo_C.attach(6);
|
|
myservo_B.attach(9);
|
|
myservo_A.attach(10);
|
|
// attaches the servo on pin 9 to the servo object
|
|
// pinMode(6, OUTPUT);
|
|
// pinMode(7, OUTPUT);
|
|
|
|
myservo_A.write(30+5);
|
|
myservo_B.write(30-8);
|
|
myservo_C.write(30-6);
|
|
delay(1000);
|
|
|
|
myservo_A.write(45+5);
|
|
myservo_B.write(45-8);
|
|
myservo_C.write(45-6);
|
|
delay(1000);
|
|
// myservo_A.write(55+5);
|
|
// myservo_B.write(55-8);
|
|
// myservo_C.write(55-6);
|
|
// delay(1000);
|
|
myservo_A.write(65+5);
|
|
myservo_B.write(65-8);
|
|
myservo_C.write(65-6);
|
|
delay (1000);
|
|
// myservo_A.write(55+5);
|
|
// myservo_B.write(55-8);
|
|
// myservo_C.write(55-6);
|
|
// delay(1000);
|
|
myservo_A.write(45+5);
|
|
myservo_B.write(45-8);
|
|
myservo_C.write(45-6);
|
|
delay(1000);
|
|
|
|
myservo_A.write(30+5);
|
|
myservo_B.write(30-8);
|
|
myservo_C.write(30-6);
|
|
delay(1000);
|
|
|
|
}
|
|
|
|
void loop() {
|
|
for (pos = 30; pos <= 70; pos += 1) { // goes from 0 degrees to 180 degrees
|
|
// in steps of 1 degree
|
|
myservo_C.write(pos-6);// tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,HIGH);
|
|
// digitalWrite(7,LOW);
|
|
delay(15); // waits 15ms for the servo to reach the position
|
|
}
|
|
for (pos = 70; pos >= 30; pos -= 1) { // goes from 180 degrees to 0 degrees
|
|
myservo_C.write(pos-6); // tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,LOW);
|
|
// digitalWrite(7,HIGH);
|
|
delay(15);// waits 15ms for the servo to reach the position
|
|
}
|
|
for (pos = 30; pos <= 70; pos += 1) { // goes from 0 degrees to 180 degrees
|
|
// in steps of 1 degree
|
|
myservo_B.write(pos-8);// tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,HIGH);
|
|
// digitalWrite(7,LOW);
|
|
delay(15); // waits 15ms for the servo to reach the position
|
|
}
|
|
for (pos = 70; pos >= 30; pos -= 1) { // goes from 180 degrees to 0 degrees
|
|
myservo_B.write(pos-8); // tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,LOW);
|
|
// digitalWrite(7,HIGH);
|
|
delay(15); // waits 15ms for the servo to reach the position
|
|
}
|
|
|
|
for (pos = 30; pos <= 70; pos += 1) { // goes from 0 degrees to 180 degrees
|
|
// in steps of 1 degree
|
|
myservo_A.write(pos+5);// tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,HIGH);
|
|
// digitalWrite(7,LOW);
|
|
delay(15); // waits 15ms for the servo to reach the position
|
|
}
|
|
for (pos = 70; pos >= 30; pos -= 1) { // goes from 180 degrees to 0 degrees
|
|
myservo_A.write(pos+5); // tell servo to go to position in variable 'pos'
|
|
// digitalWrite(6,LOW);
|
|
// digitalWrite(7,HIGH);
|
|
delay(15);// waits 15ms for the servo to reach the position
|
|
}
|
|
}
|
|
|
|
|