Hallo, Weiß jemand, ob es weniger elastische Zahnriemen als diese hier https://www.maedler.de/product/1643/1616/zahnriemen-t-profil gibt? Der Grund für meine Frage: Ich möchte einen Endschalter über die Stall-Detection meines Schrittmotortreibers realisieren. Das Problem dabei: der Motor fährt noch einige (Mikro-)Schritte weiter, bis er genug Widerstand „spürt“. Dadurch wird die Positionierung ungenauer. Irgendeinen Tipp? Danke!
Natürlich gibt es steife Zahnriemen, z.B. aus Nylon, von Handabziehstartern für Kinderspielpropeller oder Kabelbindern bekannt. Aber dein Problem ist offenkundig ein anderes. Deine Lösung führt nur zu mehr Ungenauigkeit. Wenn der Schrittmotor stallt, dann heisst das, dass er Schritte nicht mehr ausführt. Da hilft ein Gummiband genau gar nichts. Übrigens ist StallGuard ziemlicher Scheiss.
Hört sich gut an schrieb: > Induktive oder optische Schalter Opt. Schalter habe ich derzeit verbaut, möchte sie aber vermeiden. In meinem Setting funktioniert die Stall Detection im Prinzip gut, lediglich die Abweichung würde ich gerne ein wenig reduzieren. Je nachdem, wie der Motor mit den Vollschritt ankommt, gibt es Abweichungen von ca. 100 Microsteps (bei einer Auflösung von 128 MS pro Vollschritt. Wenn ich das auf ca. 50MS, also etwas weniger als einen halben Vollschritt reduzieren könnte, wäre ich schon glücklich;-)
Warum setzt Du einen Schrittmotor ein, kannst aber die Ausführung der Schritte nicht garantieren? Da steckt doch ein Designfehler drin. Den gilt es zu beheben. Alles andere ist hochgradiger Pfusch.
Das wird Mechanisch kaum gehen, weil der Riemen sich Temeraturabhängig und Altersbedingt in den Eigenschaften verändert. Über einen Endschalter einen Punkt präzise anzufahren und das nachhaltig, ist praktisch ein Ding der Unmöglichkeit. Da müsste optisch abgetastet und der Fehler raus gerechnet werden. Bei einingen Druckern mit Steppern wird das so auch gemacht. Für gewöhnlich bekommt man das aber selten mit.
Hans H. schrieb: > Irgendeinen Tipp? Viaggra? Die Konstruktion ist einfach Murks, so was kann man mit Jalousien machen, dafür reicht die Genauigkeit beim Blockieren, aber da nimmt man keine Schrittmotoren. Georg
Ich möchte mein Setting nochmal näher erläutern: Im ursprünglichen Setting habe ich den Umkehrpunkt durch einen opt. Endschalter festgelegt. Das funktioniert sehr gut. Da die Achse keiner großen mechanischen Belastung ausgesetzt ist, spielt die Elastizität des Riemens hier keine große Rolle. Das neue Setting sieht folgendermaßen aus: Der Motor fährt den mechanisch definierten Endpunkt an, bis er stallt. Stall-Detection ist eigentlich nur notwendig, damit der Motor nicht ewig weiterfährt - muss aber garnicht SO genau funktionieren, dh. es kann auch zu Schrittverlusten von 1-2 Schritten kommen, weil ich einfach in dem Augenblick, in dem der Motor am mechan. Endpunkt angekommen bin, den Motor stoppe und die Microstep-Tabelle resette. Der Motor mechanisch am Ende angekommen ist und die Step-Tabelle resetted wurde, habe ich dadurch den Endpunkt im Prinzip auf MS genau festgelegt. Das einzige Problem ist: Wenn der Motor genau oder kurz nach dem Zero-Crossing, also dem durchfahren des Nullpunktes zum Stillstand kommt, federt der Keilriemen die Achse etwas vom mechanischen Endpunkt weg, weil die Haltekraft in dem Moment niedriger ist als die Federkraft des Keilriemens. Wenn das ganze Setting etwas steifer wäre, müsste dieser Effekt viel geringer sein. Wenn ich das gleiche Setting ohne Keilriemen, also mit einer direkten Verbindung zwischen Stepper und Achse mache, funktioniert es wunderbar. Wie gesagt - Schrittverlust ist hier nicht das Thema, da die Schritte am mechanischen Endpunkt neu zu zählen beginnen...
Schrittverlust unter einem vollschritt zu detektieren ist nicht möglich.
Hans H. schrieb: > federt der > Keilriemen die Achse etwas vom mechanischen Endpunkt weg, weil die > Haltekraft in dem Moment niedriger ist als die Federkraft des > Keilriemens. Wenn das ganze Setting etwas steifer wäre, müsste dieser > Effekt viel geringer sein. Ich kenne Deinen Motor nicht, aber gefühlt *) dürfte die Drehmomentsteifigkeit zwischen Mikroschritten deutlich geringer als selbst der billigste GT2-Zahnriemen sein. Genauer als Halbschrittpositionen wird es eben nicht. *) Das dürfte sich ja problemlos messen lassen.
:
Bearbeitet durch User
Hans H. schrieb: > Der Motor fährt den mechanisch definierten Endpunkt an, ... der einen kleinen Endschalter trägt und so den Antrieb ca. 1mm vor dem harten Anschlag stoppt. Wieso möchtest du diese Lösung nicht? Selbst ein simpler Mikroschalter mit Rollhebel kann präzise angefahren werden. Der dürfte sogar günstiger sein als ein steiferer Zahnriemen. Falls der Anschlag verstellbar ist, bekommt der Schalter ein paar Meter PUR Leitung mit M12 Stecker und wandert einfach mit. Das ist millionenfach so bewährt.
Zu Deiner eigentlichen Frage: Da die Steifigkeit im Wesentlichen von der Riemenbreite abhängt, hilft jeder breitere Riemen. Aber meistens ist die Steifigkeit nicht das Problem. Eher das Zahnflankenspiel. Wenn es um Genauigkeit geht, würde ich HTD bevorzugen.
Es gibt auch Zahnriemen mit unterschiedlicher Elastizitaet. Zum Beispiel ist es ein Unterschied ob das Nylon oder Stahl im Riemen ist. Allerdings denke ich auch das dies nicht das Problem der TOs loesst. Olaf
Olaf schrieb: > Unterschied ob das Nylon oder Stahl Nylon mit Stahleinlage ist zwar recht längenstabil, aber etwas Zahnflankenspiel bleibt spätestens am Wendepunkt. Deshalb würde ich etwas vorher einen Sensor anordnen. Damit wird der Anschlag nie erreicht und die Differenz interessiert kaum. |--------------->Sensor-----|Ende
Für manche Anwendungen macht es Sinn auf einen Endabschalter zu verzichten, vor allem dann wenn es nicht um Genauigkeit geht. Das war auch schon lange Zeit vor so Späßen wie "Stall-Guard" möglich, z.B für die Goboräder in Moving Lights. Zur Referenzierung fuhren die Motoren so lange in eine Richtung dass der Anschlag auf jeden Fall erreicht wurde. Quick & Dirty, aber geht. Es mag verlockend klingen, aber hast du tatsächlich mal mit dem Stall-Guard gearbeitet? Wirklich zuverlässig klappt das nicht und ist eine große Fummelei da es auch erst ab einer gewissen Geschwidikgeit funktioniert und von der Spuleninduktivität des Motors abhängt.. usw. Ich schließe mich meinen Vorrednern an: Nimm einfach einen Schalter!
Wie gesagt, ich habe bereits optische Endschalter verbaut, gerade WEIL ich weiß, dass die präziser funktionieren, ihr müsst mich nicht überreden, dies in Erwägung zu ziehen;-) Worum es mir geht: Ich würde gerne herausfinden, was das Maximum an Zuverlässigkeit/Genauigkeit ist, das OHNE möglich ist, um dann für mich zu entscheiden, ob es für mich reicht. Dazu muss ich aber viele Parameter wie z.B. mechanische Steifigkeit, Motor-Strom, Geschwindigkeit, Erwärmung des Motors etc. berücksichtigen. Ich habe das so weit im Griff, aber eben nicht, was die Elastizität des Keilriemens betrifft. StallGuard kenne ich nicht. Meine Erfahrungen sind wie folgt: Zunächst verwendete ich diesen Treiber: https://www.mouser.at/datasheet/2/308/AMIS-30543-D-278497.pdf er hat einen Output, mit dem ich die Back EMF messen kann. Ich habe mir selbst einen Algorithmus programmiert, der das Stallen relativ verlässlich gemeldet hat, allerdings eher im Bereich "Hobby", was die Zuverlässigkeit betrifft. Jetzt verwende ich diesen hier: https://www.mouser.at/datasheet/2/389/l6470-954753.pdf Der hat einen Algorithmus bereits eingebaut, ich muss nur den Threshold angeben, an dem er auslöst. Hat jemand hier Erfahrungen mit diesem Treiber? Also ich finde, das klappt schon verlockend gut. Für mich stellt sich nicht mehr die Frage, OB der Treiber das kann - es geht hier nurmehr um die Frage, was das Maximum an Genauigkeit ist, das ich "rauskitzeln" kann;-) A. B. schrieb: > Für manche Anwendungen macht es Sinn auf einen Endabschalter zu > verzichten, vor allem dann wenn es nicht um Genauigkeit geht. Das war > auch schon lange Zeit vor so Späßen wie "Stall-Guard" möglich, z.B für > die Goboräder in Moving Lights. Zur Referenzierung fuhren die Motoren so > lange in eine Richtung dass der Anschlag auf jeden Fall erreicht wurde. > Quick & Dirty, aber geht. > > Es mag verlockend klingen, aber hast du tatsächlich mal mit dem > Stall-Guard gearbeitet? Wirklich zuverlässig klappt das nicht und ist > eine große Fummelei da es auch erst ab einer gewissen Geschwidikgeit > funktioniert und von der Spuleninduktivität des Motors abhängt.. usw. > > Ich schließe mich meinen Vorrednern an: Nimm einfach einen Schalter!
Danke, interessanter Aspekt. Ich denke, da hast du Recht - die Elastizität dürfte eher durch den Zahn als die Dehnung des Riemens gegeben sein. Meinst du, HTD bringt da eine Verbesserung gegenüber "normalen" Zahnriemen? Walter T. schrieb: > Eher das Zahnflankenspiel. Wenn es um > Genauigkeit geht, würde ich HTD bevorzugen.
Hans H. schrieb: > Meinst du, HTD bringt da eine Verbesserung gegenüber > "normalen" Zahnriemen? "Normal" sind diese Zahnriemen alle. T ist meistens das billigste Profil und für viele Fälle ausreichend. HTD ist auch noch sehr gut in verschiedenen Größen zu bekommen. Hier gibt es eine Übersicht: https://www.optibelt.com/fileadmin/pdf/produkte/zahnriemen-pu/Optibelt-TH-Zahnriemenantriebe-Polyurethan.pdf, Form T auf Seite 18, HTD ein paar Seiten später. Aber wenn ich nach meiner Meinung gefragt werde: Ich würde als erstes mal die Nachgiebigkeit des Schrittmotors zwischen Halbschritten grob messen und mit der des bisherigen Riemens in Vergleich setzen, bevor ich irgendetwas bestelle. Als Werkzeug reicht eine Schnur, ein Gewicht und eine Meßuhr.
:
Bearbeitet durch User
siehe: https://www.maedler.de/product/1643/1618/2130/zahnstangen-stahl-c45-verzahnungsqualitaet-9-modul-1-bis-6 Ist auch biegsam. (zumindest bei höheren Temperaturen.)
> Für manche Anwendungen macht es Sinn auf einen Endabschalter zu > verzichten, vor allem dann wenn es nicht um Genauigkeit geht. DAs hab ich auch schon gemacht. Ist eine Super Loesung wenn man Servomotoren verwendet. Man faehrt dann einfach mit geringer Geschwindigkeit und schaut wann der Strom nach oben geht und die Encoder nichts neues melden. Aber bei Schrittmotoren? Die haben ja immer ihre Kraft und man hat keine Encoder und wenn die da gleich zu Anfang kurz vor Anschlag stehen dann tut das der Mechanik weh. Schalter sind nach meiner Erfahrung kacke weil sie selbst nicht so genau sind. Wenn du drei mal gegen Einen Schalter faehrst dann sind die Unterschiede groesser wie die Elastizitaet im Zahnriemen, und wenn der Schalter erst mal 1Jahr alt ist dann ist es noch schlimmer. Aber gut, vielleicht gibt es irgendwo auch total gute Schalter die damit kein Problem haben.... Olaf
Olaf schrieb: > Die haben ja immer ihre > Kraft und man hat keine Encoder und wenn die da gleich zu Anfang kurz > vor Anschlag stehen dann tut das der Mechanik weh. Naja, wenn die Mechanik es nicht verkraftet, wenn der Schrittmotor langsam auf Block fährt, ist sie falsch ausgelegt. Generell ist es auch nicht grundsätzlich Pfusch, die Nullstellung zu finden, indem man auf Block fährt. Das hat jedes Diskettenlaufwerk so gemacht. Ich bezweifle nur, daß es überhaupt möglich sein soll, eine größere Genauigkeit als Halbschrittabstand zu erzielen. Um genau zu sein, bezweifele ich sogar, daß besser als +/- ein Vollschritt zu erzielen ist, ohne den Anschlag sehr genau einzustellen. Ansonsten weiß ich zwar, wo der Schlitten mechanisch und elektrisch steht, aber nicht, wie viele Halbschritte er in die Gegenrichtung benötigt, bis er sich wieder bewegt.
:
Bearbeitet durch User
> Naja, wenn die Mechanik es nicht verkraftet, wenn der Schrittmotor > langsam auf Block fährt, ist sie falsch ausgelegt. Kein Problem in meiner Anwendung... > ist, ohne den Anschlag sehr genau einzustellen. Ansonsten weiß ich zwar, > wo der Schlitten mechanisch und elektrisch steht, aber nicht, wie viele > Halbschritte er in die Gegenrichtung benötigt, bis er sich wieder > bewegt. Meinst du aufgrund der Elastizität des Anschlags oder der von dir erwähnten Nachgiebigkeit des Schrittmotors? Ich habe die Erfahrung gemacht, dass sich der Schlitten manchmal vom mechanischen Anschlag minimal wegbewegt oder eben unter Spannung steht, je nachdem wie der Vollschritt des Motors beim Anschlag zu liegen kommt. Das lässt sich natürlich nicht prognostizieren. Daher möchte ich zusehen, dass dieser Effekt möglichst gering ausfällt. Ich gehe davon aus, dass dieser Effekt stärker ist, wenn elastische Bauteile im Spiel sind. Aber du bist der Meinung, die Nachgiebigkeit des Motors selbst spielt hier auch eine Rolle?
Hans H. schrieb: > Meinst du aufgrund der Elastizität des Anschlags oder der von dir > erwähnten Nachgiebigkeit des Schrittmotors? Die Elastizität des Anschlags hast Du zusätzlich. Glücklicherweise kannst Du die ja so auslegen, wie Du magst (auch wenn ich auch da gerne elastische Komponenten habe). Zum Verständnis, was ich meine, habe ich ein Bild im Anhang aus dem Netz geklaut und Zahlen hineingemalt. Es sind nur Halbschritte, aber das Prinzip ist bei Mikroschritt gleich. Für eine elektrische Umdrehung sind acht Halbschritte erforderlich. Erst dann stehen sich die Polpaare wieder gleich gegenüber. Nehmen wir mal an, Dein Anschlag liegt zwischen Position 5 und 6. Wenn Du gegen den Anschlag fährst, bist Du mechanisch an einer Position 5 *). Elektrisch bist zu irgendwo zwischen 1 und 8. Wieviele Halbschritte dauert es dann, bis der Motor dann wieder in die andere Richtung fährt? Antwort: Es kommt darauf an. Steht er elektrisch zufällig in einer 5, keinen. Steht er in einer 8 wahrscheinlich drei. Wie sieht es bei 1 bis 4 aus? Das ist unabsehbar. Nehmen wir eine 4: Entweder er "fällt" zufällig, z.B. auch unterstützt durch die Stromabsenkung im Stillstand oder die Elastizität des Anschlags oder durch die Mondphase, direkt in die 4 und braucht -1 Schritt. Elektrisch liegt die Position recht nah. Oder zufällig nicht, dann sind es noch satte 8 Halbschritte. Sprich: Damit Dein Vorhaben paßt, mußt Du den Anschlag und die elektrische Stop-Position genau aufeinander abstimmen, sonst hast Du eine Unsicherheit von vier Vollschritten (in meinen oberen Posts hatte ich einen Denkfehler und den Fehler nur auf die Hälfte geschätzt). *) Hier spielt noch die Nachgiebigkeit des Anschlags herein. Sie kann den Motor sogar zusätzlich in eine andere Position zurückdrücken, sobald das Feld ansynchron geworden ist.
:
Bearbeitet durch User
Hans H. schrieb: > Das einzige > Problem ist: Wenn der Motor genau oder kurz nach dem Zero-Crossing, also > dem durchfahren des Nullpunktes zum Stillstand kommt, federt der > Keilriemen die Achse etwas vom mechanischen Endpunkt weg, weil die > Haltekraft in dem Moment niedriger ist als die Federkraft des > Keilriemens. Wenn das ganze Setting etwas steifer wäre, müsste dieser > Effekt viel geringer sein. Wenn ich das gleiche Setting ohne Keilriemen, > also mit einer direkten Verbindung zwischen Stepper und Achse mache, > funktioniert es wunderbar. Wie gesagt - Schrittverlust ist hier nicht > das Thema, da die Schritte am mechanischen Endpunkt neu zu zählen > beginnen... Hans H. schrieb: >> Naja, wenn die Mechanik es nicht verkraftet, wenn der Schrittmotor >> langsam auf Block fährt, ist sie falsch ausgelegt. > > Kein Problem in meiner Anwendung... Wenn mit abruptem Anhalten keine sonstigen Massenprobleme einhergehen, könntest Du evtl. auch eine (zusätzliche) Magnetbremse einbauen, die entweder direkt den Zahnriemen blockiert oder auch indirekt, z.B. per "Bremsscheibe" an der angetriebenen Achse, den gewünschten Stillstand erzwingt. Wäre diese Möglichkeit grundsätzlich mit Deiner Schrittzählung vereinbar?
Mein Gedanke war eher, das Setting zu vereinfachen, aber danke für den kreativen Input;-) > Wenn mit abruptem Anhalten keine sonstigen Massenprobleme einhergehen, > könntest Du evtl. auch eine (zusätzliche) Magnetbremse einbauen, die > entweder direkt den Zahnriemen blockiert oder auch indirekt, z.B. per > "Bremsscheibe" an der angetriebenen Achse, den gewünschten Stillstand > erzwingt. > > Wäre diese Möglichkeit grundsätzlich mit Deiner Schrittzählung > vereinbar?
Nochmals danke für deine Hilfe. Ich habe mir jetzt eine Vorrichtung mit Fein-Stellschraube gebastelt, wo ich den Motor an beliebiger Stelle hart blockieren kann. Es hat sich tatsächlich herausgestellt, dass auch ohne Elastizität kein verlässliches Ergebnis möglich ist. Ich habe zwar nur Abweichungen innerhalb eines Vollschrittes feststellen können, aber auch das ist zu ungenau. Wenn ich mittels Feinstellschraube einen Punkt festlege, an dem die elektrische Position stabil ist, kann ich dieses Ergebnis fast auf Mikroschritt genau bei jeder Wiederholung erreichen. Das der Grund, weshalb ich ursprünglich davon ausging, dass es bei unelastischem Stop des Motors sehr verlässlich ist. Das Problem dabei: Wenn sich im Laufe der Zeit/durch Temperatur der Keilriemen oder das Verhalten des Motors geringfügig ändert, kann sich diese stabile Position verschieben und man müsste mit der Stellschraube nachjustieren. Mein Fazit daher leider: 1. Es ist möglich, eine verlässliche Stall-Detection auf einen Vollschritt genau hinzubekommen 2. Wenn es noch genauer sein soll, müsste man für jede mögliche mechanische bzw. elektrische Veränderung einen genauen Kompensations-Algorithmus haben, was in der Praxis vermutlich in den meisten Fällen nicht möglich sein wird. Für mich scheidet das Verfahren also leider endgültig aus. Ich kehre zu meinem ursprünglichen Setting mit Lichtschranken zurück und freue mich, wie verlässlich es doch funktioniert:-) Danke für Eure Mitarbeit! Walter T. schrieb: > Sprich: Damit Dein Vorhaben paßt, mußt Du den Anschlag und die > elektrische Stop-Position genau aufeinander abstimmen, sonst hast Du > eine Unsicherheit von vier Vollschritten (in meinen oberen Posts hatte > ich einen Denkfehler und den Fehler nur auf die Hälfte geschätzt).
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.