haperiebmann Posted June 10, 2021 at 03:40 PM Share Posted June 10, 2021 at 03:40 PM (edited) Hallo, ich spiele derzeit mit einem SilentStepper herum und habe ihn soweit denke ich verstanden. Jetzt wollte ich mich dem Stallguard widmen und habe dazu ein paar Fragen: BrickSilentStepper.getDriverStatus() Liefert ein Boolean "motorStalled" zurück. Das wäre in meinem Fall sehr interessant weil ich unter gewissen Umständen auf sehr hohe Widerstände reagieren muss. Ich interpretiere die Doku jetzt so, dass dieses Flag auf true geht wenn der Stepper blockiert. Ebenfalls in der Doku wird mehrfach darauf hingewiesen, dass man doch für wiederkehrendes Auslesen von Daten auf die vorhandenen Listener zurückgreifen solle. Für die o.g. Funktion gibt es aber keinen Listener. Ist es hier Safe wenn ich die polle? Was ist die maximale Frequenz? Wie verhält sich denn das "motorStalled" Flag, ist das nur während der Blockade true oder muss man das resetten? Bekomme ich bei niedriger Abfragefrequenz mit wenn vereinzelt steps verloren gehen? Viele Grüße Michael Edited June 10, 2021 at 03:41 PM by haperiebmann Quote Link to comment Share on other sites More sharing options...
borg Posted June 11, 2021 at 10:34 AM Share Posted June 11, 2021 at 10:34 AM Das motorStalled flag wird von dem "Stall Guard"-Feature gesetzt. Dazu ist im DriverStatus auch noch "Stallguard Result" wichtig: Zitat Stallguard Result: Der Stallguard Wert gibt einen Hinweis auf die Last des Motors. Ein niedriger Wert bedeutet eine höhere Last. Über Ausprobieren kann man mit diesem Wert herausfinden, welcher Wert zu einem geeigneten Drehmoment bei der aktuellen Geschwindigkeit führt. Danach kann über diesen Wert herausgefunden werden, wenn eine Blockierung des Motors wahrscheinlich wird und es kann dementsprechend darauf reagiert werden (z.B. indem die Geschwindigkeit reduziert wird). Im Stillstand kann dieser Wert nicht benutzt werden. Er zeigt dann die Chopper On-Time für Motorspule A. Die min/max/threshold Werte etc für Stall Guard können per setCoolstepSonfiguration gesetzt werden. Das ist leider alles sehr abhängig vom verwendeten Motor, Stromversorgung und Drehgeschwindigkeit etc. Ist immer ein bisschen trial+error das einzurichten. Für eine feste Kombination aus Motor und Stromversorgung etc kann man das aber zum laufen bekommen. Es gibt Produkte die dieses Feature als Software-End-Stopp zur Kalibrierung nutzen. Für eine detaillierte Beschreibung kannst du ins Datenblatt schauen: https://raw.githubusercontent.com/Tinkerforge/silent-stepper-brick/master/datasheets/TMC2130_datasheet.pdf (Seite 62++). Quote Link to comment Share on other sites More sharing options...
haperiebmann Posted June 11, 2021 at 02:21 PM Author Share Posted June 11, 2021 at 02:21 PM Interessant, das heißt aber dass ich alle Werte pollen müsste, mit der Hand den Stepper blockieren um dann die richtige Konfig zu finden mit der das „motorStalled“ Flag korrekt gesetzt wird? Quote Link to comment Share on other sites More sharing options...
borg Posted June 14, 2021 at 07:35 AM Share Posted June 14, 2021 at 07:35 AM Ja, am besten auf den Stallguard Result dabei schauen. Der sollte bei mehr Last höher werden, da kann man dann sehen ob man grob richtig liegt. Schau am besten die Seiten 62/63 im Datenblatt, da gibt es "INITIAL PROCEDURE FOR TUNING STALLGUARD" mit einer Erklärung wie man das kalibriert. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.