AEQ-WEB

Arduino SG90 Servo Motor
Arduino
08.06.2018

Switch language to: en Englisch

Arduino SG90 Servo

Zu diesem Artikel gibt es auch ein Video auf Youtube: Arduino SG90 Server ansteuern


Der SG90 ist ein kleiner PWM gesteuerter Servo Motor. Die maximale Drehung liegt bei ungefähr 180 Grad. Der Motor hat eine eigene Platine, die mittels Sensor auf die gewünschte Stellung regelt. Bleibt der Motor kurz stecken, so regelt dieser automatisch nach. Der SG90 kann direkt mit der 5V Stromversorgung vom Arduino betrieben werden. Werden jedoch mehrere Servos gleichzeitig angesteuert, so ist eine externe Spannungsversorgung notwendig.


Arduino SG90 Servo Wiring - Schaltplan

Wenn der Servo nicht läuft

Dieser Sketch ist für die Ansteuerung eines analogen PWM Servos. Es gibt auch digitale Servos, die mit diesem Projekt nicht funktionieren. Außerdem unterstützt das Arduino Board nicht auf allen Pins eine PW-Modulation. Für diese Servos können nur folgende digitale Pins verwendet werden: 3, 5, 6, 9, 10 & 11. Werden noch andere Module oder Bauteile mit dem gleichen Arduino verwendet, so könnte auch eine zu niedrige Spannung die Ursache für eine Fehlfunktion sein.


Die Library für Servo-Motoren ist bereits mit dem Arduino IDE installiert worden und muss daher nicht mehr eingebunden werden. Der Code dreht den Motor um 180 Grad langsam vor und schnell wieder zurück. Die Geschwindigkeit kann mit dem Delay in der While-Schleife eingestellt werden.



#include <Servo.h>

Servo servo1;
int position1 = 0;

void setup()
{
  servo1.attach(10);
}
void loop(){
  if (position1 >= 180) {
    position1 = 0;
  }
  while (position1 < 180) {
    servo1.write(position1);
    delay(30);
    position1++;
  }
}

Von Alex @ AEQ-WEB 617