2-Achs linear Führung ansteuern

Hallo Gemeinde!
Ich möchte das Rad nicht neu erfinden, im Prinzip eine CNC-Fräse, möchte nur die Bewegung steuern können und ev. was dran basteln mim 3D Drucker.
dh ich suche nur die rudimentäre Ansteuerung und dann dazu HW.
Danke für eure Hilfe!

so eine fertige Führung wäre mein Gedanke

Werfe mal einen Blick ins WWW.

2 aufeinander?
https://www.temu.com/at/kuiper/n9.html?subj=googleshopping-landingpage&_bg_fs=1&_p_rfs=1&_x_ads_channel=google&_x_ads_sub_channel=shopping&_x_login_type=Google&_x_vst_scene=adg&mkt_rec=1&goods_id=601099518826860&sku_id=17592225970295&_x_ns_sku_id=17592225970295&_x_gmc_account=759765814&_x_ads_account=3754959944&_x_ads_set=20254997714&_x_ads_id=148421375165&_x_ads_creative_id=661200477765&_x_ns_source=g&_x_ns_gclid=CjwKCAjw-KipBhBtEiwAWjgwrJmqL3KYdcelQq1-Bz_3pDPqHZ65TgelacpCGP5gmfuP-Spefx_mwBoCBLQQAvD_BwE&_x_ns_placement=&_x_ns_match_type=&_x_ns_ad_position=&_x_ns_product_id=17592225970295&_x_ns_target=&_x_ns_devicemodel=&_x_ns_wbraid=CjgKCAjw1aOpBhBJEigAxlPvPcvXUYXI07JMOJVNR_MBS6FeApex7ADi5paY8kXwlT1z1W2OGgI58A&_x_ns_gbraid=0AAAAAo4mICGjtYLMbGaYP7wrGQJznWiD-&_x_ns_targetid=pla-370819644410&gclid=CjwKCAjw-KipBhBtEiwAWjgwrJmqL3KYdcelQq1-Bz_3pDPqHZ65TgelacpCGP5gmfuP-Spefx_mwBoCBLQQAvD_BwE&adg_ctx=f-76971eab

habe mir jetzt 2 so Nema17 Linearführung geordert, diese werde ich zu XY zusammen schrauben.

würdet ihr mir bitte eine Info zur SW geben, was gibt es denn da ? würde gerne referenzieren und dann in Millimeter fahren, also Bsp. 10x10 Positionen anfahren.
Danke

keine Hilfe hier oder ein Tipp?

Ist nur Einbaugröße, sagt nix über den Stepper.
Lädt dir runter die

und Teste die Beispiele, wenn danach fragen kommen, Frag.
Nur Motoren bringen dir nichts du brauchst noch Treiber dafür, da unten nur Beispiel hängt von was du für Stepper gekauft hast.
Schrittmotortreiber (Stepper Driver) TMC2208 - 3D-Druckservice, Architektonische Modelle bestellen, Entwicklung VR Spielen und Anwendungen

1 Like

Wie willst Du die Positionen anfahren? Ist nur das Ziel wichtig, oder auch der Weg dorthin ( wie z.B. bei einem Plotter ). Wenn auch der Weg wichtig ist ( z.B. eine direkte lineare Bewegung zwischen 2 Punkten ) brauchst Du eine Software, die die beiden Stepperbewegungen synchronisiert. Das können z.B. die MobaTools nicht.

Wie schon erwähnt, sind die elektrischen Daten der Stepper wichtig um einen passenden Treiber auswählen zu können. Und dann brauxht Du natürlich auch noch ein geeignetes Netzteil für die Stepper - das hängt dann auch von den elektrischen Daten und dem ausgewählten Treiber ab.

1 Like

Guten Morgen, einen Treiber und Nema17 Motor habe ich schon angesteuert, auch mit Mobatools.
Danke für eure Informationen!
Ich würde schon gerne nicht einzeln verfahren, sondern mit dem "Kopf" eine direkte Linie bestreiten. Es ginge auch beide Nema gleichzeitig fahren zu lassen, aber ich würde hier ganz gerne etwas dazu lernen und eine Achssteuerung versuchen, darunter verstehe ich beide Motoren so anzusteuern, dass sie gleichzeitig am Ziel sind.

Das ist dann schon etwas herausfordernder - vor allem wenn Du die Motore auch mit Beschleunigung und Abbremsen betreiben willst. Ich kenne jetzt keine fertige Lib die das kann ( was nicht heißt, dass es keine gibt .. ). Soweit ich weis kann die Marlin CNC-Software für den Arduino das. Ist aber keine Lib, sondern eine komplette Software, die über G-Codes gesteuert wird. Da habe ich aber keinerlei eigene Erfahrung mit.
Die Accelstepper kann mit der Multistepper Klasse erreichen, dass beide ( bzw. alle zusammengefassten ) Stepper gleichzeitig am Ziel ankommen, betreibt die Stepper dann aber ohne Beschleunigen/Abbremsen. Da ist das dann auch rel. einfach und bedeutet nur ein wenig Rechnerei bezügl. der notwendigen Steppergeschwindigkeiten.

1 Like

Dann schau dir doch mal Estlcam an.

1 Like

bin mir nicht sicher ob Estlcam jetzt das richtige ist (hab mich jetzt nicht intensiv damit beschäfitigt, werde mir das wenn die Führungen angekommen sind, nochmal ansehen)

bis dahin besten Dank, ev. mache ich auch mal die Mobatool bzw Accelstepper Variante und später dann NC.

Mal sehr direkt gefragt:

willst du eine CNC-Fräse bauen? Wenn ja dann ist ESTLCAM 100% geeignet.

Wenn du etwas anderes als CNC-Fräsen machen willst, dann solltest du dieses "andere" möglichst präzise beschreiben.

  • willst du mit farbigem Zuckerguss Texte auf Torten schreiben?
  • willst du mit einem Brennkolben Pixelbilder in Holzplatten brennen?
  • willst du Kakaopulver in verschieden große Tassen einrühren?
  • willst du Platinen fräsen?
  • willst du Bohrungen in Platinen bohren?

Wenn du das beschrieben hast was der finale Zweck der synchronisierten 2-Achs-Bewegungen ist, dann kann man dir Vorschläge machen mit was für Software das gut geht.

vgs

ich will Hülsen in Halter positionieren, dh die Endposition ist wichtig, der Weg nicht.

Dann sollte das mit praktisch jeder Stepper Library gehen die mehrere Motore gleichzeitig ansteuern kann. Beschleunigen/Abbremsen wäre wichtig, wenn Du dein Ziel möglichst schnell erreichen willst.

da die Motoren und Linearführungen gleich sind, gehe ich von annähernd selbem Dynamikverhalten aus, wenn beide gleichzeitig den Befehl bekommen, werden sie, so meine Annahme, auch gleichzeitig ankommen, eine gerade Linie.

OK, das probiere ich dann mal! Danke!

Wenn es dabei nicht auf maximale Geschwindigkeit ankommt, dann könntest du die Achsen auch einzeln fahren lassen. Zuerst X-Achse dann Y-Achse.
Dann ist das supereinfach mit den Mobatools zu programmieren.

Auch das gleichzeitige losfahren aber nicht synchronisierte Fahren ist mit den MobaTools möglich.

Also wenn du auf eine Höhe hin und her fährst wo du mit nichts zusammenstoßen kannst dann geht das mit den MobaTools.
Beide Schrittmotoren gleichzeitig starten und wenn die Wege unterschiedlich lang sind dann stoppt der Motor mit dem kürzeren Fahrweg zuerst und der Schrittmotor mit dem längeren Fahrweg als zweites.

Beispiel Fahrweg X 10 Schritte Fahrweg Y 2000 Schritte. Ist doch klar das X zuerst am Ziel ankommt.

Wenn beide am Ziel angekommen sind, kannst du die Hülsen positionieren.

Als XY-Mechanik wird die zweite Achse von der ersten mitbewegt das heißt die hat mehr Masse zu bewegen, deswegen ist wird das Beschleunigungslimit niedriger liegen.

vgs

1 Like

Wie Stefan schon schrieb, kann es je nach Start und Zielposition ja sein, dass der eine Stepper wesentlich weniger Schritte machen muss als der andere. Dann werden sie auch sicher nicht gleichzeitig ankommen - es sei denn Du stellst die Geschwindigkeiten unterschiedlich ein. Ohne Beschleunigen/Abbremsen ist das Berechnen der notwendigen Geschwindigkeiten noch relativ einfach, mit Beschleunigung eher kompliziert. Für deinen Anwendungsfall dürfte die Beschleunigung aber wichtiger sein als das gleichzeitige Ankommen.

1 Like

Ja, verstehe, ist alles richtig.
Wenn der Ablauf auch Reihenweise erfolgt, dann spielt es in Wirklichkeit ja gar keine Rolle.
Da kann ich auch zuerst die Reihe und dann die Position anfahren.
Danach wird dann nur Positionsweise (9x) verfahren, dann die Reihe wieder, Position 1....
oder Position 10 bis 1 zurück... gibt ja viele Wege.

Ja wenn man das immer im voraus berechnen wollte ist das schwierig.
Macht man aber nicht. Man programmiert den Bresenham-Algorithmus.

Das Prinzip ist so:
zuerst analysiert man welche Fahrtrichtungen X-plus/minus Y-plus-minus
dann bestimmt man welche Achse hat den längeren Fahrweg X oder Y
Diese Achse wird die Führungsachse
Dann berechnet man die Steigung zwischen den beiden Achsen.
Diese Steigung ist immer kleiner als 1. (Wenn es im XY-Koord-System sehr steil nach oben geht ist die Y-Achse die Führungsachse und die X-Achse hat dann im Verhältnis zur Y-Achse eine kleine Steigung.
Diese Steigung ist also kleiner als 1
Beispielzahl 0.25
dann wird bei jedem Schritt der Führungsachse dieser Bruchteil hinzugezählt
Y=1
X=0.25 => es bleibt bei X=0
Y=2
X=0.5 => es bleibt bei X=0
Y=3
X=0.75 => es bleibt bei X=0
Y=4
X=1 => altes X (das ist 0) minus neues X (das ist jetzt 1) ändert sich vor dem Komma ===> einen Schritt in X ausgeben.

Das bedeutet man kann nicht mehr einen einzelnen function-Aufruf stepper.write() machen sondern die beiden Achsen müssen einer gemeinsamen Schleife zusammen angesteuert werden.

@Microbahner: wäre das ein neues Projekt für dich?
Es gibt die 3D-Drucker firmwares marlin & Co und es gibt GRBL

Das sind aber beides Riesenprogramme mit allem möglichen drum herum.
Was es scheinbar noch nicht gibt ist einen simplen Bresenham-Algorithmus
einfach nur zwei Achsen synchronisiert ansteuern und feddisch ohne die ganzen anderen Sachen die Marlin bzw- GRBL drum herum haben.

vgs

1 Like