Servomotor (E-Motor mit Encoder für 10$) statt Schrittmotor = WENIGER SCHRITTVERLUSTE

Elton100

Erfahrener Benutzer
#1
Der Link, den efliege schon gepostet hat, ist in meinen Augen würdig einen eigenen Thread zu bekommen!

Bestimmt hat sich jeder schon mal über Schrittverluste geärgert und man musste den Druck abbrechen. Das Teil konnte man dann natürlich in die Tonne werfen. Servomotoren sind dafür bekannt, dass sie mehr Torque bieten als Schrittmotoren und vor allem keine Schrittverluste haben. Sie sind mit einem Encoder ausgestattet, der eine Rückmeldung gibt. Dies nennt man closed loop, also geschlossener Kreis.

Die Rückmeldung geht bei diesem Projekt zwar nicht in die Steuerungssoftware, die dann die Geschwindigkeit runterregeln könnte, aber dieses System ist auch schon ein schöner Fortschritt, der zumindest nach einer leichten Blockade wieder in die aktuelle Druckposition fährt. Dies ist schön zu erkennen, wenn er die X-Achse fest hält. Das gedruckte Teil hat dann vieleicht einen kleinen Schönheitsfehler, aber man muss es nicht wegwerfen, da kein ganzer Versatz im Bauteil entsteht.

Bisher war das allerdings sehr teuer. Bisher:

Unter den weiterführenden Links findet man auch die preiswerten Encoder-Motoren!

https://www.youtube.com/watch?v=L-_5KsAOVko

Jemand schon gebaut? Wer ist der erste?

BG, Elton
 

gfunk

Erfahrener Benutzer
#2
Hattet ihr wirklich schonmal Probleme mit Schrittverlusten?
Sofern die Treiber eingestellt sind sollte das eigentlich kein Thema sein.

Wenn doch:
-> Motorstrom am Treiber erhöhen
-> wird der Motor dann zu war -> größeren Motor rein
 

MGR

Propellerquäler
#3
Jo, Schrittverluste kenne ich auch nicht. Maximal interessant wäre das, wenn man zwischendrinnen das Filament wechseln will - da bewegt sich der Druckkopf zumindest bei mir doch immer ein wenig. Andererseits hab ich ja mittlerweile auch einen Bowden, sollte also ohne Bewegung gehen... hmmm...
 

efliege

Erfahrener Benutzer
#4
Hattet ihr wirklich schonmal Probleme mit Schrittverlusten?
Ich hatte mal Schrittverluste bei Bauteilen, die meine maximale Y-Size ausgenutzt hatten - hier aber aufgrund einer nicht optimalen/sperrigen Kabelverlegung...:rolleyes:

Dennoch würde ich "cloosed loop" Motoren bevorzugen - hier und dort hantiere ich schon mal während des Druckes im Drucker und die Gefahr besteht immer, dass ich dabei was blockiere und das Bauteil dann ruiniert ist:)

Leider baue ich erst mal keinen 3D-Drucker - ansonsten hätte ich das gerne umgesetzt.
 

Elton100

Erfahrener Benutzer
#5
also, seit ich auf die tmc2100 gewechselt bin, hatte ich am anfang sehr viel schrittverluste. ich musste auf 60mm/s reisegeschwindigkeit runter gehen. angeblich sollen die mit 24V besser laufen.

bg, elton
 

SteBa

Erfahrener Benutzer
#6
Das kann ich so definitiv nicht bestätigen.

TMC 2100 mit Nema 17 1,7A & momentan noch sehr humane Vref von 0,9V und ich hab einen Travelspeed von 220mm/s. Mehr hab ich noch nicht getestet und das sollte eigentlich auch schnell genug sein. :)
 

Elton100

Erfahrener Benutzer
#7
Das kann ich so definitiv nicht bestätigen.

TMC 2100 mit Nema 17 1,7A & momentan noch sehr humane Vref von 0,9V und ich hab einen Travelspeed von 220mm/s. Mehr hab ich noch nicht getestet und das sollte eigentlich auch schnell genug sein. :)
Im ernst? Bei 12V? Welche Beschleunigung hast du denn eingestellt? Vieleicht liegt da mein Fehler...

BG, Elton
 

SteBa

Erfahrener Benutzer
#8
Ja bei 12V befeuert von einem alten ATX-Netzteil.

Beschleunigung ist bei 1500
 

Elton100

Erfahrener Benutzer
#9
Hmm, das sind meine Einstellungen. Wohl zu heftig, oder? Hast du die max acceleration auch auf 1500 begrenzt, Steba?

Code:
#define*DEFAULT_AXIS_STEPS_PER_UNIT***{80,80,2560,660}**// default steps per unit for Ultimaker
#define*DEFAULT_MAX_FEEDRATE**********{500,*500,*3,*25}****// (mm/sec)
#define*DEFAULT_MAX_ACCELERATION******{6000,6000,80,10000}****// X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.

#define*DEFAULT_ACCELERATION**********3000****// X, Y, Z and E max acceleration in mm/s^2 for printing moves
#define*DEFAULT_RETRACT_ACCELERATION**3000***// X, Y, Z and E max acceleration in mm/s^2 for retracts
BG, Elton
 

SteBa

Erfahrener Benutzer
#10
Hi Elton,

grundsätzlich hat dies mit der Beschleunigung eigentlich relativ wenig zu tun. Die Beschleunigung definiert ja _nur_ deine "Startgeschwindigkeit" bzw eben die Beschleunigung. Ob du nun den Travelspeed mit 60mm's oder 200mm's eingestellt hast hat relativ wenig mit der Beschleunigung zu tun, denn diese ist bei beiden Geschwindigkeiten gleich.

Ich denke viel mehr du hast hier ernsthafte mechanische Probleme, sprich nicht sauber ausgerichtet oder zu schwerer Lauf. Auch kann es natürlich daran liegen dass dein System einfach nicht stabil genug ist.

Die MAX_Acceleration hat damit ebenfalls wenig zu tun. Deine default_ACC ist auf 3000 gesetzt, d.h. dein System überschreitet diese 3000 nicht. Du drosselst lediglich die Beschleunigungswerte deiner Z-Achse durch die "80". X+Y+E wird davon nicht beeinflusst.

Was mir auf den ersten Blick jedoch auffällt ist deine E-Feedrate. Erhöhe diese mal ganz deutlich, damit drosselst du deine retract Geschwindigkeit.

Abschließend ist noch zu sagen das Beschleunigungswerte jenseits der 2000 absolut nicht empfehlenswert sind. Meine 1500 sind schon hart am Limit, höher würde ich da auf keinen Fall gehen. Das können selbst die CoreXY nicht ab.

Wie sind denn deine Jerk-Werte?
 

Elton100

Erfahrener Benutzer
#11
irgendwie versteh ich deine aussage nicht so ganz, steba. ich liege mit 3000 doch schon doppelt so schnell in der beschleunigung wie du. also könnte das doch der grund für die schrittverluste sein!? bei der cnc fräse heisst das übrigens rampe (beschleunigung). ich weiss also schon wovon du da sprichst. probleme mit dem extruder habe ich nicht. lediglich auf x&y schrittverluste. die y achse habe ich neulich ausgerichtet. hat ein bisschen was gebracht. insgesamt ist das ding aber schon ziemlich leichtgängig (linearkugellager).

hier mal die jerk werte. wofür die gut sind weiss ich allerdings nicht.

xyjerk 20.0mm/sec
zjerk 0.4 mm/sec
ejerk 5.0 mm/sec

bg, elton
 
Zuletzt bearbeitet:

SteBa

Erfahrener Benutzer
#12
Hallo Elton,

du hast dir die Antwort doch quasi schon selbst gegeben. Natürlich ist deine Beschleunigung viel zu hoch, aber die ist viel zu hoch ob du nun mit 200 mm's oder 60 mm's travelst. Oder vermischst du hier deine Druckgeschwindigkeit mit der Reisegeschwindigkeit?

Natürlich hast du keine Probleme mit dem Extruder, der macht schließlich auch während der travel-moves nichts. :)

Die Jerk-Werte sind viel mehr die Rampe, welche du beschreibst.

Setz mal XY auf 15, das sollte auch Besserung bringen.
 
#15
Danke, jetzt habe ich es gefunden.
Technisch die eindeutig bessere Lösung - allerdings sollte man das Zählen der Pulse einer Hardware für 4Q Betrieb überlassen.
 

Roman.C.

hat zu viele Baustellen
#16
Hi
coole Sache nur hat die Welle nur 2.3mm Durchmesser :rolleyes:
 
#19
4q betrieb? watn datn? sorry, aber so tief bin ich in das thema noch nicht eingestiegen.

bg, elton
Vier Quaranten Betrieb, d.h. 2 digitale Signale liefern um 90 Grad Phasenverschoben die Pulse. So kennt der Zähler die Drehrichtung und kann rauf und runter zählen. Macht man indem 2 Lichtschranken leicht versetzt an eine Lochscheibe montiert werden.
 

Elton100

Erfahrener Benutzer
#20
Vier Quaranten Betrieb, d.h. 2 digitale Signale liefern um 90 Grad Phasenverschoben die Pulse. So kennt der Zähler die Drehrichtung und kann rauf und runter zählen. Macht man indem 2 Lichtschranken leicht versetzt an eine Lochscheibe montiert werden.
ok, also meinst du, der besagte motor im link könnte zu ungenau sein?

bg, elton
 
FPV1

Banggood

Oben Unten