Veröffentlicht 2026-04-21
Dieser Leitfaden bietet eine vollständige, praktische Erklärung zur Steuerung der Drehung eines StandardsServoMotor.ServoMotoren drehen sich nicht kontinuierlich wie normale Gleichstrommotoren; Stattdessen bewegen sie sich in eine bestimmte Winkelposition (z. B. 0°, 90° oder 180°) und halten diese Position. Die zuverlässigste und am weitesten verbreitete Methode zur Erzielung dieser präzisen Richtungssteuerung ist die Erzeugung eines Pulsweitenmodulationssignals (PWM) mit einem bestimmten Zeitmuster. Dieser Artikel behandelt das genaue Funktionsprinzip, erforderliche Hardwareverbindungen, Beispiele für Codierungslogik, allgemeine Schritte zur Fehlerbehebung und einen abschließenden Aktionsplan. Alle Informationen basieren auf branchenüblichen Spezifikationen und überprüften Praktiken.
AServoDer Drehwinkel des Motors wird ausschließlich durch die Breite eines elektrischen Impulses bestimmt, der alle 20 Millisekunden (ms) gesendet wird. Dieses Signal wird als a bezeichnetSteuerimpuls.
Signalperiode: 20 ms (50 Hz Frequenz) – konstant bei fast allen Standardservos.
Pulsbreitenbereich: Typischerweise von 0,5 ms bis 2,5 ms.
0,5-ms-Impuls → auf 0° drehen (vollständig gegen den Uhrzeigersinn drehen)
1,5 ms Impuls → auf 90° drehen (Mittel-/Neutralstellung)
2,5 ms Impuls → auf 180° drehen (vollständig im Uhrzeigersinn)
> Überprüfbare Quelle: Dieser Timing-Standard ist in den offiziellen Datenblättern großer Servohersteller (z. B. Futaba, Hitec, Tower Pro) veröffentlicht und steht im Einklang mit dem RC-Hobby-Industrieprotokoll.
Schlüssel zum Mitnehmen: Der interne Steuerkreis des Servos vergleicht die eingehende Impulsbreite mit der aktuellen Positionsrückmeldung von einem an der Abtriebswelle angebrachten Potentiometer. Jeder Unterschied veranlasst den Motor, sich in die richtige Richtung zu drehen, bis die beiden übereinstimmen. Dieses geschlossene System ermöglicht Ihnen eine präzise und wiederholbare Winkelsteuerung.
Um die Servorotationssteuerung zu implementieren, benötigen Sie die folgenden Artikel (keine bestimmten Marken erforderlich):
Fall aus der Praxis: Ein Bastler, der einen ferngesteuerten Roboterarm baute, verwendete genau diese Komponenten. Das Servo wurde getrennt vom Mikrocontroller mit Strom versorgt, um Spannungsabfälle zu vermeiden. Durch Variation der Impulsbreite von 0,5 ms bis 2,5 ms in Schritten von 0,1 ms bewegte sich das Armgelenk sanft von 0° auf 180°.
Die meisten Standardservos verwenden einen 3-poligen Stecker mit den folgenden Farbcodes (siehe Datenblatt Ihres Servos):
Braun oder Schwarz→ Masse (GND) – mit der gemeinsamen Masse von Netzteil und Mikrocontroller verbinden.
Rot→ Stromversorgung (Vcc) – Anschluss an +5V oder +6V DC-Versorgung. Versorgen Sie ein Servo nicht direkt über den 5-V-Pin eines Mikrocontrollers mit Strom, wenn dieser mehr als 200 mA verbraucht. Verwenden Sie einen separaten Akku.
Orange oder Gelb→ Signal (PWM-Eingang) – mit einem PWM-fähigen digitalen Pin am Mikrocontroller verbinden.
Schritt-für-Schritt-Verbindung:
1. Verbinden Sie alle Erdungen (Servo-GND, Mikrocontroller-GND und Minuspol der Stromversorgung) miteinander.
2. Schließen Sie die Servostromversorgung (rotes Kabel) an den Pluspol des externen Akkus an.
3. Verbinden Sie das Servosignal (oranges Kabel) mit dem ausgewählten PWM-Pin am Mikrocontroller.
> Kritischer Sicherheitshinweis: Schließen Sie das rote Kabel eines Servos niemals direkt an den 5-V-Ausgang eines Mikrocontrollers an, wenn das Servo mehr als 500 mA Spitzenstrom benötigt – dies kann die Platine beschädigen. Verwenden Sie für Servos mit hohem Drehmoment immer eine separate Stromquelle.
Nachfolgend finden Sie eine generische Codelogik, die auf fast jeder Mikrocontroller-Plattform funktioniert. Das Beispiel verwendet Standardfunktionen, um ein 50-Hz-PWM-Signal zu erzeugen und die Impulsbreite zu ändern.
Pseudocode (zum Verständnis):
setup(): PWM-Pin als Ausgang einstellen, PWM-Frequenz auf 50 Hz einstellen (Periode = 20 ms) loop(): // Auf 0° drehen, Impulsbreite einstellen = 0,5 ms Verzögerung (500) // 0,5 Sekunden warten, bis sich der Servo bewegt // Auf 90° drehen, Impulsbreite einstellen = 1,5 ms Verzögerung (500) // Auf 180° drehen, Impulsbreite einstellen = 2,5 ms Verzögerung (500)
![]()
Praktische Umsetzung (C-Style für Arduino-kompatible Boards):
#enthalten// Standard-Servobibliothek Servo myServo; // Servoobjekt erstellen void setup() { myServo.attach(9); // Signalpin 9, 50 Hz automatisch konfiguriert } void loop() { myServo.write(0); // 0° (stellt intern einen 0,5-ms-Impuls ein) Verzögerung (1000); myServo.write(90); // 90° (1,5 ms Impuls) Verzögerung (1000); myServo.write(180); // 180° (2,5 ms Impuls) Verzögerung (1000); }
Wenn Ihre Bibliothek keine write()-Methode bereitstellt, können Sie die PWM mithilfe von Timer-Interrupts manuell generieren. Die exakte Impulsbreite muss für die erforderliche Dauer gehalten werden, dann muss der Signalpin für den Rest der 20-ms-Periode auf Low gesetzt werden.
Auch bei korrektem Code stellen Sie möglicherweise fest, dass sich der Servo nicht in die erwarteten Endpunkte dreht. Dies ist auf Fertigungstoleranzen zurückzuführen.
Häufige Situation: Ein Benutzer hat zwei identische Servos gekauft. Einer drehte sich mit Impulsen von 0,5–2,5 ms genau um 0°–180°, während sich der andere mit dem gleichen Signal nur von 10° auf 170° bewegte.
Lösung – Pulsgrenzen kalibrieren:
1. Beginnen Sie mit einem 1,5-ms-Impuls (Mitte).
2. Verringern Sie die Impulsbreite schrittweise in 0,01-ms-Schritten, bis sich das Servo nicht mehr bewegt. Dieser niedrigste Impuls entspricht der physischen 0°-Position Ihres Servos.
3. Erhöhen Sie die Impulsbreite schrittweise von 1,5 ms, bis sich das Servo nicht mehr bewegt. Dieser höchste Impuls entspricht der physischen 180°-Position Ihres Servos.
Notieren Sie diese kalibrierten Werte und verwenden Sie sie in Ihrem Code anstelle der nominellen 0,5 ms und 2,5 ms. Die meisten Servos funktionieren innerhalb von 0,6–2,4 ms nach der Kalibrierung.
Einige Anwendungen (z. B. Roboterräder) erfordern eine unbegrenzte Drehung, nicht nur eine 180°-Bewegung. Standardservos können in Servos mit kontinuierlicher Rotation umgewandelt werden, indem der mechanische Anschlag am Abtriebsrad entfernt und das Rückkopplungspotentiometer durch zwei Festwiderstände ersetzt wird. Für die meisten Benutzer wird jedoch der Kauf eines speziell angefertigten Servos mit kontinuierlicher Rotation empfohlen.
Steuerverfahren für Servos mit kontinuierlicher Rotation:
1,5 ms Impuls → Stopp
>1,5 ms (z. B. 1,7 ms) → mit proportionaler Geschwindigkeit im Uhrzeigersinn drehen
Kernpunkt, den man sich merken sollte: Um eine präzise Servodrehung zu erreichen, geht es ausschließlich darum, die richtige Impulsbreite (0,5–2,5 ms) innerhalb eines Zeitraums von 20 ms zu erzeugen. Keine andere Methode bietet die gleiche Genauigkeit und Einfachheit.
Umsetzbare Empfehlungen:
1. Beginnen Sie mit einer Testschaltung– Verwenden Sie ein einzelnes Servo, einen 5-V-Akku und eine beliebige Mikrocontrollerplatine. Laden Sie den Beispielcode hoch, der in 10°-Schritten von 0° bis 180° reicht.
2. Kalibrieren Sie jedes neue Servo– Führen Sie immer die Kalibrierungsroutine (Abschnitt 5) durch, bevor Sie Ihr Projekt abschließen. Dadurch werden Positionierungsfehler vermieden.
3. Verwenden Sie ein spezielles Netzteil– Verlassen Sie sich niemals für mehr als ein kleines Servo auf den 5-V-Pin des Mikrocontrollers. Externe 5V/2A-Versorgungen sind kostengünstig und verhindern Resets.
4. Überprüfen Sie mit einem Oszilloskop oder Logikanalysator– Wenn weiterhin Probleme auftreten, messen Sie die tatsächliche Impulsbreite am Signalpin. Es muss stabil sein und innerhalb von 0,5–2,5 ms liegen.
5. Dokumentieren Sie Ihre kalibrierten Werte– Notieren Sie die minimale und maximale Impulsbreite für jedes Servo in Ihrem Projekt. Dies gewährleistet die Wiederholbarkeit, wenn Sie ein Servo später austauschen.
Wenn Sie diesem Leitfaden folgen, erreichen Sie in jedem Robotik- oder Mechatronikprojekt eine zuverlässige, wiederholbare Servomotor-Rotationssteuerung. Genaue Spezifikationen finden Sie immer im Datenblatt Ihres Servos. Im Zweifelsfall testen Sie den Impulsbreitenbereich empirisch mit der oben beschriebenen Kalibrierungsmethode.
Aktualisierungszeit: 21.04.2026
Wenden Sie sich an den Produktspezialisten von Kpower, um einen geeigneten Motor oder ein geeignetes Getriebe für Ihr Produkt zu empfehlen.