Accelstepper libary und Schrittmotor
|
18.01.2020, 19:55
Beitrag #9
|
|||
|
|||
RE: Accelstepper libary und Schrittmotor
(18.01.2020 19:38)Lothileinchen schrieb: Es funktioniert jetzt wie gewollt aber leider ohne Beschleunigung und Abbremsverhalten.Du benutzt ja auch nur die Funktionen die kein Beschleunigen und Abbremsen unterstützen. Gruß, Franz-Peter |
|||
19.01.2020, 18:32
(Dieser Beitrag wurde zuletzt bearbeitet: 19.01.2020 19:02 von Lothileinchen.)
Beitrag #10
|
|||
|
|||
RE: Accelstepper libary und Schrittmotor
(18.01.2020 19:55)MicroBahner schrieb:(18.01.2020 19:38)Lothileinchen schrieb: Es funktioniert jetzt wie gewollt aber leider ohne Beschleunigung und Abbremsverhalten.Du benutzt ja auch nur die Funktionen die kein Beschleunigen und Abbremsen unterstützen. Hallo Franz-Peter ! Genau so ist es. Mit Beschleunigung und Abbremsen Funktioniert es Leider nur teilweise.Wie müsste es denn der Code mit Beschleunigen und Abbremsen in Taster 3 aussehen? Ich finde einfach die Lösung nicht. Wenn ich nach Taster 4 die Taster 3 drücke, Motor dreht erst entgegen der NULL-Position(langsam und mit Abbremsverhalten) und fährt dann auf Null - Position mit Beschleunigung und mit Abbremsverhalten. Taste 4 dann Taste 1 oder 2 dann Taste 3 das gleiche Problem. Hier nun den Sketch nochmal gekürzt und hoffentlich für alle gut lesbar. Gruß und schönen Restsonntag Lothar Code: #include <AccelStepper.h> |
|||
19.01.2020, 22:54
Beitrag #11
|
|||
|
|||
RE: Accelstepper libary und Schrittmotor
Hallo Lothar,
Du musst bei der Accelstepper schon genau unterscheiden zwischen Aufrufen mit und ohne Beschleunigung und zwischen blockierenden und nicht blockierenden Aufrufen. Das geht bei dir alles ein wenig durcheinander. Das 'runToNewPosition' ist z.B. blockierend und mit Beschleunigung. Da gelten dann die Vorgaben von setMaxSpeed und setAcceleration. Du brauchst da auch keine while-Schleife - die ist sozusagen in den Funktionen drin. Für Taste 3+4 ginge dass dann z.B. einfach so: Code: if ( ! digitalRead(taster3)) { Gruß, Franz-Peter |
|||
22.01.2020, 21:30
Beitrag #12
|
|||
|
|||
RE: Accelstepper libary und Schrittmotor
(19.01.2020 22:54)MicroBahner schrieb: Hallo Lothar, Hallo Franz-Peter Danke für den Code-Schnipsel und für die gegebenen Hinweise. Ich hatte Accelstepper Lip-Dokumentation gelesen aber keine Vorstellung bzw. einfach Ignoriert was mit blockierend gemeint ist/war und welche Wirkung es im Programm hat. (Zu meiner Schande) Um meine Frage bzw. Anliegen besser umschreiben zu können, benenne ich die Taster neu. In: Taster1 Einrichten Taster2 Ein_rich_ten Taster3 Home Taster 4 Start Automatik Taster 5 Set Null_Position (Neu hinzugekommener Taster) { stepper.setCurrentPosition(0); } Arbeitsablauf: Mit Taster -> „Einrichten oder Ein_rich_ten“ auf irgendeine Position fahren. Mit Taster -> „Set Null_Position“-- angefahrene Position auf null stellen. Mit Taster -> „Start Automatik“ auf eine definierte Position und mit definierter Schrittgeschwindigkeit fahren. Die Schrittgeschwindigkeit wird ermittelt mittels Encoder (Drehzahl der Hauptspindel - auch um die null-Position der Hauptspindel zu ermitteln) dieser Encoder wird an der Hauptspindel einer alten Drehmaschine montiert sein. Ist die Position erreicht? Mit Taster -> „Home“ auf Ausgangsposition fahren Mit Taster -> „Start Automatik“ Zyklus beginnt neu Und so weiter. Bis die Vorgaben erreicht sind. if (! digitalRead(Home)) { stepper.runToNewPosition(0); //Mit Beschleunigung und Abbremsen ist aber nicht zwingend Notwendig } if (! digitalRead(Start Automatik)) { Muss ohne Beschleunigung und Abbremsen sein; } Frage: Wie müsste der Code in Taster „Start Automatik“ ohne Beschleunigung und Abbremsen aussehen? Bzw. Ist das in dieser Kombination(Mix)) überhaupt möglich? Ich kann die Lib durchlesen so oft wie ich will. Ich sehe einfach die Lösung nicht. (Brett vorm Kopf –Tomaten auf den Augen) Wichtig: Die Endposition muss definiert werden können, ebenfalls die Schrittgeschwindigkeit. Diese ist abhängig von der Drehzahl der Hauptspindel. (Gewinde schneiden –Vorschub.) Danke Gruß,Lothar |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste