Veröffentlicht 2026-03-15
Freunde, die an Maker-Projekten gearbeitet haben, müssen diese Situation erlebt haben: Ich habe einen SG90 360-Grad gekauftServomit großer Freude, aber als ich es an die Leitung anschloss, stellte ich fest, dass es den Befehlen überhaupt nicht gehorchte. Ich wollte es in einen bestimmten Winkel drehen, aber es drehte sich weiter. Auch wenn ich den Code geändert habe, blieb er immer noch derselbe. Handelt es sich um einen Absturz? Keine Sorge, hier wird tatsächlich die 360-Grad-Funktion genutztServoals GewöhnlicherServo. Ihre Steuerlogiken sind völlig unterschiedlich. Heute werden wir darüber sprechen, wie man dieses 360-Grad-Servo wirklich steuert.
Der Positionsrückkopplungskreis im Inneren des 360-Grad-Servos wird aufgehoben, sodass dieser den Winkelbefehl nicht mehr erkennt, sondern die Drehrichtung und -geschwindigkeit über das Tastverhältnis des PWM-Signals steuert. Das Standardsteuersignal ist ein Impuls mit einer Periode von 20 ms. Wenn die Hochpegelzeit 1,5 ms beträgt, stoppt der Servo. Wenn sie weniger als 1,5 ms beträgt, erfolgt eine Umkehrung. Wenn sie länger als 1,5 ms ist, dreht sie sich vorwärts. Je mehr es von 1,5 ms abweicht, desto schneller dreht es sich.
️ Man kann es sich wie einen Gasregler vorstellen: 1,5 ms ist neutral, wenn man ihn kleiner dreht, beschleunigt er rückwärts, und wenn man ihn größer dreht, beschleunigt er vorwärts. Wenn Sie zum ersten Mal damit in Kontakt kommen, sind Sie vielleicht nicht daran gewöhnt, aber solange Sie diese Zuordnungsbeziehung verstehen, können Sie problemlos loslegen. Ich erinnere mich, dass ich, als ich es zum ersten Mal benutzte, lange gerungen habe, bevor ich herausgefunden habe, dass das die Wahrheit ist.
Die Geschwindigkeitsregelung hängt tatsächlich von der Einstellung der Impulsbreite ab. Am Beispiel des üblichen SG90 entspricht ein Impuls von 0,5 ms einer Vorwärtsdrehung mit voller Geschwindigkeit, 1,5 ms entspricht einem Stopp und 2,5 ms entspricht einer Rückwärtsdrehung mit voller Geschwindigkeit. Innerhalb dieses Bereichs rotiert der Puls umso schneller, je näher er an beiden Enden liegt, und je näher er an der Mitte liegt, desto langsamer. Allerdings können die Servos verschiedener Marken leicht unterschiedlich sein, daher ist es am besten, sie vor dem Kauf zu testen.
Beim Schreiben von Code können Sie die Servo-Bibliothek verwenden, um die Funktion () aufzurufen und den Mikrosekundenwert direkt festzulegen. Beispielsweise sorgt (1000) dafür, dass sich das Servo mit einer bestimmten Geschwindigkeit vorwärts dreht. Wenn Sie möchten, dass es sich langsamer dreht, verschieben Sie den Wert näher an 1500, z. B. 1300 oder 1700, damit sich das Servo mit einer geringeren Geschwindigkeit dreht.
Die Hardware-Vorbereitung ist eigentlich sehr einfach. Sie benötigen ein Entwicklungsboard, egal ob Uno oder Nano, und bereiten ein paar SG90-360-Grad-Servos, einige DuPont-Kabel und vorzugsweise ein Steckbrett zum Debuggen vor. Besonderes Augenmerk sollte auf die Stromversorgung gelegt werden. Die Betriebsspannung des Servos beträgt 4,8V bis 6V. Der Strom beim Start kann mehrere hundert Milliampere erreichen. Ein direkt angeschlossener 5-V-Ausgang kann die Platine neu starten.
1. Verbinden Sie das braune Kabel (Erdungskabel) des Servos mit GND
2. Schließen Sie das rote Kabel (Stromversorgung) an 5V an. Bei vielen Servos schließen Sie eine externe Stromversorgung an.
3. Das orange oder gelbe Kabel (Signal) ist mit einem digitalen Pin, z. B. Nr. 9, verbunden
Nachdem Sie die Verbindung auf diese Weise hergestellt haben, können Sie sie steuern, indem Sie den Code hochladen.
Die PWM-Periode des Standard-Servos ist auf 20 Millisekunden festgelegt, was einer Frequenz von 50 Hz entspricht. Das 360-Grad-Servo analysiert die High-Level-Zeit in diesem Zyklus und wandelt sie in einen Geschwindigkeitsbefehl um. Nehmen Sie als Beispiel die Servo-Bibliothek. Im Hintergrund wird automatisch die richtige PWM-Wellenform generiert. Sie müssen ihm lediglich mitteilen, wie viele Mikrosekunden der hohe Pegel gehalten werden soll.
Denken Sie bei der Steuerung mit Code daran, .(9) zu verwenden, um den Pin in setup() zu binden, und ändern Sie dann kontinuierlich den geschriebenen Mikrosekundenwert in loop(), um Geschwindigkeitsänderungen zu erreichen. Schreiben Sie zum Beispiel zuerst 1500, um eine Sekunde lang anzuhalten, dann 1000, um zwei Sekunden lang mit voller Geschwindigkeit vorwärts zu laufen, und dann 2000, um mit voller Geschwindigkeit rückwärts zu laufen, und Sie können sehen, wie sich das Servo gemäß Ihren Anweisungen bewegt.
Probleme mit der Stromversorgung sind für Anfänger die größte Gefahr. Wenn ein einzelner SG90 normal funktioniert, beträgt der Strom mehrere zehn Milliampere, kann aber beim Start auf über 500 mA ansteigen. Wenn die integrierte 5-V-Stromversorgung verwendet wird, startet der Mikrocontroller neu, sobald die Spannung abfällt, und das Servo funktioniert natürlich nicht richtig. Es wird empfohlen, zur Stromversorgung des Servos 4 AA-Batterien oder ein 5V 2A-Netzteil zu verwenden. Verbinden Sie einfach den Minuspol des Netzteils mit GND.
Sie müssen auch auf die Signalleitung achten. Befestigen Sie es nicht am Hochstromkabel des Motorantriebs, da dies leicht zu Störungen führen und zum Wackeln des Servos führen kann. Wenn Sie feststellen, dass das Servo nicht reibungslos läuft, können Sie an beiden Enden des Netzteils einen Kondensatorfilter mit 100 μF bis 470 μF hinzufügen, was die Stabilität erheblich verbessern kann.
Diese Art von kontinuierlich rotierendem Servo eignet sich am besten zum Antrieb von Robotern mit Rädern. Letztes Jahr habe ich aus zwei SG90 ein Kleinwagen-Chassis gebaut. Durch die Steuerung der unterschiedlichen Geschwindigkeiten und Lenkung der linken und rechten Räder konnte ich mich vorwärts, rückwärts und wenden. Die Programmierung ist einfach und die Wirkung ist gut. Darüber hinaus kann es zur horizontalen Drehung auf einer Kameraplattform oder als einfaches Roboterarmgelenk (das keine präzise Positionierung erfordert) verwendet werden.
Es ist zu beachten, dass es nicht für den Einsatz in Situationen geeignet ist, in denen eine präzise Positionskontrolle erforderlich ist, z. B. wenn ein Roboterarm ein Objekt ergreift, da keine Möglichkeit besteht, zu wissen, wo es sich gerade befindet. Wenn Sie ein solches Projekt durchführen möchten, müssen Sie noch auf ein normales Servo umsteigen oder einen Encoder installieren.
Sind bei der Verwendung des 360-Grad-Servos seltsame Probleme aufgetreten? Zum Beispiel wackelt es beim Abbiegen oder befolgt Anweisungen nicht? Kommen Sie zum Kommentarbereich, um Ihre Erfahrungen zu teilen, und geben Sie ihm ein „Gefällt mir“, damit mehr Freunde diesen Artikel sehen können!
Aktualisierungszeit: 15.03.2026
Wenden Sie sich an den Produktspezialisten von Kpower, um einen geeigneten Motor oder ein geeignetes Getriebe für Ihr Produkt zu empfehlen.