PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wiederholgenauigkeit bei Schrittmotoren (Ansteuerung TMC222)



drnicolas
23.08.2005, 10:39
Hi, ich habe gewisse probleme mit einem Schrittmotor, angesteuert von einem TMC222 über ATMEGA16

Das Problem: der Schrittmotor steuert über eine untersetzung mit einem Keilriemen (kein Zahnriemen) eine Trommel an, die mit einer kompassskala versehen ist. Eine Lichtschranke liefert die referenz.

Die Anzahl der Schritte/Umdrehung ist leider nicht ganz konstant und schwankt zwischen 5880 und 5940 Schritte.


Hat jemand Erfahrungen mit dieser SM-Steuerung ? Wie genau lässt sich die Position wiederholen ?

Gelegentlich erhalte ich Meldungen mit "ElDef" obwohl der Motor munter dreht - ist das normal ? Muss ich die EInstellungen für den Strom ändern ?

Gruss Nico

23.08.2005, 10:49
Bei einer vernünftigen Schrittmotorsteuerung muss man die Position auf den Schritt genau steuern können. Ansonsten taugt das nix

PicNick
23.08.2005, 10:56
Du meinst wahrscheinlich die genaue Wiederholdung der Schritte von der Referenz aus gerechnet ?
Bei etwas Ähnlichen (DVD-Carousel) hat sich gezeit, daß die ganze Bezugspunkt-Geschichte mit dem IR Sensor gar nicht so trivial ist, wie man meinen sollte.
Tip: schau dir die entsprechenden Funktionen nochmal genau an.

sep
23.08.2005, 14:41
Naja, die einzige Ungenauigkeit kannst du durch deine Untersetzung bekommen. Vermutlich hängt diese ein Stückchen hinterher (hat Spiel)

Das kannst du minimieren, indem du die Referenz-markierung immer von der selben Seite her anfährst.

Worauf du auch achten solltest, ist, dass evtl. der Motor eine periodische Schrittfolge vo mehreren Schritten durchmacht, die nicht einfach unterbrochen werden darf.
Du kannst nicht mit dem Motor solange drehen bis die Referenz erreicht ist und dann sofort die Motorposition auf "Null" setzen.

24.08.2005, 09:01
@sep:
Genau das tue ich aber.
Ich fahre den Motor zunäcsht mit langsamster geschwindigkeit im UZ bis zum Öffnen der Lichtschranke.

Jetzt wird der Positionszähler genullt.

Anschliessend wird 50 Schritte im UZ gefahren (ein einziges Kommando für den Kontroller!) damit die Lichtschranke wieder schliesst.

Ein weiteres Kommando fährt den Motor in langsamster Geschwindigkeit um 32000 Schritte im UZ (Hauptsache mehr als eine Umderehung)

Ich prüfe während der Fahrt dann andauernd ob die Lichtschranke offen ist.
Sobald die L. öffnet wird der Motor mit dem HARDSTOP-Kommando angehalten und der Zähler ausgelesen.

Das ganze tue ich mehrfach um zu mitteln. Die Schrittzahlen variieren dennoch (zuviel weil ca. 50 Schritte=ca. 0.9%)

Die Ref-Markierung wird also immer von derselben Seite angefahren. Wie die Schraittzahlen in umgekehrter Richtung sind ahbe ich noch gar nicht probiert !

drnicolas
24.08.2005, 09:04
@sep: Ich bin 'Gast', sorry.

@picnic: Woher bekomme ich Infos zu diesem nicht trivialen Thema ?

sep
24.08.2005, 13:48
ist schon eine recht krasse Abweichung.
Hast du bedacht, dass du nicht einfach den Positionszähler Nullen kannst?
Nämlich dann wenn du die Motorschrittfolge aus dem Positionszähler erhälst?
Sonst verliert der Motor schlimmstenfalls drei Schritte.

verliert dein Motor vielleicht überhaupt Schritte?

ist du sicher, dass die Lichtschranke überhaupt so präzise misst? (Mach einen größeren "Zeiger" an das Getriebe und versuche es damit.)

PicNick
24.08.2005, 15:14
Ich geb' zu, ich hab das zu Fuß gemacht, ohne zusätzlichem Kontroller, das schien mir ein overkill zu sein.
http://195.128.164.40/rt_music/electronic/dvd/dvd.htm

Infos zu diesem nicht trivialen Thema
Gute Frage. Ich hab Stunden mit dem Zeugs rumgesch..en.
Ich müßt mich erst wieder reinlesen, damit ich auskunftsfähig bin.
Aber, wie oben gesagt, es war nicht mit Zusatzkontroller, weiß nicht, ob dir das hilft.

pebisoft
24.08.2005, 18:19
du solltest mal dein programm überprüfen, vielleicht schlampert das von der programmierweise her.
mfg pebisoft