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

    Independent input shapers per axis

    Scheduled Pinned Locked Moved
    Firmware wishlist
    7
    19
    2.4k
    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.
    • CCS86undefined
      CCS86 @wesc
      last edited by

      This definitely seems worth the effort. I can't wait for input shaping to release in RRF!

      1 Reply Last reply Reply Quote 0
      • wescundefined
        wesc @wesc
        last edited by

        I should try the same shaper and freq for both axis to see how that impacts print results. Away from printer until monday...

        CroXY - Crossed Gantry Printer, Ultibots D300VS+, Custom CoreXYU

        1 Reply Last reply Reply Quote 0
        • CNCModellerundefined
          CNCModeller @wesc
          last edited by

          @wesc I'd imagine that for "bed slinger" this is even more significant, and definitely will be for my polar printer. It's a perspective I hadn't properly thought through so far.

          Polar Duet3 Mini + 1HCL
          https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
          Wanhao D4S: Duet2
          https://forum.duet3d.com/post/296755
          K40 Laser, Duet2
          https://forum.duet3d.com/post/312082
          Wanhao D5S
          https://www.youtube.com/CNCModellerUK

          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @wesc
            last edited by

            @wesc, we're leaving the option open to support different input shapers per axis. However, this brings with it two potential problems. The first is that RAM usage would be increased; so we may not be able to support it on the Duet 2 series. The second is that if you use per-axis input shapers, then the print head will not longer follow exactly the path specified in the GCode. This generally doesn't matter for travel moves, but does for printing moves. This may be what the Klipper documentation refers to as "smoothing" when more complex input shapers are used.

            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

            wescundefined CNCModellerundefined CCS86undefined 3 Replies Last reply Reply Quote 0
            • wescundefined
              wesc @dc42
              last edited by

              @dc42 if ram is a constraint, then that's an acceptable reason for duet2. But, i'd prefer if some other features were limited (like the LPC port does) to free up ram to support it.

              If there isn't 2 axis input shaping in rrf3, I will await the klipper port to duet3. Duet3 mini port has been completed.

              Input shaping is THE killer feature. And 2 axis is essential for it to work well.

              CroXY - Crossed Gantry Printer, Ultibots D300VS+, Custom CoreXYU

              dc42undefined 1 Reply Last reply Reply Quote 1
              • dc42undefined
                dc42 administrators @wesc
                last edited by

                @wesc said in Independent input shapers per axis:

                And 2 axis is essential for it to work well.

                On bed slingers, maybe.

                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

                1 Reply Last reply Reply Quote 0
                • CNCModellerundefined
                  CNCModeller @dc42
                  last edited by

                  @dc42 said in Independent input shapers per axis:

                  @wesc, we're leaving the option open to support different input shapers per axis. However, this brings with it two potential problems. The first is that RAM usage would be increased; so we may not be able to support it on the Duet 2 series. The second is that if you use per-axis input shapers, then the print head will not longer follow exactly the path specified in the GCode. This generally doesn't matter for travel moves, but does for printing moves. This may be what the Klipper documentation refers to as "smoothing" when more complex input shapers are used.

                  Would it be possible to filter both frequencies on both axes to keep them synchronised for printing moves?

                  Polar Duet3 Mini + 1HCL
                  https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
                  Wanhao D4S: Duet2
                  https://forum.duet3d.com/post/296755
                  K40 Laser, Duet2
                  https://forum.duet3d.com/post/312082
                  Wanhao D5S
                  https://www.youtube.com/CNCModellerUK

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • elmoretundefined
                    elmoret
                    last edited by

                    Just chiming in to say that input shaping is the single most requested feature/reason people use Klipper over RRF/Duet3D products in my experience.

                    1 Reply Last reply Reply Quote 1
                    • dc42undefined
                      dc42 administrators @CNCModeller
                      last edited by dc42

                      @cncmodeller said in Independent input shapers per axis:

                      Would it be possible to filter both frequencies on both axes to keep them synchronised for printing moves?

                      It may be theoretically possible, but I haven't found any papers about how to do it. However, I have now added support for custom input shapers to the code,;so anyone who can calculate the required impulse amplitudes and timings will be able to set them, subject to the maximum number of impulses supported.

                      I haven't found any information on the MZV input shaping supported by Klipper either.

                      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

                      CNCModellerundefined 1 Reply Last reply Reply Quote 0
                      • CNCModellerundefined
                        CNCModeller @dc42
                        last edited by CNCModeller

                        @dc42 said in Independent input shapers per axis:

                        @cncmodeller said in Independent input shapers per axis:

                        Would it be possible to filter both frequencies on both axes to keep them synchronised for printing moves?

                        It may be theoretically possible, but I haven't found any papers about how to do it.

                        In my uneducated mind, could you not apply the shaping to the demand twice in series, take the output from the first shaping and feed it into the second?

                        I'm sure I'm talking 8ollocks... but I had to ask.

                        Plus I guess the processing overhead would be significant even if it were possible.

                        Feel free to tell me it doesn't work like that and that I'm a total numpty... 🙂

                        Polar Duet3 Mini + 1HCL
                        https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
                        Wanhao D4S: Duet2
                        https://forum.duet3d.com/post/296755
                        K40 Laser, Duet2
                        https://forum.duet3d.com/post/312082
                        Wanhao D5S
                        https://www.youtube.com/CNCModellerUK

                        dc42undefined 1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators @CNCModeller
                          last edited by dc42

                          @cncmodeller said in Independent input shapers per axis:

                          In my uneducated mind, could you not apply the shaping to the demand twice in series, take the output from the first shaping and feed it into the second?

                          No, unless the higher frequency was at least 2 to 3 times the lower frequency, so that each individual step taken by the shaper for the lower frequency could itself be shaped to cancel the higher frequency.

                          However, if a sequence of amplitudes and times that cancel the two frequencies and damping factors concerned can be calculated offline just once, then they can be fed into the RRF input shaper and the run-time cost of implementing it should not be excessive.

                          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

                          CNCModellerundefined GeneRisiundefined 2 Replies Last reply Reply Quote 0
                          • CNCModellerundefined
                            CNCModeller @dc42
                            last edited by

                            @dc42 thanks for the education... please don't take this as meddling, I just would really like to understand the practicalities of the technology. I'm not sure I'd be able to get my head around the research like yourself.

                            I'm thinking that frequency difference might be valid in special cases such as for bed slingers with a very heavy bed.

                            When I get round to measure my polar radius arm and bed frequencies I'll let you know what I find.

                            Really interesting, great work BTW. Much respect.

                            Polar Duet3 Mini + 1HCL
                            https://youtube.com/playlist?list=PLWjZVEdMv1BY82izahK45qKh-hp3NFkix
                            Wanhao D4S: Duet2
                            https://forum.duet3d.com/post/296755
                            K40 Laser, Duet2
                            https://forum.duet3d.com/post/312082
                            Wanhao D5S
                            https://www.youtube.com/CNCModellerUK

                            1 Reply Last reply Reply Quote 0
                            • CCS86undefined
                              CCS86 @dc42
                              last edited by

                              @dc42 said in Independent input shapers per axis:

                              The second is that if you use per-axis input shapers, then the print head will not longer follow exactly the path specified in the GCode. This generally doesn't matter for travel moves, but does for printing moves. This may be what the Klipper documentation refers to as "smoothing" when more complex input shapers are used.

                              You could argue, that because of the resonance / ringing, the unaltered input isn't allowing the nozzle to exactly follow the path, and that the shaped input's intentional path "deviations" actually allow more precise tracking of the nozzle to the path, no?

                              dc42undefined 1 Reply Last reply Reply Quote 2
                              • dc42undefined
                                dc42 administrators @CCS86
                                last edited by

                                @ccs86 said in Independent input shapers per axis:

                                You could argue, that because of the resonance / ringing, the unaltered input isn't allowing the nozzle to exactly follow the path, and that the shaped input's intentional path "deviations" actually allow more precise tracking of the nozzle to the path, no?

                                Maybe.

                                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

                                1 Reply Last reply Reply Quote 0
                                • Diamondbackundefined
                                  Diamondback
                                  last edited by

                                  @dc42 This one maybe?

                                  https://www.researchgate.net/publication/224606974_Input_shaping_for_nonlinear_systems

                                  1 Reply Last reply Reply Quote 0
                                  • GeneRisiundefined
                                    GeneRisi @dc42
                                    last edited by

                                    @dc42 Would the "offline" calculation solution work on both axes on Duet2 boards, or are the RAM limitations still an issue?

                                    dc42undefined 1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators @GeneRisi
                                      last edited by

                                      @generisi said in Independent input shapers per axis:

                                      @dc42 Would the "offline" calculation solution work on both axes on Duet2 boards, or are the RAM limitations still an issue?

                                      If we can use a single shaper to handle two frequencies, that is likely to be usable on Duet 2.

                                      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

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