Veröffentlicht 2026-04-05
Einstellung aServoDas Anpassen eines Motors an einen bestimmten Drehwinkel ist eine grundlegende Aufgabe in der Robotik, Automatisierung und Heimwerkerelektronik. In diesem Leitfaden finden Sie die genauen Schritte, Codelogik und Kalibrierungsmethoden zur Erstellung eines beliebigen StandardsServoDrehen Sie ihn in jeden gewünschten Winkel – ohne auf eine bestimmte Marke oder ein bestimmtes Produkt angewiesen zu sein. Sie lernen das universelle Pulsweitenprinzip, den schrittweisen Programmieransatz und die Behebung häufiger Winkelfehler kennen. Am Ende werden Sie in der Lage sein, die Servowinkel präzise und wiederholt einzustellen.
Alle Standardservos verwenden aPulsweitenmodulation (PWM)Signal, um ihren Drehwinkel zu bestimmen. Das Steuersignal ist eine 50-Hz-Frequenz (Periode = 20 Millisekunden). Innerhalb jeder 20-ms-Periode teilt ein hoher Impuls (die „Ein“-Zeit) dem Servo mit, wohin es gehen soll.
1,0 ms Impuls→ 0 Grad (bei den meisten Servos ganz gegen den Uhrzeigersinn)
1,5 ms Impuls→ 90 Grad (Mittelstellung)
2,0 ms Impuls→ 180 Grad (vollständig im Uhrzeigersinn)
Diese Werte sind der Industriestandard. Allerdings können die tatsächlichen Endpunkte zwischen den einzelnen Servos leicht variieren. Die folgende Tabelle zeigt die universelle Beziehung:
> Schlüsselfakt: Die Impulsbreite ändert den Winkel linear. Für jeden Winkel zwischen 0° und 180° beträgt die erforderliche Impulsbreite = 1,0 ms + (Winkel/180) × 1,0 ms.
Befolgen Sie diese vier universellen Schritte. Es wird keine markenspezifische Software oder Hardware vorausgesetzt.
Ein Standardservo hat drei Drähte:
Braun oder Schwarz– Masse (mit GND Ihres Controllers verbinden)
Rot– Stromversorgung (5 V für die meisten Servos; überprüfen Sie die Nennspannung Ihres Servos)
Orange oder Gelb– Signal (an einen PWM-fähigen Pin anschließen)
> Kritische Warnung: Versorgen Sie ein Servo unter Last nicht direkt über den 5-V-Pin eines Mikrocontrollers mit Strom. Verwenden Sie ein separates 5-V-Netzteil, das mindestens 1 A pro Servo liefern kann.
Konfigurieren Sie Ihren Mikrocontroller oder Servotreiber so, dass er ein 50-Hz-Signal (20-ms-Periode) erzeugt. Stellen Sie dann die Impulsbreite entsprechend Ihrem Zielwinkel ein.
Beispielrechnung: Zum Einstellen von 45°
Impulsbreite = 1,0 + (45/180)×1,0 = 1,0 + 0,25 = 1,25 ms
Beispielrechnung: Zum Einstellen von 135°
Impulsbreite = 1,0 + (135/180)×1,0 = 1,0 + 0,75 = 1,75 ms
Die folgende Logik funktioniert auf jeder Plattform (Arduino, Raspberry Pi, ESP32 usw.):
PWM-Frequenz einstellen = 50 Hz PWM-Auflösung einstellen = 1 µs (Mikrosekunde) Schritte Funktion setAngle(angle_degrees): wenn angle_degrees 180: angle_degrees = 180 pulse_width_us = 1000 + (angle_degrees / 180)1000 # pulse_width_us liegt zwischen 1000 und 2000 PWM-Signal schreiben: Periode = 20000 µs, high_time = pulse_width_us
Beobachten Sie nach dem Hochladen Ihres Codes das Servohorn. Wenn sich die Hupe nicht in die erwartete Position bewegt, befolgen Sie die Kalibrierung in Abschnitt 4.
Stellen Sie sich einen einfachen Roboterarm mit drei Gelenken (Schulter, Ellenbogen, Handgelenk) vor. Sie möchten, dass sich das Ellenbogengelenk innerhalb von 2 Sekunden von 30° auf 120° bewegt.
Fallschritte:
1. Identifizieren Sie das Servo für den Ellenbogen.
2. Schreiben Sie eine Schleife, die den Winkel schrittweise vergrößert:
Startwinkel = 30° → Impulsbreite = 1,0 + (30/180)×1,0 = 1,1667 ms
Endwinkel = 120° → Impulsbreite = 1,0 + (120/180)×1,0 = 1,6667 ms
3. Erhöhen Sie den Winkel alle 20 Millisekunden um 1° (50 Schritte pro Sekunde).
![]()
4. Gesamtdauer = (120-30) Schritte × 0,02 s = 1,8 Sekunden (ungefähr).
Ergebnis: Der Ellenbogen bewegt sich sanft und ruckfrei von 30° auf 120°. Diese Methode wird täglich in Tausenden von Hobby- und Bildungsrobotern eingesetzt.
Selbst mit dem richtigen Bereich von 1,0–2,0 ms stellen Sie möglicherweise fest, dass ein Befehl für 90° zu 85° oder 95° führt. Dies ist aufgrund von Fertigungstoleranzen normal. Kalibrieren Sie jedes Servo einzeln:
1. Befehlen Sie dem Servo den Befehl auf 0° (senden Sie einen Impuls von 1,0 ms).
2. Markieren Sie die tatsächliche Position auf der Hupe.
3. Befehlen Sie dem Servo den Befehl auf 180° (senden Sie einen 2,0-ms-Impuls).
4. Markieren Sie die tatsächliche Position.
5. Messen Sie den wahren Winkelbereich. Wenn der physikalische Bereich beispielsweise nur 170° beträgt:
Echter Mindestimpuls = 1,0 ms (funktioniert immer noch)
Echter maximaler Impuls = 2,0 ms ergibt 170° → um 180° zu erreichen, würden Sie 2,058 ms benötigen.
6. Anstatt den Standardbereich zu ändern, ordnen Sie Ihren gewünschten Winkel dem tatsächlichen Bereich zu:
tatsächlicher_Winkel = gewünschter_Winkel × (wahrer_max_Winkel / 180)
Beispiel: Wenn der wahre maximale Winkel = 170° ist, um die gewünschten 90° zu erhalten:
tatsächlicher_Winkel = 90 × (170/180) = 85°→ Impuls für 85° senden.
Diese lineare Zuordnung stellt sicher, dass das physische Horn genau dorthin geht, wo Sie es möchten.
Vermeiden Sie diese Fehler, um den Erfolg zu garantieren:
Einige Servos sind für eine kontinuierliche Drehung modifiziert. In diesem Fall gibt die Impulsbreite keinen absoluten Winkel mehr vor. Stattdessen:
1,5 ms→ anhalten
(z. B. 1,3 ms) → in eine Richtung mit einer Geschwindigkeit drehen, die proportional zur Differenz ist
>1,5 ms(z. B. 1,7 ms) → in die entgegengesetzte Richtung drehen
Bei Servos mit kontinuierlicher Rotation ist das „Einstellen eines Winkels“ ohne Feedback-Sensor (Encoder) nicht möglich. Verwenden Sie für die absolute Winkelpositionierung ein Standardservo (0–180°).
Kernprinzip wiederholt: Der Drehwinkel des Servos wird durch die Erzeugung eines 50-Hz-PWM-Signals mit einer Impulsbreite zwischen 1,0 ms (0°) und 2,0 ms (180°) eingestellt. Der Zusammenhang ist linear.
Sofortiger Aktionsplan:
1. VerbindenSchließen Sie Ihr Servo an eine dedizierte 5-V-Stromversorgung an (nicht an den 5-V-Pin Ihres Mikrocontrollers, wenn mehr als ein Servo vorhanden ist).
2. Erzeugenein 50-Hz-PWM-Signal an jedem GPIO-Pin mithilfe der Servobibliothek Ihrer bevorzugten Plattform oder Roh-PWM.
3. Berechnendie Pulsbreite:puls_us = 1000 + (gewünschter_Winkel/180)1000.
4. Prüfenmit 0°, 90° und 180°. Markieren Sie die tatsächlichen Positionen.
5. KalibrierenVerwenden Sie die Zuordnungsformel in Abschnitt 4, wenn die Positionen um mehr als 2° abweichen.
6. Bewegen Sie sich nach und nachzwischen den Winkeln, indem der Winkel alle 20–50 ms um 1–2° geändert wird, um mechanische Belastungen zu vermeiden.
Wenn Sie dieser Anleitung folgen, können Sie jedes Standardservo mit einer Genauigkeit von ±1° auf jeden Winkel zwischen 0° und 180° einstellen. Es sind keine markenspezifischen Tricks erforderlich – nur der universelle PWM-Standard, dem alle Servos folgen.
Aktualisierungszeit: 05.04.2026
Wenden Sie sich an den Produktspezialisten von Kpower, um einen geeigneten Motor oder ein geeignetes Getriebe für Ihr Produkt zu empfehlen.