Stall Guard mit TMC428, TMC249 im Microschrittbetrieb

Stall Guard mit TMC428, TMC249 im Microschrittbetrieb

Postby Stefan_75 » 31 May 2007, 10:55

Hallo,

ich habe folgend Verarbeitungskette:

uC -> TMC 428 -> TMC 249 -> Schrittmotor

Für den Microschrittbetrieb soll ich Mixed Decay fahren. Für das Stall Detection soll ich es aber ausschalten... laut Datenblatt zumindest 3 Zyklen vor Stromnulldurchgang.

Die generelle Frage:

Wie kann ich einen ruhigen Motorrundlauf (wie z.B. bei Mixed Decay) erreichen und Stall Detection nutzen?

Die genaueren Fragen:

Macht das der TMC 428 automatisch?
Wenn ja, wieso ist der Stall-Wert so unterschiedlich zwischen Mixed Decay Betrieb (zwischen 0-2, je nach Geschw.) und Slow Decay Betrieb(zwischen 4-6, je nach Geschw.)?
Wenn nein, wie kann ich den TMC 428 dazu veranlassen umzuschalten? Funktioniert das überhaupt?!?

Kann ich irgendwie vom uC auf den aktuellen Stromwert des Schrittmotors zugreifen?

Ich habe Mixed Decay eingeschaltet und Fahre im Leerlauf. Warum bekomme ich beim Vorwärtsfahren einen um 1-2 höheren Stall-Wert als beim Rückwärtsfahren?

Grüße

Stefan
Stefan_75
Newbie
Newbie
 
Posts: 1
Joined: 09 May 2007, 11:35

Postby TRINAMIC_BD » 31 May 2007, 22:20

Hallo,

Stallguard und Mixed decay gehen nicht unbedingt gut zusammen, es hängt von der Anwendung ab, da das beste StallGuard-Ergebnis mit Slow Decay Einstellung kommt. Der Mixed Decay Betrieb vernichtet das zu messende Signal leider. Sie könnten für einen Mischbetrieb ein Sinustabellenbit, z.B. das LSB auf das Mixed-Decay flag mappen, und entsprechend programmieren. Das LSB soll dann z.B. nur bei den Tabelleneinträgen 0 bis 4 Mixed Decay abschalten. Diese Möglichkeit nutzen einige Kunden recht erfolgreich.

Vorsicht: Bei dieser Realisierung wir Mixed Decay nur korrekt gesteuert, wenn der Motorstrom (I_S_AGTAT, usw.) beim TMC428 auf Maximalwert eingestellt ist.
Die Umschaltung zwischen Slow-Decay und Mixed decay wird im Normalfall am besten über eine Änderung der entsprechenden zwei Treiberkonfigurationsbits in der TMC428-Tabelle vorgenommen. Dies kann durch den Mikroprozessor bei Bedarf vorgenommen werden. Eine automatische Möglichkeit besteht nicht.

Ein Unterschied zwischen den Drehrichtungen kann sich tatsächlich ergeben, er ist jedoch normalerweise kleiner, es sei denn man fährt mit sehr geringer Mikroschrittauflösung z.B. 8 relativ langsam. Dieser Unterschied entsteht über eine durch den Tabellen-Ausgabealgortihmus bediengte leicht asymmetrische Behandlung des Nulldurchganges beim TMC428, die sich auf StallGuard etwas auswirkt. Bei höherer Mikroschrittauflösung wird diese Asymmetrie jedoch vernachlässigbar klein. Probieren Sie ggf. die Mikroschrittauflösung auf maximal (64) einzustellen, auch wenn diese physikalisch nicht realisiert wird vom TMC249. Eine entsprechende Berechnung der Sinustabelle, die berücksichtigt, dass die Werte jeweils abgerundet werden (es werden ja die zwei unteren Bits abgschnitten) emfpiehlt sich.
User avatar
TRINAMIC_BD
Site Admin
 
Posts: 2442
Joined: 25 Jul 2006, 12:21
Location: Hamburg (Germany)


Return to ICs / stallGuard and coolStep related issues

Who is online

Users browsing this forum: No registered users and 1 guest

cron