Servomotor SG90: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 81: Zeile 81:


Die Ansteuerung eines Servos mit dem Arduino erfordert ein Programm, das die nötigen Pulssignale erzeugt. Dies kann einerseits von Hand ausprogrammiert
Die Ansteuerung eines Servos mit dem Arduino erfordert ein Programm, das die nötigen Pulssignale erzeugt. Dies kann einerseits von Hand ausprogrammiert
werden oder man nutzt die Standardbibliothek <code>servo.h</code>. Beim Einsatz der SERVO-Bibliothek muss man sich keine Gedanken um die korrekten Impulsbreiten und Frequenzen machen.
werden oder man nutzt die Standardbibliothek <code>Servo.h</code>. Beim Einsatz der SERVO-Bibliothek muss man sich keine Gedanken um die korrekten Impulsbreiten und Frequenzen machen.
  <code>http://www.arduino.cc/en/Reference/Servo</code>
  <code>http://www.arduino.cc/en/Reference/Servo</code>
Die SERVO-Bibliothek unterstützt auf den meisten Boards den Einsatz von bis zu zwölf Servos. Beim Einsatz der SERVO-Bibliothek muss beachtet werden, dass die normale PWM-Funktionalität für die Pins 9 und 10 deaktiviert ist. Die beiden
Die SERVO-Bibliothek unterstützt auf den meisten Boards den Einsatz von bis zu zwölf Servos. Beim Einsatz der SERVO-Bibliothek muss beachtet werden, dass die normale PWM-Funktionalität für die Pins 9 und 10 deaktiviert ist. Die beiden
Zeile 88: Zeile 88:
Die Grundschaltung (Abb. 4) steuert einen Servo an Port 9, indem ein Sollwert von der Software vorgegeben wird.
Die Grundschaltung (Abb. 4) steuert einen Servo an Port 9, indem ein Sollwert von der Software vorgegeben wird.


Tipp: Die <code>servo.h</code> liegt bei Ihnen lokal unter <code>servo.h</code>.
Tipp: Die <code>Servo.h</code> liegt bei Ihnen lokal unter <code>c:\Users\NUTZER\Documents\Arduino\linraries\Servo\src\Servo.h</code>.


== Videos ==
== Videos ==

Version vom 19. November 2022, 10:46 Uhr

Abb. 1: Servomotor SG90

Autoren: Prof. Dr.-Ing. Schneider


Einleitung

Diese Micro Servo ist winzig und leicht mit hoher Ausgangsleistung. Der Servo kann dreght sich ca. 180 ° (180 ° in jede Richtung), funktioniert genau wie ein Standardservo ist dabei jedoch deutlich kleiner. Für die Ansteuerung mit dem Arduino ist eine Bibliothek vorhanden. kleiner. Das kleine günstige Micro Servo eignet sich hervorragend für viele Anwendungen. Falls du mehrere Servos betreiben willst, gibt es auch noch das Motor Shield oder ein Servo Driver mit 16 Kanälen.

Als Servo bezeichnet man eine elektrische Einheit aus einem Elektromotor und einer Ansteuer- oder Regelungselektronik. Servos für den Modellbau gehören zu den am meisten verbreiteten Varianten von Servos. Modellbauservos wandeln die vom Sender übermittelte elektrische Information in eine mechanische Bewegung um. Dabei werden Lenkung, Höhen- oder Seitenruder und andere bewegliche Teile des ferngesteuerten Modells aktiviert.

In einem Servo sind auf engstem Raum Steuerelektronik und ein Gleichspannungs-Elektromotor untergebracht. Eine integrierte Schaltung ermittelt die aktuelle Drehposition (Drehwinkel) des Motors, der sich nach links und nach rechts drehen muss. Diese Einheit zur Erfassung der Position wird meist mit einem Potentiometer, also einem verstellbaren Widerstand realisiert. Die im Servo integrierte Regeleinheit vergleicht das Eingangssignal des Servos (Sollwert) mit der aktuellen Position des Motors (Istwert) und regelt so den Motor auf die vorgegebene Position.

Modellbauservos werden hauptsächlich mittels PWM-Signal (Pulsweitenmodulation) angesteuert. Die Breite des Pulssignals (HIGH-Signal) entspricht dem Sollwert. Das PWM-Signal hat meist eine Frequenz von 50 Hz. Dies entspricht einer Periodendauer von 20 ms. Die Pulsweite des Sollwertes liegt dann im Bereich von 1 ms (linker Anschlag) und 2 ms (rechter Anschlag). Die Mittelposition liegt bei 1,5 ms. Die restliche Zeit der Periode bleibt das Signal auf LOW. Der Winkel zwischen linkem und rechtem Anschlag beträgt üblicherweise 180 Grad [basierend auf 1].

Der Servo wird mit 3 verschiedenen Armen und 3 Befestigungsschrauben (1x Befestigung Arm-Servo, 2x Befestigung Arm-Drehobjekt (spitz)) geliefert.

Achtung: Ein Servo darf nie von Hand gedreht werden, da so das Kunststoffgetriebe zerstört werden kann.

Technische Daten

Messbereich 0 ° .. 180 °
PWM-Modulation analog
PWM-Pulszykluszeit 20 ms
PWM-Pulsweite 500-2400 ms
Versorgungsspannung 4.0 V .. 7.2 V
Versorgungsstrom 20 mA
Geschwingigkeit 0,12 s/60 ° (@4,8 V, lastfrei)
Drehmoment 1,5 kg/cm (@4,8 V)
Gewicht 9 g
Getriebe Kunststtoff
Arbeitstemperatur 0 °C .. +55 °C
Abmessungen 22,2 mm x 11,8 mm x 31 mm

Pinbelegung

Abb. 2: Pinbelegung für den Servo SG90
Pin Belegung Farbe
1 Ausgang (PWM) Orange
2 Versorgungsspannung 5 V (VCC) Rot
3 Masse (GND) Braun

Abb. 2 zeigt die Pin-Belegung und Abb. 3 eine mögliche Grundschaltung füt den Arduino.

Abb. 3: Grundschaltung für den Servo SG90

Ansteuerung

Abb. 4: Anschlussplan des Servos mit Steckbrett
Winkel Position Pulsweite PWM Befehl
-90 ° Linksanschlag 1 ms
SERVO.write(0)
0 ° Mittelstellung 1,5 ms
SERVO.write(90)
+90 ° Rechtsanschlag 2 ms
SERVO.write(180)

Servos benötigen für die Ansteuerung nur rund 20 mA und können von einem PWM-Ausgang des Arduino direkt angesteuert werden.

Die Ansteuerung eines Servos mit dem Arduino erfordert ein Programm, das die nötigen Pulssignale erzeugt. Dies kann einerseits von Hand ausprogrammiert werden oder man nutzt die Standardbibliothek Servo.h. Beim Einsatz der SERVO-Bibliothek muss man sich keine Gedanken um die korrekten Impulsbreiten und Frequenzen machen.

http://www.arduino.cc/en/Reference/Servo

Die SERVO-Bibliothek unterstützt auf den meisten Boards den Einsatz von bis zu zwölf Servos. Beim Einsatz der SERVO-Bibliothek muss beachtet werden, dass die normale PWM-Funktionalität für die Pins 9 und 10 deaktiviert ist. Die beiden Ports sind in diesem Fall für den Servobetrieb reserviert.

Die Grundschaltung (Abb. 4) steuert einen Servo an Port 9, indem ein Sollwert von der Software vorgegeben wird.

Tipp: Die Servo.h liegt bei Ihnen lokal unter c:\Users\NUTZER\Documents\Arduino\linraries\Servo\src\Servo.h.

Videos

Video 1: SG90 Servomotor einfach erklärt



Literatur

  1. Brühlmann, T.: Arduino Praxiseinstieg. Heidelberg: mitp, 4. Auflage 2019. ISBN 978-3-7475-0056-9. URL: HSHL-Bib, O'Reilly-URL

Datenblatt

Datenblatt: SG90 9 g Micro Servo

Weiterführende Links




→ zurück zum Hauptartikel: Informatikpraktikum 1: Arduino Praxiseinstieg
→ zurück zum Hauptartikel: HSHL-Mechatronik-Baukasten