Sagging of the Z - axis
-
Hallo
ich habe ein Drucker mit 2 Z Achsen jedes mal wenn ich den
Strom ausschalte sackt mir die nach unten ab noch bevor die Bremsen aktiveren.
Das Absacken beträgt nur an einer Seite um 3 mm das erzeug
aber bei mein Kartesischen Drucker mit X/Y Core zu massiven Problemen.Es würde mir schon helfen wenn ich ein Referenzieren der
Z - Achsen nach dem die Achsen abgesackt sind.
Ich stelle mir das so vor das die eine Z - Achse den Taster berührt die andere aber noch nicht.
Diese dann stehen bleit und die Z - Achse die den Taster noch nicht berührt hat bis zum Schalter weiter fährt so das die beiden Z - Achsen wieder auf einer graden ebene sind.Ist so ein Vorgehensweise (Referenzierung) möglich?
Kennt jemand eine solche Anweisung?
Hello
I have a printer with 2 Z axles every time I switch the
power off, it sags downwards even before the brakes are activated.
The sagging is only on one side by 3 mm that created
but with my cartesian printer with X/Y core to massive problems.It would already help me if I could reference the
Z - axes after the axes are sagged.
I imagine that the one Z - axis touches the button but the other not yet.
This then stops and the Z-axis that has not yet touched the button continues to the switch so that the two Z-axes are again on a level plane.Is such a procedure (referencing) possible?
Does anyone know such an instruction?
Translated with www.DeepL.com/Translator (free version)
-
@UserXY can you give a bit more info? what boards are you running. post your config
do you use a z probe to level? -
Ich benutze das Duet Mainboard 6HC
Version 1.01a.
Die Firmware Version ist 3.5.4 beta 3Der Störfall tritt nur auf wenn ich den Strom aus schalte.
Sonst nicht.
Genauso wenn ich mit M84 den Leerlauf beende (Motorhalte Strom).Das Bett Nivelliere ich mit einem BL - Touch.
Zusätzlich habe ich oben noch Endschalter die das MAX bestimmen.Meine Gedanke ist es auf die Endschalter oben zu fahren und dann eine gleich Stellung zu machen.
Ist dies Möglich?I use the Duet Mainboard 6HC
version 1.01a.
The firmware version is 3.5.4 beta 3.The glitch only occurs when I turn off the power.
Otherwise not.
The same when I end the idle with M84 (motor holding current).I level the bed with a BL - Touch.
In addition, I have limit switches on top that determine the MAX.My thought is to drive on the limit switches above and then make an equal position.
Is this possible? -
Hier noch meine Config datei.
; Configuration file for Duet 3 MB 6HC (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.15 on Fri Mar 03 2023 12:36:13 GMT+0100 (Mitteleuropäische Normalzeit) ; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Schneider 4D Drucker" ; set printer name M669 K1 ; select CoreXY mode ; Wait a moment for the CAN expansion boards to start G4 S2 ; Drives M569 P0.0 S0 ;X - Achse ; physical drive 0.0 goes backwards M569 P0.1 S0 ;Y - Achse ; physical drive 0.1 goes backwards M569 P0.2 S0 ;Z - Achse 1 ; physical drive 0.2 goes backwards M569 P0.3 S0 ;Z - Achse 2 ; physical drive 0.3 goes backwards M569 P0.4 S1 ;Flies Spanner 1 ; physical drive 0.4 goes forwards M569 P0.5 S1 ;Flies Spanner 2 ; physical drive 0.5 goes forwards M569 P1.0 S1 ;Flies Spanner 3 ; physical drive 1.0 goes forwards M569 P1.1 S1 ;Flies Spanner 4 ; physical drive 1.1 goes forwards M569 P1.2 S0 ;Kabelzug 1 ; physical drive 1.2 goes forwards M569 P2.0 S0 ;Kabelzug 2 ; physical drive 2.0 goes forwards M569 P2.1 S0 ;Kabelzug 3 ; physical drive 2.1 goes forwards M569 P2.2 S0 ;Kabelzug 4 ; physical drive 2.2 goes forwards M569 P121.0 S0 ; physical drive 121.0 goes forwards M569 P122.0 S0 ; physical drive 122.0 goes forwards M569 P123.0 S0 ; physical drive 123.0 goes forwards M569 P124.0 S1 ; physical drive 124.0 goes forwards M584 X0.0 Y0.1 Z0.2:0.3 A0.4 B0.5 C1.0 D1.1 U1.2 V2.0 W2.1 E121.0:122.0:123.0:124.0 ; set drive mapping M350 X16 Y16 Z16:16 A16 B16 C16 D16 U16 V16 W16 E16:16:16:16 I1 ; configure microstepping with interpolation M92 X55.66 Y55.66 Z640.00:640.00 A190.0 B190.0 C190.0 D190.0 U80.0 V80.0 W80.0 E120.00:120.00:120.00:120.00 ; set steps per mm M566 X6000.00 Y6000.00 Z160.00:160.00 A120.0 B120.0 C120.0 D120.00 U120.0 V120.0 W120.0 E120.0:120.00:120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X9000.00 Y9000.00 Z350.00:350.0 A200.0 B2200.0 C2200.0 D2200.0 U180.0 V180.0 W180.0 E1200.00:1200.00:1200.00:1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z200.00:200.00 A20.00 B20.0 C20.0 D20.00 U20.0 V20.0 W20.0 E250.0:250.00:250.00:250.00 ; set accelerations (mm/s^2) M906 X2300 Y2300 Z2800:2800 A800 B800 C800 D800 U800 V800 W800 E800:800:800:800 I90 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 U0 V0 W0 A0 B0 C0 D0 S1 ; set axis minima M208 X1000 Y1000 Z220 U30 V30 W30 A700 B700 C700 D700 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io1.in+io3.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io2.in M574 Y1 S1 P"io2.in+io4.in" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in M574 Z1 S1 P"2.io2.in" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin io4.in M574 U1 S1 P"1.io4.in" M574 V1 S1 P"1.io5.in" M574 W1 S1 P"2.io0.in" M574 i1 S1 P"2.io1.in" M574 A1 S1 P"io5.in+io6.in" M574 B1 S1 P"io7.in+io8.in" M574 C1 S1 P"1.io0.in+1.io1.in" M574 D1 S1 P"1.io2.in+1.io3.in" ; Z-Probe M950 S18 C"121.io0.out" M558 P9 C"121.io0.in" H10 F200 T6000 ; disable Z probe but set dive height, probe speed and travel speed ;G31 P500 X0 Y0 Z3 M557 X15:200 Y15:195 S20 ; define mesh grid ; Heaters T:1000.0 B:3950.0 C:7.06e-8 R:2200.0 L:127 H:127 ;T:1000.0 B:3950.0 C:7.06e-8 R:2200.0 L:0 H:-17 M308 S0 P"temp1" Y"thermistor" T50000 ;M308 S0 P"temp0" Y"PT1000" T1000 B3950 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R1.1 D300 B0 S1.0 ; enable bang-bang mode for the bed heater and set PWM limit M140 H0 R0 ; map heated bed to heater 0 M143 H0 S100 ; set temperature limit for heater 0 to 100C ;M308 S10 P"temp1" Y"thermistor" T50000 M308 S10 P"temp0" Y"PT1000" T1000 B3950 ; configure sensor 10 as thermistor on pin temp0 M308 S1 P"121.temp0" Y"thermistor" T100000 ; configure sensor 1 as PT1000 on pin 121.temp0 M950 H1 C"121.out0" T1 ; create nozzle heater output on 121.out0 and map it to sensor 1 M307 H1 B0 S1.0 ; enable bang-bang mode for the bed heater and set PWM limit M143 H1 S250 ; set temperature limit for heater 0 to 200C M308 S2 P"122.temp0" Y"thermistor" T100000 M950 H2 C"122.out0" T2 M307 H2 B0 S1.0 M143 H2 S250 M308 S3 P"123.temp0" Y"thermistor" T100000 M950 H3 C"123.out0" T3 M307 H3 B0 S1.0 M143 H3 S250 M308 S4 P"124.temp0" Y"thermistor" T100000 M950 H4 C"124.out0" T4 M307 H4 B0 S1.0 M143 H4 S250 ; Fans M308 S15 Y"mcu-temp" A"MCU" M950 F15 C"!out4" Q500 ;CPU Lüfter ; create fan 0 on pin !out4 and set its frequency M106 P15 S10 T30 H15 C"CPU Lüfter Mainboard" ; set fan 0 value. Thermostatic control is turned off M950 F16 C"2.out3" Q500 ; create fan 1 on pin !2.out3 and set its frequency M106 P16 S1,0 C"Board Lüfter" ; set fan 1 value. Thermostatic control is turned off M950 F1 C"121.out1" Q250 M106 P1 S10 T30 H3 M950 F2 C"122.out1" Q250 M106 P2 S10 T30 H2 M950 F3 C"123.out2" Q500 M106 P3 S10 T30 H1 M950 F4 C"124.out2" Q500 M106 P4 S10 H-1 ;M950 F3 C"123.out1" Q250 ;M106 P3 S100 H-1 ;M950 F4 C"124.out1" Q250 ;M106 P4 S100 H-1 M950 F5 C"121.out2" Q500 M106 P5 S100 H-1 M950 F6 C"122.out2" Q500 M106 P6 S100 H-1 ; Tools ;Werkzeug Nr. 1 M563 P1 D0 H1 F5 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ;Werkzeug Nr.2 M563 P2 D1 H2 F6 G10 P2 X0 Y0 Z0 G10 P2 R0 S0 ;Werkzeug Nr.3 M563 P3 D2 H3 F6 G10 P3 X0 Y0 Z0 G10 P3 R0 S0 ;Werkzeug Nr.4 M563 P4 D3 H4 F5 G10 P4 X0 Y0 Z0 G10 P4 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ;Filament Senoren Tool 1 M591 P3 C"121.io1.in" S1 D0 ; filament monitor connected to E0 endstop ;M591 D0 P3 C"121.io1.in" S1 R70:130 L28.4 E3.0 A0; M591 D0 ; display filament sensor parameters for extruder drive 0 Tool 2 M591 P3 C"122.io1.in" S1 D1 ; filament monitor connected to E1 endstop M591 D1 ; display filament sensor parameters for extruder drive 1 Tool 3 M591 P3 C"123.io1.in" S1 D2 ; filament monitor connected to E2 endstop M591 D2 ; display filament sensor parameters for extruder drive 2 Tool 4 M591 P3 C"124.io1.in" S1 D3 ; filament monitor connected to E4 endstop M591 D3 ; display filament sensor parameters for extruder drive 4 ; Custom settings are not defined ;M950 P11 C"!Out1" ;M42 P11 S0 M569.7 P0.3 C"out1" ;Bremsen Ansteuerung M17 ;Alle Achsen Freigen ohne Referenzfahrt M564 H0 S1 ;Achsen Freigen G4 S1 ;Wartezeit 1 Sekunden G91 G1 Z1 ;Z - Achse 15mm nach oben fahren G92 M564 H1 S1 ;Freigabe zurük nehemen ;Lüfter Einschalten M106 P1 S255 M106 P2 S255 M106 P3 S255 M106 P4 S255 M106 P5 S255 M106 P6 S255 ; Miscellaneous M501 ; load saved parameters from non-volatile memory M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
-
Why is the sagging causing you issues? What is different between the two motors? This is more than likely a mechanical problem. You are talking about touching a button - do you have end limit switches on both motors (which would be odd AFAIK) ? The limit switches are only used during homing and should not have any effect when you switch the printer off.
When you remove power from the motors completely (ie not just reducing the power), you have lost your position. You will always have to re-home. If you have two z axis motors you will need to home both motors which will automatically 'fix' the sagged end. Of course you need to make sure that the moving head (during homing) does not run into the bed. -
@UserXY you could try changing using 3.5beta4 as that allows a delay between enabling the brake and turning the motor off.
you also only seem to have 1 brake port configured. are they both connected to 1 output? -
Guten Morgen zusammen,
ja ich habe ein Ausgang für beide Bremsen zu steuern der Bremsen.
Die Bremsen sind Parallel geschaltet ( mit einem Y - Verteiler ).
Ich habe mich in der Zwischenzeit an den Hersteller Duet gewendet und
die haben mir auch direkt sofort geholfen.
Ja es mussten zwei Schalter für die Z - Achse definiert werden.
ich habe nun zwei Schalter an der Z - Achse verbaut die dann mit der Anweisung
und der Konfiguration das durchhängen der Z - Achse nach dem Homing kompensiert.
hier meine neue Config.g Datei;Endstops M574 Z1 S1 P"2.io5.in+2.io2.in" ;two endstop for high end on Z
Meine Homing Anweisung,
G1 H1 Z9999 F800 ;move up two end switch and G92 Z200 ;make a max limit.
Ist nicht so ganz ideal aber es funktioniert.
Dennoch habe ich immer noch das Problem das die Achse beim Ausschalten
nach unten fällt auch beim M112 und M84 obwohl ich den Bremsen Anschluss
Konfiguriert habe.
Config.gM569.7 P0.3 C"out1" ;Break Connection M17
Geht die Bremse nicht zu.
Ich verstehe den Sinn des Befehls M567.9 nicht wenn man M18 sendet passiert auch nichts.Als würde das Mainboard den Befehlt gar nicht Akzeptieren.
Ich kämpfe der zeit mit dem Problem.
Melde mich wenn ich eine Lösung habe.vielen Dank an euch für euer Unterstützung ihr seit echt cool.
englisch
Good morning all,
yes I have an output for both brakes to control the brakes.
The brakes are connected in parallel ( with a Y - distributor ).
I have turned in the meantime to the manufacturer Duet and
they have helped me also directly immediately.
Yes there had to be defined two switches for the Z - axis.
I have now installed two switches on the Z - axis which then with the instruction
and the configuration compensates the sagging of the Z - axis after homing.
here my new Config.g file;Endstops M574 Z1 S1 P "2.io5.in+2.io2.in" ;two endstop for high end on Z
My homing instruction,
G1 H1 Z9999 F800 ;move up two end switch and G92 Z200 ;make a max limit.
This is not ideal but it works.
However, I still have the problem that the axis falls down when I switch off
down even with the M112 and M84 although I have configured the brake connection
configured.
Config.gM569.7 P0.3 C "out1" ;Break Connection M17
The brake does not close.
I don't understand the sense of the command M567.9 when sending M18 nothing happens.As if the mainboard would not accept the command.
I am struggling with this problem.
I will report when I have a solution.Thanks to all of you for your support you are really cool
-
If you want an alternative solution that works every time, drive all Z axis screws with a single motor and worm gear reducer. The worm gear reducer will stop the bed from moving when you power down without having to mess around in the configuration or having to drive brakes that don't turn on instantly. My 300x300x695 mm corexy printer uses that type of set-up in Z axis without any mesh compensation or autotramming and I haven't touched the tramming in about 2 years. The bed does not move when power is cut. When power is reapplied, it could jump a few um, but since there's only one motor, the bed won't tilt, ever.
This is the motor/worm drive used in my printer. It lifts the bed using two belts, but it could be used with screws, too. I chose pulleys that move the bed 20 um per full step of the motor so I can print in any layer thickness that is a whole number multiple of 20 um.
You could use cheaper motors with high reduction planetary gearboxes, but most of those have odd reduction ratios that will result in ugly whole step movement values. For example... Note, the description says 27:1 reduction, but a closer look at the specs shows the reduction is actually 26.85:1. As Tom Waits once said "The large print giveth, and the small print taketh away".
There are a lot of Chinese motor/planetary gearbox sellers who show only the large print values. I suspect the actual reduction ratios are similarly odd. Odd ratios result in weird whole step movement, which in turn requires weird print layer thickness values, assuming you print in whole number multiples of the full step value. It's not necessarily a problem if you don't mind it, but that sort of thing drives me nuts.
Gear reduction ratio isn't the whole story. You also have to consider the mass being lifted, friction, the detent torque of the motor, and the type of gear reduction. High ratio worm drives usually can't be back-driven (regardless of detent torque) by the masses lifted in 3D printers, which will prevent Z axis movement when power to the motor is cut. Planetary or other types of gear reducers may allow the motor to be turned by the load when power is off, so the Z axis may drop. If you're lifting a light weight X axis in a desktop cartesian printer, almost any type of reducer might work, but if you're lifting a massive bed or XY stage in a larger printer, a worm drive is the safest bet.
-
@UserXY said in Sagging of the Z - axis:
M569.7 P0.3 C "out1" ;Break Connection
Remove the space character between the letter C and the opening double quotation mark, like this:
M569.7 P0.3 C"out1" ;Break Connection