|
Servomotor ansteuern
Ein Servomotor (kurz
"Servo") ist ein Motor, der sich nicht einmal eine ganze Umdrehung
bewegen kann.
Dafür kann er jedoch einen bestimmten Drehwinkel einnehmen.
Diesen Winkel kannst Du bestimmen.
So ein Servo hat drei Anschlüsse:
Betriebsspannung (bei meinem Servo: 5V / Farbe rot)
GND (=Masse) (bei meinem Servo: Farbe braun)
Signaleingang (bei meinem Servo: Farbe orange)
Für den gewünschten Drehwinkel speist Du ihm in den
Signaleingang ein Rechtecksignal von 1ms bis 2 ms Breite ein:
für Linksanschlag: 1 ms
für Mittelstellung: 1.5 ms
für Rechtsanschlag: 2 ms
natürlich sind alle anderen Winkel auch möglich.
Damit der Servo diesen Winkel mit einer gewissen Kraft halten
kann, muss spätestens nach 20 ms ein neuer Impuls
kommen.
Um ein solches Rechtecksignal zu erzeugen, benutzen wir einen
PWM-Ausgang unseres Arduino.
Die Bibliothek servo.h stellt uns komfortable Befehle zur
Steuerung von Servos zur Verfügung.
Wir müssen nur die gewünschte Gradzahl zum Servo senden:
/*
Servomotor steuern
Servomotor an Pin 9
Fährt 0°, 180° und 90° an
www.arduinospielwiese.de
*/
#include <Servo.h>
Servo meinServomotor; // erstellt das Objekt
"meinServomotor"
void setup()
{
meinServomotor.attach(9); // verknüpft das
Objekt "meinServomotor" mit Pin 9
}
void loop()
{
meinServomotor.write(0);
delay(1000);
meinServomotor.write(180); delay(1000);
meinServomotor.write(90); delay(1000);
}
Mit dieser Methode kann unser Arduino Uno R3 bis zu 6 Servos
ansteuern.
Weitere Servos sind aber möglich - dann mit einer weniger
komfortablen Methode.
|