MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.29k stars 19.24k forks source link

[FR] Input Shaping - support more then one frequency #26788

Open vovodroid opened 9 months ago

vovodroid commented 9 months ago

Is your feature request related to a problem? Please describe.

Resonance could be on more then one frequency (e.g. belt and rails), but only one of them could be dumped.

Are you looking for hardware support?

No response

Describe the feature you want

Support resonance dumping on several frequencies.

Additional context

No response

tombrazier commented 6 months ago

If there is more than one resonant frequency, ZV still gives some value by using the average of the two frequencies. For a wider range, general practice is to use a different input shaping algorithm. In principle these can be implemented the same way as ZV if someone has the time to do it. But if you're on 32 bit it might be worth trying FT_MOTION as that does have other input shaping algorithms.

vovodroid commented 6 months ago

Yes, I have fast SKR-3 board, but I didn't actually find any information about FT_MOTION planner in general and its IS methods particularly.

tombrazier commented 6 months ago

It's under FT_MOTION in Configuration_adv.h. And see https://marlinfw.org/docs/gcode/M493.html.

EI or ZVD would be good algorithms to try out. If those are not good enough, ZVDD and 2HEI are next, etc.

vovodroid commented 6 months ago

Yes, I've seen it, still no details. Are there some reviews of real world experience?

tombrazier commented 6 months ago

I haven't seen any 3D printing news websites or youtubers reporting on it (but I haven't really been looking either). It's a newer feature. I don't know how much uptake it has had yet. I think it's a case of give it a try and see. Or, if you're not keen on being bleeding edge, then waiting.

I think the theory behind the FT_MOTION feature is fundamentally sound, though, and for faster MCUs it may be the future.

In other news I know how to extend Marlin's "classic input shaping" to other algorithms and I am hoping I can persuade someone to do it.

vovodroid commented 6 months ago

EI or ZVD would be good algorithms to try out. If those are not good enough, ZVDD and 2HEI are next, etc.

Actually Ulendo opposites their "vibration compensation" to these algorithms

https://static1.squarespace.com/static/5d6c3f03a45b79000185fcd2/t/651eb5d6b97671504ecf42a0/1696511447068/Input+Shaping+vs+Ulendo+VC.pdf

https://static1.squarespace.com/static/5d6c3f03a45b79000185fcd2/t/6514bea50bb58c52a358f45b/1695858342352/Ulendo+Input+Shaping+Comparison+White+Paper+2023.pdf

Is M493 S1 Fixed-Time Motion mode this "vibration compensation" algorithm?

tombrazier commented 6 months ago

Is M493 S1 Fixed-Time Motion mode this "vibration compensation" algorithm?

Sadly no. I understand their algorithm requires the FT motion framework as a base. The algorithm itself is known as limited preview filtered b-splines. They wrote a paper on it some time back and how it works is public knowledge.

I vaguely think there was some kind of intellectual property protection. I can't now find more info on that, though.

See https://www.sciencedirect.com/science/article/abs/pii/S0957415817301277.

vovodroid commented 6 months ago

So no one knows what are M493 parameters))). I'll try to ask in original PR.

tombrazier commented 6 months ago

So no one knows what are M493 parameters))). I'll try to ask in original PR.

I didn't say that. But do ask in the original PR and tag me and I will attempt some kind of reply. I know a bit about FT_MOTION.