seltsames Verhalten Ruida + Servomotoren

  • Hallo zusammen,


    so langsam wird aus einem neuen China Schrotthaufen ein - ich hoffe - brauchbares Gerät.


    Heute war der erste Test der Servomotoren.


    Standardmässig sind die Servomotoren auf 6400 Pulse/Sekunde eingestellt.


    Ich habe im Controller entsprechend auf Belt & Servo umgestellt. In dieser Konfiguration laufen die Motoren "normal" - ich hatte da noch nicht auf die richtige Anzahl der Impulse/Länge geachtet.


    Dann habe ich die Motoren auf 40.000 Pulse/Sekunde umgestellt. Dadurch wurden aus 50mm 12.5mm - der Y Motor etwas anders wegen Übersetzung.


    Das habe ich dann im Controller angepasst - jetzt stimmt auch wieder die Tischgrösse


    Über RDWorks habe ich nun ein Quadrat erstellt, welches er ziemlich weit links unten abfahren soll. Home ist rechts oben. Video ist 90 Grad im Uhrzeiger verdreht.


    Nun passiert aber folgendes - siehe Video:


    Servomotor


    Der Kopf beschleunigt aus Home zum Quadrat nicht linear, sondern immer so "schubsweise - sowohl in X, als auch in Y.
    Dann fährt der Kopf das Quadrat ab, mit relativ langen Pausen in den Ecken.


    Nach der Fertigstellung fährt der Kopf wieder "schubsweise" zurück zu Origin.


    Kennt jemand das Problem?


    Danke & Gruß Thomas

  • Vierzigtausend Impulse pro Umdrehung... das wären ja 111 Impulse pro Grad.... 8|


    Bist du sicher, daß das richtig ist ? :)


    Der Arme Controller, da kommt der doch bestimmt nicht hinterher....




    Ich denke doch mal, das du locker und Problemlos die Servotreiber "Normal" ansteuern kannst und den Rest über die Beschleunigungswerte machst.


    Aber vielleicht denke ich da auch falsch.



    Diemo hatte mal schön erklärt, auf was man die Treiber stellen sollte, weil wegen den Impulsen pro sekunde und Controllerspeed und so...



    ma guggen ob ich das wieder finde :)




    So....



    Zwei mal Zitat von Diemo :








    Wieviel kHz haben den deine Servotreiber ?


    Oder anders gefragt, welche Servotreiber hast du denn ?

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

    2 Mal editiert, zuletzt von Gewindestange ()

  • Hallo Gewindestange und dank dir für die Infos.


    Die Servos haben eigene Servotreiber - die normalen Steppertreiber sind rausgeflogen.


    Angesteuert werden die Servotreiber ganz normal über DIR und PUL vom Ruida Controller.


    Der Servotreiber ist auf dem Servo verbaut und kann eben über DIP auf 40.000 Pulse/sec ...ups, sagte ich Umdrehung - falsch, es sind Sekunde, also 40 kHz..

  • War mal kurz für kleine Mädchen und hab noch mal nachgegrübelt.....



    Ich denke mal, das Verhalten was du da siehst sind Schrittverluste, die durch den Servocontroller korrigiert werden.



    Allerdings habe ich bis auf "beim Plotter" keine erfahrung mit Servo´s, aber ich kann mir das Fehlerverhalten so erklären.



    :pop:

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • Hm... ich weiss nicht, ob das Schrittverluste sind, denn er beschleunigt ja sehr verhalten.


    Weiterhin geht der Servocontroller bei Schrittverlusten auf Störung - eine rote LED geht an und dann läuft bis zu einem Reset gar nix mehr...

  • Geh mal runter mit der Schrittweite am Servorteiber, passe die Schrittweite in RDWorks an und teste dich mal hoch mit den Beschleunigungswerten.



    Ich denke, da kommst du komfortabler an die Grenzwerte, als wenn du jedesmal beidseitig am Servotreiber und im Vendor rumschrauben musst.

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • Mag sein, das es keine "Schrittverluste" im eigentlichen Sinn sind....



    Kann sein, das der Controller einfach an seine Grenzen stößt.


    Durch die Berechnung der ACC Werte und die Hinterlegung der Schrittweite/Umdr. im Vendor errechnet der Controller ja die 40.000 Impulse im Hintergrund.



    Gut möglich, das der an die Spuckgrenze kommt.

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • Hm...werde ich mal halbieren.


    Die Frage ist nur, warum dann 40.000 nicht funktionieren soll, denn der Servo inkl. Treiber ist darauf abgestimmt ...


    Ich glaube da könntest du Recht haben! Der Ruida Controller lüppt das nicht und schickt das dann in Päckchen raus...

  • Yo, denke auch, der Fehler liegt nicht an deiner Servostory, sondern der Ruida kommt da in neue Welten.



    Der Servomotor ist ja das eine, aber der Ruida muss ja zwei mal die Story berechnen, einmal X und einmal Y..... das ist schon nicht wenig an bits und bytes für so einen preiswerten Controller :)

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • Ich kenn auch nur im Moment einen, der schon mal Servos verbaut hat, das war mit einem DF211 glaube ich und dann noch in einem aufgepimpten K40 :thumbup:



    Und das ist nun mal Diemo :D

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • :)


    Ich meine, es waren Servos und das Teil hat dann 600mm/s geschafft... Fehlerfrei ^^

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • ... schau mal, was für einenn Encoder du drauf hast - bei meinen Servos am MiniFlat-Lasergravierer habe ich 500-er Encoder dran (=500 Linien pro Umdrehung) - das macht dann eine "Auflösung" von 2000 Encoder-Pulsen pro Umdrehung bzw. bei den 5mm-Spindeln eine "Schrittauflösung" von 0.0025mm (=2.5µm).


    Damit schaffen die UHU-Servotreiber eine zeitliche Schrittauflösung von 300kHz, der STM32F4Dicovery-Controller bei 3-achsig aber nur max 100kHz.


    *** EDIT***
    40.000 Pulse pro Sekunde (statt pro Umdrehung) sind 40kHz, also doch noch im "normalen" Bereich (ich hab' das zuerst als 40.000 Pulse por Umdrehung gelesen, was viel zu hoch gewesen wäre!).


    Schau trotzdem mal nach den Encodern bzw. deren Auflösung ...


    Viktor

  • Moin Viktor,


    du meinst, ich solle die Servos aufschrauben? ;( ...nee, dann werde ich wohl nie fertig, langt mir schon der ausgeweidete Haufen Schrott, der noch vor mir liegt...


    Ich habe heute mal RTFM praktiziert ... die Servomotoren "vertragen" laut Specs 200kHz und werden nur "grob" über DIPs eingestellt...für die Feineinstellungen, wie sie sich verhalten sollen, was im Fehlerfall etc. passieren soll, muss eine RS232 angeschlossen und mit einer speziellen Monitorsoftware justiert werden....


    Dennoch muss so ein Servo doch auch out-of-the-box grob funktionieren!


    Ich könnte mir nach den Überlegungen mit Gewindestange wirklich vorstellen, das es nicht unmittelbar an den 40 kHz liegt, denn das Quadrat wird ja recht smooth abgefahren - ich vermute, der Ruida Controller kommt bei der Beschleunigung bzw. durch die Wegstrecke an seine Grenzen - vllt sogar durch die Bitbreite der Ruida internen Arithmetik - sehr gewagter Ansatz...


    Mein Vermutung stützt sich auf die (logische) Annahme, das der Controller ja pro Längeneinheit wesentlich mehr Takte ausgeben muss. Jetzt habe ich dazu evtl. noch eine hohe Beschleunigung bzw. Geschwindigkeit, dann bedeutet dies, das pro Zeiteinheit zum einen höher getaktet werden muss, zum anderen aber das Ziel eine sehr grosse Zahl ist. Abhilfe schafft sich vllt. der Controller, indem er die grosse Zahl der Wegstrecken "paged" und als Wegstreckenpakete abarbeitet - mit jeweils einer Beschleunigungs und Bremskurve...das könnte m.M. nach dieses schubweise Verhalten erklären....

  • Na, wie gesagt, geh mal runter mit den Impulsen.



    Hochtasten kannste dich immer noch ;)

    Gruß

    Michael


    Vom Handwerk kann man sich zur Kunst erheben. Vom Pfuschen nie.

    Johann Wolfgang von Goethe

  • nun...die Einstellung 40kHz am Servo war es nicht.


    Bei 20 bzw. 10kHz und angepassten Schritten/Länge in den Vendoreinstellungen zeigte sich das gleiche Verhalten.


    Mir ist aufgefallen, das es ab einer gewissen Distanz von Maschine-Null immer 3 Schubser je Achse sind.


    Das Phänomen tritt überhaupt nur auf, wenn ich mit absoluten Koordinaten arbeite - anders bekomme ich den Kopf ja gar nicht in die linke untere Ecke, egal wo ich das Quadrat in RDWorks platziere...


    Bedienerfehler?


    Hat jemand eine "gute" User-Settings für RDWorks?

  • danke, probier ich morgen.


    Ja, ich kann via Ruida Bedienfeld und RDWorks x und y bewegen.


    Auf dem Bedienfeld solange ich die Taste drücke, in RDWorks pro klick ein Stück weit.


    Wo hattest du mich nicht verstanden? Die Sache mit dem „absolute Koordinaten, ansonsten bekomme ich den Kopf nicht in die linke untere Ecke“?

  • Nun, es erscheint mir unlogisch, das ich ein Werkstück irgendwo auf dem Arbeitsbereich nur durch absolute Koordinaten anfahren kann und nicht durch die Einstellung „relativ zum Nullpunkt“ bzw. Home, wenn Home gleich Nullpunkt ist.