Aufgabe: Schrittmotor mach einen definierten Schritt, Stillstand, mach wieder einen Schritt

Guten Tag liebes Forum,
ich bin neu in der Arduino Welt und habe daher noch wenig Erfahrungen damit.
Trotzdem möchte ich einen Arduino für ein Projekt nutzen.

Aufgabe: Ich möchte den Hub einer Welle vermessen. Dazu ist wird eine digitale Messuhr den Hubwert aufnehmen. Ein Schrittmotor soll die Welle immer um einen definierten Winkel weiterdrehen, dann stoppen damit ein Messwert zu dem jeweiligen Winkel aufgenommen werden kann und dann wieder einen Schritt machen, bis die Welle um 360° gedreht wurde.
Ich arbeite zudem mit einer Untersetzung von i=4, um die Messauflösung zu vergrößern. Als Schrittmotor möchte ich einen Nema 17 mit einem Schrittwinkel von 1,8° . Möglicherweise mit 22Ncm , 1,33A und 2,8V.

Mein Pronlem: Ich benötige noch einen Motortreiber, allerdings weiß ich nicht recht auf was ich da achten muss, damit die gewollte Funktion erreicht wird.
Es ist wichtig, dass der Motor alle 1,8° stoppt, damit ein Messwert aufgenommen werden kann. Der erste Messwert soll demnach bei 0° aufgenommen worden sein und wenn der Motor 10 Schritte gemacht hat, weiß ich die Welle wurde um 18° gedreht. Eine vollständige Drehung darf dabei ruhig 10min dauern.

Ich habe mir bis jetzt diesen Motortreiber ausgeguckt: DM542T Digital, 1.0-4.2A, 20-50VDC. Kann ich diesen dafür nutzen?
Oder ist das generell mit allen möglich und es liegt nur am richtigen Code für diese Anwendung?

Ich möchte einen Arduino UNO nutzen.

Vielen Dank für die Auskunft

Der Treiber kann mit dem Nena 17, 200, 400, 800, 1600, 3200, 6400, 12800, 25600 Schritte pro Umdrehung machen. Und Schrittmotoren bis 4,1 Ampere steuern. Also mehr als reichlich. Da ich Treiber nicht gerne am Limet fahre, würde ich sagen der passt. für den Motor nicht nötig, aber wenn man mal ein anderes Projekt macht, indem Motoren mit 3 oder 4 Amper betrieben werden, ist der noch genauso gut brauchbar. Schon der nächst größere Motor, Nema 23, ist bei 4 Ampere. Und bischen Luft nach oben schadet nicht. :grinning:

Vielen Dank Franz54 für die schnelle Antwort.
In meinem Fall würde ich den Treiber auf 200 Schritte einstellen und im Vollschritt betreiben, damit jeder Schritt 1,8° betragen und das nach jedem Schritt der Stopp erfolgen kann, richtig?

Ich habe mich auch gefragt, wie man die Drehzahl des Motors einstellt. In meinem Fall soll der Motor sich ja nur sehr langsam drehen und immer nur einen Schritt weiter drehen, bis er wieder stoppt.
Ich habe bis jetzt noch kaum programmier Erfahrung mit dem Arduino oder vergleichbarem. Die Drehzahl kann im Code festgelegt werden? Und wie setzt man es um, dass der Motor nach einem Schritt stoppt und dann weiterdreht.

Danke euch!

Hallo Chioox,

Wie der Name schon sagt. Schritt-Motor. Er macht sowieso immer nur einzelne Schritte
Pro Step-Impuls einen einzigen Schritt.

Wenn man möchte das sich der Schritmotor kontinuierlich dreht, dann muss man einen fortwährende Folge von Impulsen auf den Schritt-Eingang des Schrittmotortreibers geben
Ein bißchen Theorie zur Funktionsweise wäre nicht schlecht

Die Ansteuerung des Schrittmotortreibers erfolgt dann durch LOW/HIGH-Schalten eines Arduino IO-pins der mit dem Step-Eingang des Treibers verbunden ist.

Hier sieht man wie der Microcontroller fortlaufend Schrittimpulse erzeugt

vgs

Ein Schritmotor steht im Betrieb immer unter Strom. Wenn keine Schrittimpulse am Treiber ankommen dann hält er einfach die Position die er gerade hat.
Die Schrittmotortreiber mit Step/Dir-Eingang machen die ganzen Details der Spulen ein/Ausschaltens intern. Das ist ja das geile an Step/Dir-Treibern
einfach ein Signal für Drehrichtung und ein Signal für Schritt fertig
vgs

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.