Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    A More Sophisticated Pressure Advance

    Scheduled Pinned Locked Moved
    Firmware wishlist
    2
    8
    1.2k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BMMalundefined
      BMMal
      last edited by

      I think another feature could be a feedrate/flow rate compensation where you would characterize a material at a baseline which would be very low (1mm^/s) then you find out where the feedrate and flow rate are no longer linearly related. After that you start to empirically develop an algorithm by bumping the feedrate multiplier up more to get the proper flow rate until the filament strips etc. Then these values are fed into a regerssion (maybe linear or higher order would require more empirical data points) so the firmware can calculate the proper extruder feedrate in addition to the baseline. For each material you would then feed the machine parameters that get plugged in to generate the regression.

      The parameters would be something like:
      max feedrate possible before the flowrate out of the nozzle no longer matches
      maximum feedrate mechanically possible for that material
      the additional flowrate multiplier to achieve proper flow at the max feedrate

      I do admit that some experimentation might show that this is not worth pursuing as you may end up just stripping filament more often, especially on long straight moves. I'm curious to get the developers opinions though.

      Duet Ethernet - Most likely the most recent Edge firmware
      Duet X5
      7" Panel Due V2
      Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

      1 Reply Last reply Reply Quote 0
      • botundefined
        bot
        last edited by

        What limitation are you trying to overcome with the current method?

        It sounds like you're encountering filament stripping during fast moves, presumably caused by pressure advance – have you tried limiting the acceleration and/or max speed of your E axis?

        *not actually a robot

        1 Reply Last reply Reply Quote 0
        • BMMalundefined
          BMMal
          last edited by

          @bot:

          What limitation are you trying to overcome with the current method?

          It sounds like you're encountering filament stripping during fast moves, presumably caused by pressure advance – have you tried limiting the acceleration and/or max speed of your E axis?

          I'm not having stripping issues. The current method certainly makes an improvement as far as blobs and under extrusion in the middle of long runs goes but only to a point but it only goes so far. My machine is printing very reliably within the bounds that I have determined for the current method. I'm trying to overcome the barrier of maximum filament feed rate achievable while maintaining proper nozzle output for a given nozzle size.

          Let's say you can mechanically feed 100mm of filament at 5mm/s without stripping it but when you try to print with (using a 0.4mm nozzle for the sake of illustration) the extruder running that fast you end up with under extrusion in the places where this filament feed rate is actually achieved. Right now, we can only print at flow rates which maintain a linear relationship between filament feedrate and nozzle output (plus a slight shift with M572). This method would allow the firmware to automatically change the filament feed rate so that the proper output is maintained when necessary.

          I'm not sure if this non-linearity starts to occur because the machine is approaching a point where the filament is yielding and about to strip, again I can easily feed 100mm of filament at a feedrate beyond what I can print at with a given nozzle, therefore I think it is due to compression of the filament, and the viscoelastic effects of the materials. For direct drive systems this should allow for some higher peak flow rates which is considerable for large parts. For RDD and especially bowden the improvement should be greater as there are more places for hysteresis to occur. This is why Kisslicer recently implemented the VE Preload and calibration features but I think a FW solution is much more elegant and manageable.

          Duet Ethernet - Most likely the most recent Edge firmware
          Duet X5
          7" Panel Due V2
          Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

          1 Reply Last reply Reply Quote 0
          • botundefined
            bot
            last edited by

            I see. I suppose there is definitely room for improvement. Is the computational overhead, and coding time worth the (potentially minuscule) added benefit?

            *not actually a robot

            1 Reply Last reply Reply Quote 0
            • BMMalundefined
              BMMal
              last edited by

              @bot:

              I see. I suppose there is definitely room for improvement. Is the computational overhead, and coding time worth the (potentially minuscule) added benefit?

              It would have to be tested, but I'm guessing this could potentially make a 20% improvement with my RDD. Right now I max out ABS at about 10mm3/s with a 0.4mm nozzle running at 270C on a Volcano before I start to get under extrusion but, I can manually command 5mm/s (12.4mm3/s) without worrying about stripping the filament. Not sure if I pushed the feedrate up so that the nozzle actually put out the corresponding 12mm3/s it would strip though. This could probably be tested by manually extruding and weighing the output. I'll investigate this more when I have an opportunity.

              Duet Ethernet - Most likely the most recent Edge firmware
              Duet X5
              7" Panel Due V2
              Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

              1 Reply Last reply Reply Quote 0
              • botundefined
                bot
                last edited by

                By RDD, I assume you mean an extruder driven by a long flexible cable?

                What happens if you simply increase pressure advance now? The corners become too thin?

                *not actually a robot

                1 Reply Last reply Reply Quote 0
                • BMMalundefined
                  BMMal
                  last edited by

                  Yes.

                  Well, I've only ever gone up to about 0.15s but yes it seems that that is the case.

                  Duet Ethernet - Most likely the most recent Edge firmware
                  Duet X5
                  7" Panel Due V2
                  Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

                  1 Reply Last reply Reply Quote 0
                  • botundefined
                    bot
                    last edited by

                    Perhaps allowing two values, one that defines how much pressure is "added," and one for how much pressure is "removed" from the E steps, would help.

                    *not actually a robot

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post
                    Unless otherwise noted, all forum content is licensed under CC-BY-SA