-
-
Erfahrener Benutzer
Begeisterter Techniker
Wie "sauber" ist denn das Signal, dass deine Karte liefert? Vielleicht bringt ein dedizierter Servocontroller schon Besserung?!
-
RN-Premium User
Stammmitglied
Nur mal zu Anregung: Ich steuere meine Servos über einen Polou Maestro Servocontroler an. Da lässt sich sowohl die Geschwindigkeit als auch die Beschleunigung recht einfach steuern. Entweder in der jeweiligen Outputkonfiguration oder über einefache Skripts.
-
Neuer Benutzer
Öfters hier
Habe die Geschwindigkeitsregelung jetzt mit einem Pololu Serial 8-Servo Controller realisiert, welche ich zum testen bekommen habe. Leider schaffe ich damit nur die Geschwindigkeit bei einem analog Servo Hitec HS-322HD zu steuern.
Für meinen Modelcraft VSD-18MBWG Digitalservo ist dies nicht möglich, jedoch klappt die Positionszuweisung mit dem Controller. Schicke ich einen Geschwindigkeitsbefehl an den Pololu, ändert sich bei neuer Positionszuweisung nur der Stellweg (es wird nicht die Position voll angefahren) und nicht die Geschwindigkeit. Wenn ich es mit dem Graupner Digitalservo DES 806 BB MG versuche, kann ich nicht mal eine gewünschte Position anfahren.
Kann das an dem Controller liegen, dass dieser nur mit analog Servos funktioniert (habe aber in der Bedienungsanleitung nicht von funktionalitätsauschluss mit digitalen Servos gelesen)?
Das eigentlich Vorgehen eines solchen Controllers zur Geschwindigkeitssteuerung ist doch auch eine Pulsweitenveränderung zu der gewünschten Position hin, entsprechend einer gewissen möglichen Auflösung des Controllers oder?
Das Signal was ich mit meiner Karte erzeugt habe, ist ein counter gestütztes PWM-Signal (je nach Position), dass ich alle 20 ms an den Servo schicke. Ist es dabei vielleicht möglich durch eine Verringerung der Low-Time von 20 ms auf zb. 10ms und meiner Idee des schrittweisen Anfahren einer Zwischenposition zur Endposition (wenn ich die Auflösung der Zwischenschritte sehr klein mache) eine saubere Geschwindigkeitsregelung zu realisieren bzw. das Zittern des Servos zu verringern?
-
Erfahrener Benutzer
Begeisterter Techniker
Warum das jetzt mit den Digitalservos nicht funktioniert, kann ich mir auch nicht erklären.
Ich arbeite zZt mit 5€ Servos von Modelcraft. Ich mache den Refresh alle 10ms. Dabei gibt es keinerlei Probleme.
Auch Fahrten mit konstanter Geschwindigkeit werden relativ sauber ausgeführt.
-
Neuer Benutzer
Öfters hier
@ lokirobotics: Da hast du recht, das sieht sehr gut aus. Genau das was meine Servos machen sollen. Wie steuerst du denn die Servos an?
-
Erfahrener Benutzer
Begeisterter Techniker
Danke. 
Ich hab einen eigenen Servocontroller auf Basis eines ATMega32. Die Software läuft aber praktisch auf jedem Controller, der einen Timer mit Compare Match hat.
Der Controller wird einfach mit Positionswerten über die serielle Schnittstelle gefüttert. Für den PC hab ich mir ein Programm geschrieben, mit dem ich Sequenzen erstellen und ablaufen lassen kann.
Der Befehl "set,0,200,1000" z.B. würde Servo1 in einer Sekunde auf Position 200 fahren (0-255 möglich).
-
Neuer Benutzer
Öfters hier
@ lokirobotics: Also verändert dein Controller, wie ich in dem Viedeo gesehen habe, die Pulsweite entsprechend der Zeit, die der Servo für das Anfahren der benötigten Position brauchen soll oder? Hast du die Software in C oder mit was anderem geschrieben? Habe mit meinem Programm und der Messkarte (läuft auch mit Digitalservos), das ganze noch mal optimieren können und das zittern vermindern können. Komme aber immernoch nicht ganz an die saubere Bewegung, wie mit einem Servotester z.B. ran.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen