PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fragen zur Ansteuerung von Servos!



Staind
03.07.2011, 15:23
Hallo,
ich bin vor 2 Wochen angefangen Mikrocontroller zu programmieren. Erst mal nur mit Assembler. Wollte jetzt ein Servo ansteuern und habe folgenden Bericht gelesen.
http://www.rn-wissen.de/index.php/Servos
Habe hier zu Hause folgenden Servo Tower Pro SG91R
Daten:
Spannung 3-6V
Kraft 1,8kg /cm
Geschwindigkeit 0,12sec /60 Grad
Gewicht 9 g
Abmessungen (LxBxH) 23x12,2x29 mm
Kabellänge 24cm

Jetzt steht in den Bericht, dass ein Servo ein Impuls von 1,5ms für die Mittelstellung, 0,95 ms für Links- und 2,05 ms für die Rechtsposition braucht.
Es steht auch drin das es nur ca. Werte sind.
Die Mittelstellung passt bei meinem Servo auch. Also wenn ich ihn ein Impuls von 1,5 ms gebe bewegt der „Arm“ sich in der Mitte.
Aber wenn ich den Servo einen Impuls von 0,95 ms gebe bewegt der Arm sich nur ca 45 ° nach rechts. (nicht nach links).
Für 90° nach rechts benötigt der Servo ein Signal von 0,59ms undfür links ein Signal von
2,52ms.

Jetzt zu meiner Frage:
Kann man schon vorher irgendwie sehen, welche Zeiten der Servo für Links, Rechts, Mittelstellung braucht? (Datenblatt)
Gibt es auch Servos die sich 270° drehen können?

Arkon
03.07.2011, 16:08
Die meisten Servos arbeiten mit einem Bereich von 90° also +-45° ! Man kann mit entsprechenden Werten die meisten Servos auch dazu bringen sich weiter zu drehen allerdings kann das Servo dabei unter anderem auf mechanische Anschläge welche im Servogehäuse eingebaut sind treffen und Schaden nehmen.

Die Servos wurden für den Modellbau entwickelt und dienen hier zum erzeugen einer linearen Bewegung welche dann auf Ruderhörner (Flugzeuge), Lenkungen, Gashebel am Motor usw. wirken. Da sind Drehwinkel von mehr als 45° je Richtung uninteressant, da der erzeugte lineare Hub bedingt durch die Kreisbewegung im bereich 45°-90° relativ gering wird.

Es gibt für Segelboote auch Servos mit einer Seilscheibe, die mehr als die "normalen 45° schaffen. Aber in diesem Bereich des Modellbaus kenne ich mich nicht aus.

oberallgeier
03.07.2011, 16:13
... schon vorher irgendwie sehen, welche Zeiten ... Gibt es auch Servos die sich 270° drehen können?Ich kenne kein Datenblatt das die Zeiten konkret nennt, aber ich verwende auch keine teuren Servos. Ausserdem wurde hier im Forum schon vorgestellt, dass die Servos recht gut mit deutlich geringeren Zeiten auskommen - man muss aber dann die Periodenlänge entsprechend anpassen nach dem Muster Periodenlänge = 100 %, "links" ist ca. 5 %, "rechts" ist ca. 10 %. Es gibt auch Servos, die sich deutlich über 180° drehen, manche meiner Billigstservos gehen fast bis 270°. Es gibt auch Segelwinden die ca. 2 Umdrehungen machen.

Abnormal
03.07.2011, 19:14
Zufällig habe ich in den vergangenen Tagen einen Versuch mit dem Attiny 13 durchgeführt um die funktion eines Servos --> http://www.conrad.at/ce/de/product/.....il=00 zu testen.
Das Programm arbeitet mit einfachen Zeitroutinen und war nur dafür gedacht grundsätzlich die Funktion des Servos bzw die Steuerzeiten herauszufinden. Es ruckelt oder zuckt dabei nichts, der Servo läuft ruhig und zügig sein Programm ab.

Zumindest dem Analog-Servo ist es völlig egal wann er sein Signal bekommt. Auch die Pulsbreite ist nicht so penibel genau einzuhalten. Der Praxistest zeigte das großzügige Reserven vorhanden sind, die ausgereizt werden können.

Beim oben verlinkten Servo habe ich Pulsbreiten zwischen 500 und 2450 us zur Steuerung verwendet ohne an die mechanische Grenzen des Servos ( Anschlag) zu stoßen.

will man symmetrische Servowege erzielen, zeigten sich 700/1600/2450 als bauchbare Pulsbreiten für links/mitte/rechts.

Das es so einfach gehen kann, hätte ich nicht gedacht.
Will man den uC auch noch andere Aufgaben erledigen lassen ist mein Testprogramm natürlich völlig ungeeignet. Ich wollte auch kein fertiges Patent präsentieren sondern nur herausfinden wie kritisch die Werte für die Steuerung wirklich sind. Mit diesem Wissen gerüstet sollte es nun problemlos möglich sein bessere Wege der Ansteuerung zu finden (zB mit PWM-Modulation).

http://www.flickr.com/photos/643062.....8794/

also einfach ausprobieren meint
Abnormal aus Wien ;-)