Hallo in die Runde, ich nutzte einen Stepper gesteuert vom TMC2208 an Arduino Nano. (nutze TMCStepper-Lib) https://github.com/teemuatlut/TMCStepper Ansteuerung funktioniert prinzipiell. Frage ist aber, was mache ich, wenn ich in der finalen Position bin und den Motor festhalten will. - wird er dauerhaft bestromt (ohne Schrittimpulse) ergibt das mit der Zeit eine kleine Heizung - wäre es nicht sinnvoll, einfach die Wicklungen kurzzuschließen um damit den Motor zu blocken. Wie macht Ihr das bzw. hat vielleicht jemand für mich einen Tip, wie ich's mit dem Treiber-IC umsetzten kann? Danke scheeeen! Jo
Jörg R schrieb: > - wäre es nicht sinnvoll, einfach die Wicklungen kurzzuschließen um > damit den Motor zu blocken. Wenn die supraleitend sind, ja. ;-) Jörg R schrieb: > Wie macht Ihr das bzw. hat vielleicht jemand für mich einen Tip, wie > ich's mit dem Treiber-IC umsetzten kann? Man könnte die Auslenkung messen, und dann gegensteuern. Ich glaube aber nicht, dass das ein einfacher Schrittmotortreiber kann. Ohne jetzt zu viel erfahrung zu haben, ist dauerhaft bestromen die einzige einfache Lösung. Eine mechanische Bremse ginge natürlich auch, ist aber wieder mehr Aufwand.
uuuuh, langsam! Ich wollte nicht die Grenzen der Physik angehen sondern best practice erfragen - würde schon reichen :-) Nobelpreis-Bemühungen kommen erst später Simpel gefragt: wir würde ein 0815 Treiber IC (á la A4998) verwendet, wenn der Motor stehen bleiben soll. Wirklich "nur" bestromt? Laut Dussel JA?! Die Frage bezieht sich wirklich nur auf die Ansteuerung, nichts mechanisches oder extra Positionssensoren
Ja die werden dann normalerweise weiter bestromt. Ohne ist das Haltemoment viel geringer und man kann auch nur an einer Vollschrittposition anhalten.
Man könnte in die Leitungen zum Stepper ein RC Glied einbauen, so könnte man den Strom etwas reduzieren, Das "C" Sorgt dann während der "Fahrt" das der Schritt-puls doch volle Leistung hat, und das "R" sorgt im Stand dann für eine Reduktion des fließendem Strom. Kleiner Vorteil noch, die ganze Sache wird noch etwas "leiser" bei der Fahrt ;-)
Jörg R schrieb: > ergibt das mit der Zeit eine kleine Heizung Strom im Stillstand auf ca. 30-50% des Nennstrom reduzieren.
es wird darauf ankommen wie der Treiber angeschlossen ist. Bei der einfachen Variante mit Dir/Step kommt es auf den Enable Eingang an, da bleibt der Treiber bestromt solange er enabled ist. Die TMC22xx sind aufwändiger, die haben über eine serielle Kommunikation massig Einstellmöglichkeiten. Das ist alles in dieser Lib eingebaut, es ist nur Mühselig sich durch die Doxygen Doku zu hangeln. Ich würde eher mit dem Datenblatt zum Treiber anfangen und sehen wie man den Haltestrom einstellen kann, dann in der Lib die entsprechende Methode suchen.
Tany schrieb: > Jörg R schrieb: >> ergibt das mit der Zeit eine kleine Heizung > Strom im Stillstand auf ca. 30-50% des Nennstrom reduzieren. Macht jeder halbwegs moderne Chip.
Jörg R schrieb: > - wäre es nicht sinnvoll, einfach die Wicklungen kurzzuschließen um > damit den Motor zu blocken. Wie viele Schrittverluste kannst Du denn akzeptieren wenn die Last den Motor aus der Position drückt? Erst in der Bewegung wird eine Gegenkraft erzeugt, denn ein Generator mit Drehzahl Null hat eben auch Leistung Null. Und wie genau darf es dann noch sein, wenn Du aus der nun falschen Position neu bestromst, der Motor in die nächte akzeptable Schrittposition springt und von da aus mit falscher Position weiterfährt? Sind die Anforderungen nur gering genug geht das sicher. Verwende einfach einen modernen Controller (z.B. von Trinamic). Die kennen auch Stromabsenung im Stillstand. Wenn es Dir darum geht wirklich nur das an Strom zu verbraten was zum anfahren / halten einer Position benötigt wird, kommst Du um Servomotore nicht herum.
Hallo Patrick, Patrick L. schrieb: > Man könnte in die Leitungen zum Stepper ein RC Glied einbauen, so könnte > man den Strom etwas reduzieren, Das "C" Sorgt dann während der "Fahrt" > das der Schritt-puls doch volle Leistung hat, und das "R" sorgt im Stand > dann für eine Reduktion des fließendem Strom. > > Kleiner Vorteil noch, die ganze Sache wird noch etwas "leiser" bei der > Fahrt ;-) So hat man das in den 1970'ern gemacht, als Motor-Treiber mit Stromregelung noch teuer waren. Wir sind inzwischen 50 Jahre weiter... Mit freundlichen Grüßen Thorsten Ostermann
Thorsten O. schrieb: > So hat man das in den 1970'ern gemacht, als Motor-Treiber mit > Stromregelung noch teuer waren. Wir sind inzwischen 50 Jahre weiter... Bin ich ganz bei dir. Nur weis ich nicht was der TO hat oder selber Kann. Deshalb ist das die einfachste Variante, wen man beispielsweise in Fertigteil hat, und das nutzen möchte. Neue Chips unterstützen dann auch Microstepp & Co aber eben da muss man mit umgehen können deshalb der 70'er Tipp ;-)
:
Bearbeitet durch User
Jörg R schrieb: > Simpel gefragt: wir würde ein 0815 Treiber IC (á la A4998) verwendet, > wenn der Motor stehen bleiben soll. Wirklich "nur" bestromt? Immer diese Schwarz-Weiß-Malerei. Es gibt beim Schrittmotor nicht nur bestromt und unbestromt. Schon bei Verwendung des A4998 lässt sich der Haltestrom absenken. Und ein E523.39 kann den Lastwinkel auch noch messen und dann so gesteuert werden, dass der Strom nicht höher als erforderlich ist.
Wolfgang schrieb: > Schon bei Verwendung des A4998 lässt sich der Haltestrom absenken. Würde das nicht der Herstelle in seinem A4988-Datasheet.pdf vermerken? Und wenn es darin steht, würdest du mir evtl die Stelle zeigen, denn ich habe sie bisher noch nicht gefunden.
EAF schrieb: > Wolfgang schrieb: >> Schon bei Verwendung des A4998 lässt sich der Haltestrom absenken. > > Würde das nicht der Herstelle in seinem A4988-Datasheet.pdf vermerken? Man muss nur richtig lesen. Wenn man über Ref (Pin17) ein z.B. per PWM erzeugtes Analogsignal einspeist, kann man darüber beim A4988 den Strom steuern, also z.B. auch den Haltestrom absenken. Normalerweise muss der Strom nach dem Anhalten sowieso noch kurz gehalten werden, um die Rotationsenergie abzubauen. Erst dann darf er abgesenkt werden.
Hallo Patrick, Patrick L. schrieb: > Bin ich ganz bei dir. > Nur weis ich nicht was der TO hat oder selber Kann. > Deshalb ist das die einfachste Variante, wen man beispielsweise in > Fertigteil hat, und das nutzen möchte. > > Neue Chips unterstützen dann auch Microstepp & Co aber eben da muss man > mit umgehen können deshalb der 70'er Tipp ;-) Stromabsenkung kann man auch schon mit den betagten L297/L298 realisieren. Das geht grundsätzlich mit jedem Treiber der Stromregelung macht. L/R-Betrieb will man sich heute nicht mehr antun. Wenn man keinen Treiber da hat der Stromregelung kann, kauft man besser einen statt 4 Lastwiderstände. ;) Mit freundlichen Grüßen Thorsten Ostermann
Der TMC2208 hat einen PDN_UART Eingang. Der scheint standardmäßig über ein pull-down auf GND gezogen zu sein. Dann ist laut datasheet S. 7 folgendes Feature aktiv: 1.6 Automatic Standstill Power Down An automatic current reduction drastically reduces application power dissipation and cooling requirements. Per default, the stand still current reduction is enabled by pulling PDN_UART input to GND. It reduces standstill power dissipation to less than 33% by going to slightly more than half of the run current.
> So hat man das in den 1970'ern gemacht
Habe den Eindruck, nicht nur die Widerstände, sondern Schrittmotore
allgemein sind aus der Mode gekommen.
Die findet man nur mehr in Hobby-3D-Druckern. Alles andere arbeitet mit
Servomotoren.
Wolfgang schrieb: > Man muss nur richtig lesen. > Wenn man über Ref (Pin17) ein z.B. per PWM erzeugtes Analogsignal > einspeist, kann man darüber beim A4988 den Strom steuern, also z.B. auch > den Haltestrom absenken Alles klar! Der Hersteller hat also keine Stromreduzierung eingebaut. Und wenn man die typischen Handelsüblichen A4998 Platinchen unmodifiziert verwendet, dann wird das auch keiner.
Wolfgang schrieb: > Man muss nur richtig lesen. Lesen kannst du, verstanden hast du NICHT! > Wenn man über Ref (Pin17) ein z.B. per PWM erzeugtes Analogsignal Was soll hier PWM? Man legt an REF eine U1 für Normalbetrieb und U2 für Haltebetrieb, zu einfach für dich? > Normalerweise muss der Strom nach dem Anhalten > sowieso noch kurz gehalten werden, um die Rotationsenergie abzubauen. > Erst dann darf er abgesenkt werden. Was soll der Quatsch auch noch? Man senkt den Strom nicht unmittelbar nach dem letzten Schritt, sondern nach einer gewissen Zeit.
Tany schrieb: > Wolfgang schrieb: >> Man muss nur richtig lesen. > Lesen kannst du, verstanden hast du NICHT! >> Wenn man über Ref (Pin17) ein z.B. per PWM erzeugtes Analogsignal > > Was soll hier PWM? Man legt an REF eine U1 für Normalbetrieb und U2 für > Haltebetrieb, zu einfach für dich? Hast du schon mal davon gehört, das viele µCs keinen DAC besitzen, aber leicht per PWM und Tiefpassfilter eine Analogspannung erzeugen können ... Deshalb schrieb ich "z.B.". Die Steuerspannung kann selbstverständlich auch anders erzeugt werden. >> Normalerweise muss der Strom nach dem Anhalten >> sowieso noch kurz gehalten werden, um die Rotationsenergie abzubauen. >> Erst dann darf er abgesenkt werden. > Was soll der Quatsch auch noch? > Man senkt den Strom nicht unmittelbar nach dem letzten Schritt, sondern > nach einer gewissen Zeit. Genau das schrieb ich. Sobald sämtliche Rotationsenergie abgebaut ist, d.h. sobald das Ding sicher steht, kann man den Strom reduzieren. Oder wie lange willst du noch warten?
Noch ein Kommentar schrieb: >> So hat man das in den 1970'ern gemacht > > Habe den Eindruck, nicht nur die Widerstände, sondern Schrittmotore > allgemein sind aus der Mode gekommen. > > Die findet man nur mehr in Hobby-3D-Druckern. Alles andere arbeitet mit > Servomotoren. Ach? Willst du die Massenware wie Drucker, Scanner, usw. mit Servos ausrüsten? Falscher Dampfer!
michael_ schrieb: > Willst du die Massenware wie Drucker, Scanner, usw. mit Servos > ausrüsten? die meisten Drucker haben keine SM, sondern einfache DC Motoren und optische Encoder. Aber warum nicht mal die Frage des TO beantworten? Er schreibt, er hat einen TMC2208, und bekommt als Tipp er soll was von Trinamic benutzen. Usw.
Jörg R schrieb: > Hallo in die Runde, > > ich nutzte einen Stepper gesteuert vom TMC2208 an Arduino Nano. Wird vermutlich schon gemacht. An PIN-14.
Johannes S. schrieb: > die meisten Drucker haben keine SM, sondern einfache > DC Motoren und optische Encoder. ...für den Druckkopf. Beim Papiervorschub habe ich in der Regel Schrittmotoren gesehen; häufig so flache Dingen mit 48 Schritten oder so. > Aber warum nicht mal die Frage des TO beantworten? Er > schreibt, er hat einen TMC2208, und bekommt als Tipp er > soll was von Trinamic benutzen. Usw. Ist doch normal. Inzwischen ist die ganze Woche lang Freitag. Nicht mehr "ewiger September", sondern "ewiger Freitag"...
Johannes S. schrieb: > michael_ schrieb: >> Willst du die Massenware wie Drucker, Scanner, usw. mit Servos >> ausrüsten? > > die meisten Drucker haben keine SM, sondern einfache DC Motoren und > optische Encoder. Nur für den Schlitten. Da sind aber noch mehr drin. In Laser sowieso. Solltest mal paar schlachten.
michael_ schrieb: > Solltest mal paar schlachten. habe ich, auch für den Papiervorschub, da sind dann runde Strichcodescheiben drin, in Epson und Canon. Den letzten SM habe ich in einem Compucorp Typenraddrucker gesehen, Bj. 198x. Und die TMC2208 gab es da auch noch nicht.
Auch ein Servomotor "hält" nicht die Position ohne Energiezufuhr - ergibt sich aus dem Encodersignal eine Lageabweichung, steuert die Lageregelung gegen, dafür wird selbstverständlich elektrische Energie gebraucht. Selbsthalten ohne Energie geht nur mechanisch, bei manchen Getriebearten wie Schneckenantrieb oder Gewindespindel oder eben mit Bremse. Aber Achtung, gute Gewindespindeln haben eine so guten Wirkungsgrad dass sie nicht selbsthaltend sind, man kann dann etwa das Werkstück einfach mit der Hand wegschieben, wenn der Antrieb ausgeschaltet ist. Wie weit man beim Schrittmotor den Strom im Stillstand absenken kann hängt natürlich davon ab welche Kräfte einwirken können. Georg
Ein Hybrid-Schrittmotor hat im Gegensatz zum DC-Motor immerhin ein gewisses Rastmoment. Verstärken kann man das bei Bedarf durch kurzschließen der Wicklungen (nach Abschalten des Treibers!). Über die Dioden im Treiber (intrinsische Dioden in den MOSFETS) speist der Motor aber auch so in die Versorgung zurück und wird damit stärker gebremst als bei offenen Anschlüssen. Was es die Stromabsenkung angeht: Zur Erzeugung der analogen Referenzspannungen benötigt man weder DAC noch PWM. Die zwei Pegel kann man auch über schaltbare Spannungsteiler realisieren. Mit freundlichen Grüßen Thorsten Ostermann
Hallo Namenloser, Noch ein Kommentar schrieb: >> So hat man das in den 1970'ern gemacht > > Habe den Eindruck, nicht nur die Widerstände, sondern Schrittmotore > allgemein sind aus der Mode gekommen. > > Die findet man nur mehr in Hobby-3D-Druckern. Alles andere arbeitet mit > Servomotoren. Und ich habe den Eindruck, dass ein persönlicher Eindruck noch keine Statistik ist. ;) Jeder größere SPS-Hersteller hat inzwischen Lösungen für Schrittmotoren im Programm. Firmen wie Beckhoff bieten z.B. Feldbusklemmen für SM mit und ohne Encoder, aber auch für Kleinspannungs-Servos an. Außerdem sind Schrittmotoren mit Closed-Loop Betrieb inzwischen stark im kommen. Damit verhält sich ein Schrittmotor wie ein Servo, und dank der hohen Polpaarzahl kann man in vielen Anwendungen auf ein Getriebe verzichten. Mit freundlichen Grüßen Thorsten Ostermann
Thorsten O. schrieb: > Was es die Stromabsenkung angeht: Zur Erzeugung der analogen > Referenzspannungen benötigt man weder DAC noch PWM. Die zwei Pegel kann > man auch über schaltbare Spannungsteiler realisieren. Das ist etwas "statisch" gedacht. In der Praxis ist eine variable Referenzspannung nützlich, da man dadurch unterschiedliche Motoren an die jeweilige Mechanik anpassen kann, ohne an Potis oder Widerständen zu schrauben. Und auch im Betrieb kann es sinnvoll sein, mit angepaßten Strömen zu arbeiten (schnelle Positionierung, vibrationsarme Messungen).
Auf meisten Treiber findet man DIP-Schalter / Jumper Für spez. Wünsche benutzt man spez. Treiber mit z.B SPI Schnittstelle. Und denkt daran, nicht jeder ist bereit ext. DAC zu investieren oder Software unnötig komplizierter zu machen.
es geht immer noch um den TMC2208, und der hat einen UART und Register für IRUN und IHOLD, damit kann der Strom in 1/32 Schritten vom Maximum eingestellt werden.
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.