Jump to content

Stepper neue Position senden während des ausführen möglich?


Xandy01

Recommended Posts

Hallo Ich versuche eine 3Axen Steuerung zu programieren womit auch Kreise gefahren werden können habe aber das problem das die Stepper immer auf 0 abbremsen und dann erst neue Positionswerte annehmen gigt es eine möglichkeit während der ausführung schon neue Positionswerte zu überspielen so das die Motoren(Stepper) nicht die Rampen ausführen?

Dann habe Ich noch eine Frage wo kann Ich nachlesen wann und wo die IPconnection aufgebaut und wieder geschossen werden muß.

Link to comment
Share on other sites

Eins Vorweg: Zu den Motoren (Schrittmotoren) und den Bricks kann ich so jetzt nichts sagen. Normalerweise öffnet man eine IP Connection pro Deamon, als falls du das nach wie vor für deinen 3D Drucker brauchst eine IPcon zu der du alle 3 Stepper Bricks initialisierst.

Am Ende deines Programms schließt du die Verbindung dann wieder. Sonst bleibt die immer offen. Details über die IP Connection kannst du in der Dokumentation zu jeweiligen Programmiersprache unter Misc => IP Connection nachlesen. Für C wäre das unter http://www.tinkerforge.com/en/doc/Software/IPConnection_C.html zu finden.

 

Eine Andere Sache die dir aber vermutlich Probleme bereiten wird ist der fehlende Buffer. Soweit ich weiß kann man nicht mehrere Befehle Vorweg senden. Als ich meinen 3D Drucker geplant habe, hatte ich auch darüber nachgedacht was mit TF zu machen, da dann aber genau aus dem Grund aufgegeben. Gerade wenn du sehr präzise und feine Strukturen fahren willst, müssen die X und Y absolut synchron arbeiten. Bei TF musst du aber jeden Stepper nacheinander ansprechen. Dazwischen kann es schonmal zu Verzögerungen kommen, die z.B. dafür sorgen würden, dass die Y Achse etwas weiter ist als die X Achse. Deshalb werden einem 3D Drucker immer mehrere Positionswerte in den Buffer geschrieben, sodass der Drucker bereits mit den nächsten Werten arbeiten kann.

Ehrlich gesagt würde ich TF Hardware in dem Punkt als zu ausgelastet ansehen. Bei einem 3D Drucker berechnet normalerweise nicht der Rechner den Verfahrweg, sondern das Treiberboard. Der Rechner liefert nur die Zielpositionen im GCODE.

Ohne jetzt hier TF schlecht reden zu wollen, würde ich dir Empfehlen für einen 3D Drucker andere Hardware wie einen Arduino zu verwenden. Dazu gibt es dann auch bereits fertige Treiberboards wie RAMPS.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...