Jump to content

[C#] Servo Brick: Sanftes Anfahren und Abbremsen


Recommended Posts

Hallo zusammen :)

 

Es widerstrebt mir, mich anzumelden und gleich eine freche Frage zu stellen ohne viel gesucht zu haben. Ich weiß, dass das eigentlich nicht gern gesehen ist! Das tut mir leid! Sollte ich selbst noch eine Lösung finden oder erstellen, werde ich das hier selbstverständlich kund tun :)

 

Ich arbeite an einem Projekt, bei dem ein Strahler zweiachsig über Analogservos ausgerichtet wird. Da es sich um einen Prototypen handelt, ist der Aufbau alles andere als perfekt und zur Vermeidung von Unwuchten mussten bei beiden Achsen Gegengewichte herhalten. Das ganze ist also in sich recht träge und neigt beim Anfahren und vor allem beim Abbremsen dazu, zu schwingen.

Natürlich ist das weder für den gesamten mechanischen Aufbau inkl. Servos, noch für das Leuchtmittel besonders gut.

 

Daher bin ich auf der Suche nach einer Möglichkeit, die Beschleunigung und damit die Bewegung geschmeidiger zu gestalten.

Optimal wäre, wenn die Beschleunigung statt konstant zu sein, während der gesamten Bewegung von Startwinkel zu Zielwinkel sinusförmig verlaufen würde.

 

Gibt es dafür bereits eine fertige Lösung, einen Ansatz oder hat jemand eine spontane Idee, wie das effizient und effektiv zu lösen wäre?

 

Sollte sich niemand dazu äußern, werde ich mich die Nächte mal an eine Lösung begeben!

 

Danke vielmals vom Würfelzucker :)

Link zu diesem Kommentar
Share on other sites

Für diesen buchstäblich süßen Namen darfst du auch so freche Fragen stellen ^^

 

Das Servo-Brick bietet dir zum einen die Velocity, damit kannst du die Maximalgeschwindigkeit deiner Servodrehung regulieren.

Zum anderen hast du die Acceleration.

Diese ermöglicht es dir, dass die Velocity nicht abrupt auf das Maximalniveau gehoben wird.

 

Ich würde aber behaupten, dass die Bremsung des Servos davon unberührt bleibt. Hier könntest du im Zweifel selbst kurz vor erreichen der Zielposition anfangen die Velocity zu senken.

 

Beachte: Da Servos keine Rückmeldung über ihren Drehwinkel geben kann das Servo-Brick die Position nur "erraten". Wenn du also eine sehr geringe Drehgeschwindigkeit hast ist das sehr präzise, weil der Servo viel zeit hat die gewünschte Bewegung auszuführen. Wenn du die Velocity aber höher stellst als es dem Servo möglich ist, dann wird das Servo-Brick dennoch denken, dass der Servo "bestimmt schnell genug" war.

Das ist je nach Anwendung doof oder egal.

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...