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

Tuning the printing speed on fly

Scheduled Pinned Locked Moved
Tuning and tweaking
7
11
448
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.
  • undefined
    TuomasT
    last edited by 1 Nov 2024, 11:23

    Hi,

    We have a bit specific printing material (kind of a foam), which flow rate we cannot really control well. But we can (probably) measure the flow rate from the nozzle pretty accurately. Now we would like to be able to slow down or speed up the printer movements according to the flow rate. Even stop it completely for a short moments. So basically adjust the printing speed setting according to the external measurement.

    Do you have any ideas on how this could be achieved most easily? Could we use some sensor connector to adjust the print speed, or would this be more like a software side thing to be done in rasberry pi?

    Thank you in advance for all the help!

    undefined 1 Reply Last reply 1 Nov 2024, 15:19 Reply Quote 0
    • undefined
      dc42 administrators @TuomasT
      last edited by dc42 11 Apr 2024, 07:56 1 Nov 2024, 15:19

      @TuomasT is your aim to limit the flow rate to a defined maximum? If so then we could add a firmware setting for that. It would need to be separate from M203 because the M203 command also limits the extruder speed for retract, reprime and filament loading moves.

      You can adjust the printing speed on-the-fly using M220.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      undefined 1 Reply Last reply 3 Nov 2024, 23:35 Reply Quote 1
      • undefined
        Tinchus
        last edited by 2 Nov 2024, 10:43

        You have flow rate control on many slicers already (superslice foe example lets you set a max extrusio rate and set every type of path to use that max value. So in your case ofr example if you want to limit a 5 mm3/s of flow you can do it.

        undefined 1 Reply Last reply 3 Nov 2024, 07:41 Reply Quote 0
        • undefined
          o_lampe @Tinchus
          last edited by 3 Nov 2024, 07:41

          @Tinchus @dc42 I think, his intention is to constantly measure the slightly uncontrollable flow and change the printspeed instantly. (good bye planner queue)

          undefined 1 Reply Last reply 6 Nov 2024, 15:57 Reply Quote 0
          • undefined
            fragrama17 @dc42
            last edited by 3 Nov 2024, 23:35

            @TuomasT thanks for posting this topic, I actually have a similar issue regarding print speed.

            @dc42 we are already using M220 but we observed some delays even when printing straight lines;
            we noticed though that, by assigning a really high jerk value using M566, we were able to reduce the delay to 2s;
            without doing that, the algorithm takes a long time to change the speed of the print in order to preserve the jerk value of the machine (from what I read from RepRap docx file in GitHub).
            is there a flag or configuration that we could enable to ignore/speed up the jerk check algorithm ? if that is not the root cause, is it related to how RepRap processes the g-codes queue buffer ?

            undefined 1 Reply Last reply 4 Nov 2024, 07:58 Reply Quote 0
            • undefined
              dc42 administrators @fragrama17
              last edited by 4 Nov 2024, 07:58

              @fragrama17 you should be able to speed up the response time when the machine is performing long moves by enabling segmentation. See the M669 command.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              undefined 1 Reply Last reply 4 Nov 2024, 21:53 Reply Quote 1
              • undefined
                fragrama17 @dc42
                last edited by 4 Nov 2024, 21:53

                @dc42 I forgot to mention at the beginning that we had to enable segmentation (M669) in order to reduce the delay to 2s.

                Are there any other options to reduce the delay ?

                1 Reply Last reply Reply Quote 0
                • undefined
                  Tinchus @o_lampe
                  last edited by 6 Nov 2024, 15:57

                  @o_lampe You cant do this. In the moment you measured the flow at the output of the nozzle, the gcode command will enter the queu... The flow modification wont be at the proper timming never ever.
                  In my opinion this is one of those request where the solution is being looked at the incorrect place. Just make sure you extruder works properly, your filament is in the proper state (dry) and you are done.

                  undefined 1 Reply Last reply 6 Nov 2024, 19:09 Reply Quote 0
                  • undefined
                    infiniteloop @Tinchus
                    last edited by 6 Nov 2024, 19:09

                    @Tinchus

                    Just make sure (…) your filament is in the proper state (dry) and you are done.

                    What if the ”filament” isn’t dry but more or less ”foamy”? From the OP:

                    We have a bit specific printing material (kind of a foam), which flow rate we cannot really control well.

                    @fragrama17 Just my two cents: to reduce reaction times on flow rate measurements, you could perhaps try to shorten the movement queue length (see M595) or disable it completely with M555 ( M555 P6 - set nanoDLP compatibility mode). However, this can cause the printing movements to be a bit bumpy - sorry, never tried that myself, so this idea might not even be worth a penny.

                    undefined 1 Reply Last reply 8 Nov 2024, 14:48 Reply Quote 0
                    • undefined
                      MJLew
                      last edited by 6 Nov 2024, 19:40

                      It sounds like it might not be possible to use the flow information to modify the print speed soon enough to work for you, but maybe you could use the flow rate information to modify the extrusion amount if you have a servo motor for the extruder instead of a stepper.

                      The inevitable delay between extrusion and the measurement of flow will be suboptimal for the control of the servo, but I dare say there are ways to deal with it.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        Tinchus @infiniteloop
                        last edited by 8 Nov 2024, 14:48

                        @infiniteloop I have not tried this material of course, but I have indeed trying to shorten queu lenght in the past several times wheing trying make a macro introduce code faster in the queu for example. I can perfectly agree and confirm that printing becomes "bumpy". So, in the case of this talking about this material, if the movement suffers this kind of artifacts, for sure we can predict flow will be completly out of control because we can maka a paralel situation when you have moisture on you filement: can can get away sometiomes with lot of moisture, but at the moment the nozzle stops just for hal a second, you will see material being extruded A LOT.
                        From an engineering point fo view, when you face a develpment where at the very beginning the posible solution already faces a lot of problems... that is my sign to "ok, this solution will not end up well, lets look for another aprouch" and this is the case.
                        In this case, if you already recognize that the material has not a predictable flow, trying to control that chaos is something that will not get to a good solution. I would go towards try to get a better material, OR just not try to get a eprfect flow control.
                        Remeber this: this has already happened in the past. Maaaaany years ago, in the time where filament diameters where not as precise as today, opeple tried to use optical filament diameter sensor in order to measure diameter on the fly and adjust the flo on the fly. And that aprouch NEVER worked because you had to provide the firmware with the exact offset between the sensor position and the tip of the nozzle, and just an error of 0.2mm gives you more error on the flow calculation than a +-0.1 in fialment diameter so...
                        I still have one of those sensors by the way lol

                        1 Reply Last reply Reply Quote 1
                        4 out of 11
                        • First post
                          4/11
                          Last post
                        Unless otherwise noted, all forum content is licensed under CC-BY-SA