Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Radds 1.5 und 3Z-Achsen Motoren

geschrieben von Wonga 
Re: Radds 1.5 und 3Z-Achsen Motoren
29. July 2015 10:12
Hallöchen,

"wir" arbeiten auch daran in unserem Drucker ein mechanisches ABL über 3 Z-Stepper zu implementieren und kommen bald in die Phase das ausgiebig zu testen und den Code dafür zu optimieren.

Aktuell haben wir dafür eine komplett eigene Platine (noch mit 8-bit Atmel) mit 7 separaten Steppertreibern erstellt und können somit auch alle Motoren separat steuern.
Plan ist es, wie hier auch erwähnt wurde, im Normal-Betrieb alle Z-Stepper parallel laufen zu lassen und nur anfangs eine ABL-Routine laufen zu lassen, bei der die Motoren einzeln justiert werden.

Als Codebasis haben wir (leider) noch auf Repetier 0.91 gesetzt, wodurch die Migration etwas schwieriger wird, aber die Grundfunktionalität und Z-Ansteuerung ist bereits drin.
Veröffentlichen mag ich den Code aber vorerst noch nicht, da er noch nicht komplett funktioniert und aktuell unsauber ist (über sehr viele Stellen kleine Modifikationen verteilt).


Quote
vinmicgra
Stand der Dinge:
Firmwaretechnisch sehe ich keine Hürden, Repetier hat in weiser Voraussicht das Grundgerüst dafür schon vor längerer Zeit implementiert.

Was meinst du mit dem Grundgerüst?
Zumindest mit 0.91 musste ich noch an vielen Stellen Modifikationen vornehmen, um den 3er Betrieb zu ermöglichen.
Ich hoffe ich habe da nichts offensichtliches übersehen und mir zuviel arbeit gemacht?
Re: Radds 1.5 und 3Z-Achsen Motoren
29. July 2015 10:32
Quote
Wurstnase
Wäre es nicht ggf. besser nur ein Enable und ein Dir für alle Treiber zu kombinieren und nur Step einzeln auszuführen? Normal laufen ja alle Motoren auch beim Leveln in die gleiche Richtung. Nur die Schritte sind unterschiedlich. Einzelne Motoren auszuschalten, gerade beim Bett, macht ja auch nicht so viel Sinn.

Das könnte evtl. geschickt sein, da man so vermutlich nochmal einen Pin spart.

Im "Normalbetrieb" sind einfach alle drei Enable aktiviert. Alle Motoren fahren in die gleiche Richtung und mit der gleichen Steps. Das Bett bewegt sich nach oben oder nach unten, je nachdem was gerade gebraucht wird.

Beim "Leveling" gibt es zwei Möglichkeiten zu prüfen ob das Bett kurz vor der Düse ist. Einmal mit einem kapazitiven oder induktiven Sensor, der schaltet, kurz bevor der Sensor das Druckbett berührt. Oder diese FSR-Sensoren, die auf Druck reagieren. Diese werden unter den Aufhängungen des Druckbetts montiert. Wenn nun die Düse leicht auf das Druckbett drückt, dann lösen diese Sensoren aus. Das automatische Nivellieren des Druckbett funktioniert nun wie folgt:

Der Druckkopf bzw. der ABL-Sensor wird in die Nähe des ersten Motors der Z-Achse gefahren. Nun wird das Druckbett solange hochgefahren (alle drei Motoren gleichzeitig an, also auch alle drei Enable oder alle drei Step), bis der Sensor auslöst. Das ist unser "Nullpunkt". Das Bett wird um 5 Millimeter runtergefahren (die genaue Größe müsste man mal ausprobieren von wegen Geschwindigkeit). Der Sensor wird zum nächsten Motor bewegt. Das Bett wird nun 5 Millimeter hochgefahren. Dann gibt es zwei Möglichkeiten:

1. Löst der Sensor aus, so wird dieser eine Motor (also nur diese eine Enable ist an oder nur ein Step) solange runtergefahren, bis der Sensor ausgeht, dann wieder soweit zurück, daß er auslöst. Damit ist diese Ecke des Druckbetts auf der gleichen Höhe wie die erste Ecke.
2. Löst der Sensor nicht aus, so wird dieser eine Motor solange hochgefahren (ebenfalls nur ein Enable an oder ein Step), bis der Sensor auslöst. Damit ist diese Ecke des Druckbetts auf der gleichen Höhe wie die erste Ecke.

Druckbett wieder 5mm runterfahren. Nun wird der Sensor zum letzten Motor bewegt und das gleiche Prozedere wie beim vorherigen Motor wird nochmal ausgeführt. Damit sind nun alle drei Ecken des Druckbetts auf der gleichen Höhe. Evtl. kann man nun nochmal die erste Ecke mit der gleichen Prozedur testen und einstellen.

Bei der Lösung mit Enable benötigt man einen Pin für Step, einen für Dir und drei für Enable. Insgesamt also fünf.
Bei der Lösung mit Step benötigt man drei Pins für Step, einen für Dir und für Enable keinen. Insgesamt also vier.
Re: Radds 1.5 und 3Z-Achsen Motoren
29. July 2015 11:55
Ich würde schon einen für Enable nehmen. Je nach Stepper muss man den ja ggf. invertieren.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Radds 1.5 und 3Z-Achsen Motoren
29. July 2015 12:40
Aber das könnte man doch per Jumper machen, oder wird der Enable jetzt auch geschaltet? Im Schaltplan sah es so aus, als wäre der nicht mit der CPU verbunden. Oder meinst du, falls man unterschiedliche Stepper-Typen an dem Adapter hat?

1-mal bearbeitet. Zuletzt am 29.07.15 12:40.
Re: Radds 1.5 und 3Z-Achsen Motoren
29. July 2015 14:16
Hey Jungs, ich versuche Euch gerade zu folgen aber scheitere schon an der Grundfrage, warum man sich nun eine Schaltung zum Pinsparen überlegt.
Ich hab mir mal einen Schaltplan von RADDS angeschaut und für mich sieht das aus, als ob alle Pins zum Steuern der 6 Treiber auf jeweils eigene Pins am Arduino Due gehen.
6 Schrittmotoren brauch ich und die kann ich frei steuern. Passt.
Oder geht es Euch darum, noch für zusätzliche Extruder was freizuhalten und daher den einen Z-Treiber für 3 Motoren aufzubohren?

Nur zum Verständnis.
Schon mal Danke
Andreas

1-mal bearbeitet. Zuletzt am 29.07.15 14:18.


Einen Sparkcube 1.1XL für größere Objekte, einen Qidi Tech Q1 Pro, einen Trinus3D im Gehäuse und einen Tantillus R im Bau.
Sparkcube: Komplett auf 24V - DDP 8mm + 1,5mm Carbonplatte - Octopus max EZ - BTT Pi2 - EZ2209 - Nema 17/1,7A 0,9 Grad - Eddy USB - Filamentsensor - BIQU H2 V2S REVO Extruder - Klipper/Mainsail - HDMI 7 V1.2 Touchscreen - Simplify3D
Re: Radds 1.5 und 3Z-Achsen Motoren
09. August 2015 09:15
Kann man eigentlich die z Achse auch nachträglich noch in arduino also haendisch Spiegeln oder muss es schon im configurstor gemacht werden! Habe vincents Firmware runtergelaufen und finde keine Zeile mit dem mirroring der z treiber? Oder hat evtl jemand eine funktionierende sparkcube xl Firmware die ich probeweiße probieren könnte? Bitte helft mir ich flipp bald aus :-)
Re: Radds 1.5 und 3Z-Achsen Motoren
09. August 2015 09:23
Moin moin aus HU.
Wenn Du einen gepiegelten Motor brauchst, schließe ihn doch einfach andersrum an.


Liebe Grüße aus Kaltenkirchen.
Frithjof
Meine Seite
[www.facebook.com]
Re: Radds 1.5 und 3Z-Achsen Motoren
09. August 2015 09:24
ne geht ja darum dass der motortreiber auf einen anderen Treiber gespiegelt wird, so dass man 3 Motoren als z-achse hernimmt
Re: Radds 1.5 und 3Z-Achsen Motoren
09. August 2015 17:13
Hast du den zweiten Treiber + Motor auch in "E3" auf der Platine gesteckt?

configuration.h:
#define FEATURE_TWO_ZSTEPPER 1
#define Z2_STEP_PIN   ORIG_E2_STEP_PIN
#define Z2_DIR_PIN    ORIG_E2_DIR_PIN
#define Z2_ENABLE_PIN E2_ENABLE_PIN


vincent.


########################
[the-sparklab.de]
OS, 3D Drucker, CNC,...
########################
Re: Radds 1.5 und 3Z-Achsen Motoren
10. August 2015 12:08
Jup habe ich! Nun hab ich 2 Motoren am extrudermotor hhängen und diese laufen! Aber der dritte, der an der normalen z hängt geht nicht! Hab schon Motoren getauscht Treiber getauscht und die funktionieren alle nur am z Steckplatz geht nichts
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen