Forum: Mikrocontroller und Digitale Elektronik Frage zu Schrittmotor und Microstepping


von Markus (Gast)


Lesenswert?

Hallo,

ich beschäftige mich gerade das erste Mal mit Schrittmotoren und habe
eine Verständnisfrage. Habe vor mir einen bipolaren Schrittmotor (HY200
mit 4 Spulen, habe jeweils 2 nach Datenblatt parallel geschaltet) und
ein Steuermodul (Trinamic IDX 4803) inkl. Endstufe  (4 Kabel zum Motor)
angeschlossen - das Modul macht defaultmäßig auch Mikrostepping (das
kann ich leider gerade nicht abschalten oder verstellen, da ich auf das
Modul nur mit RS485 zugreifen könnte, und dafür habe ich nix zur Hand
-muss mir nun extra einen RS485-RS232 Adapter kaufen).

Aber egal - zu meinem Problem:
Motor macht laut Datenblatt 200 Steps pro Umdrehung, also die üblichen
1,8° pro Step. Wenn ich also dem Modul 1 Khz zuführe, sollte der Motor
5 Umdrehungen pro Sekunde (insg. 1000 Steps) machen. Oder? Macht er
aber nicht. Es sind 11 Sekunden für eine Umdrehung!

Liegt das am Mikrostepping? Jetzt bin ich mir nicht sicher, ob ich was
falsch verstanden habe. Ich habe gedacht, Mikrostepping bedeutet, jeder
einzelne Step wird (in diesem Fall von dem Trinamic Modul) in 16 oder 64
feine Stufen gewandelt, so dass der Motor ruhiger läuft.
Oder sollte das bedeuten, dass ich nun 64x so viele Steps pro Umdrehung
zuführen muss. Wohl doch nicht, hoffe ich.

Wäre nett, wenn mir einer auf die Sprünge helfen könnte.
Danke
Markus

von Th. B. (pomdas)


Lesenswert?

Du benoetigst eine hoehere Frequenz, da Du ja nun entsprechend mehrer
Schritte machst. Jeder Impuls bedeutet, einen Mikroschritt weiter zu
gehen. Anders wuerde es ja auch keinen Sinn machen, da Du ja nicht
unbedingt eine feste Frequenz hast und den Motor im Dauerlauf
betreibst. Einen Schrittmotor bewegt man nunmal oft schrittweise. Die
Mikroschritte sind, wie Du richtig sagst, fuer einen sanfteren
Uebergang von Schritt zu Schritt. Nur sind es halt auch Schritte, die
einen eigenen Impuls haben wollen. Technisch kannst Du - wenn
ueberhaupt - einen Motor mit sehr kleinen Schritten nur mit relativ
grossem Aufwand bauen. Deshalb nimmt man Motoren, welche
preisleistungsmaessig in Ordnung sind und steuert diese an der einen
Spule sinus- und an der anderen cosinusfoermig an. Es versteht sich,
dass gaengige Controller diese Verlaeufe wieder diskretisieren und
deshlab "nur" eine Unterteilung in 16 oder 64 Schritte stattfindet.

Thomas

von Bjoern B. (tishima)


Lesenswert?

Hallo!

Ich kenne die Trinamic Steuerrungen zwar nicht, aber mit den
Steuerrungen mit denen ich bisher gearbeitet habt hiess zB 1/8 Schritt
200 Schritte Schrittmotor -> 1600 Schritte pro Umdrehung
ZB. 1/16 -> 3200 Schritte pro Umdrehung. Und natuerlich muessen
dementsprechend auch mehr Impulse an die Steuerrung gegeben werden, den
man möchte durch den Microschritt ja nicht nur einen ruhigeren Lauf
sondern auch eine höhere Auflösung erreichen.

mfg,
Bjoern

von Markus (Gast)


Lesenswert?

Danke Thomas und Danke Björn,

das war auch mein erster Gedanke und dachte, ich fahre einfach die
Frequenz hoch. Das Modul verträgt bis 350 khz. Der Motor laut
Datenblatt bis 1000 Hz Stepfrequenz bei voller Kraft, dann geht es
runter, aber auch 10 Khz und mehr sollte er noch -bei verringerter
Kraft- noch können.

Meine Experimente (alles im Leerlauf) haben gezeigt: bis 35 khz Takt
fährt der Motor an und dreht sich (alles darüber: nur brummen, keine
Drehung), wenn er läuft, kann ich die Frequenz bis auf 100 khz
steigern, irgenwann kommt der Punkt wo der Motor stehenbleibt und nur
noch brummt.

Gilt ein Microstep für den Motor auch als regulärer Step? Ist es laut
Datenblatt also egal ob ich reguläre 1,8° oder kleine Microsteps
mache?

D.h. wenn mir der Motor zu langsam ist, muss ich die Microsteps
runtersetzen um ihn schneller zu bekommen?

Danke
Markus

P.S. Gibt es irgendwo im Netz (habe nichts gefunden) eine Schaltung
(mit den üblichen Hausmitteln, damit ich es über Pfingsten hinbekomme)
wie ich RS485 temporär auf die Schnelle an RS232 anbinden kann. Ich
muss ja nur einen blöden Befehl an das Modul senden können.

von Th. B. (pomdas)


Lesenswert?

Natuerlich wird der Motor schneller, wenn Du den Mikrostep-Betrieb
abschaltest. Nur Proportional ist die Sache nur bei geringeren
Frequenzen. Spaeter spielen Reibungen rein. Wenn der Trinamic-Chip
keine Positionserkennung hat, solltest Du beim Anlauf mit einer sehr
kleinen Frequenz starten, die Du dann kontinuierlich steigerst. Sonst
wird es sehr Wahrscheinlich passieren, dass der Motor stehen bleibt und
nur brummt...

Thomas

von Winfried (Gast)


Lesenswert?

Ich würde eher sagen, die Drehzahl ist entscheidend. Egal ob Microstep
oder Halbschritt, du schaffst mit einem Motor nur eine bestimmte
Drehzahl. Also brauchst du den Microstep nicht runterzusetzen, um
höhere Drehzahlen zu erreichen.

von Th. B. (pomdas)


Lesenswert?

Natuerlich ist die Drehzahl des Motors entscheidend, wie schnell er
werden kann. Nur geraet (aus eigener Erfahrung) der Motor im
Mikroschrittbetrieb schnell ins Schwingen, da er bei hoeheren
Frequenzen einfach nicht mehr mit den vielen kleinen Schritten
mitkommt. Hier hilft es, wenn man die Zwischenschritte halbiert. Zuerst
Halbschrittbetrieb, spaeter Vollschrittbetrieb...

Thomas

von Jörn-H. G. (joern_g)


Lesenswert?

Für hohe Drehzahlen ist eine hohe Spannung erforderlich, sonst fällt er
schon früher als notwendig aus dem Tritt.
Das IDX steuert den Strom, also "genehmige" dem IDX mal eine höhere
Spannungen. Die Angabe auf dem Motor ist dabei nicht so wichtig,
solange du den Strom regelst - was das IDX tut.
cu joern

von Markus (Gast)


Lesenswert?

Ja, das war interessant. Hier mein Bericht, hilft vielleicht auch mal
anderen.
Habe das Modul durch einen Umbau nun doch an RS232 anschließen können
und habe es von 64 auf 4 Microsteps umkonfiguriert.

Vorher mit 64 Microsteps (alle Werte im Leerlauf, also ohne Last):
Motor startet sicher bis max. 35 khz Frequenz
Frequenz konnte dann bis 150 Khz gesteigert werden.
12.800 Hz = 1 Umdrehung pro Sekunde

Jetzt, mit 4 Microsteps (also 1/16):
Motor startet sicher bis ca. 2 khz,
Frequenz kann bis auf ca. 9 Khz gesteigert werden
800 Hz = 1 Umdrehung pro Sekunde

D.h. Frequenz ist egal, die Drehzahl ist die Limitierung. Es ist
Sch...egal ob 4 oder 64 Microsteps. Winfried hat Recht.

Mehr als ca. 30 Umdrehungen pro Sekunde kann der Motor nicht. Und er
startet auch nur bei einer max. Anfangsgeschwindigkeit von ca. 2,5
Umdrehungen pro Sekunde. Alles darüber: nur brummen, keine Bewegung.

Danke nochmal an alle.
Markus

von Heinz Schenk (Gast)


Lesenswert?

Ja, das Drehmoment ist halt dem Strom proportional.
Der Strom kann aber aufgrund der Induktivität nicht beliebig schnell
ansteigen.Wenn der Motor trotz aller Bemühungen nicht schneller werden
kann, würde nur noch helfen die Spannung deutlich zu erhöhen (für einen
schnelleren Stromanstieg), gleichzeitig aber eine Stromregelung oder
zumindest Strombegrenzung, damit der Motor nicht abkachelt.
Zur Funktion Microstep:
Der Rotor wird sich nach dem resultierenden Feldvektor ausrichten.
Also, einfach mal aufzeichnen. Eine Spule bleibt z.B. voll bestromt,
während die andere von z.B. 10% bis 100% bestromt wird.
Mach das mal bei angenommenen 90 Grad Versatz der Spulen.
Damit wird dann auch gleich Vollschritt, Halbschritt und letztlich
Micoschritt klar.

hoffe geholfen zu haben

ts

von Profi (Gast)


Lesenswert?

In dieser Richtung tüftle ich auch wieder...
Momentan bin ich der Überzeugung, dass ab 2-3 kHz effektiver
Schrittfrequenz (bei 200 Steps/Umdr) Mikroschritte eher hinderlich
sind, da der Strom zu langsam ansteigt. Außer man macht es wie der
Oriental Motor Vexta Alphastep ASD-20AC  und versorgt den Motor mit
324V direkt aus dem Netz.

siehe Eintrag in unserem Wiki:
http://www.mikrocontroller.net/articles/Schrittmotoren

von Heinz Schenk (Gast)


Lesenswert?

Deshalb wäre ja auch denkbar, bis nahe an das Ziel im Voll-oder
Halbschritt heranzufahren, und den Rest dann höher aufgelöst im
Mikroschritt anzunähern.

ts

von holm (Gast)


Lesenswert?

@markus:

Bremse den Motor mal etwas, (mit den Fingern oder weiß der Teufel was)
es ist nicht die Maximaldrehzahl, die Dir ind Genisck schlägt, sondern
die Eigenresonanzen des Rotors. Der Motor pendelt praktisch um jede
Schrittposition, erreicht er eine Eigenresonanz, schwingt er sich auf
und bleibt stehen. Bei guten Schrittmotorsteuerungen kann man solche
Frequenzen während der Anfahr und Bremsphase ausblenden. Eine Masse
(schwungrad o.Ä.) hilft Dir auch drüber hinweg. Es gibt auch
Schwingungsdämpfer die mit irgend einem Zeug gefüllt sind zu Montage
auf der Motorwelle ...


Gruß,

Holm

von Winfried (Gast)


Lesenswert?

Schrittmotoren sollten nicht ohne Last betrieben werden. Zumindest ein
kleines Gewicht auf der Welle anbringen. Sonst geraten die schnell ins
schwingen. Bei manchen Schrittmotoren ist ein Betrieb ohne Gewicht/Last
so gut wie gar nicht möglich.

Ansonsten, wie schon geschrieben: Wenn man hohe Drehzahlen möchte,
braucht man sehr hohe Spannungen. Ich glaub so 1200-2000 UPM maximal
sind typisch.

von Edi M. (Gast)


Lesenswert?

> Bei manchen Schrittmotoren ist ein Betrieb ohne Gewicht/Last
> so gut wie gar nicht möglich
Im geregelten Micro Step Betrieb schon. Der Strom wird der Last (in dem 
Falldas Haltemoment) angepasst. Das verhindert des Überschlagen in den 
nächsten Schritt.

von Mirco B. (idova)


Lesenswert?

HallO!
Ich habe dazu auch mal ein paar Fragen,
würde mich sehr freuen hier Hilfe zu finden.
Ich würde gern eine Spidercam für ein Raum bauen:
(Model https://www.youtube.com/watch?v=gra5qq6DxzY)

Dazu würde ich gern ein Controller nutzen den ich per LAN ansprechen 
kann.
zZ.: https://www.nvcnc.net/nvum.html

Damit die Kamerafahrten schnell Genugtuung und auch sanft fahren muss 
ich jetzt wissen, wie schnell dreht ein Motor (welchen weiß ich noch 
nicht), wenn ich 200kHz habe?

Das sowas, oder sowas ähnliches schon mal wer gemacht?
Was würdet Ihr empfehlen?

Vielen Dank.
Mirco

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Für neue Fragen bitte einen neuen Thread aufmachen und nicht einen 7 
Jahre alten aus dem Keller holen.

Mit freundlichen Grüßen
Thorsten Ostermann

von Mirco B. (idova)


Lesenswert?

Ok, sorry

von Wolfgang (Gast)


Lesenswert?

Thorsten O. schrieb:
> Für neue Fragen bitte einen neuen Thread aufmachen und nicht einen 7
> Jahre alten aus dem Keller holen.

... einen 12 Jahre alten ... ;-)

von Edi M. (Gast)


Lesenswert?

Mirco B. schrieb:
> Damit die Kamerafahrten schnell Genugtuung und auch sanft fahren muss
> ich jetzt wissen, wie schnell dreht ein Motor (welchen weiß ich noch
> nicht), wenn ich 200kHz habe?

Dan Satz habe ich jetzt dreimal gelesen und verstehe ihn nicht. ich 
verstehe auch nicht, wie er zu meinem davor passen sollte.

Ich lese hier mal rein, dass dir das Prinzip des Microsteppings nicht 
ganz klar zu sein scheint.

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
Noch kein Account? Hier anmelden.