Baubericht A1 Laserplotter

  • Ich schaffe es nicht, die Trinamics ( TMC2208 ) sauber eingestellt zu bekommen :/ Die Y-Achse (welche den original verbauten NEMA23 vom Canondrucker ansteuert) scheint aktuell fehlerfrei die Programme durchzulaufen. Und auch nur mit trial-and-error rumschrauben und ausprobieren und evtl. Glück.


    Aber die X-Achse macht immer wieder Schrittfehler. Ich erkenne es daran, dass längere geschlossene Schnittkonturen nicht präzise aufeinander treffen. Und dann alle folgenden Konturen entsprechend versetzt sind - der Fehler addiert sich quasi. Das muss ich verhindern, da ich bedruckte Bögen mit ~40 Nutzen passgenau bearbeiten möchte.


    Kann man systematischer vorgehen beim einstellen der (Spannung?) für die Schrittmotoren an den Trinamics? Oder sollte ich den Schrittmotor für die x-Achse durch einen grösser Dimensionierten ersetzen? (Ich hatte den original Servo vom Drucker durch einen NEMA17 vom eleksmaker ersetzt.. der Servo war deutlich massiver).


    Grade hatte ich geprüft ich, ob es mit dem (lauten) Polulu ohne Schrittfehler durchläuft - aber gleicher Schrittfehler :/

  • Der Fehler könnte in der Ansteuerung liegen.


    Ein Schrittmotortreiber erkennt ja die Richtung anhand einen Spannungspegels. Als Beispiel 0 Volt ( Low ) für links und 5 Volt ( High ) für rechts.


    Die Schritte sind ja eine Impulsfolge. Und jetzt kommt es.


    Es gibt zwei Möglichkeiten, die Impulsfolge für die Schritte zu starten. Einmal von Low nach High ( Normale Denkweise , denke ich mal ) und von High nach Low ( Abartige pervese Logik )


    Das musst du jetzt mal versuchen , raus zu messen. Am besten mit einem Oszi oder DSO.



    Auch die Höhe der Ansteuerung spielt eine Rolle. Sind beide für 5Volt TTL Pegel ausgelegt oder will einer nur 3,3 Volt Pegel oder umgekehrt oder so.


    ....





    Mühsam ernährt sich das Eichhörnchen Grüße


    Michael

    Gruß

    Michael


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

    Johann Wolfgang von Goethe

  • Danke für die Infos.
    Ich habe zwar dieses billo DSO, aber bin da sehr unerfahren was und wie ich das messen kann.


    Ich könnte einfach mal probieren die step port invert mask in der GRBL config zu ändern? Und wenns nix bringt ists was anderes?


    EDIT: Wobei der "step pulse invert" kanns eigentlich nicht sein - in den eleksmaker original settings war da auch nix inverted und ich hatte keine Probleme - mit dem gleichen Controller, Treiber und Motor, nur in einer anderen Maschine.


    EDIT2: Kann es sein, dass die Trinamics einen Überhitzungsschutz o.ä. haben, und dann mal lieber Pause machen? Heiss wird der auf jeden Fall :/ Und beim Joggen/Testen/Spannung verändern bleibt der oft (relativ abrupt/laut) stehen und führt Befehle nicht aus. Eben hats sogar den ganzen Arduino unresponsive gemacht. Erst nachm reset gings wieder :/

  • ... einige Treiber haben einen Übehitzungsschutz drin - sie sollten also nicht zu heiß werden!


    Eine "typische" Fehlerquelle für "vermeintliche" Schrittfehler sind oft aber auch nicht richtig festgezogene Madenschrauben, so daß die Ritzel auf der Achse etwas Spiel haben :S


    Viktor

  • Ja, kann ich mir vorstellen. Ich checks nochmal, aber glaube das ists bei mir nicht. Der Stepper hat auch eine 'Ebene' in der Welle, in die sich die Madenschraube reinzieht.
    Ich bin allerdings davon ausgegangen, dass man die Spannung in Uhrzeiger-Richtung erhöht. Und das ist, zumindest bei den TMC2208 die ich hier habe, genau anders rum. Ich werde mal die eingestellte Spannung messen und auf die Specs vom eleksmaker nema17 (3,12V) stellen, sobald das Programm hier durch ist und schauen.


    Update: Da ist auf jeden Fall noch was falsch hier: die TMC's waren beide auf ca. 0,8V eingestellt. Abgesehen davon, dass ich immer falschrum gedreht hatte, hab ich durchs Nachmessen auch erst gecheckt, dass es Endlosregler sind.. die gehen bis Vref max 2,5V und dann sofort wieder auf 0V. Kein Wunder, dass ich daran ohne Nachzumessen verzweifelt bin ;)
    Aber beide auf 2,5V zu stellen scheint auch nicht die Lösung zu sein: das scheint irgendwas zu überfordern im System. Jedenfalls brechen jegliche Jogging-Versuche dann schnell ab. Der Nema17 will laut spec's eigentlich sogar 3,12V haben. Bringe ich da was durcheinander?

  • Ich glaube ich muss ein paar Basics nachholen :rolleyes:


    Zitat

    The TMC2208 outputs continuous motor current up to 1.4A and peak current up to 2A. Therefore, the reference voltage of the driver module should not exceed 1V.


    Warum kann man die dann bis auf 2.5V schrauben?


    Zitat

    The best way to set the motor current is by measuring the voltage on the Vref pin (0…2.5V) and adjusting the voltage with the potentiometer. The maximum settable motor current is 1.77A RMS (0.11Ohm sense resistors), but the SilentStepSticks can only be used up to 1.2A RMS.
    Irms = (Vref * 1.77A) / 2.5V = Vref * 0.71
    Vref = (Irms * 2.5V) / 1.77A = Irms * 1.41 = Imax
    Vref -> Voltage on Vref pin
    Irms -> RMS (Root Mean Square) current per phase (Irms = Imax / 1.41)
    Imax -> Maximum current per phase (Imax = Irms * 1.41)


    Jetzt bin ich ziemlich durcheinander. Hier ein paar Specs vom Nema17 aus dem eleksmaker:


    Phase 2
    Voltage 3.12 V
    Current 1.3 A
    Resistence 2.4±10% Ω
    Inductance 2.8±20% mH
    Holding Torque 28 N.cm


    Was für eine Vref sollte ich für den denn einstellen?

  • 1,3 Volt....


    oder sogar 1,8 Volt


    Wie bin ich dadrauf gekommen ?


    IRMS = Maximaler Strom vom Schrittmotor ( 1,3 Ampere ) geteilt durch 1,41


    ist gleich 0,92



    VRef ergibt sich aus -> ( 0,92 mal 2,5Volt ) geteilt durch 1,77 ist gleich 1,3 Volt =IRMS ..... das ganze mal 1,41 = 1,8 Volt <- ergibt Imax




    Was für eine bescheuerte Anleitung :wacko:

    Gruß

    Michael


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

    Johann Wolfgang von Goethe

  • Hm, bist du dir sicher? :) Bei so hoher Vref bricht der hier glaube ich schon wieder Befehle ab :/ Und es würde auch dem Widersprechen:


    Zitat

    The TMC2208 outputs continuous motor current up to 1.4A and peak current up to 2A. Therefore, the reference voltage of the driver module should not exceed 1V.


    Demnach müsste Vref auch bei 1.3A unter 1V sein?


    Ich hab sie jetzt beide wieder auf 0,8V gedreht, damit läufts relativ zuverlässig. Aber das muss ich noch genauer verstehen + entsprechend einstellen =)


    EDIT: Aus einem anderem Forum:


  • ... die Vref-Spannung hat nichts mit der Motor-Spannung zu tun!


    Der wesentliche Wert ist immer nur der eingestellte Strom, was du über Vref nachjustierst.


    Ich habe bei meinen Schrittmotor-Controllern Steper mit 2A bis 3.2A drin und setze die Endstufen (wo's per Jumper geht) entweder auf etwas unter den maximalen Motor-Strom (statt 2A z.B. 1.7A) oder wo's mit einem Trimmer gemacht wird, nach der Motor-Temperatur - wenn sie mehr als handwarm werden, reduziere ich den Strom ... wenn sie dabei Schritte verlieren, tausche ich den Motor gegen einen stärkeren aus 8)


    Viktor

  • Zitat

    Der wesentliche Wert ist immer nur der eingestellte Strom, was du über Vref nachjustierst.


    Das hab ich soweit verstanden. Aber nicht, wie die Formel dafür genau ist. Ich taste mich jetzt wieder ran, habe beide auf Vref=1V gestellt, bekomme aber glaube ich immer noch ab und zu Schrittfehler. Bekäme ich mit einem NEMA23 mehr Drehmoment aus dem gleichen TMC Treiber? Der Korrdor von zu wenig Leistung zu zuviel Hitze/Überlastung vom Treiber scheint mir sehr eng. Vielleicht hilfts auch, wenn ich einen Lüfter an die Heatsink bastle?

  • ... schau mal in die Datenblätter der Stepper nach dem Drehmoment - bei NEMA-17 hat's meist so um die 50 bis 100 Ncm ... bei NEMA-23 um einen Nm! -- das sind schon "Welten" (bzw. eine Größenordnung) dazwischen :rolleyes:


    Bei den wirklich präzisen CNC-Systemen habe ich (neben NEMA23-Servos) dann auch z.B. NEMA-23 Stepper mit 2Nm und dann nochmal ein 5:1 Planetenradgetriebe dran, um auf 10Nm zu kommen, damit ich die 50000 Mikroschritte pro Umdrehung (10000 * 5:1) möglichst fehlerfrei bewegt bekomme ... das sind dann z.B. Linearachsen mit 0.1 Mikrometer Schrittauflösung und 1-2 Mikrometer reproduzierbare Genaugkeit 8)


    Bei kleinen Systemen habe ich dann meist kleine Maxxon-Servos mit noch mehr reduzierenden Getrieben drin ... oder auch mal ein Harmonic-Drive ...


    Viktor

  • @Gewindi: Schade :)


    VDX: Die Nema23 wollen aber eher so 3A ziehen.. was der TMC hier nicht leisten kann, soweit ich das verstehe. Und ob son Nema23 dann bei 1,2A mehr Drehmoment leistet, als ein Nema17? Und ob das überhaupt das Problem ist, was ich hier habe? Fragen über Fragen :)


    Folgendes hab ich im reprap forum gefunden:


    Zitat

    Physikgamer
    Das große Problem ist, ob die TMC2208 nicht zu klein für meine 1,7A Motoren sind.
    Eigentlich würde ich auch gerne stärkere Treiber (2A, 48V) verwenden, nur die die ich bis jetzt gefunden habe sind mir unverhältnismäßig teuer.


    Welches Problem? Die originalen TMC2208 von Watterott schaffen 1,2A kontinuierlich. Wenn du Deine Motoren wie man es machen sollte mit max. 70% befeuerst, landest Du bei 1,7A*0,7=1,19A (passt also, nur die Kühlung nicht vergessen!). Das elektrische Verhalten dieser Motoren ist dabei nicht ganz einfach zu verstehen, für mehr Infos bitte Hardwarekiller antriggern, der hilft Dir da sicher weiter

    .


    Demnach könnte das klappen.. ich find auf Anhieb aber nur welche, die gerne 3A oder mehr hätten/könnten.

  • ... es gibt schon auch NEMA23 mit weniger als 1.5A Strombedarf und ausreichend Drehmoment - schaust du z.B. mal hier, ab 51mm Länge:


    https://de.nanotec.com/produkt…918-schrittmotor-nema-23/


    Viktor

  • Aktuell schauts so aus, als ob ich die X-Schrittfehler in den Griff bekommen habe (bei 1V wird der Nema17 handwarm, ist noch ok oder?). Ich glaube es liegt am Staubsauger-Rohr, dass zur rechten Seite hin mehr am Schlitten zieht.


    Dafür muckt die Y-Achse/Walze :rolleyes: ..welche über den original verbauten Nema23 (3.1V, 2.2A) angetrieben wird. Macht es Sinn, den durch z.B. diesen Nema 23 (1.5A) zu ersetzen?

  • Jo, Beide schaffen ~1.1Nm. Mit dem TMC kann ich nur ~1.2A liefern. Damit schafft der verbaute 2.2A Stepper also vielleicht 1.1/2.2*1.2=0.6Nm, der 1.5A entsprechend etwa 0,8Nm?


    Keine Ahnung, ob überhaupt die x oder die y Achse noch Probleme machen und ob es überhaupt Schrittfehler sind. Es geht um weniger als einen mm, nach einem Schnitt von knapp 1m. Die Ungenauigkeit tritt nur sichtbar in der rechten Hälfte der Maschine auf. Das spricht gegen zu schwache Schrittmotoren oder Fehler in deren Ansteuerung.


    Vielleicht rotiert die Mechanik irgendwie leicht die Platten beim durchziehen? Oder es passiert ein kleiner Fehler, wenn die Walze über die (gewölbten) Schnittkanten zieht? Wäre ein Erklärung, warum es rechts sichtbar ist, da ich die Teile in Reihen von rechts nach links ausschneiden lasse.


    Vielleicht zeichne ich mal ein paar Passmarken per Hand auf einem Bogen und schaue mit dem Kontrollspot, ob ich so dem Fehler auf die Spur komme.


    Edit: Wenn ich am Schlauch wackle, verziehts den Plastik-Schlitten. Vielleicht ists auch das? :/

  • Schon mal an den Riemenantrieb als solches gedacht?
    Selbst wenn die Riemen so gespannt sind, dass man sie zum Gitarrenspielen nehmen kann, bleibt immer mehr oder weniger Restfehler.
    Es gibt keine Nulldehnung bei einem Riemenantrieb.
    Und je länger der Riemen ist, desto höher die Elastizität. Der Riemen wird zur Zugfeder und je höher die Beschleunigungs- und Bremskräfte, desto mehr dehnt er sich. Merkt man dann daran, dass der Fehler bei langsamen Geschwindigkeiten etwas weniger wird.
    Dazu kommen die Motoren. Diese verhalten sich ebenfalls elastisch und stehen keinesfalls "fest angenagelt" in der Position.


    Es ist immer ein Kompromiss: Weniger stark gespannte Riemen laufen etwas leichter, aber haben einen größeren Fehler durch Dehnung.
    Zu stark gespannte Riemen machen den Antrieb schwergängiger, was die Hysterese am Motor erhöht.
    Heisst im Klartext: Es gibt einen kleinen Positionsversatz am Motor, wenn der GLEICHE Schritt von links oder rechts angefahren wird.
    Der Versatz bzw. die Positionshysterese ist unabhängig von den Mikroschritteinstellungen und bezieht sich auf die Anzahl der Polpaare im Motor.
    Je mehr Kraft auf den Motor wirkt, desto höher die Hysterese. Nur ein unbelasteter Motor hat (fast) keine Hysterese in der Position.
    Die Leichtgängigkeit des Schlittens und dessen Masse gehören dabei natürlich in erster Linie in die Berechnung rein.
    Den Effekt sieht man natürlich besonders daran, dass Figuren und speziell Kreise nicht ganz geschlossen sind und immer diesen kleinen Versatz haben.
    Entgegenwirken kann man dem Problem nur, indem man versucht, alles so leichtgängig wie möglich zu machen oder (falls genug Drehzahlreserve am Schrittmotor besteht), den Antrieb untersetzt und damit den Motor entlastet und natürlich die bewegte Masse so gering wie möglich hält.


    Ganz weg bekommt man das natürlich nie.

    Wenn ich am Schlauch wackle, verziehts den Plastik-Schlitten. Vielleicht ists auch das? :/

    Auch. Unterschätze nicht die Kräfte, die bei der Beschleunigung und hohen Geschwindigkeiten wirken. Wackeln oder sich verbiegen sollte an der Maschine nichts. Bei 100mm /Min. noch egal, bei 10000mm /Min. katastrophal.


    Gruß
    Joachim