Veröffentlicht 2026-04-03
Dieser Artikel bietet eine vollständige technische Erklärung, wie ein Standard funktioniertServoMotor funktioniert und die genauen Methoden zur Steuerung seiner Position. Sie lernen das interne Regelsystem, die Rolle des Pulsweitenmodulationssignals (PWM) und Schritt-für-Schritt-Anleitungen für die präzise Winkelpositionierung von 0 bis 180 Grad kennen.
Ein StandardServoMotor ist kein einfacher Gleichstrommotor, der kontinuierlich läuft. Es handelt sich um ein vollständiges Regelsystem mit geschlossenem Regelkreis, das aus vier wichtigen internen Komponenten besteht:
Gleichstrommotor:Erzeugt eine Rotationsbewegung.
Untersetzungsgetriebe:Reduziert die Motorgeschwindigkeit und vervielfacht gleichzeitig das Drehmoment.
Positionssensor (Potentiometer):Verbunden mit der Abtriebswelle. Sein elektrischer Widerstand ändert sich, wenn sich die Welle dreht, und liefert so eine Echtzeit-Rückmeldung über den aktuellen Winkel.
Steuerplatine:Vergleicht die Sollposition (vom Eingangs-PWM-Signal) mit der tatsächlichen Position (vom Potentiometer).
So funktioniert der geschlossene Kreislauf:
1. Der Steuerkreis empfängt einen Zielpositionsbefehl.
2. Es liest die aktuelle Wellenposition vom Potentiometer ab.
3. Es berechnet den Fehler (Zielposition – aktuelle Position).
4. Es treibt den Gleichstrommotor in die richtige Richtung (vorwärts oder rückwärts), um diesen Fehler zu minimieren.
5. Wenn die aktuelle Position der Zielposition entspricht, stoppt der Motor.
6. Diese Schleife läuft kontinuierlich und hält die Welle in der befohlenen Position, auch wenn eine äußere Kraft versucht, sie zu bewegen.
Beispiel aus gängigen Anwendungen:In einem Roboterarmgelenk ist dasServoerhält den Befehl, sich auf 90 Grad zu bewegen. Selbst wenn eine leichte Last (z. B. ein kleines Werkzeug) angehängt ist, hält die Regelung die 90-Grad-Position aktiv aufrecht. Wenn eine äußere Kraft den Arm auf 92 Grad drückt, erkennt das Potentiometer diese Änderung und der Steuerkreis wendet sofort ein Gegendrehmoment an, um auf 90 Grad zurückzukehren.
Die Servoposition wird durch eine bestimmte Art von elektrischem Signal gesteuert:Pulsweitenmodulation (PWM). Das Steuersignal hat drei feste Parameter und einen variablen Parameter.
Feste Parameter (Standard für 99 % der Hobby- und Industrieservos):
Signalperiode:20 Millisekunden (ms). Dies bedeutet, dass alle 20 ms ein neuer Impuls gesendet wird, was einer Frequenz von 50 Hz entspricht.
Stromspannung:Typischerweise 4,8 V bis 6,0 V (für Standardservos). Hochspannungsservos verbrauchen möglicherweise 7,4 V oder mehr, die Signallogik bleibt jedoch bei 50 Hz PWM.
Pulsminimum und -maximum:Der kürzeste Impuls (normalerweise 0,5 ms bis 1,0 ms) und der längste Impuls (normalerweise 1,5 ms bis 2,5 ms) definieren den gesamten Verfahrbereich.
Variabler Parameter: Impulsbreite
Die Breite des hohen Impulses (in Millisekunden) bestimmt den Zielwinkel.
Neutrale Position (90 Grad):Ein Puls von genau1,5 msbefiehlt dem Servo, sich in die Mitte zu drehen.
0 Grad (ein Extrem):Ein Puls von1,0 ms(oder manchmal 0,5 ms, abhängig von der Werkskalibrierung des Servos) befiehlt dem Servo, sich vollständig bis zum Anschlag zu drehen.
180 Grad (das entgegengesetzte Extrem):Ein Puls von2,0 ms(oder manchmal 2,5 ms) befiehlt dem Servo, vollständig bis zum entgegengesetzten Anschlag zu drehen.
Präzise Puls-zu-Winkel-Zuordnungsformel:
Für ein Standardservo mit einem Bereich von 0° bis 180° und einem Impulsbereich von 1,0 ms bis 2,0 ms:
Zielimpulsbreite (ms) = 1,0 ms + (gewünschter Winkel / 180) * (2,0 ms – 1,0 ms)
Oder vereinfacht:Impulsbreite (ms) = 1,0 + (gewünschter Winkel / 180)
Beispielrechnung:
Gewünschter Winkel = 45 Grad
Impulsbreite = 1,0 + (45/180) = 1,0 + 0,25 =1,25 ms
Wichtige Timing-Regel:Der Impuls wird alle 20 ms gesendet. Die Dauer des niedrigen Signalanteils wird automatisch bestimmt als20 ms - Impulsbreite ms. Der Regelkreis misst nur diehohe Pulsbreite. Solange die Periode 20 ms beträgt (± einige ms Toleranz), behält das Servo seine Position.
Um ein Servo genau zu positionieren, müssen Sie ein kontinuierliches 50-Hz-PWM-Signal mit variabler Impulsbreite erzeugen. Hier ist die genaue Methode mit gängiger Hardware:
Schritt 1: Bestimmen Sie die Impulsgrenzen Ihres Servos
Gehen Sie niemals davon aus, dass ein Servo 1,0 ms bis 2,0 ms benötigt. Überprüfen Sie immer das Datenblatt des Herstellers. Zur Sicherheit:
1. Beginnen Sie mit einem 1,5-ms-Impuls (Neutral).
2. Verringern Sie die Impulsbreite schrittweise alle 2 Sekunden um 0,05 ms, bis Sie hören, wie das Servo stoppt oder sehen, dass es die physikalische Grenze erreicht. Notieren Sie dies als minimalen Puls.
![]()
3. Erhöhen Sie die Impulsbreite schrittweise alle 2 Sekunden von 1,5 ms um 0,05 ms, um den maximalen Impuls zu ermitteln.
Schritt 2: Erzeugen Sie das PWM-Signal
Sie benötigen einen Mikrocontroller (z. B. Arduino, Raspberry Pi Pico, STM32) oder ein spezielles Servocontrollermodul.
Beispiel: Steuerung eines Servos mit einem Standard-Mikrocontroller:
Strom anschließen:Rotes Servokabel an +5V, braun/schwarzes Kabel an GND. Use a separate power supply for high-torque servos.
Signal anschließen:Orange/weiß/gelbes Kabel zu einem PWM-fähigen digitalen Pin.
Schreiben Sie Code, um eine 50-Hz-PWM mit variablem Arbeitszyklus auszugeben.
Schritt 3: Senden Sie die Befehlssequenz
So bewegen Sie sich auf 0 Grad: Geben Sie alle 20 ms kontinuierliche Impulse mit einer Breite von 1,0 ms aus.
So bewegen Sie sich auf 90 Grad: Geben Sie alle 20 ms kontinuierliche Impulse mit einer Breite von 1,5 ms aus.
So bewegen Sie sich auf 180 Grad: Geben Sie alle 20 ms kontinuierliche Impulse mit einer Breite von 2,0 ms aus.
Schritt 4: Bewegung überprüfen
Nach dem Senden der neuen Impulsbreite dreht sich das Servo innerhalb der angegebenen Laufzeit (typischerweise 0,1 bis 0,3 Sekunden für 60 Grad) in die neue Position. Der Steuerkreis hält dann diese Position.
Beispiel aus gängigen Anwendungen:Bei einem ferngesteuerten Modellflugzeug dekodiert der Empfänger die Joystick-Position des Senders in ein PWM-Signal. Wenn Sie den Joystick von der Mitte ganz nach links bewegen, ändert der Empfänger den Impuls von 1,5 ms auf 1,0 ms. Der Steuerkreis des Servos erkennt diese Änderung, treibt den Motor an, um die Steuerfläche (z. B. Querruder) in den neuen Winkel zu bewegen, und hält ihn dort, bis sich der Joystick erneut bewegt.
Problem: Servo zittert oder oszilliert.
Ursache:Verrauschtes Netzteil oder ein instabiles PWM-Signal (Timing-Jitter).
Lösung:Fügen Sie einen großen Kondensator (1000 µF oder mehr) über die Servostromleitungen in der Nähe des Servos hinzu. Stellen Sie sicher, dass der Mikrocontroller eine stabile Taktquelle verwendet.
Problem: Servo dreht sich nicht um volle 180 Grad.
Ursache:Die angewendeten minimalen und maximalen Impulsbreiten stimmen nicht mit der internen Kalibrierung des Servos überein.
Lösung:Führen Sie das Verfahren zur Ermittlung der Impulsgrenzen in Schritt 1 durch. Passen Sie die minimalen und maximalen Impulskonstanten Ihres Codes entsprechend an.
Problem: Servo überhitzt oder zieht im Stand hohen Strom.
Ursache:Das Servo kämpft ständig gegen eine externe Last oder sein internes Potentiometer ist falsch ausgerichtet.
Lösung:Reduzieren Sie die mechanische Belastung. Wenn das Servo am Ende der Fahrt summt, reduzieren Sie die befohlene Impulsbreite leicht (verwenden Sie z. B. 1,05 ms statt 1,0 ms für 0 Grad).
Problem: Servo bewegt sich in eine Position, kehrt aber bei Belastung langsam zurück.
Ursache:Das Drehmoment reicht für die Anwendung nicht aus oder die Versorgungsspannung sinkt unter Last.
Lösung:Verwenden Sie einen Servo mit höherem Drehmoment. Verwenden Sie ein Netzteil, das mindestens das Zweifache des Blockierstroms des Servos liefern kann.
Grundprinzipien zur Hervorhebung wiederholt:
Ein Servo ist einPositionsregelsystem mit geschlossenem Regelkreis, nicht nur ein Motor.
Das Steuersignal ist50-Hz-PWMmit einer festen Periode von 20 ms.
DerPulsbreite(1,0 ms bis 2,0 ms typisch) wird direkt auf die Winkelposition (0° bis 180°) abgebildet.
Der Steuerkreis vergleicht kontinuierlich Sollpositionen und Istpositionen und wendet ein Motordrehmoment an, um etwaige Fehler auszuschließen.
Umsetzbare Empfehlungen für eine zuverlässige Servosteuerung:
1. Überprüfen Sie vor dem Betrieb immer den Impulsbereich Ihres Servos.Verwenden Sie als sicheren Ausgangspunkt einen neutralen Impuls von 1,5 ms. Gehen Sie niemals ohne Tests von einem Bereich von 1,0 ms bis 2,0 ms aus.
2. Verwenden Sie ein spezielles Netzteil für Servos mit hohem Drehmoment.Versorgen Sie ein Servo nicht über den 5-V-Pin eines Mikrocontrollers mit Strom. Ein blockierter Servo kann 1–3 Ampere verbrauchen, wodurch die meisten Mikrocontroller zurückgesetzt werden.
3. Fügen Sie einen 100-1000 µF-Elektrolytkondensator zwischen den Strom- und Erdungsleitungen des Servos hinzu.Dies stabilisiert die Spannung und eliminiert die meisten Jitter-Probleme.
4. Senden Sie kontinuierlich PWM-Befehle.Das Servo benötigt alle 20 ms einen neuen Impuls, um seine Position zu halten. Wenn das Signal stoppt, geben die meisten Servos ihr Drehmoment ab und werden freibeweglich.
5. Für präzise Anwendungen (z. B. Kamerakardanringe, Roboterfinger) kalibrieren Sie jedes Servo einzeln.Messen Sie die exakten Impulsbreiten für 0°, 90° und 180° mit einem Potentiometer oder Winkelsensor. Speichern Sie diese kalibrierten Werte in Ihrem Steuercode.
Durch die Anwendung dieser Prinzipien und Methoden erreichen Sie eine genaue, wiederholbare und zuverlässige Servopositionierung für jedes Projekt, von Roboterarmen bis hin zu Animatronik und CNC-Maschinen.
Aktualisierungszeit: 03.04.2026
Wenden Sie sich an den Produktspezialisten von Kpower, um einen geeigneten Motor oder ein geeignetes Getriebe für Ihr Produkt zu empfehlen.