PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotor macht nur ein Viertel der schritte



derchrome78
08.04.2006, 18:26
Hallo zusammen!

Erstmal ein großes Lob an dieses Forum bzw. Seite!

Habe da folgendes Problem mit meinen Schrittmotoren:
Habe zwei Schrittmotoren, einen bipolaren(200 Schrtte) und einen unipolaren (24 Schritte), angesteuert, einmal mit einem ULN-Treiber und einmal mit einem L293D, aber irgendwie machen beide nur ein Viertel der angegebenen Schritte, auch bei langsamen Betrieb(also nicht das altbekannte Problem, dass ein Schrittmotor Schritte verliert bei schneller Fahrt). Habe mich bei der Ansteuerung an die Informationen auf der RN-Wissen-Seite gehalten bzw. Wolfgang Backs Pdf zum Thema Schrittmotoren benutzt. Steure die beiden IC´s per Atmel Mega 8535 an.
Habe das Programm schon ganz oft überprüft, aber ich find irgendwie keinen Fehler. Eine weitere Sache die komisch ist, ist das die Motoren beim Wechsel von Halb- auf Vollschrittbetrieb bei einer bestimmten Anzahl von Schritten, nach den Schritten die gleiche Position einnehmen und sich nur die Drehzal des Motors ändert (bei Vollschrittbetrieb läuft er halt doppelt so schnell wie im Halbschrittbetrieb). Hat jemand eine Idee wo das Problem liegen könnte??????

Manf
08.04.2006, 18:33
Wenn sich die Motoren gleichmäßig drehen, dann werden sie höchstwahrscheinlich richtig angesteuert.
Es liegt dann wohl an der Definition des Schritts.
Ein Phasenwechsel ist ein Schritt.
Manfred

08.04.2006, 20:34
Wie Phasenwechsel? Sagen wir mal ich gebe jetzt am Port vom uC die Bytes 9,6,5,10 aus, ist das dann ein Schritt,sowie hier unter anderen im RN-Wissen definiert (für einen Vollschritt sind das da ja 4 Änderungen der Spulenspannung) oder sind das vier Schritte für jeden Bytewert (und damit Änderung der "Spulenbestromung") ? Wie kommt das dann mit der doppelten Geschwindigkeit bei Halb/Vollschrittbetrieb obwohl der Motor hinterher imman der selben Stelle steht?

08.04.2006, 20:38
Ich meinte natürlich 1 Schritt für einen Bytewert.

Manf
08.04.2006, 20:44
Hier steht z.B. etwas dazu:

https://www.roboternetz.de/wissen/index.php/Schrittmotoren

Schrittwinkel
Der Schrittwinkel gibt an um wieviel grad sich die Achse bei einem Vollschritt bewegt. Dadurch wird also gleichzeitig angegeben wieviel Schritte ein Motor für eine volle Drehung benötigt. Man teilt einfach 360 Grad durch den Schrittwinkel und erhält die Schrittanzahl. Bei guten Industriemotoren beträgt der Schrittwinkel oft 1,8 Grad, das ergibt also 200 Vollschritte pro Umdrehung. Nutzt man das Halbschrittverfahren zur Ansteuerung, also 400 Schritte. Je mehr Schritte ein Motor besitzt desto genauer kann er natürlich bestimmte Positionen anfahren, zugleich läuft er ruhiger und leiser. Nachteil von hohen Schrittzahlen ist allerdings das oft nicht so hohe Drehzahlen erreicht werden können wie bei großen Schrittwinkeln.

08.04.2006, 20:51
Ja, aber nur verwirrendes. Zitat : Bei jeder Portausgabe würde sich somit der Schrittmotor einen Schritt bewegen. Das Ganze könnte natürlich in der Software in einer Schleife gemacht werden. Der Schleifenindex würde somit die Zahl der Schritte angeben. Zitatende

In meiner Schleife führe ich 4 Änderungen der Bytewerte durch, das heißt für mich 1 Schritt, so wie es teilweise im obigen Text auch steht, aber dann steht da auch noch das jede Änderung des Bytewerts einen Schritt ausführt. Was soll ich denn nun glauben :-)

08.04.2006, 20:53
Und warum sind dann immer 4 Bytewertänderungen als 1 Vollschritt definiert????????

Manf
08.04.2006, 21:00
Was soll ich denn nun glauben :-)
Wer?, wem?, was?, es ist nicht gesagt wer postet und von wo zitiert wird. O:)
Manfred

08.04.2006, 21:05
Das Zitat ist aus der oben angegeben Seite aus dem RN-Wissen!
Was ist denn nun ein Vollschritt? 4 Bytewertänderungen? Ist ein Schritt ein viertel Vollschritt?

08.04.2006, 21:06
Ach ja und es postet auch als Gast immer derchrome78 :-)
Ich bin übrigens Raimund

08.04.2006, 21:07
KLär mich doch bitte mal auf!

Manf
08.04.2006, 21:12
Ein Schritt ist die elementare Bewegung des Motors, beim 2 Phasenmotor ist ein Vollschritt 90° elektrisch. (In einer Byteausgabe kann man auch einen Halbschritt ausführen.)
Manfred

https://www.roboternetz.de/wissen/images/3/39/Schrittmotorphasenzeichnung.gif

08.04.2006, 21:15
Ein bißchen ausführlicher bitte :-) Bin heute irgendwie schwer von Begriff. Das heißt also im Klartext das ich mit meiner Schleife in der ich vier Bytewerte ausgebe, im Grunde genommen 4 Schritte ausführe und das Ganze nur als einen Schritt zähle(weil ich nur am Ende der Schleife den Zähler erhöhe). Oder lieg ich da jetzt falsch?

Manf
08.04.2006, 21:24
Es gibt beispielsweise beim 2 Phasen-Schrittmotor definierte Vollschritte und Halbschritte. Im Bild sind oben 3 Vollschritte dargestellt unten 7 Halbschritte.

In der Software hat man die Freiheit andere Schritte zu definieren und zu zählen.

Interessant (nicht ganz einfach) ist die Definition des Halbschritts, der ja ein Schritt ist und nicht ein halber Schritt, aber am Bild müßte es deutlich werden.
Manfred

08.04.2006, 21:37
Ah jetzt ja! Das heißt ich habe also quasi 4 Schritte ausgeführt aber nur einen gezählt. Jatzt hab ichs auch verstanden. Hätte eigentlich schneller gehen müssen für einen fast Diplom-Ingenieur für Mechatronik :-) Hab mich halt nur so an dem Begriff "Vollschritt" aufgehangen, weil ich gedacht hab, die 4 Bytewerte entsprechen einem Vollschritt und nicht das jeder der Bytewerte ein Vollschritt ist. Trotzdem erstmal vielen Dank für die Sschnelle Hilfe.