Schrittmotor Positionieren

Guten Tag zusammen,
ich stehe vor einem Dilemma. Vorweg, ich bin wie einige gerade erst in das Programmieren eingestiegen daher ist mein Basiswissen also sehr beschränkt und bitte deshalb hier um eure Hilfe.
Ich möchte den Werkzeugwechsler meiner CNC Drehmaschiene über meinen Funduino Mega 2560 in Betrieb nehmen, dass habe ich mir in etwa so vorgestellt; Funduino mit Tastenfeld an Endstufe verbinden, Endstufe mit Schrittmotor von Werkzeugwechsler verbinden. Ich möchte dann, dass als erstes sobald ich den Werkzeugwechsler verwenden möchte eine Referenzfahrt ausgeführt wird. Ich habe mir dafür Werkzeug 1 als 0 Punkt ausgesucht. Ich möchte also bestimmte Positionen anfahren (Werkzeuge 1-8) weiß aber leider nicht wie ich das realisieren soll... ich habe bisher lediglich geschafft einen kleinen Schrittmotor 8 mal drehen zu lassen, ohne Tastenfeld, ohne definierte Positionen, ohne 0 Punkt...

Hier nochmal meine Fragen stichpunktartig:

-Wie hinterlege ich 8 Positionen?(alle 45 Grad befindet sich ein Werkzeug)

-Wie binde ich ein Tastenfeld ein womit ich auf Knopfdruck alle Positionen anfahren kann?

-Wie lege ich einen 0 Punkt fest? Beziehungsweise das Referenzwerkzeug

Ich hoffe ich habe mich verständlich ausgedrückt und bedanke mich für jede erdenkliche Hilfe!

Den kennen wir nicht. Bitte Spezifikationen nachreichen und wie man den ansteuern kann.
Frage 1: Die Positionen legst du in Variablen fest.
Frage 2: Tastatur an GPIOs anschließen, im Programm abfragen und reagieren.
Frage 3: Siehe 1

Hallo,

Wenn die Sollwertpositionen fest sind , würde ich Dir eventuell einen Drehencoder der 8 Positionen einstellt eine Anzeige und eine Start Taster. Drehencoder gibt es mit eingebautem Taster. ( drehen drücken) Mit einer zweiten Tasterfunktion kannst Du auch die Sollpositionen noch variable eingeben. (Modus umschalten) Das geht zwar mit einem Tastenfeld auch, ich denke aber für Dich als Anfänger ist das schwieriger. Es geht auch mittels einer 3-Tasten Bedienung.
auf - ab - Start/Modus. Die Anzeige sollte aber schon sein.

Zum Referenzfahren benötigst Du einen zusätzlichen Endschalter, oder Sensor. Das machst Du dann einmal bei Spannung ein.

Schau Dir einen vernünftige lib für Stepper an , da musst Du nur die Position angeben , den Rest macht die Lib.
Mobatools oder AccelStepper.
Heinz

1 Like

Einen Encoder für einen Schrittmotor finde ich unsinnig. Der Schrittmotor ermöglicht ja bereits die genaue Positionierung.

Zuerst braucht es einen Homesensor damit die Position des Schritmotor erfaßt wird (Endschalter, optischer oder magnetischer Sensor).

Wenn dieser mit zB der Position 1 zusammenfällt ist das schon mal erledigt. Dann 45° etsprechen einer gewissen Schrittanzahl ab Homeposition. Je nach Schrittmotor, eventuelles Getriebe und Microschritte ist das eine gewisse Schrittzahl.

Tastenfeld: Gibt es schon fertig und jede Menge Tutorials, Erklährungen dazu. Such mit einer Suchmaschine Deiner Wahl nach "Tastenfeld Arduino"

Grüße Uwe

1 Like

Hallo,
möglicher Weise da habe ich mich missverständlich augedrückt , ich meinte einen Rotary Encoder zum Einstellen von Sollwerten.

Da habe ich Dich wirklich falsch verstanden. Als Eingabe für den User ist ein Encoder eine gute Option.

Grüße Uwe

Guten Abend,
Vielen Herzlichen Dank für die vielen Antworten! Ich werde mich jetzt gleich schlau machen, mich belesen, einschließlich einen Code erstellen! Ich wäre dennoch sehr dankbar wenn ich noch ein paar Starthilfe Tipps bekommen könnte, denn ich sitze gerade hier und weiß garnicht wie ich anfangen soll den Code zu schreiben

Antwort zur Frage was ein
Funduino Mega 2560 ist;
Ich habe mir ein XXL Starter Kit geholt einschließlich des Arbeitsheftes „Arduino lernen“ daher vermute ich das ein Funduino Mega 2560 dass selbe wie ein Arduino Mega 2560 ist. Warum es anders heißt weiß ich nicht.

Antwort an Uwefed;
Vielen Dank für die Hilfe, ich möchte dennoch anhängen das ich leider den Tipp eine Suchmaschine für ein Tutorial des Tastenfeldes vermeiden möchte. Ich habe sehr sehr viel im Netz recherchiert und hab einfach einen Absoluten Informationsüberfluss bekommen. Ich wäre für einen Link von einem Tutorial zur Tastatur dankbar

Wenn Du einen Funduino hast (also einen legalen Nachbau des Arduino von Funduino) dann hast Du zu diesem Starterset auch Anleitungen für darauf aufbauende Experimente. Die solltest Du auch nutzen, um die Grundlagen zu lernen. Du musst noch nichtmal suchen, Du hast sie bereits geliefert bekommen. z.B. Tastenfeld

Etwas eigene Initiative mit dem Starterset für den Einstieg wäre schon sinnvoll.

Gruß Tommy

Hallo Tommy,
Danke für den Hinweis, dass Heft habe ich genutzt z.B. um meinen Motor mit einem Loop Befehl in 8 Positionen drehen zu lassen beziehungsweise sobald ich ihm Strom gebe beginnt er die angegeben Schritte abzufahren. Wahrscheinlich finde ich einfach den Zusammenhang nicht. Im Buch ist eine Beispielaufgabe in der die Eingaben vom Tastenfeld ausgelesen werden sollen, leider kann ich nicht aus dieser Aufgabe ableiten wie ich den Vorgang Programmiere das wenn ich zum Beispiel die Taste 2 drücke, der Stellmotor Position 2 dreht. Ich hoffe meine Unbeholfenheit stört dich nicht zu sehr und du bist weiterhin bereit mir zu helfen.

Mich stört sie weiniger, aber Dich viel.

Du musst lernen, z.B. was Variablen sind, wie Du sie benutzt. Du kannst z.B. das Tastenfeldbeispiel benutzen und dias Zeichen der gedrückten Taste in einer Variablen speichern. Diese kannst Du dann weiter verwenden.

Gruß Tommy

Das Arduino -Projekt ist seit Anfang an ein Open Source Projekt unter CC V3 Lizenz. Darum sind die Schaltpläne veröffentlicht. Darum darf auch jeder der es will eine Platine nachbauen, verändern, verbessern.
Die Marke "Arduino" und das Logo sind Markenrechtlich geschützt.
Darum muß ein Nachbau um legal zu sein, einen anderen Namen und eventuel Logo haben eben Zb Funduino.

Grüße Uwe