I’m experimenting with print bed movement compensation and my plan to achieve this is by attaching one accelerometer to the print bed and one to the extruder and subtracting the print bed acceleration values from the extruder values. To do this i need to be able to use two (usb rpi2040) accelerometers simultaneously during a resonance test and output both their raw data. Is this possible? if this is possible my second question is if there is any easy way to convert raw data files to resonance data files?
I’m going to leave that for the development team, however I’m not sure how useful the results will be for you.
The ideal situation is to have as rigid as possible base from which to print from, the resonance test normally measures the ringing of the toolhead. If you have an ideal system, the base/print surface (and the model on it) will be motionless.
In a less than ideal system, then you will have the print surface and the model moving with the toolhead and I don’t think getting an accurate understanding of the system will be as simple as just getting the delta between them.
It would be an interesting experiment but the results will require analysis and I would think that the height of the toolhead will be a factor.
The best solution (and likely easiest) would be to have your printer on as rigid a surface as possible and just have a single accelerometer on your toolhead.
Why would you say that is the case? I don’t have access to my printer-board without moving the printer out of the closest its in but I do have access to klipper’s USB ports and its in general easier to remove a USB accelerometer.
Yes and when don’t have dampeners under the printer my prints are fantastic but the printer is super loud so I cant print during the night.
I think the only reason this would be relevant is at high z heights on bedslingers cause the z axis starts deflecting which is proportional to toolhead acceleration(given that its not an upside down machine) but on bedslingers its also proportional to printer base movement.
Apologies. My mental telepathy seem to be waning as I age and when I tried to remotely view your printer setup I guess I saw somebody else’s.
Maybe in the future you can be more explicit about your printer installation so I don’t have to rely on my increasingly unreliable psychic powers.
So what is your goal here? It sounds like you want good quality prints while you sleep. Normally when somebody asks about accelerometers it is in regard to resonance compensation.
I’m not sure how you came to the conclusion that multiple accelerometers are what you need. You’ll have to explain your setup in more detail as well as describe the “dampeners” that you’re talking about.
Without knowing what your printer looks like, I’m thinking of the case where the bed is subject to accelerations due to the toolhead movement - these movements will be proportional to the height of the toolhead; the higher the toolhead, the less movement you’ll see on the bed.
Could I suggest that you describe your printer along with it’s installation as well as what your problems are and what you’re trying to achieve?
While you’re doing that, I’ll make an appointment with my psycomitrist.
Sorry for not specifying my printer setup. In my original question that wasn’t really necessary as I only wanted to know if I could run two USB accelerometers simultaneously but that wasn’t the most productive method when it came to the follow up questions . I’m running a sidewinder x2(300x300x400 bedslinger) with a robin nano v3 and tmc 2209 stepper drivers on a wall attached shelf, kipper runs on a raspberry pi 3b and the accelerometer is a FYSETC-PortableInputShaper.
I still wonder why you prefer spi accelerometers compared to USB accelerometers.
My problem is that my neighbors complain about the noise of my printer when it stands on the shelf cause it makes the entire wall vibrate. My prints were great
but to quiet the printer down I decoupled it from the shelf/wall by putting towels under it(dampeners) and it made the printer a lot quieter but because it gives the printer freedom to move the resonance measurements are unreliable so I couldn’t tune the inputshaper.
When measuring resonances we are only interested in how the print head moves in relation to the bed we don’t care if the entire printer is moving/accelerating so long as the head and bed move in sync. For example when I measure the Y axis resonances I need to only measure the delta between the print head acceleration and the bed acceleration to emulate a totally stationary print head. To do this precisely I need to have the acceleration values from both accelerometers at the same time.
Yes the issue here is the deflection of the z axis. If we constrain the printer base to not move the input shaper will be inaccurate for any z value that isn’t where it was calibrated to as the deflection depends on z height so this is just a general issue. Allowing the printer base to move could even decrease the deflection of the z axis due to toolhead movement because some of the force from the toolhead movement should be absorbed by the dampener instead of all of it going into the z axis but on bed slingers it will cause z axis deflection when moving the bed. another issue could be if the printer rotates as this will cause accelerations at high z heights to be exaggerated as we don’t measure rotation
but if we aren’t going to have height dependent input shapers anyway we could just calibrate it at low z heights to minimize error from rotation.
Hopefully this gave you less of a headache than my previous posts but I might just be on the peak of the Dunning Kruger curve
My experience with them was two (three?) years ago when I first started working with Klipper wasn’t great. It was for a bed slinger that I designed for myself with an accelerometer on the bed and the toolhead.
To net out my experience, the accelerometers were (are - just looking at them on AliExpress) quite expensive, the boards didn’t have mounting holes, the USB connectors on the boards shook themselves free over time leaving their USB wire dangling in the printer, I couldn’t find appropriate USB cable lengths which meant I had coils of wire in the base of the printer and I was new to Klipper so getting their MCU’s loaded with Firmware and then connecting them to my rPi host was an ordeal.
I swapped them out for ADXL345 boards that cost me $6 each and with a bit of time wiring them to ribbon cables, they worked fine and better than what I struggled with before.
If you were to do resonance compensation without the towels and then run the print, what is the difference in print quality?
Would it be possible for you to remove the shelf and put your printer on a rigid platform sitting on the floor?
Sorry, why would the printer rotate?
Again, I don’t know your total situation but I feel like there are possible solutions to being able to run the printer at night that would be easier to implement than multiple accelerometers and combining their output to get the best quality print.
yeah that’s fair I’m not going to have my accelerometers plugged in permanently but yes I did notice that the connector has very poor tolerances.
I tested running the printer after putting it on the towels without recalibrating the input shaper and got a lot of ringing.
I don’t think I can create something more solid than my shelf and I would like to avoid having it on the floor even if that would be a fantastic solution in all ways except that its a pain to access(might be worth it in the end though).
in my case if the printhead is high up and accelerate it will create a force that is far away from the printers center of gravity so if the printer stands on soft feet(towels) this will cause one side of the printer to sink whilst the other side will want to lift slightly, a small and maybe theoretical amount of rotation but still something that might be relevant.
There probably is, like you said just place it on the floor but this is also more of an experiment than anything else(that could also solve my problem). The goal is to make resonance compensation work on a printer floating in space and the application is being able to place a printer on a wobbly table or dampeners to make it quieter and still have great prints. Input shapers are already just there to compensate for an imperfect system so if one could compensate for a non rigid surface and making the printer quieter in the process that would be fantastic.
The resonance measurements you take are not “for the whole printer”, but the complex response of the entire system at the point of measurement, i.e. the location where you have mounted the IMU.
This is also the reason why mounting the IMU directly on the nozzle will give you the best results.
As such, I do not see the immediate benefit of mixing two measurements and trying to create a “different answer”. However, I may have misunderstood your intent.
I might be the one that doesn’t understand resonance compensation but my idea is that for resonance measurements to work we need to make sure that the only thing moving is the thing that the IMU is attached to.
Let’s say for example that the printer is standing on springs this will cause the printer to have a resonance frequency but this shouldn’t matter as the entire printer resonates in sync aka the bed doesn’t move in relationship to the tool head but the IMU will pick it up as a resonant frequency that the recommended sharper will try to compensate for causing a “fake” resonant frequency.
By adding an IMU to both the bed and the toolhead we can se if some resonant frequencies are applied to both parts and ignore them when it comes to generation the recommended inputshaper.
Something to add to my example is that the springs will change the individual resonant frequencies too so just measuring without the springs and then adding the springs wont work.
What you are writing is correct, but the conclusion you draw from it is not.
You have one resonant profile for your X-axis and one for your Y-axis
You have one shaper with a certain resonance compensation for you X-axis and likewise for your Y-axis
For printers where the bed is not moving you get away with mounting the IMU on the nozzle and running one X sweep and one Y sweep. For printers with a moving bed (aka the Y-axis) you either need two IMUs or relocate your IMU between the X-axis measurement and the Y-axis measurement
In the end, you have always the same result: One shaper type that is compensating your X movements and one type that is compensating your Y movements.
Of course, it makes no sense for a bed slinger to determine a Y-shaper at the nozzle because the nozzle never moves in the Y direction. This is the reason why you do it separately on the bed as this only moves in Y and likewise it makes no sense to determine an X movement compensation for it.
So long as the printer isn’t bolted to the floor the base will move which could cause the z axis to resonate creating unwanted movement at the toolhead. This becomes more and more of an issue the more the printer is free to move for example hanging printers and wobbly tables.