z axis squashed?



  • Hi all,

    I have been messing around with the printer again. and I have printed a 20mm test cube.

    X and Y are a little off but if I tighten the belts they should be closer to 20mm.

    However, I am loosing approximately 0.5mm every 10mm.

    How would I improve the z-axis? it is an old XYZ DA Vinci and the z-axis is controlled by a lead screw.

    Many Thanks

    Andy



  • Hi,

    Have you tried using this command?

    M579 X1.0 Y1.0 Z1.0 ; scaling (values are determined by measuring test object)

    The values shown are the defaults and result in no scaling. Larger values will increase the size, smaller reduce the size.

    Frederick



  • @Scally123 said in z axis squashed?:

    I am loosing approximately 0.5mm every 10mm

    Can you measure distances accurately enough to see if this is a "steps-per-mm" issue?

    • Move in Z until the extruder touches the build plate
    • Move in Z away from the build plate 200mm
    • Measure the distance from the extruder to the build plate

    If that distance is not RIGHT ON 200mm, I would say you have a Z-axis problem.

    • Missing steps on the Z stepper(s)
    • Incorrect steps-per-mm on the Z axis


  • Hi both thanks for your replies,

    So I centred the nozzle on the print bed and told the bed to move 50mm, 100mm, and 150mm and measured the total distance travelled,

    • when told to move 50mm it moved 49.75
    • when told to move 100mm it moved 99.72
    • when told to move 150mm it moved 149.79

    this seems to me that it only gains 0.5mm every 10mm when printing. I am using Cura 4.5. Do you believe it may be a setting within Cura I've messed up somewhere?

    Thanks for all your help



  • @Scally123 said in z axis squashed?:

    Hi both thanks for your replies,

    So I centred the nozzle on the print bed and told the bed to move 50mm, 100mm, and 150mm and measured the total distance travelled,

    • when told to move 50mm it moved 49.75
    • when told to move 100mm it moved 99.72
    • when told to move 150mm it moved 149.79

    this seems to me that it only gains 0.5mm every 10mm when printing. I am using Cura 4.5. Do you believe it may be a setting within Cura I've messed up somewhere?

    Thanks for all your help

    M579 exists for a reason. Try it and see if it solves your problem.

    Frederick



  • Apologies @fcwilt I am bit unsure on what to do.

    I have entered M579 X Y and Z axis factors are at 1.

    Do I have to change the axis factors for the z-axis prior to printing?

    Thanks for your help



  • @Scally123 said in z axis squashed?:

    Apologies @fcwilt I am bit unsure on what to do.

    I have entered M579 X Y and Z axis factors are at 1.

    Do I have to change the axis factors for the z-axis prior to printing?

    Thanks for your help

    Consider your measurement of a command to move 100mm that only moved 99.72mm.

    You didn't say what axis that was but lets say it was X.

    So 100.00 / 99.72 = 1.003 (rounded up to thee decimal places)

    So you would add a M579 command to your config.g file that looks like this...

    M579 X1.003 Y1.0 Z1.0

    ...and reboot your printer to cause the command to take effect.

    You would determine the values for Y and Z in the same way - command a movement and measure the result.

    Frederick



  • @fcwilt ooooh I think I understand. I'll try that now.

    Sorry for confusing things a little. Just for clarification, the 3 measurements taken were all on the Z-axis when I moved the bed down by 50, 100, and 150mm. I just thought it was odd that when simply moving the bed down it was out by 0.25mm ish no matter how far it went.

    Whereas when I print it was out by approximately 0.5mm when printing a 10mm high object and about 1mm out when printing a 20mm high object as if the discrepancy was increasing with the increase of the printed objects height.

    I'll add the M579 to the Config and print this afternoon.

    Thank you for your help



  • @Scally123 said in z axis squashed?:

    I just thought it was odd that when simply moving the bed down it was out by 0.25mm ish no matter how far it went.

    That is odd. I cannot imagine what could cause that.

    Whereas when I print it was out by approximately 0.5mm when printing a 10mm high object and about 1mm out when printing a 20mm high object as if the discrepancy was increasing with the increase of the printed objects height.

    That is the sort of problem M579 can help with.


    Frederick



  • There is no difference between you typing in G1 x0 y0 z100 and a file with a G1 x0 y0 z100 while printing.

    There's still something wrong.

    Personally, I would figure out what the problem is rather than patch over it with an M579.

    ESPECIALLY on a leadscrew Z-axis printer where there should be no need for a patch like this.

    Can you post the GCODE from a simple 1-wall box for us to take a look at?



  • ; Configuration file for Duet Maestro (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Sun Jun 16 2019 12:10:53 GMT+0100 (British Summer Time)

    ;AXIS SCALING
    M579 X1.0 Y1.0 Z1.055

    ; General preferences
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 P"" ; Set machine name
    M551 P"" ; Set password
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Drives
    M569 P0 S1 ; Physical drive 0 goes forwards
    M569 P1 S0 ; Physical drive 1 goes forwards
    M569 P2 S1 ; Physical drive 2 goes forwards z
    M569 P3 S0 ; Physical drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80.00 Y80.00 Z2560.00 E92.60 ; Set steps per mm
    M566 X600.00 Y600.00 Z12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00 Z180.00 E1500.00 ; Set maximum speeds (mm/min)
    M201 X3000.00 Y3000.00 Z100.00 E10000.00 ; Set accelerations (mm/s^2)
    M906 X950.00 Y950.00 Z950.00 E950.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X200 Y200 Z190 S0 ; Set axis maxima

    ; Endstops
    M574 X1 Y1 Z1 S1 ; Set active low and disabled endstops

    ; Z-Probe
    M558 P5 H5 F0 T6000 ; Set Z probe type to switch and the dive height + speeds
    G31 P600 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height
    M557 X15:185 Y15:185 S20 ; Define mesh grid

    ; Heaters
    M307 H0 B0 S1.00 ; Disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 X500 R2200 ; Configure PT1000 for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 X501 R2200 ; Configure PT1000 for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S1 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    ; Tools
    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

    ; Automatic power saving
    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss

    ; Custom settings are not configured



  • I've just printed a 20mm test cube after adding M579 but it is 21mm high now.



  • @Scally123 said in z axis squashed?:

    I've just printed a 20mm test cube after adding M579 but it is 21mm high now.

    Where did you get that Z1.055 value?

    The data that I used in my example came from your Z axis but for my example I assumed X.

    The math is the same in either case and the value I came up with was 1.003 which is a good deal smaller than 1.055.

    Using the size of the cube at 21 we can adjust the value.

    1.055 * (20 / 21) = 1.004 which is close to the 1.003 that I came up with.

    So just keep adjusting the value until you get the desired results.

    Frederick


Log in to reply