Jump to content

15.02.1: Dwell During Z Hop?


lars86

Recommended Posts

Posted (edited) · 15.02.1: Dwell During Z Hop?

Hi guys,

I'm noticing that enabling Z hop (0.1mm) seems to also introduce a bit of a dwell before and after. Combine with the fact that exterior perimeters are done last, this leaves blemishes on the surface. My Z movement generally seems well tuned and snappy:

Jerk: 0.1

Vmax: 30

A: 200

Here is slow motion of what I'm seeing:

Is this a motion tuning issue, or is it possible that different Gcode strategy could improve this?

Edited by Guest
  • Link to post
    Share on other sites

    Posted · 15.02.1: Dwell During Z Hop?

    Z Hop only works with retraction turned on. It is that retraction and advance of filament causing the delay. Combining the hop and retraction lines in the G Code should reduce the dwell.

  • Link to post
    Share on other sites

    Posted · 15.02.1: Dwell During Z Hop?

    Here is a segment of code during a layer change:

     

    ;TYPE:WALL-OUTERG1 F1800 X59.382 Y50.881 E364.96438G1 X58.957 Y50.811 E364.96977G1 X58.802 Y50.780 E364.97175G1 X58.802 Y49.623 E364.98622...G1 X61.015 Y51.501 E365.10788G1 X60.622 Y51.295 E365.11343G1 X60.163 Y51.106 E365.11964G0 F12000 X60.441 Y50.148;LAYER:79G1 F2400 E363.61964G1 Z15.900G0 F12000 X52.583 Y52.829 Z16.000;TYPE:FILLG1 Z16.000G1 F2400 E365.11964G1 X51.619 Y53.793 E365.13669G0 F12000 X52.257 Y54.192;TYPE:WALL-INNERG1 F2400 X52.109 Y54.699 E365.14330G1 X52.105 Y54.722 E365.14359G1 X51.135 Y54.722 E365.155737

     

    I'm curious why the initial head lift is a feed move executed at the last deposition feed rate. Maybe to make sure a dimple isn't left?

    Here is a same layer, lifted rapid move:

     

    G1 X63.637 Y55.520 E464.05874G1 X63.616 Y55.515 E464.05901G1 X63.456 Y54.755 E464.06872G0 F12000 X64.206 Y54.478G1 F2400 E462.56872G1 Z22.700G0 F12000 X61.311 Y50.839;TYPE:WALL-INNERG1 Z22.600G1 F2400 E464.06872G1 X60.858 Y50.609 E464.07508G1 X60.262 Y50.378 E464.08307G1 X59.785 Y50.245 E464.08927

     

    Can concurrent feed moves for different axes be given on one line, with different feed rates specified? Do feed rates stay modal to each individual axis?

  • Link to post
    Share on other sites

    Posted (edited) · 15.02.1: Dwell During Z Hop?

    There is certainly a difference between the hop at layer change and the hop in your second code block. At layer change, the Z axis is returned to print position at the same time as the X and Y axes, but isn't elsewhere.

    As for the feed rate, I'm not sure why the hop would start slow and end fast. You could try increasing the hop F value and see how it effects your print ;)

    I don't believe there is a way to specify individual axis feed rates in one line of G Code. Any change to the feed rate effects all future moves.

    As a quick test, I tried this in Cura:

     

    G1 F6000G1 X100 Y100G0 X0 Y100G1 F3000 X100 Y100G0 X0 Y100G1 X100 Y100G1 F6000G0 F3000 X0 Y100G1 X100 Y100

     

    * The first two moves happen at F6000, the remainder occur at F3000.

    Edited by Guest
    • Like 1
    Link to post
    Share on other sites

    Posted (edited) · 15.02.1: Dwell During Z Hop?

    I run 4 and 5 axis Okuma mill-turn machines, and they will wait for a line of code to finish before executing the next. So:

    G1 X4

    Z20

    Y3

    C60

    ...is 4 distinct moves. While:

    G1 X4 Z20 Y3 C60

    ...is a simultaneous move of all 4 axes. I'm curious if Marlin behaves this way. It's really the extruder that throws a wrench in it for me. It would make sense to move the extruder's retract/advance move concurrently with the lift/return move, but the feed rates need to be different. I was thinking along these lines, if Marlin could parse independant feed rates on the same line:

     

    G1 X63 Y54 E464G0 F12000 X64 Y54G1 F2400 E462 F1800 Z22.700G0 F12000 X61 Y50;TYPE:WALL-INNERG1 F1800 Z22.600 F2400 E464G1 X60 Y50 E464

     

    Or even like this, if it would accept rapid and feed moves on the same line:

     

    G1 X63 Y54 E464G0 F12000 X64 Y54G1 F2400 E462 G0 Z22.700G0 F12000 X61 Y50;TYPE:WALL-INNERG0 Z22.600 G1 F2400 E464G1 X60 Y50 E464

     

    @Daid, can you shed any light on this?

    Edited by Guest
  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 18 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...