$20.00
Wir reservieren deinen Warenkorb für 15:00.
Es ist der Klassiker auf dem Basteltisch: Du lädst den Sweep-Sketch hoch, und statt sauber von 0 auf 180 Grad zu fahren, zuckt dein SG90 nur, brummt beim Halten oder wird kochend heiß. Beim MG90S mit Metallgetriebe ist es oft noch frustrierender, weil man mehr Kraft erwartet – und trotzdem stellt der Roboter-Arm daneben.
Gute Nachricht: In über 90 % der Fälle ist nicht das Servo kaputt, sondern Stromversorgung, Masse oder Code. In diesem Praxis-Guide lösen wir die 7 häufigsten Servo-Probleme am Arduino – Schritt für Schritt, mit Messwerten, korrekter Verkabelung und sofort kopierfähigen Fixes. Stand: .
Ein 9g-Micro-Servo klingt harmlos, zieht aber in der Spitze richtig Strom. Das vergessen fast alle Tutorials:
Rechne selbst: Zwei SG90 an der 5V-Buchse des UNO, dazu noch ein Sensor – beim ersten gleichzeitigen Anfahren bricht die Spannung von 5,0 V auf 3,8–4,2 V ein. Der Arduino macht einen Brownout-Reset, das Servo zuckt wild, die serielle Ausgabe startet neu. Das ist kein Defekt, das ist Physik.
Merksatz für Maker: Signal kommt vom Arduino, Strom niemals. Servos bekommen immer ein eigenes Netzteil mit gemeinsamer Masse (GND).
Vergiss Fritzing-Bilder, bei denen Rot direkt auf 5V vom Arduino geht. So läuft es stabil – egal ob UNO oder Leonardo:
Ohne die gemeinsame GND-Verbindung schwebt das PWM-Signal. Typisches Bild: Das Servo dreht zufällig, reagiert kaum auf myServo.write() oder zittert im Stillstand. Ein einziges schwarzes Jumper-Kabel zwischen Netzteil-GND und Arduino-GND löst das.
Beide sehen gleich aus, verhalten sich aber anders. Falsch gewählt = Brummen, Überhitzung, ausgeschlagene Zahnräder:
| Kriterium | SG90 (Kunststoff-Getriebe) | MG90S (Metallgetriebe) |
|---|---|---|
| Gewicht / Drehmoment | ca. 9 g / ca. 1,8 kg·cm bei 5 V | ca. 13,4 g / ca. 2,2 kg·cm bei 5 V | Stärke | super leicht, schnell, günstig – ideal für Lenkung, Klappen, Zeiger, kleine Greifer | deutlich robuster gegen Blockieren, Vibration, Dauerlast – ideal für Roboterarme, Pan-Tilt mit Kamera | Schwäche | Zahnräder brechen bei Blockade, wird bei Dauer-Brummen schnell heiß | braucht mehr Strom, brummt lauter beim Halten, etwas mehr Spiel im Getriebe |
| Praxis-Regel | Alles, was frei läuft und selten blockiert | Alles, was hält, drückt oder Stöße bekommt |
Konkrete Empfehlung aus der Werkstatt: Für Lenkung beim RC-Auto, Lüftungsklappe oder TonUINO-Figur reicht der SG90 Micro Servo 9G völlig – leicht und sparsam. Sobald du einen 2-Achs-Kamerakopf, einen Greifarm oder ein größeres Ruder baust, nimm den MG90S mit Metallgetriebe. Der überlebt den versehentlichen Anschlag am Gehäuse, wo der SG90 Zähne lässt.
Ursache: Stromhunger über USB. Gerade beim Sweep-Beispiel ziehen beide Servos gleichzeitig an, der 5V-Regler geht in die Knie.
Fix: Externes 5V-Netzteil wie in Kapitel 2 anschließen. USB nur noch für Code-Upload und Serial-Monitor. Test: Wenn das Zucken verschwindet, sobald du nur ein Servo ohne Last laufen lässt, war es zu 100 % der Strom.
Ursache: Du fährst mechanisch gegen den Anschlag. write(0) oder write(180) liegt bei billigen Servos oft außerhalb des echten Weges. Das Servo drückt mit voller Kraft gegen den internen Stop – Dauerstrom, Hitze, bald Getriebeschaden.
Fix: Weg begrenzen und Kalibrieren:
#include <Servo.h>
Servo s;
void setup(){ s.attach(9, 500, 2400); }
void loop(){
s.write(10); delay(1000);
s.write(170); delay(1000);
}Statt 0–180 nur 10–170 nutzen. Wenn es noch brummt, weiter einengen auf 20–160. Mit attach(Pin, 500, 2400) passt du die Pulsweite exakt an SG90/MG90S an statt Standardwerte zu raten.
Ursache Nr. 1: Kein gemeinsames GND oder lange, dünne Jumper-Kabel (Spannungsabfall + eingestreute Störungen). Ursache Nr. 2: delay()-freier Code mit schwankender Versorgung oder Timer-Konflikt (z. B. Servo-Lib + tone() auf Pin 9/10 am UNO).
Fix-Checkliste:
tone(), ohne delayMicroseconds-Tricks laufen lassen.Ursache: 4x AA-Batterien (nur 4,8–6 V, aber hoher Innenwiderstand) oder 9V-Block mit Step-Down auf 5 V. Spannung bricht unter Last sofort ein. Ein 9V-Block liefert keine 1 A – der MG90S braucht sie aber.
Fix: 5V / 3A Steckernetzteil oder 2S-LiPo mit 5V/5A BEC. Faustformel: 1 A pro Micro-Servo einplanen. Vier Servos am Roboterarm = 5V/5A fest einplanen, sonst hilft kein Code.
Ursache: Verwechselt. Es gibt SG90 als 180°- und als 360°-Continuous-Version. Die 360°-Variante versteht write() als Geschwindigkeit, nicht als Winkel – ideal für Antrieb, unbrauchbar für Lenkung.
Fix: Beim Kauf auf 180° achten. Im Zweifel testen: write(90) muss Stillstand bei 360°-Typ bzw. Mittelstellung bei 180°-Typ bedeuten. Dreht es bei 90° weiter, hast du Continuous in der Hand.
Ursache: Timer- und Stromkonkurrenz. Am Arduino UNO teilen sich Servo-Lib (Timer1) und manche IR-/Ultraschall-Libs Ressourcen. Dazu kommen Spannungseinbrüche, wenn der Sensor gleichzeitig misst.
Fix: Servos auf D9/D10 legen, Sensoren auf D2–D7, Stromschienen trennen (Sensoren an Arduino-5V, Servos an extern). Im Code erst messen, dann fahren, nicht gleichzeitig in loop() ohne Timing. millis()-Steuerung statt vieler delay(20) hilft enorm.
Ursache: Horn nicht mittig montiert und mit Gewalt festgeschraubt, oder Hebel zu lang = zu viel Drehmoment. Beim SG90 bricht dann ein Zahn, beim MG90S lockert sich die Madenschraube am Abtrieb.
Fix: Horn bei Mittelstellung write(90) aufstecken, dann erst verschrauben. Hebelarm so kurz wie möglich – 1 cm längerer Hebel halbiert gefühlt die Kraft. Für alles mit Stößen sofort auf Metallgetriebe wechseln.
Viele suchen den Fehler im Servo, dabei limitiert das Board. Kurz eingeordnet:
while(!Serial)) und Timer-Belegung minimal anders, also Sweep-Beispiel ggf. Pin anpassen.Für Roboter mit vielen Achsen, WLAN oder Logging ist der Schritt zu Mega oder ESP32 sinnvoll – für 1–2 Servos zum Lernen, Testen und Kalibrieren bleib bei UNO/Leonardo, das spart Nerven.
write(90) hochladen, Horn in Mittelstellung aufstecken, festschrauben.Micro-Servos sind Stell-, keine Fahrmotoren. Wenn du Räder dauerhaft drehen, Förderbänder oder schwere Chassis bewegen willst, brauchst du DC-Getriebemotoren mit Treiber statt Servos. Der klassische Einstieg dafür ist eine Doppel-H-Brücke:
Der AZ-L298N Doppel H-Brücken Controller steuert zwei DC-Motoren oder einen Schrittmotor direkt vom Arduino – mit Richtungswechsel und PWM-Drehzahl. Typische Kombination: Lenkung per SG90, Antrieb per DC-Motor + L298N. So trennst du sauber zwischen Stellen (Servo) und Fahren (DC) – und beide Systeme bekommen ihren eigenen Stromzweig.
Wenn du diese fünf Punkte abhakst, laufen SG90 und MG90S am Arduino Micro, UNO und Leonardo leise, kraftvoll und wiederholgenau – ohne Zittern, ohne Resets, ohne Grillen. Und falls du beim Test merkst, dass Kunststoff-Zähnchen aufgeben: Steig direkt auf Metall um, bevor du das halbe Gehäuse neu druckst.
Tipp zum Schluss: Bestell Servos immer im Doppelpack. Ein Ersatz-Servo zum Gegentesten spart stundenlange Fehlersuche, ob es Code, Strom oder doch Mechanik ist.
Ab 45,00 € ist der Versand kostenlos. Darunter kostet er 8,00 €.
Einfache Rücksendung
SSL-verschlüsselter Checkout
100% echte Produkte
Maker-Audio und Embedded-Sound zum Vergleichen – mit Beratung und Marken wie Arduino und Waveshare.
E-Mail: support@makerklang.shop
Adresse: Werkstattstraße 27, 04109 Leipzig, Deutschland