void Geschrieben January 24, 2021 at 13:50 Share Geschrieben January 24, 2021 at 13:50 Hallo zusammen, ich teste gerade das neue Servo Bricklet 2.0. Dabei sind mir ein paar Unstimmigkeiten aufgefallen. Verwendeter Servo: MG995 Betriebsysteme: Windows 10, Ubuntu Im Brickviever ist es mir nicht möglich, beim MG995 die vollen 180° zu drehen. Ich komme auf maximal 90°. Velocity, Acceleration und Deceleration sind ohne Funktion. Ebenso die Funktion Degree min/max. Per Code (C#) sieht das ganze ein wenig anders aus. Hier scheinen Velocity, Acceleration und Deceleration zu funktionieren. Auch die vollen 180° konnte ich mit folgenden Zeilen Code fahren: s.SetDegree(0, -9000, 9000); s.SetPosition(0, 18000) // Bei 9000 fährt der Servo nur 45° s.SetPosition(0, -18000) // Bei -9000 fährt der Servo nur -45° Ich dachte eigentlich, s.SetDegree begrenzt die Methode s.SetPostition, das scheint aber hier nicht der Fall zu sein. An was könnte das liegen? Vielen Dank und viele Grüße, void Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
borg Geschrieben January 25, 2021 at 12:12 Share Geschrieben January 25, 2021 at 12:12 Bei Servos geben die minimale und maximale Pulsweite an wie weit der Servo fährt. Wie weit ein Servo fahren kann und welcher Pulsweite das entspricht hängt leider vom Hersteller und Servotyp ab. Das bedeutet du musst die Pulseweite so einstellen, dass der Servo -90 und +90 erreicht und du kannst dann per "s.SetDegree(0, -9000, 9000);" dem Servo Bricklet sagen dass dies -90/+90 entspricht. Danach kannst du dann per SetPosition die exakte Position anfahren. Bei meinem HS-645MG hier entspricht eine min/max von 600us und 2450us dem Winkel von -90° und +90°. Aber Achtung: Nicht jeder Servo ist darauf ausgelegt auch so weit zu fahren, am besten schaust du vorher im Datenblatt nach welche minimal/maximale Pulsweiten erlaubt sind bei deinem Servo und welchem Winkel diese entsprechen. Zum Brick Viewer: Das kann ich nicht reproduzieren, bei mir funktionieren alle Schieberegler. Wenn ich z.B. die Velocity auf 1000 stelle dann dauert es 18 Sekunden um von -90° auf 90° zu fahren (was ich auch erwarten würde bei 10° pro Sekunde Geschwindigkeit). Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
void Geschrieben January 25, 2021 at 15:43 Autor Share Geschrieben January 25, 2021 at 15:43 Danke für die schnelle Antwort. Der Tipp mit den Pulsweiten hat mein Problem behoben. Die Einstellung Degree min/max hab ich nun auch verstanden. Ich dachte fälschlicherweise, dass sich dadurch die Drehbewegung begrenzen lässt, dabei entspricht das einer Skalierung zwischen den Pulsweiten. Im Brickviewer stand eine Periode von 19500µs. Nachdem ich diese auf 20000µs geändert hatte, funktioniert auch die Velocity, Acceleration und Deceleration. Eine Frage hab ich noch: Ist das Brickelt für Mega Scale Servos, wie dem HS-805BB, geeignet? Diese haben einen Stromverbrauch von 1200mA. In der Doku war für mich nicht ersichtlich, ob es da Grenzen gibt. Bei 10 Servos wären das 12 Ampere. Macht das Bricklet das mit? Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.