Nonlinear extrusion tweaking



  • Hi,
    i want to try to perfect calibrate the extruder so now i want to implement the nonlinear extrusion.
    This is the code i want to use, based from dc42 code:

    G28
    G1 X50 Y0 Z130 F3000
    M83 ;Set extruder to relative mode
    G1 E5 F600 ;Prime extruder
    M400 ;Wait for current moves to finish
    M291 S3 R"Extrusion test" P"Press OK to start test"
    
    G1 X50 E50 F60
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 1mm/sec extrusion, then press OK"
    
    G1 X0 E50 F120
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 2mm/sec extrusion, then press OK"
    
    G1 X50 E50 F180
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 3mm/sec extrusion, then press OK"
    
    G1 X0 E50 F240
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 4mm/sec extrusion, then press OK"
    
    G1 X50 E50 F300
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 5mm/sec extrusion, then press OK"
    
    G1 X0 E50 F360
    M400
    M291 S3 R"Measure extrusion" P"Measure filament taken at 6mm/sec extrusion, then press OK"
    
    G28
    

    Is there a real needed of the X movement "G1 X50.." & "G1 X0.." or it is useless and can be removed?

    In the excel file from here: https://forum.duet3d.com/topic/6015/guide-for-finding-the-values-for-m592-non-linear-extrusion/2
    the step/mm required are the fullstpep of the extruder?
    i can use this 418.5 from my config.g?

    M350 X16 Y16 Z16 E16 I1             		; Set 16x microstepping with interpolation
    M92 X80 Y80 Z800 E418.5       				; Set axis steps/mm.
    

    Last question, i've found another excel file
    https://forum.duet3d.com/topic/5588/non-linear-extrusion/22
    but not understanding how to use the "1st Added" "2nd Added"..."6th Added"?
    i've always only to put the step/mm, the desired extruded lenght and the effective extruded lenght at the different speed?

    Thanks in advance

    Printer: Corexy
    Firmware: 2.02
    Duet 2 wifi



  • @lakko said in Nonlinear extrusion tweaking:

    Is there a real needed of the X movement "G1 X50.." & "G1 X0.." or it is useless and can be removed?

    Yes the print head needs to be doing a coordinated move during extrusion.



  • Please report back with your tuning findings. I was never quite able to get it to behave.



  • @lakko the 1st added, etc spreadsheet is a recursive spreadsheet that takes into account (6 times IIRC) the fact that the computed amount to add doesn't really get added fully since that amount will also be less than directed due to non linear extrusion of it and sums up all the amounts. That part will fill itself in.


  • administrators

    @lakko said in Nonlinear extrusion tweaking:

    Is there a real needed of the X movement "G1 X50.." & "G1 X0.." or it is useless and can be removed?

    It is needed. Nonlinear extrusion is not applied to extruding moves with no XY movement, because those are assumed to be filament loading or re-prime moves.



  • Hi,
    i've finally had time for the non linear extrusion test, these are my result...if i have understand all, this is my M592:
    M592 D0 A-0.01096 B0.00591 L0.021

    0_1554812438003_3ad173f8-edf2-48f3-afc0-5dd19a0dcd91-image.png

    @alexander-mundy
    The part with "Step Resul" is the extruder step/mm if i don't want to use the non linear extrusion?



  • @lakko The step results are based on the average of the extruded amounts above it and if used will make the average equal to 100%. Looking at your results you will get a little overextrusion at slower speeds and a little under at higher speeds if you use those steps. Otherwise it appears you will get underextrusion throughout. However the amounts either way are pretty small and probably won't be noticable. Am working on a drop dead next week electronic project hardware and software for race car timing so it might be awhile for further correspondence.



  • @lakko said in Nonlinear extrusion tweaking:

    M592 D0 A-0.01096 B0.00591 L0.021

    based on the results is the M592 correct?



  • Question about NLE: shouldn't the tests be performed with the extruder nozzle at a typical print layer thickness above the bed? I think that would affect the pressure in the hot-end and the resulting extrusion errors.

    I ran a test using the OP's gcode at the top of this thread and found about a 3 mm variation in the amount of plastic extruded. I added the M592 statement to my config.g file with the coefficients calculated by the spreadsheet and then reran the test and I still see about 3 mm variation in the amount of filament extruded.



  • @lakko I went back and looked. The extruded amounts in the lower cells in column H are to be entered based on the extruded amounts after applying non linear extrusion. It is only there to see how far off the results are and to give me a compensation in steps that will get me close to an average of 100% since there isn't a "C" (offset) value that can be entered. Yes, the formula looks correct based on the data entered. Give it a go and run the test again then enter those values in column H.


Log in to reply