CoreXY vibration and noise at specific speeds
-
Running a corexy Voron 2.4 on a DUET 2 WIFI. I have a problem where the machine gets really loud when moving XY axes during normal operation. Here is a video:
https://drive.google.com/file/d/1aKbINvV2XIEWPy-sZN3e83ji9LzI21u4/view?usp=sharing- First 40mm/s right-left-right - noise
- Second 60mm/s right-left-right - no noise
- Third 80mm/s right-left-right - a lot of noise
I also run a diagonal test (no video):
- First 40mm/s front_left-rear_right-front_left - no noise
- Second 60mm/s front_left-rear_right-front_left - noise
- Third 80mm/s front_left-rear_right-front_left - no noise
What I tried so far:
- Different DUET 2 WIFI board. I was able to borrow one - no change
- Temporary switch from 12V to 24V PSU - no change
- Disconnecting everything but AB motors and endstops - no change
- Connecting a different, unmounted stepper to A and B driver. It vibrates a lot at the same specific speeds - so no change
- Different, separate stepper cable - no change
- Lowering AB current down to 800mAh - still lots of noise
I'm quite sure that the AB motors are the source of the vibration. I'm really at a loss on what to try next.
This is my config.g drive setup:
; Drives M569 P0 S0 ; Drive 0 M569 P1 S0 ; Drive 1 M569 P3 S0 ; Drive 3 M569 P5 S1 ; Drive 5 M569 P6 S0 ; Drive 6 M569 P7 S1 ; Drive 7 M569 P8 S0 ; Drive 8 M584 X0 Y1 Z5:6:7:8 E3 ; Drives assignments M350 X16 Y16 Z16 E16 I1 ; Configure microstepping M92 X80 Y80 Z400 E415 ; Set steps per mm M203 X18000 Y18000 Z400 E6000 ; Set maximum speeds (mm/min) M566 X600 Y600 Z20 E300 P0 ; Set maximum instantaneous speed changes (mm/min) M201 X2400 Y2400 Z200 E2400 ; Set maximum accelerations (mm/s^2) M204 P2000 T800 ; Set printing and travel accelerations M906 X1000 Y1000 E600 Z1000 ; Set motor currents (mA)
-
I think what you've hit here is discovering the natural frequency of your machine, or at least some loose components that are vibrating on your machine at the frequency.
There are a few options you can use to address it -
- Check for loose screws/nuts on the machine. Might just be something loose thats vibrating when your machine produces the frequency from motion
- Add mass - Adding mass lowers the natural frequency
- Add damping - this will also change the frequency and potentially make it quieter by dissipating energy instead of vibrating with it.
- Use DAA to eliminate the frequency https://duet3d.dozuki.com/Wiki/Gcode#Section_M593_Configure_Dynamic_Acceleration_Adjustment
-
@mildw4ve There are three ways to solve noise problems like this:
1 - get rid of the thing that is exciting the system
2 - get rid of the thing that is projecting the noise
3 - change the system so that the excitations don't get to the thing projecting the noise (by damping or by changing the mass/stiffness)Id certainly start by checing for anything loose in there (there is something that sounds rattly in the video which isn't great). However, 3D printers are complex beasts with lots of things that can resonate and project noise, and there's lots of paths excitations can take to them. You can try playing with damping, adding masses, changing belt tensions etc, but you will probably find it hard to make much of a difference. Really the best thing is to try and solve the root excitation.
On a CoreXY printer, when moving on a diagonal, one of the motors is moving at root-two (~1.41) times the speed both would be moving for a pure X-X or Y-Y move. You say you see the noise at 40mm/s X-X and 60mm/s on a diagonal (i.e. about 1.41 times higher). This suggets that the vibration source is of a similar order to your motors, so it's either your motors or something that rotates at the same speed as them like the belt/pulley meshing. My guess is that at 80mm/s, you are seeing the 2nd harmonic of the same vibration frequency, and I reckon if you did a diagonal move at ~120mm/s, you'd also see the noise. There will be some noise +/- a few mm/s from each of these peaks, and maybe quieter speeds in between. If you want to get fancy/nerdy, you could use a spectrum analyser app on your phone to work out what the frequency if the noise is and it might help narrow things down even further.
First thing I would check are your drive pulleys and your idlers. Cheap clone belts & pulleys don't necessarily mesh as well as genuine ones. running the toothed side of the belt on a smooth idler is also not great. I'd also check your belts aren't rubbing on anything or rubbing up the side of the pulleys.
More likely listening to the video is that it is the motors themselves that are causing the excitation. Then I think you have a two other options. Easiest/cheapest is to get some damper mounts for your stepper motors, either the cork matt ones or the rubber type. This may help a bit, but doesn't really fix the problem. Better might be to get some different motors. Maybe first of all try swapping in your extruder motor to see (assuming it is a different motor?). Different size stepper motors have different electro-mechanical properties and different rotor inertias so will have their own different natural frequencies. I'd recommend going for 0.9deg motors (I think yours are 1.8's from your config?) if you can get away with the speed. More steps/rev means they generally have a smoother torque profile so are in theory less likely to be as noisy. You could also try bigger/smaller nema17s if you have any lying around?
-
I support the 'check for rattles first' approach. I was almost driven bugsy by a resonance in my AM8 printer. I looked all over the body of the printer for it, listening to different parts of the frame, etc. Finally, I noticed an Allen wrench left sitting on the printer base (which is a ceramic bathroom tile). That, not the printer, was the source of all the trouble. The tile is very hard, so anything on it will vibrate and buzz mercilessly. I use the tile since it is a nice, stable base, and fireproof.
-
Maybe that speed hits the mid band resonance feature of the motors, and something else on your printer also resonates at that frequency.
-
UPDATE
I did check for loose screws connected to rattling and I found one one the X carriage, fixed that and rattling is gone.Vibration at specific speeds is still a problem though and it's definitely coming from the AB motors. AB motors are rated for 1.7A each. Previously I tried lowering AB motor current from 1000 to 800mA with no change in noise. This time I changed it from 1000 to 1500mA and to my surprise the vibration at those specific speeds has calmed down a bit. Motors are a bit louder overall, but at those specific speeds there is less vibration. Anything else I could try with this new piece of information?
-
I have a very similar issue.
At around 50mm/s the printer starts resonating. It doesn't do that at any other speed. I was about to post a message about that, but I'll post my findings later today here instead.
In the meantime you may try to change the microstepping.
-
@matt3o said in CoreXY vibration and noise at specific speeds:
I have a very similar issue.
At around 50mm/s the printer starts resonating. It doesn't do that at any other speed. I was about to post a message about that, but I'll post my findings later today here instead.
In the meantime you may try to change the microstepping.
Same for me @50mm/s and only at this speed
-
@mildw4ve said in CoreXY vibration and noise at specific speeds:
UPDATE
I did check for loose screws connected to rattling and I found one one the X carriage, fixed that and rattling is gone.Classic! glad to hear at least that is gone
-
so, I tried with bigger/sturdier XY motors brackets and also with some dampening material but nothing seems to solve this issue. I made more tests and the problem starts at approx 3800mm/m up to about 4600.
If only one motor moves (any of them) the problem doesn't come up. If both moves especially in straight lines it's really bad (I can feel the whole printer vibrating)
Nothing that I tried seems to have any effect except reducing amperage. I have 2amps motors that I run at 1.4. Running them at 1amp reduces drastically the resonance.
Any suggestion?
-
I had the same issues with my Voron 2.4 and the 1.8° steppers. With changing to 0.9° steppers my problems had been gone.
-
@medicusdkfz said in CoreXY vibration and noise at specific speeds:
the same issues with my Voron 2.4 and the 1.8° steppers. With changing to 0.9° steppers my problems had been gone.
different stepper have different quality.
-
okay more testing today. I played with stealthchop and spreadcycle but really nothing has the slightest effect on this issue. Also acceleration and Jerk don't play any role in it. Really the only thing that works is setting the amperage to half what it is needed.
I also tried with a different set of motors and resonance changed and it's to reasonable levels... but I can't use them in "production" because they are way underpowered for my build.
So I guess the only way is to buy new motors and hope they will work.
I have a rather big corexy (40x40cm), wondering if using a 9mm belt would change anything... or maybe nema23.
gosh this hobby is frustrating.
-
@matt3o crazy idea, but what happens if you use the same motors but set them to different currents? It seems the issue is the two motors are interacting, and changing the current changes the vibration level and I'd guess its frequency. So if the currents are different, you might find they don't interact as much.
-
@engikeneer I actually tried that and strangely enough it doesn't work... that is very weird as it doesn't resonate in diagonals so the problem seems to be in the interaction between the motors.
PS: also belt tension doesn't seem to effect much if at all
-
@matt3o Sorry to bring up an old post, but did you ever find the solution to this? I also have similar noise issues and curious if you found a culprit.
-
@fickert i had similar issues and i solved it nearly completely by increasing motor current. i would run my CoreXY motors at 1.4 amps using TMC2209 drivers, and these motors are rated 2.5 amps/phase. I raise the current to 2.0 amps, and the motors quieted down almost completely.
WARNING i had to add active cooling to my mainboard! My drivers overheated quickly until i added a fan on the mainboard. I use the Duet 3 Mini 5+, and a simply 4010 fan blowing across the driver chips keeps the board at around 39C. I added the fan to temperature control of the MCU temp, so the fan kicks on automatically when the board gets hot.
-
I used to use a NEMA-23 driven ball screw on the Y axis of a printer. It had a horrible mechanical resonance that I was never able to get rid of. The axis could run just fine at any speed up to about 150 mm/sec, except at 50 mm/sec it would make awful noise and would skip steps. I limited maximum print speed to 40 mm/sec and it worked great. Eventually I converted it back to belt drive and there were no more resonance issues.