Hallo, habe mal eine allgemeine Frage zur Schrittmotorsteuerung. Prinzipiell kann so ein Stepper, z.B. einer mit 100 Schritten pro Umdrehung, ja im Fullstepmodus (100Schr./U) und im Halfstepmodus (200Schr./U) betrieben werden. So weit, so klar. Aber wie funktioniert der Mikrostepmodus, bei dem 1000 oder sogar 10000 Schritte pro Umdrehung bei einem 100-Sritt/U-Motor möglich sind? Wird hier an zwei Spulen jeweils eine (unterschiedliche) Spannung angelegt, die über PWM so variiert, dass ein (Halb-) Schritt noch mal in viele kleinere Schritte zerlegt wird? (grob gefagt) Und ist so etwas wirklich genau oder eher so eine Pi-Mal-Daumen-Geschichte, um den Motor ruhiger (an-) laufen zu lassen?
Vermutlich wird da einfach noch ein Getriebe mit entsprechender Untersetzung zwischengeschaltet und im Motor-Gehäuse mit integriert.
Herr_Mann wrote: > Wird > hier an zwei Spulen jeweils eine (unterschiedliche) Spannung angelegt, > die über PWM so variiert, dass ein (Halb-) Schritt noch mal in viele > kleinere Schritte zerlegt wird? (grob gefagt) Ja, genau so geht das. Schau dir mal das Datenblatt des LB1847 an, der kann das und da ist das recht schön und verständlich erklärt. Im Prinzip kann das jeder Schrittmotortreiber mit Stromausgang, dazu muss man nur die Referenzspannung der Stromquelle sinusförmig modulieren. > Und ist so etwas wirklich genau oder eher so eine > Pi-Mal-Daumen-Geschichte, um den Motor ruhiger (an-) laufen zu lassen? Es ist abhängig von der Anwendung, denn im Gegensatz zu den normalen Schritten, ist die Position nicht wirklich fest, sondern der Rotor nimmt eine Position dazwischen ein, quasi an der Stelle an der die beiden Magnetfelder von beiden Seiten sich gegenseitig kompensieren. Sobald man aber die Achse belastet, wird dieses Gleichgewicht gestört, und die Position passt nicht mehr. Für Antriebe die nur für die Bewegung Kraft benötigen (z.B. Schlitten von einem Scanner) mag das funktionieren, aber wenn man damit z.B. einen schweren Uhrzeiger bewegen möchte, dann ist die Position zwischen 2 Schritten nicht ganz so linear, wie es der Theorie nach ist.
Hi >Vermutlich wird da einfach noch ein Getriebe mit entsprechender >Untersetzung zwischengeschaltet und im Motor-Gehäuse mit integriert. Nein. @Herr_Mann Im Prinzip ist es so, wie du es beschrieben hast. Wenn man nicht so extreme Auflösungen braucht kann man z.B. den L6219 nehmen. Damit lässt sich ein Schritt in 6 Eizelschritte aufteilen. Mit einem 400 Step/U-Motor ergibt das schon einen butterweichen Lauf. MfG Spess
Ich möcht auch nochmal nachhaken wegen Microstep. Wird der Microstep hauptsächlich für den weichen Anlauf eingesetzt oder gibts da ganz spezielle Gründe dafür? Wenn Ja! Welche?
Hier noch mal meine Erklärung: viele Schrittmotoren haben zwei Wicklungen. Diese Wicklungen kann man nun mit einem Strom bzw. Spannung belegen diesen Strom kann man auch noch umdrehen. Dadurch entstehen in einen Schrittmotor eine bestimmte Anzahl von Schritten (Vollschritte). Wenn man diese Spulen mit einem geringeren Strom belegt als die Betriebsspannung hergeben würde, und dies auch noch entsprechend auf beiden Schrittmotorspulen synchronisiert, entstehen zwischen den Vollschritten noch weitere Zwischenschritte. Das können beliebich viele sein. Diese Zwischenschritte kann man meistens aber nicht mechanisch nutzen, da der Dauermagnetrotor in einem Schrittmotor diese Position nicht so stabil halten kann. Der Microschrittbetrieb ist deshalb für die Auflösung des Schrittmotors weniger bedeutsam. Er ist für den dynamischen Betrieb eines Schrttmotors wichtig, da der Dauermagnetrotor gerade bei langsamen Drehzahlen nicht so große Sprünge von Schritt zu Schritt macht. Damit läuft der Schrittmotor ruiger. Gruß Oilaf
> Wird hier an zwei Spulen jeweils eine (unterschiedliche) Spannung > angelegt, die über PWM so variiert, dass ein (Halb-) Schritt noch > mal in viele kleinere Schritte zerlegt wird? (grob gefagt) Ja, Ja und Ja > Und ist so etwas wirklich genau oder eher so eine Pi-Mal-Daumen- > Geschichte, um den Motor ruhiger (an-) laufen zu lassen? Ja/Nein und Ja. Bis zu einer bestimmten Grenze, abhängig vom Schrittmotor, kann man mit Microsteps die Auflösung im Rahmen seiner Genauigkeit erhöhen. Es gibt auch Schrittmotoren, die speziel für einen hohe Mikrostep-Genauigkeit gebaut sind und dann eine entsprechend hohe Auflösung haben. Darüber hinaus erreicht man mit Mikrosteps auch einen ruhigen Lauf, nicht nur beim Anlaufen.
Hallo, Danke für die vielen ausführlichen Antworten! Gibt es denn irgendwelche Steuer-ICs Schrittmotoren, die auch "microsteppen" können? Und natürlich die Frage: gibts auch µCs bzw. passende Programme, die das können, z.B. mit AtMega32 bzw. AVRs?
kurzer Nachtrag: ich meinte natürlich "...Steuer-ICs FÜR Schrittmotoren..." !
Die Schrittmotoren muessen fuer Microstepping konzipiert sein, dh die duerfen nicht von einem Schritt zum naechsten ein internes Haltemoment besitzen. Zum ansteuern bieten sich spezielle Ansteuer IC wie der A3972, oder andere, an. Man kann aber auch einen Dual DAC und zwei PowerAmps, oder sogar einen Stereo Audioverstaerker nehmen. So ein 70cent 1W Teil ist preislich kaum zu schlagen. Zum Ansteuern : Sinustabelle auslesen.
>Gibt es denn irgendwelche Steuer-ICs für Schrittmotoren, die auch >"microsteppen" können? Aber sicher! Schau dich mal bei der Firma Trinamic um. Die haben sehr schöne Sachen. Für den Einstieg finde ich den TMC222 sehr gut. Einfach aufzubauen und über I²C anzusprechen. Wenns genauer, mit eigenen Sinustabellen etc. sein soll, dann nimmst du einen TMC428 + TMC236. Die kommunizieren über SPI. Die Teile haben den großen Vorteil, dass sie den Prozessor vom Bitgeschubse entlasten und das Sequencing selbst übernehmen.
Hallo, Microsteppen bringt nur bei geringen Geschwindigkeiten (=StepFrequenzen) was. Bei hohen Frequenzen kommt der Strom meist sowieso nicht mit, da ist es besser, bei jedem Schritt 100% PWM zu geben, damit der Strom so schnell wie möglich ansteigt. Kommt halt auch auf die Versorgungsspannung und die Induktivität an. Meistens teile ich eine Großschritt (=einen kompletten Zyklus = 4 Vollschritte = 8 Halbschritte) in 256 Minischritte ein. Damit kannst Du z.B. den Motor mit 1 U/min absolut ruhig laufen lassen. Ein anderer Punkt ist das Verhindern von mechanischen Resonanzen. Jeder Motor / mechanisches Gebilde hat (meist mehrere) solche Frequenzen (grob gesagt bei 100 - 500 Hz). Bei Mikroschritt liegen diese generell höher und wirken sich wegen der geringeren Drehwinkel deutlich geringer (=nicht mehr bemerkbar) aus. Literaturtipp: MICROSTEPPING STEPPER MOTOR DRIVE USING PEAK DETECTING CURRENT CONTROL http://www.st.com/stonline/products/literature/an/8700.pdf (AN1495) L6208 L6506 & L6203/L298 L6201 L6202 PBL3717, TEA3717, TEA3718 AND L6219 beschreibt auch den Unterschied slow decay / fast decay
Hallo, Möchte auch ein paar Denkanstösse geben. Der Mikroschritt ist m.E. sehr wichtig, da er wie schon erwähnt für Laufruhe sorgt. Z.B. bei einem Plotter / CNC Fräse: dort sind X und Y gekoppelt. Je nach Vektor läuft ein Schrittmotor an seiner Grenze (max. Drehzahl), der andere jedoch gebremst. Durch die Unruhe kommt es zu sehr unschönen Schwingvorgängen durch Resonanzen der gesamten Mechanik. Die kann man durch den Mikroschritt wirkungsvoll dämpfen. Ich denke das ist das Hauptargument. Die Auflösung im Mikroschritt halte ich eher für unwichtig bzw. ungenau. Noch eine Frage: kann man durch Rücklesen der Sannungs/Stromverläufe an den Spulenanschlüssen des Schrittmotors Rückschlüsse auf das richtige 'Mitdrehen' gewinnen, um Schrittverluste zu vermeiden. Damit könnte die normalerweise obligatorische externe Schritterkennung wegfallen.
Da Mikroschritt weit unterhalb der maximalen Drehzahl geschieht sollten eigentlich keine Schritte verloren gehen.
>kann man durch Rücklesen der Sannungs/Stromverläufe an >den Spulenanschlüssen des Schrittmotors Rückschlüsse auf das richtige >'Mitdrehen' gewinnen, um Schrittverluste zu vermeiden Ja. Siehe ebenfalls Trinamic -> Stall Guard.
Noch einen Vorteil von Mikroschrittbetrieb : Es gibt Prozesse, da muss der Antrieb ruckfrei geschehen. In einem optischen System ist bei Vibrationen der zuverlaessige Betrieb unterbrochen.
im Grunde habt ihr Recht. Aber wenn man die Spannung verdoppelt - wie beim L4319-S - dann kann man auch ganz einfach über kleine umwege einen Schritt in 10 einzelschritte unterteilen und auch dann ist der Micro-step-bereich effektiver als ohne die halbe Spannung. Darum auch ganz einfach Umdrehung*Spannung/Schritte/100 Damit kommt man dann gut aus.
Aha schrieb: > Da Mikroschritt weit unterhalb der maximalen Drehzahl geschieht sollten > eigentlich keine Schritte verloren gehen. Das stimmt nicht. Es kommt auf die Frequenzänderung des Sinus an. Wenn man zu schnell steuert, kommt der Motor auch im Microstep nicht mit und verliert Schritte. Weitere Diskussion zum Microstep hier: Beitrag "Frage zu Schrittmotor und Microstepping"
E. M. schrieb: > Das stimmt nicht. Doch, die Beiträge sind uralt. Hast Du Dich heute angemeldet, um Leichen auszugraben?
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.