Forum: Mikrocontroller und Digitale Elektronik Funktionsweise 3d Drucker driverboard software


von Glenn R. (glenn_r)


Lesenswert?

Wie funktioniert die software von so einem Driverboard für 3d Drucker?
Also wie schafft sie's die 4 Stepper zu koordinieren?

Ich versuch mich gerade an so einer Software und nutze für die Synchro 
der Stepper das kleinste gemeinsame Vielfache. Also kgV aus allen 
benötigten Steps pro Stepper ausrechnen, und dann eine for schleife mit 
dem Wert.
immer wenn ein sich die for schleifen varible durch das Ergebnis aus dem 
kgV und dem wert eines Steppers ohne Rest teilen lässt, mache ein 
schritt mit dem Stepper.

Nur leider wenn die zahlen sehr unterschiedlich sind, kommen beim kgV 
sehr sehr hohe Werte heraus. Das ist unpraktisch, weil der Prozessor 
dann bis zu 50 Billionen mal durch die for Schleife muss und dadurch die 
Zeit sehr stark verzögert wird. > dann stimmt auch die feedrate wieder 
nicht.

Also meine Frage: wie macht so ein Driverboard das?

von Karl H. (kbuchegg)


Lesenswert?

?

Wieso 4 Stepper Motoren.

Wie ist das Prinzip deines Druckers? Die meisten funktionieren doch wie 
ein Plotter oder eine 2D-CNC Fräse, wenn ich das richtig sehe.

von Glenn R. (glenn_r)


Lesenswert?

Karl Heinz schrieb:
> ?
>
> Wieso 4 Stepper Motoren.
>
> Wie ist das Prinzip deines Druckers? Die meisten funktionieren doch wie
> ein Plotter oder eine 2D-CNC Fräse, wenn ich das richtig sehe.

Tun sie auch, aber sie haben ein X Motor, ein Y Motor, ein Z Motor und 
einen der den Vorschub des Filaments regelt. Also 4 Stepper..

Und die müssen alle simultan laufen.

von Karl H. (kbuchegg)


Lesenswert?

Glenn Rathke schrieb:

> Und die müssen alle simultan laufen.

Ja.
Aber in dem Sinne koordiniert müssen nur der X und der Y Motor laufen 
und da nimmt man zb einen Bresenham her um das zu erreichen.

Der Filamentvorschub richt sich dann nach den tatsächlich durchgeführten 
Schritten, die beim Bresenham als Abfallprodukt anfallen. Da gibt es 
beim Bresenham ja nicht so viele Möglichkeiten. Entweder es erfolgt nur 
1 Schritt in eine der beiden Achsen, oder es erfolgen simultan jeweils 
in beiden Achsen gleichzeitig. Je nachdem ist dann der vom Kopf 
zurückgelegte Weg einmal 1*Weg_pro_Schritt bzw. 1.44*Weg_pro Schritt. 
Summiert man das, müsste das dann eigentlich den Weg des gesamten Kopfes 
ergeben, bzw. man baut dann in den Bresenham einen zusätzlichen 
entsprechenden Vorschub für das Filament ein.

Der Z-Motor (der den Kopf hebt oder senkt?) ist davon ja sowieso 
losgelöst, spielt da also überhaupt nicht mit und wird völlig getrennt 
angesteuert.

von eingast (Gast)


Lesenswert?

Reprap ist doch alles open source. Schaus dir einfach an wie die das 
machen!

von Glenn R. (glenn_r)


Lesenswert?

Bresenham Algorithmus, hab ich schonmal was von gehört. Ich schau mir 
den mal an, mal sehen wie man das in python umsetzt und auf den druck 
bezieht.

@eingast(Gast):
wenn du mal ein Link von einem Schalplan von nem Board und die 
dazugehörige Firmware postest wäre ich sehr dankbar, denn so beim 
googlen find ich nichts.

von Jojo S. (Gast)


Lesenswert?

http://smoothieware.org/
ist ein Projekt mit Firmware für verschiedene Cortex-M3 und ein komplett 
Board gibt es mittlerweile auch dazu. Alles recht gut dokumentiert und 
erweiterbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.