Need Help with large scale printers tuning!
-
Recently I have just finished a project I’ve been working on for around a year and a half now. It’s a large scale printer that is 1 Meter square.
It has been a really wonderful project I’ve learned so much about 3D printers in the process of the build. Although there have been a few issues I just cannot seem to figure out how to fix no matter how much I try.
The issue is that there is a awful ringing/ghosting, and no matter how much I turn the print speed down there is still ringing. Also there is weird layer shifting going through all the prints that isn’t awful at some angles but leave a really rough and ugly surface at other angles to all my prints when you are looking at them. I’ve checked the printer up and down, everything is square, everything is oiled that needs to be oiled, the Z axis lead screws are very smooth so smooth that they can slide up and down with little to no pressure at all even with such a large bed, the belts are tight, the print bed is leveled with a BL Touch that I get beautiful first layers with. I’m not sure what else to do to get rid of this problem. This printer is a important part of my small business on Etsy, so detail before speed is always my way to go, thats why I want such a big printer so I could print over days at a time and just have it pumping out parts along side my other smaller machines.
I’m not new to 3d printing I like to think I have a pretty good understanding, but this printer has me stumped. Therefore any help is appreciated, I will give basic Printer info and the Config.
G file below for my duet 2 WiFi. Thank you.strikethrough text
Printer information:
Core XY design
Titan Areo Extruder
Duet 2 WiFi board
Running 4 Z Steppers
Linear rails for and XY
Bl Touch
Slicer I use is Simplify 3dConfig.G file:
; Configuration file for Duet WiFi (firmware version 1.21)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v2 on Fri Mar 22 2019 00:11:18 GMT-0700 (PDT); General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder movesM667 S1 ; Select CoreXY mode
; Drives
M569 P0 S1 ; Drive 0 goes forwards
M569 P1 S1 ; Drive 1 goes forwards
M569 P2 S0 ; Drive 2 goes forwards
M569 P3 S0 ; Drive 3 goes backwards
M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
M92 X80.00 Y80.00 Z400.00 E425.00 ; Set steps per mm
M566 X400.00 Y400.00 Z12.00 E100.00 ; Set maximum instantaneous speed changes (mm/min)
M203 X18000.00 Y18000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
M201 X2000.00 Y2000.00 Z100.00 E250.00 ; Set accelerations (mm/s^2)
M906 X900.00 Y900.00 Z1200.00 E850.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X910 Y910 Z1000 S0 ; Set axis maxima; Endstops
M574 X1 Y1 Z1 S0 ; set active low and disabled endstops
M558 P5 X0 Y0 Z1 H5 F120 T6000 ; Set Z Probe to type Switch or Digital output where Z probe connector is used. Used for z only.;
G31 P500 X0 Y0 Z2.4 ; Set Z probe trigger value, offset and trigger height; Z-Probe
M574 Z1 S2 ; Set endstops controlled by probe
M307 H3 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch
M558 P9 H5 F120 T6000 ; Set Z probe type to bltouch and the dive height + speeds
G31 P500 X0 Y0 Z2.4 ; Set Z probe trigger value, offset and trigger height
M557 X20:800 Y20:800 S100 ; Define mesh grid; Heaters
M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S120 ; Set temperature limit for heater 0 to 120C
M305 P1 T100000 B4725 C7.06e-8 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
M307 H7 A-1 C-1 D-1; Fans
M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on; Tools
M563 P0 D0 H1 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C; Automatic power saving
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss; Custom settings are not configured
-
It looks to me that you have a combination of two issues.
Ringing starts at an edge and reduces in amplitude as the head moves away from that edge. It's evident in your print to the right of the top of the arch, where you can see ghosts of the arch shape that decrease in amplitude.
The other problem in your print is vertical ridges that have constant amplitude. This may be caused by non-uniform extrusion or by what I will call "CoreXY cogging" until someone finds a better name for it. To tell which one it is:
- Measure the interval between ridges. If it matches the belt pitch, it's probably CoreXY cogging.
- Reprint the file with a different layer height. If the pitch of the vertical ridges changes, it's non-uniform extrusion.
I suggest you work on the vertical ridges first because that's the bigger problem in your print. If it's caused by non-uniform extrusion, then if it's an un-geared extruder (with steps/mm around 100 or lower), increasing extruder microstepping to x64 may help. Otherwise, look for a defect in your extruder hobbed shaft, or try a different motor (preferably a 0.9deg/step one). If it's caused by CoreXY cogging, this might be caused by toothed belts running over small-diameter plain idlers.
Ringing is hard to eliminate completely, but increasing belt tension may help, and you can try using Dynamic Acceleration Adjustment, see https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M593_Configure_Dynamic_Acceleration_Adjustment.
-
@Machoo566 said in Need Help with large scale printers tuning!:
M566 X400.00 Y400.00 Z12.00 E100.00 ; Set maximum instantaneous speed changes (mm/min)
M203 X18000.00 Y18000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
M201 X2000.00 Y2000.00 Z100.00 E250.00 ; Set accelerations (mm/s^2)I notice you have quite low jerk value and a fairly high acceleration value. This would lead to a big slow down at a corner and then a quick take off. This in combination would very long and thin extrusions and long belts is probably leading to a lot of vibration and resonance.
I'd like to see a video of the printer in motion.
As a quick test, try adding
M204 P500 T2000
This will give you lower acceleration during print moves and faster during travel moves. That will likely tame it a bit and let you use a higher overall print speed.In addition to what DC42 says above to tackle the major defects (of which I think the CoreXY cogging/belt tooth noise is the most severe, you should try to improve the rigidity as much as possible. You've added some printed cross braces which is a good start. High quality gates belts should let you get some higher tension which should help. Gates also has a smartphone app that lets you tune belt tension by plucking them like a guitar string.
The X gantry probably has some droop to it from being two thin extrusions. A single rectangular extrusion on it's edge might be a better way.
You've got your work cut out for you. Large printers are a big mechanical challenge.
-
First off Thank You for some great suggestions!
So I measured out the vertical ridges and the ridges were exactly the same as the pitch of my belts.
I have tried changing the microstepping to 64 instead of 16 but I never could get it to work properly, the extrusion was really small and I had to up my E steps to 1200 to even get anything to print and even then it was getting poor layer adhesion. Maybe if i had played with it more i could have gotten it closer but at 1200 steps after calibration it just felt like something wasn't right.
My idlers are all 3mm bore, i will be changing them all to 5mm and seeing if that makes a difference.
I have also changed my acceleration to a bit lower of a value and added the M204 into my Config.g and ended up getting this as a result on a ringing test cube. It has much smaller vertical ridges they are still there but much better. Although I'm still getting weird extra fill for lack of a better term inside the X. Also i know the top looks pretty bad that was more my fault for bumping my BL Touch and now the Leveling is a bit off which I will be fixing now.
I'm printing more brackets to stiffen it up the printer and will see if that helps also.
Here is a video of it printing a Benchy at the time of writing this.
https://www.youtube.com/watch?v=UQQDTHZD0rQ -
@Machoo566 said in Need Help with large scale printers tuning!:
I have tried changing the microstepping to 64 instead of 16 but I never could get it to work properly,
Leave it set to x16 with interpolation to x256 enabled and set our steps per mm accordingly for x16.
For me to get rid of the vertical banding on my corexy I had to have two belt flips so that the smooth side of the belt was always riding on a smooth idler. The only teeth in contact with the belt ever is at the drive pulleys.
-
Okay so where do I set the interpolation to x256? I'm just wanting to make sure I'm understanding what I'm changing exactly because I have never really messed with the interpolation at all.
Also what I think i'm understanding what you are saying is that these type of idlers could be causing some issues?
I have the belt running over these in three spots. What I have herd is you don't run the toothed part of the belt across a smooth idler so how exactly do I do the belt flips you talked about properly?
-
@Phaedrux said in Need Help with large scale printers tuning!:
Leave it set to x16 with interpolation to x256 enabled
@Machoo566 said in Need Help with large scale printers tuning!:
Okay so where do I set the interpolation to x256?
You set it to x16 with interpolation enabled. Like so (this is from a coreXY):
M350 X16 Y16 I1 ; Set 16x microstepping for axes. I1 = Use interpolation.
-
@Machoo566 said in Need Help with large scale printers tuning!:
I have the belt running over these in three spots. What I have herd is you don't run the toothed part of the belt across a smooth idler so how exactly do I do the belt flips you talked about properly?
Tooth belt to tooth idler, as in your photo, is OK (assuming same pitch and type). Smooth belt to smooth idler (not in photo) is also OK.
Tooth belt to smooth idler is not. Do you have that anywhere?
-
Okay so I guess I just leave the Interpolation the way it is because this is how i have it set.
M350 X16 Y16 Z16 E16 I1I don't have any toothed belt to smooth idler anywhere. I took special care not to do that.
-
@Machoo566 said in Need Help with large scale printers tuning!:
M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
You had it correct in your first one.
@Machoo566 said in Need Help with large scale printers tuning!:
I have the belt running over these in three spots.
Originally I had smooth idlers everywhere with the belt teeth running on them. Then I swapped to toothed idlers like you have. It didn't solve the problem. Maybe they weren't a good match to the belt teeth or maybe the bend radiius is too tight. Not sure. The ridges became a bit less noticeable but they were still there. So then I swapped back to smoother idlers and flipped the belt.
The belts are flipped going from the motor 180 degrees and go around the back side and then flip again in reverse on the return to the motor again. The flip is only on the belt lengths that stay a fixed length.
-
Maybe this illustrates better.
Ignore the white belts. They were replaced with gates.
I don't even use actual idlers either, they are just flanged bearings. The idlers have tiny bearings and we're constantly seizing.
-
I have a cartesian printer with a very heavy Y axis. I notice a very faint repeatable vertical pattern exactly as you see, only on surfaces printed with pure Y moves (and perhaps to some degree on angles close to it). My X axis does not seem to show it.
I think what this is, is the steppers only holding full step positions. All positions in-between are lost. Though, maybe it can do half-step positions, or even quarter positions, but it's not holding EVERY possible commanded position.
This might also explain "corexy cogging," especially of the cogging effect is prevalent during print moves involving only one motor, while moving the entire gantry.
The effect on my printer is only visible under magnification. This is, IMO, because I have 0.9 degree steppers, 16 tooth pulleys, and 2:1 gear reduction, meaning an effective 8 tooth pulley drive resolution. This would allow the full (or half, or quad) step cogging to be sufficiently small as to be not very noticeable.
Perhaps you could increase your motor current, lubricate axes more for smoother motion, lower weight on axes, decrease acceleration, jerk, and top speed on moves requiring smooth surfaces, etc. See if that helps.
Edit to add: Though, I think what dc42 and Phaedrux are saying is more related to, basically, inaccurate toothed idlers adding unwanted motion to the toolpath. This might indeed be the case, even for my printer, as my Y axis has more toothed pulleys, and perhaps it's simply the addition of toothed pulleys that causes this, but since my addition of toothed pulleys is before the gear reduction, it appears "halved" as compared to the belt pitch.
-
The diameter of the pulleys makes a big difference in two regards. You can use smooth idler pulleys with belt teeth touching them if the diameter is sufficiently large. I use stacked F608 bearings (22 mm dia) for pulleys in my corexy printer and get no print artifacts. I read somewhere (Gates literature, I think) that the recommended minimum number of teeth in contact with a smooth pulley is 9. The 22 mm diameter pulleys just meet that spec with a 90 degree wrap of the belt. Those 3D printer pulleys with 3 and 5 mm bore have very tiny balls in the bearings that put a lot of contact force on the races due to belt tension. That causes the bearings to wear out quickly. Larger bearings have larger balls and that reduces the contact force they put on the races, resulting in longer life and smoother rotation.
I have some of the smooth versions of the 3 mm bore pulleys in my sand table (800 x 1660 belt space) and some of them wore out after only about a year of sporadic operation. I'm in the process of redesigning the printed bearing mounts to accept stacked F625 bearings.
If you change the pulley diameters you have to reposition their axles (and maybe the motors) to keep the belts parallel to the guide rails or you'll create more problems that you solve.
-
@bot I've long thought that it might be possible for steppers to have a tendency to "jump" to the nearest whole step under certain conditions. It's more of a gut feel than based on any testing or analysis. But I have a suspicion that too high a belt tension can exacerbate the problem.
-
@deckingman I have definitely had my belts too-tight to the point of preventing smooth motion of the axis before. I could easily see a situation where the motor couldn't even move reliably, much less skipping microsteps. Skipping microsteps is basically fundamental behaviour, which is why I geared down my axes 2:1 and got the smallest drive pulley possible. I am only assuming full step microstep resolution is a thing, anything else is just for quietness and smoothness.
-
@bot said in Need Help with large scale printers tuning!:
...................... I am only assuming full step microstep resolution is a thing, anything else is just for quietness and smoothness.
That seems perfectly reasonable to me. I keep toying with the idea of doing the gearing thing with "remote" motors - one day I'll find the time........