Periodicity of ringing
-
@mrehorstdmd said in Periodicity of ringing:
I cut the print up and put it under a microscope to measure - I counted as many waves as I could in each speed acceleration combo then divided the total distance by the wave count to get the wavelength:
Try adding a column to your table for acceleration time, calculated as (speed - jerk)/acceleration. You should find that the 'x' columns in your table correspond to the acceleration time being close to a multiple of the ripple period.
-
for testing, someone who uses 12 V and have this 50 Hz pattern could test this easier with a 12 V car battery. Maybe someone has this constellation.
If it has influence, you don't need to base it solely to a DC source. You can e. g. use some flywheel solution between AC source and your DC target, without storing the energy, just to transform and straighten.
-
@joergs5 said in Periodicity of ringing:
for testing, someone who uses 12 V and have this 50 Hz pattern could test this easier with a 12 V car battery. Maybe someone has this constellation.
If it has influence, you don't need to base it solely to a DC source.
Doh! Ha ha, yes of course! Was thinking too much on how I could access if a ripple on the DC is a problem before doubling the PSU budget!
-
@dc42 ummm, not so much... multiple, yes, but not necessarily whole number multiple.
Maybe my measurements of the ripple aren't so great. I made a couple new test prints that are easier to read:
The one on the left tests individual motors in the corexy mechanism. The ringing looks identical on all sides of that print, as one would expect since the moving mass is the same and the motors and currents are the same. A couple settings generate some ripple effects at the end of motion.
The other print will be easier to measure than my original because it is warped. I used 3 perimeters and the ringing in each perimeter layer reinforces the ringing in the next perimeter, so even the ringing wavelengths I couldn't read before look like they are now readable.
These prints are 50 mm on a side, so at acceleration =1000 they only hit 200 mm/sec for a few mm at the center of the side.
I will measure and create a new spreadsheet...
-
@phaedrux said in Periodicity of ringing:
@burtoogle Could the additional 5mm pattern coincide with an oscillation from a travel move?
My theory is that it is the delta's frame wobbling and so I taped a 2-axis accelerometer to the top of the delta frame and captured some spectra while twatting the top of the frame and, lo and behold, there is a nice resonance peak at around 7.5 Hz which equates to 5.33 mm wavelength, pretty much spot on.
So my next move is to put a load of mass on the top of the delta frame to push the resonant frequency down and see what effect that has. Stay tuned (haha)
-
Adding 3Kg (bag of Oats!) to the top of the delta frame reduced the resonant frequency to 4.66 Hz. Now to print something and check whether the wavelength has increased as expected and see if the amplitude has changed at all.
-
I printed exactly the same twisted test piece gcode - this time with the 3Kg mass on top of the delta frame and as far as I can tell it has completely eradicated the low frequency ringing. I can't see it no matter how I hold the part under the light and I can't feel it when I run my finger over the part. The 5mm wavelength ringing on the earlier part is easy to feel by comparison. Obviously, this is only a test with one part but I think it warrants further investigation.
-
@burtoogle that's interesting. I've been thinking a lot about how best to dampen the frame resonances. Currently I have the frame sitting on some closed cell foam pads on top of an end table. But maybe adding some more mass to the whole frame and table combination would help deaden the vibrations better.
Generally I thought that as long as the bed and print head are moving together the effect of the frame swaying would be basically canceled out but that doesn't really take the elasticity of the belts into consideration. The print head would oscillate longer than the frame I think.
-
@phaedrux said in Periodicity of ringing:
Generally I thought that as long as the bed and print head are moving together the effect of the frame swaying would be basically canceled out but that doesn't really take the elasticity of the belts into consideration. The print head would oscillate longer than the frame I think.
The way I am imagining it is that the whole frame (uprights and the corners they sit in) is flexing. You only have to tap the thing at the top to see it wobble from side to side. So if the frame flexes, the carriages will move with the flex relative to be print bed. Adding mass to the top of the frame appears to have damped the oscillation for one test piece printed at a particular speed. I guess that as long as the resonant frequency of the frame is avoided it could be quite effective. Tomorrow I shall print some parts that previously have shown that low frequency ringing and see if they are now free of it.
-
@phaedrux some CNC people fight resonances by filling half of the extrusion with heavy small particles (I take sandblasting media). Half because the particles must be able to move and kill the energy of the resonance.
For 3D printers I would fill only the parts which are not moving (outer frame e.g.) -
@dc42 said in Periodicity of ringing:
I've done a lot of thinking about the pros and cons of S-curve acceleration recently. I've come to the conclusion that a lot depends on the frequency of ringing that is causing the problem. So I'd like to solicit data from users who are having issues with ringing. Please measure the period of the ringing in mm, divide by the print speed at that point expressed in mm/sec, and report the resulting ringing period in seconds here. Also please report what XY acceleration you are using.
Question about what you're calling the "period of the ringing". You say to measure the period in mm (so the wavelength) and divide by the print speed, however, the speed is ramping up due to the acceleration. I'm not sure what you're after here.
I made more measurements of the X and Y parallel sides ringing, and the A/B ringing. The X parallel sides ringing was so low in amplitude that I couldn't reliably read it for most speed/acceleration settings. Jerk was 1000 mm/min = 16.67 mm/sec.
-
Question about what you're calling the "period of the ringing". You say to measure the period in mm (so the wavelength) and divide by the print speed, however, the speed is ramping up due to the acceleration. I'm not sure what you're after here.
Ignore the start of the ringing close to the corner, because the print head is accelerating there. Measure the wavelength a few mm form the corner, where the constant-speed phase will have started.
Looking at the rows in the Y ringing table where you put 'x' in the wavelength column because the ringing wasn't measurable, the acceleration times in milliseconds are:
67, 92, 44, 61, 21, 46
These are mostly close to multiples of 24ms, the ringing period that you measured.
What jerk setting are you using? Large values of jerk are likely to affect the degree to which ringing is cancelled by making acceleration time a multiple of the ringing period.
-
@burtoogle said in Periodicity of ringing:
Tomorrow I shall print some parts that previously have shown that low frequency ringing and see if they are now free of it.
I printed a part that normally shows the low frequency ringing with weight added to the top of the delta frame and the result is definitely improved. The wavelength of the ringing has increased and the amplitude has reduced so that it's now hard to see or feel the bumps. This photo just about shows the difference:
Still plenty of the high frequency ringing (hoping that David's new firmware additions may help with that).
-
To help measure the periodicity accurately would it be possible to design a test piece with inset lines at the bottom with varying periods and then look to see which period matched the ringing? Similar to the prints to line up the two independent heads on an Idex.
-
@t3p3tony I thought about something similar yesterday analogue to this:
https://www.thingiverse.com/thing:2040624
A calibration piece everyone can use to help analyzing, including different printer types.Another idea is to use 0.1 mm nozzles and/or underextrusion, this should make the ringing easier to detect.
-
@joergs5 yes something like that would be good.
0.1mm nozzles are apparently very challenging to print with!
-
Just tried to generate a GCode like @mrehorstdmd did and implement different accelerations. I used the command "M201 X1500 Y1500". Is this right or should I use M204 instead?
I am a littlebit confused as the print looks almost the same after an ACC change and at an ACC of 3500 the requested speed was 150 mm/s but the top speed reached was only 137 mm/s (the length of the cube was 50 mm...? ) -
@kuhnikuehnast said in Periodicity of ringing:
Just tried to generate a GCode like @mrehorstdmd did and implement different accelerations. I used the command "M201 X1500 Y1500". Is this right or should I use M204 instead?
You can do it either way.
I am a littlebit confused as the print looks almost the same after an ACC change and at an ACC of 3500 the requested speed was 150 mm/s but the top speed reached was only 137 mm/s (the length of the cube was 50 mm...? )
Let's say you have jerk set to 10mm/sec. The distance available for acceleration and deceleration is 25mm each, so from v^2 = u^2 + 2as we have:
v^2 = 10^2 + 2 * 1500 * 25 = 75100
So v = 274mm/sec. IOW, even with acceleration reduced to 1500mm/sec you should be able to reach a top speed of 274mm/sec. So I suspect your slicer is reducing the speed, or you have lower M203 limits set.
-
This is really strange! I own a CoreXY and a Cartesian printer, both on DuetWifis. The Settings for jerk, Acc and max. Speed are on both machines the same (on the CoreXY for ACC in config.g even a littlebit higher 1026 vs 1300 on X and Y). I sliced 2 GCodes (Cartesian and CoreXY) and except the "standard parameters" (e. g. bed size...) both GCodes look exactly the same. (Speed Change every 25 layers, ACC Change every 75 layers). On the cartesian the Top Speed of 150 mm/s is reached but not on the CoreXY (if 100 mm/s or 50 mm/s are requested, then it works on both machines)... Also it seems like the ACC changes in the G-Code aren't applied by the board, as the print looks exactly the same even with an ACC of 3500 on the CoreXY???
Here the settings for both printers:
M566 X900 Y900 Z18 E120 ; Set maximum instantaneous speed changes (mm/min)
M203 X18000 Y18000 Z1002 E6000 ; Set maximum speeds (mm/min)
M201 X1026 Y1026 Z250 E120 ; Set accelerations (mm/s^2)Here a segment of the GCode:
; layer 376 - ACC-Change
M201 X3000 Y3000
; layer 376, Z = 75.240
G92 E0
G1 X184.800 Y135.200 Z75.040 E1.6497 F3000
G1 X184.800 Y184.800 Z75.090 E3.2994
G1 X135.200 Y184.800 Z75.140 E4.9491
G1 X135.200 Y135.200 Z75.190 E6.5988; process 851 - 150 mm/s
; layer 426, Z = 85.240
G92 E0
G1 X184.800 Y135.200 Z85.040 E1.6497 F9000
G1 X184.800 Y184.800 Z85.090 E3.2994
G1 X135.200 Y184.800 Z85.140 E4.9491
G1 X135.200 Y135.200 Z85.190 E6.5988 -
Your extruder acceleration limit is very low (E120 in M201) and that may be limiting the acceleration of printing moves.