Pressure Advance: Discussion for Future Development
-
-
I'm sorry, I don't have time to look at improving PA until I've implemented input shaping. But I've bookmarked this thread so that I can return to it. Pressure advance smoothing is something I was already thinking about.
-
while we're at it, is there any impact using DAA (Dynamic Acceleration Adjustment: M593 with F != 0) during PA calibration process? DAA is related to acceleration where PA is jerk related, technically one shouldn't alter the other result but... heavy doubt
or is it better to turnOFF DAA, calibrate PA, then calibrate/turnON DAA ?
-
DAA might reduce acceleration, so it may affect PA - but only because in reality, PA should not be applied linearly. I think I would be inclined to calibrate DAA first followed by PA, however I haven't tested doing it both ways so I may be wrong.
-
Forgive the reference, but that's the way Klipper does it. First you do input shaping and only then PA.
Speaking of input shaping - since you are looking at it - are you also considering the option of using an accelerometer (like adxl345) to get the measurements?
-
@pkos said in Pressure Advance: Discussion for Future Development:
Speaking of input shaping - since you are looking at it - are you also considering the option of using an accelerometer (like adxl345) to get the measurements?
Yes.
-
Awesome!
-
I run a small experiment, printing calicat at 50mm/s with different PA values while watching the retraction graph on the stepper analyzer.
(my printer uses esteps=830 with 1/16 microsteps, such that 10 full steps on the vertical axis represent (10 * 16) / 830 = 0.193mm).
With PA = 0 it looks very very clean with normal 0.2mm retractions as set in my slicer (using BMG direct):
Increasing the PA to 0.08 (my normal, BMG, direct) introduced small intermediate retractions, I presume because of the PA:
Increasing to PA=0.2 made it really loud and wilde:
With very rapid shot direction changes such as these ones:
-
I generally make parts where the seam ends up on a radiused corner. And something i've noticed is that the seam will look really good for one sized radius and bad for another of a substantially larger or smaller radius.
I assume this is because the PA value was tuned for angular acceleration similar to that encountered while traversing the corner radius.
Can anything be done to take X & Y acceleration and jerk into account?
-
-
@dc42 said in Pressure Advance: Discussion for Future Development:
I'm sorry, I don't have time to look at improving PA until I've implemented input shaping. But I've bookmarked this thread so that I can return to it. Pressure advance smoothing is something I was already thinking about.
Thanks for the reply. It's good to know that it is on the radar.
I'm wondering if one of my suggestions: not allowing PA to change the print head acceleration, might be developmentally cheap enough to try in a beta release?
I still believe that when PA reduces print head acceleration, it could be adding to the issue of mismatched extrusion rate.
-
@zapta said in Pressure Advance: Discussion for Future Development:
I run a small experiment, printing calicat at 50mm/s with different PA values while watching the retraction graph on the stepper analyzer.
Is this the stepper analyzer you are using? https://forum.duet3d.com/topic/21312/low-cost-public-domain-stepper-analyzer-season-2
I'm curious if I could at least get a detailed step output from the Duet Maestro to track the extruder dur PA moves.
-
I did a test cube, running PA only on perimeters, to see if in the simplest case I could improve sharp corner geometry and/or the seam.
Print parameters:
- 0.4mm nozzle
- 0.15mm layers
- 50mm/s perimeters
- PA varied by layer from 0.0 to 1.5
- Max Accel (mm/sec^2): X: 4000.0, Y: 4000.0, Z: 400.0, E: 10000.0
- Max jerk (mm/sec): X: 16.0, Y: 16.0, Z: 4.0, E: 5.0
- Print accel (perimeters): 1200 mm/s^2
In these photos, hopefully you can see what I can in person. Everything looks best with PA nearest zero. There is a corner bulge, but it is crisp and only affects the area very near the corner. Once PA values rise, the geometry deviation grows away from the corner (especially in the decel region), without actually reducing the corner bulge. The 22mm cube measures 22.10mm near the bottom (low PA), and measures 22.26mm at higher PA values.
I'm a little baffled at how PA seems to provide no benefit in this test. But, IMO, the corner deviation growing away from the corner has to do with the print head accel being reduced at higher PA values, and lends some credibility to my suggestion of allowing an option to run the print head "untethered" by PA.
Thoughts?
-
@CCS86 said in Pressure Advance: Discussion for Future Development:
I'm a little baffled at how PA seems to provide no benefit in this test. But, IMO, the corner deviation growing away from the corner has to do with the print head accel being reduced at higher PA values, and lends some credibility to my suggestion of allowing an option to run the print head "untethered" by PA.
Thoughts?
Generally you want to do pa tests with only 1 or 2 perimeters and no infill. Also you want the seem in the middle of a side if your slicer will allow that. If you slicer won't allow for it, print a cylinder of a large enough diameter that the print head hits the requested print speed.
Imo, based on the last picture you have some serious ringing you need to address before you worry about PA.
for reference this is what i have on my railcore running a direct drive E3d V6.
M201 X4500 Y4500 Z250 E1500 ; Accelerations (mm/s^2) M203 X24000 Y24000 Z1500 E3600 ; Maximum speeds (mm/min) M566 X1500 Y1500 Z120 E1500 ; Maximum jerk speeds mm/minute
Important settings from my various ideamaker pla profiles. 0.4mm nozzle, 0.4mm extrusion width, 0.2mm layer height
Vel Accel Jerk PA flowrate Temperature 50 600 1500 0.11 86.2 200 50 480 1200 0.125 86.2 200 50 360 900 0.14 86.2 200 50 240 600 0.155 86.2 200 50 120 300 0.17 86.2 200 100 3600 1500 0.08 85.8 205 100 2880 1200 0.08 85.8 205 100 2160 900 0.08 85.8 205 100 1440 600 0.08 85.8 205 100 720 300 0.08 85.8 205 150 4500 1500 0.08 86.0 220 150 3600 1200 0.08 86.0 220 150 2700 900 0.08 86.0 220 150 1800 600 0.08 86.0 220 150 900 300 0.08 86.0 220
-
The ringing is a separate thing altogether. I had bumped my XY jerk up a good bit for this PA test to mitigate some of the need for PA. The photos exaggerate the ringing a bit too.
How are your flow rates the same for velocities ranging from 50 - 150 mm/s, with fixed layer height and extrusion width?
-
@CCS86 said in Pressure Advance: Discussion for Future Development:
How are your flow rates the same for velocities ranging from 50 - 150 mm/s, with fixed layer height and extrusion width?
See the temperature column.
-
This is getting off topic, but temperature has nothing to do with flow rate ( [layer height] x [extrusion width] x [velocity] ).
-
@CCS86 said in Pressure Advance: Discussion for Future Development:
This is getting off topic, but temperature has nothing to do with flow rate ( [layer height] x [extrusion width] x [velocity] ).
I think you are confusing volumetric flow rate with the flow rate adjustment parameter. the flow rate adjustment parameter is Ideamakers terminology for what other slicers call Extrusion multiplier. I maybe should have added a % after.
If volumetric flow rate or temperature is changed, you usually need to adjust the flow rate parameter/Extrusion multiplier, to deal with the increased or decreased pressure in the heat affected zone.
-
@CCS86 said in Pressure Advance: Discussion for Future Development:
I'm curious if I could at least get a detailed step output from the Duet Maestro to track the extruder dur PA moves.
It depends what kind of report rate you want. It does measure the stepper position, including micro stepping 100k times a second but it aggregates and displays it.
Looking at the schematic of the Maestro, each driver has a step and direction inputs. If those are actually used (you can try or ask dc42), than you can connect a logic analyzer (you can find them for cheap), record as much as you want and then analyze the recording with some script.
-
Results look the same with XY accel/jerk in a better state of tune. PA=0 for the first 5mm of print, than increasing layer-by-layer from 0 to 1.5: