Jump to content

Correlation of layer time & nozzle temp


jonnybischof

Recommended Posts

Posted · Correlation of layer time & nozzle temp

I've had problems finding the optimal printing temperature for some parts.

Namely, while I have large-area layers (equals big layer time), I get the best results using quite high temperatures. If I lower the temperature too much, I get layer adhesion problems and very bad overhang results (the kind of overhang that gets printed perfectly when at the right temperature).

But with small-area layers it is (of course :( ) exatly the other way round: High temperature leads to melted layers and ugly results.

So, I wonder if it's possible to create a function that correlates layer time and nozzle temperature. This is not so easy because one has to include the time that the heater needs to adjust to a new temperature in the calculation, but it should be doable.

A typical example is printing a pyramid-shaped object (in my particular case: I like the customizable cube gears from thingiverse, but always get molten tops)

I'm going to try if I can get a satisfactory result with the "tweakAtZ" plugin, but it would be nice to have that feature automated...

 

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    This is begging for a plugin. The plugin could for example have one temp at the bottom and another temperature at the top and you could have the plugin linearly interpolate in between. I nominate Jonny! :)

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    Nominate for a prize or for work? :p

    I tried tweakAtZ, but it simply didn't work.... No temperature change at all. When I noticed it, I changed the temperature manually but the "hard" shift from 220°C to 190°C led to a bad color shift in my beautiful blue faberdashery filament :(

    Gonna post some pictures when I have time, but now it's time for a work day first...

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    I work with TweakAtZ a lot. You'll really need to give the precise layer height where the change is needed, including the bottom layer. So for example if your first layer is 0.30 and all the rest is 0.15 and you want a change at the 5th layer, you'll need to set the tweak at 0.90. You can do really cool stuff with TweakAtZ, I've added a heated bed and flow control parameter.

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    I work with TweakAtZ a lot. You'll really need to give the precise layer height where the change is needed, including the bottom layer. So for example if your first layer is 0.30 and all the rest is 0.15 and you want a change at the 5th layer, you'll need to set the tweak at 0.90. You can do really cool stuff with TweakAtZ, I've added a heated bed and flow control parameter.

     

    Well that didn't work...

    I want to print the first layer with 220°C (so that's what I put as the printing temp in the Cura settings), but then lower to 200°C. My initial layer thickness is 0.15mm, layer height 0.1mm.

    So I put in a tweakAtZ instance with:

    Z height to tweak at: 0.15

    New extruder 1 Temp: 200

    But the printer didn't change the temp.

    /edit:

    Could it be that I have to use 0.25 which is the Z height after the first layer?

    /edit2:

    Didn't do it before, but right now I calculated the numbers you used in your example. Does that mean that I also have to ignore the height of the first layer? I noticed Cura ignores that layer which is really (not) nice if you have parts with tight Z tolerances...

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    The actual first layer is at 0.15 and you cannot tweak that. But if you've used 0.25 as the layer to change, it should use that new value.

    So in Cura set 220 and @ 0.25 TweakAtZ should be able to change temp to 200 degrees.

    You don't need to try print it every time. You can also save the GCODE and check with a editor.

    Here is a little part from a print:

     

    ;LAYER:0

    M107

    G0 F2340 X64.74 Y42.96 Z0.18

    ;TYPE:SKIRT

    G1 F2400 E0.00000

    G1 F1140 X65.35 Y42.02 E0.01340

    G1 X67.21 Y39.69 E0.04905

    G1 X68.02 Y38.85 E0.06294

    .

    .

    .

    ;LAYER:1

    M106 S63

    ; Plugin: start TweakAtZ

    M220 S100.000000

    M104 S210.000000 T0

    M190 S74.000000 T2

    M221 S100.000000

    ; Plugin: end TweakAtZ

    G0 F9000 X111.23 Y143.23 Z0.27

    ;TYPE:WALL-INNER

    G1 F1980 X109.61 Y141.39 E47.98308

     

    Note that all actions in GCODE from Cura is commented. Which is very nice. I'm using 0.18 as first layer, and 0.09 for the rest. Before Z0.27, TweakAtZ puts in new values. M220 for speed, M104 for nozzle 1 temp, M190 for my heated bed, M221 for flow. The cool thing is I've put flow in Cura to 110, but starting from the second layer (so in fact 0.27) it sets flow back to 100.

     

    To answer your question: yes, you do need to count in the first layer too, else it won't work.

     

    Just search for text 'TweakAtZ' and you'll know if it worked. If not, search for 'LAYER:1' and check out the Z value after that, in your case it should be 0.25. But perhaps you're printing a raft and you'll need to take that one into account too.

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    And by the way, I just remembered. I think the current TweakAtZ doesn't work out of the box. Check out the comments in this post: http://wiki.ultimaker.com/CuraPlugin:_Bedtempatz

    Compare with PauseAtZ and there are some differences. Update those lines and it should work. If not, I can try to post my TweakAtZ contents.

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    Yes, normally these plugins trigger and insert their code right before the move 'to' whatever height you specify in the plugin tab. So with 0.15 first layer, and 0.1 for the next layer, you need to specify a height of 0.15+0.1 = 0.25 if you want to do something right before the second layer starts.

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    Many of the old plugins that worked fine for Cura 13.04 and older broke when Cura 13.05 came out. This is because Cura now uses G0 for it's move code when changing height but the older cura used G1 for the move command (they do the same thing in the UM but other printers different).

    So you need newer versions of all the plugins. For example this one works great:

    https://github.com/Dim3nsioneer/Cura-Plugins/blob/master/TweakAtZ.3.0.py

     

    That one even now takes care of if you are printing many objects in the same build plate (but one at a time). It resets and does the same tweakAtZ on *every* print - not just the first one.

     

  • Link to post
    Share on other sites

    Posted · Correlation of layer time & nozzle temp

    Thanks for the help & clarification!

    I'll try version 3.0 with the next print.

    I always thought that the "Layer:x" comments were done by hand if people wanted to show some code in the forums :)

    Never took a look at the code myself, seems like it's about time for that..

    About the "change temp smoothly over time" feature:

    Next time I have a difficult print, I'll try making that feature by hand and see if it works at all (usually temperature fluctuates a little when it's changed...). I'll report back when I have more news, but it may take some time as there's several upgrades waiting to be done first.

    /edit:

    Well, TeakAtZ3.0 doesn't appear in the plugins list when I put it into the folder...

     

  • 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...