Stap 14:
Drijvende Servodoor BARRAGAN < http://people.interaction-ivrea.it/h.barragan>
Wordt het gebruik gedemonstreerd van de servo-bibliotheek, veegt het generiek
servomotor van het minimum aan de maximale positie
Gemaakt van 15 februari 2004
Bijgewerkt 30 augustus 2007
//////////////////////////BOTONES////////////////////////
int richting = 1; gebruikt voor de knipperende cyclus
int switchPin = 1; digitale pin te koppelen van de schakelaar
////////////////////////////////////////////////////////////////
//////////////////////////TIEMPO////////////////////////
int t;
int tp;
////////////////////////////////////////////////////////////////
//////////////////////////Servo////////////////////////
#include < Servo.h >
Servo myservo; maken van servo-object om te bepalen van een servo
maximaal acht servo-objecten kan worden gemaakt
int pos = 0; variabele op te slaan van de servo positie
////////////////////////////////////////////////////////////////
VOID Setup
{
//////////////////////////SERVO/////////////////////////////
myservo.attach(0); de servo op pin 0 hecht aan de servo-object
////////////////////////////////////////////////////////////////
///////////////////////BOTON///////////////////////////////////
pinMode (switchPin, INPUT); digitale pin 0 ingesteld als input
////////////////////////////////////////////////////////////////
POS = 30;
}
void loop
{
int t = millis();
Aansturen van Servo ++ Butons / / /
if((digitalRead(switchPin) == HIGH) & & ((t-tp) > 600)) / / als de schakelaar wordt ingedrukt
{
TP = millis();
Als (pos > 1)
{
POS = pos -1;
}
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(15); wacht 15ms voor de servo te bereiken de positie
}
anders
{
Als ((pos<180) & & ((t-tp) > 4000))
{
POS = pos + 1;
TP = millis();
}
myservo.write(POS); servo naar positie in de variabele 'pos' vertellen
delay(15); wacht 15ms voor de servo te bereiken de positie
}
/////////////////////////////////////////////////////////////////////////
}