Stap 17: Code!
Door Pavel Michajlov
Editie 04
#include < Servo.h >
Servo myservo; maken van servo-object om te bepalen van een servo
Servo myservo_horizontal; maximaal acht servo-objecten kan worden gemaakt
int pos = 0; variabele op te slaan van de servo positie
int pos_horizontal = 10;
int pos_horizontal_incr;
int pos_horizontal_increment_degrees = 10;
int delay_move = 10;
int delay_move_quicker = 5;
int delay_move_slower = 25;
int delay_photo = 1200;
int eerste = 1;
VOID Setup
{
myservo.attach(9); de servo op pin 9 hecht aan de servo-object
myservo_horizontal.attach(10);
}
void loop
{
if(pos_horizontal > 140) / / gaat van 180 graden tot 0 graden
{
terwijl (pos_horizontal > 10)
{
pos_horizontal-= 1;
myservo_horizontal.write(pos_horizontal); servo naar positie in de variabele 'pos' vertellen
delay(delay_move_slower); wacht 15ms voor de servo te bereiken de positie
}
}
pos_horizontal_incr = pos_horizontal_increment_degrees;
terwijl (pos_horizontal_incr > 0 || pos < 80) / / gaat van 180 graden tot 0 graden
{
pos_horizontal_incr-= 1;
Als (pos_horizontal_incr > 0) {}
pos_horizontal += 1;
}
POS += 3;
myservo.write(POS);
myservo_horizontal.write(pos_horizontal); servo naar positie in de variabele 'pos' vertellen
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
}
delay(delay_photo);
Tuig schommels terug en vooruit om hallo te zeggen aan camera man
if(Initial == 1)
{
terwijl (eerste < 15)
{
POS-= 1;
myservo.write(POS);
eerste += 1;
delay(delay_move_slower);
}
terwijl (eerste > -15)
{
POS += 1;
myservo.write(POS);
initiële-= 1;
delay(delay_move_slower);
}
terwijl (eerste < 22)
{
POS-= 1;
myservo.write(POS);
eerste += 1;
delay(delay_move_slower);
}
terwijl (eerste > 1)
{
POS += 1;
myservo.write(POS);
initiële-= 1;
delay(delay_move_slower);
}
eerste = 2;
delay(delay_photo);
delay(delay_photo);
}
Nu begint schieten
voor (pos = 80; pos < 125; pos += 1) / / gaat van 180 graden tot 0 graden
{
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
}
delay(delay_photo);
voor (pos = 125; pos < 170; pos += 1) / / gaat van 180 graden tot 0 graden
{
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
}
delay(delay_photo);
voor (pos = 170 pos > 45; pos-= 1) / / gaat van 0 graden tot 180 graden
{/ / in stappen van 1 graad
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
}
delay(delay_photo);
voor (pos = 45 pos > 10; pos-= 1) / / gaat van 180 graden tot 0 graden
{
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(delay_move); wacht 15ms voor de servo te bereiken de positie
}
delay(delay_photo);
}