Guten Tag,
Ich habe ein Projekt bei dem ich die Schritte von einem Schrittmotor zählen lassen muss. Ich muss die Schritte nacheinander im Seriellen Monitor ausgeben lassen. Der Startpunkt wird durch eine Lichtschranke angegeben und dort soll auch der Endpunkt sein. Ich füge mal eine Zeichnung hinzu, wie das so aussehen soll. Bin dankbar für jeden tipp und ggf. jeden Code.
Im englischen Teil des Forum müssen die Beiträge und Diskussionen in englischer Sprache verfasst werden. Deswegen wurde diese Diskussion in den deutschen Teil des Forums verschoben.
Hallo,
na ja wenn Du den Motor drehen lassen willst musst Du Ihm doch Schritte geben damit er sich dreht, Dann weist Du doch wie viele das sind.
D.h du musst Schritte vorgeben und wenn die Lichtschranke kommt das stoppen damit er stehen bleibt .
Heinz
Leider ist in dem Projekt vorgegeben, dass der Schrittmotor dauerhaft dreht und dann nur die Schritte gezählt werden, die er für eine Umdrehung braucht
Dann kannst Du die Impulse zählen. Nun musst Du mit einer Flanke der Lichtschranke den Zählerstand in eine Ergebnis -Variable umladen und den Zähler wieder auf 0 setzen.
Du hast also eine schwarze Schachtel wo die Achse eines Schrittmotors rausschaut.
Du hast also keinen Zugang zum elektrischen Teil des Aufbaus?
Du sollst die Schritte des Schrittmotors zählen?
Mit einem Sensor kannst Du nur bestimmen wann der Motor diese Position erreicht und wieviele Umdrehungen in einer gewissen Zeit der Motor macht.
Ein LDR ist normalerweise zu träge um solche Messungen zu machen. Besser ein Fototransistor.
Es kann doch durchaus vorkommen, dass ein Schrittmotor "springt". Von daher ist doch die Überlegung eine Kontrollinstanz ins Spiel zu bringen nicht verkehrt.
Hallo,
Ja wenn der Motor im überlastet wird lässt er Schritte aus, hinkt also hinterher.
Das bekommt man aber nur hin wenn man mechanisch einen Endoder anbaut und die Position mit abfragt.
Warum?
Der TO hat einen beliebigen MC.
Da irgendwo einen Eingang für LDR.
Er nimmt einen weiteren Eingang und zählt die Flanken, die am StepPin zur Auslösung führen
Ist er wieder bei LDR hat er die Summe der Flanken.
Damit die Schritte.
Das passiert eigentlich nur bei falscher Dimensionierung bzw. mechanischen Problemen. Sonst wären Schrittmotoren ja sinnlos, wenn man die Schritte extern überwachen müsste, damit sie ordentlich arbeiten.
Wir leben ja in der realen und nicht in einer idealen Welt. Da fallen mir so viele Beispiele ein, wo es Sinn ergeben könnte. Beim 3D-Drucker könnte der Druckkopf ins Bauteil rauschen: Ohne Kontrolle zerstört sich das Gerät unter Umständen selbst.
Da geht es ja gar nicht anders. Ich kann ja die Schritte nur mitzählen, wenn ich sie selber erzeuge und mitzähle. Zähler auf Null wenn die Lichtschranke auslöst, Impulse mitzählen, und wenn wieder die Lichtschranke auslöst Zählerstand ausgeben, Zähler zurückstellen und weiter gehts.
Nicht unbedingt.
Ich kann die fremd erzeugten mitzählen #10
Aber wie @uwefed schon schrub - ohne Response von @leklie282 ist das alles nur raten ins Blaue...