Forum: Mikrocontroller und Digitale Elektronik Servo Geschwindigkeit steuern


von Christoph Fuggersberger (Gast)


Lesenswert?

Hallo,

Ich habe vor, mir einen Hexapod zu bauen, zur Steuerung dient ein 
Arduino Mega, nur habe ich bei der Steuerung der Servos das Problem, 
dass ich einfach nichts finde, wie ich die Servo Geschwindigkeit 
einstellen könnte.
Weiß jemand wie ich die Geschwindigkeit steuern kann, und trotzdem 
mehrere Servos gleichzeitig bedienen kann?

Mfg. Christoph

von Frank (Gast)


Lesenswert?

Falscher Denkansatz.

Ein Servo wird immer die vorgegebene Position mit maximaler 
Geschwindigkeit anfahren und halten. Wenn die resultierende Bewegung 
(scheinbar) langsam gehen soll, muss man diese Bewegung in mehrere 
Phasen unterteilen (quasi Teil-Ziele vorgeben) und diese Vorgaben 
entsprechend langsam wechseln ...

von Floh (Gast)


Lesenswert?

Man kann die Geschwindigkeit des Servos beeinflussen, indem man die 
Sollposition nicht sofort, sondern in mehreren Schritten in zeitlichen 
Abständen anfährt.

Also statt z.B. von 0° auf 90° direkt, lieber in 10°-Schritten, die 
zeitlich verzögert werden.

Zeitgleich kannst du das realisieren, indem du dir quasi eine 
Arbeitliste erstellst. WEnn die gewünschte Endposition nicht erreicht 
ist, gib die Istposition plus einem kurzen Stück Richtung Endposition 
als neue Sollposition vor. Wenn das ganze zyklisch aufgerufen wird, kann 
man mehrere Servos "parallel" berechnen und fahren lassen.

von Frank (Gast)


Lesenswert?

Nachtrag: Dieses "langsam Wechseln" solltest du nun aber nicht mittels 
Warteschleifen bewirken wollen ...

Vom Prnzip her "schiebt" man die demnächst geplanten Bewegungsziele der 
Servos zusammen mit einer Zeitvorgabe bzw. Gültigkeitsdauer (Sekunden, 
Millisekunden) in eine Warteschlange. In einem zyklischen 
Timer-Interrupt schaut man nun regelmäßig nach, was als Nächstes dran 
ist, löscht erledigte Befehle aus der Warteschlange und führt die 
aktuell anstehenden aus ...

von Wolfgang (Gast)


Lesenswert?

Christoph Fuggersberger schrieb:
> Weiß jemand wie ich die Geschwindigkeit steuern kann, und trotzdem
> mehrere Servos gleichzeitig bedienen kann?

Beim Servo (Modelbauservo) läßt sich nur die Position steuern.
Du mußt also den Gesamtweg nach Art einer zeitlich ablaufenden Rampe 
steuern.

von spess53 (Gast)


Lesenswert?

Hi

Es gibt auch Servos, wie z.B. den HiTEC-Robotics-Servo HSR-1422CR, bei 
dem das Ansteuersignal nicht die Lage, sondern die Geschwindigkeit 
vorgibt.

MfG Spess

von Wolfgang (Gast)


Lesenswert?

spess53 schrieb:
> Es gibt auch Servos, wie z.B. den HiTEC-Robotics-Servo HSR-1422CR

Wo?

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?


von Michael (Gast)


Lesenswert?

Wolfgang schrieb:
> Wo?
Der Nachfolger ist der HSR-1425CR und den gibt es auch zu kaufen;-)

von Stefan F. (Gast)


Lesenswert?

Bei den meisten Servos ist die Bewegung bei großer Abweichung soll/ist 
schnell und bei geringer Abweichung langsam. Deswegen folgt er einem 
Steuersignal, dass sich langsam verändert auch langsamer, als wenn man 
das Steuersingal sprunghaft zur Zielwert ändert.

Das kann man schön beobachten, wenn man mal ein Servo öffnet und das 
Potentiometer vom Getriebe trennt.

von lol (Gast)


Lesenswert?

hallo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.