Welcome! Log In Create A New Profile

Advanced

Testing the effects of microstepping and segmentation on print quality

Posted by dc42 
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 12:57AM
I'm now officially puzzled.

What would be causing that tree ring pattern? It has a period of about 16mm. 16MM!! That doesn't line up with anything that I can think of. It doesn't seem to change period when changing the microstepping. It does disappear when using TMC2100 drivers, although other artefacts appear, possibly related to segments (although I'm not sure about this yet).

This is with 0.9 degree steppers, 20 tooth pulleys, 160 steps/mm as a baseline.

So it has a period of 160 motor steps, or 2560 microsteps, or 0.4 motor rotations... wha? I'm stumped.
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 02:34AM
Why are you getting tree ring patterns on vertical sides of your print? I can't see any reason why you would, unless you are using a layer height that is not a whole number of microsteps, or you are using some sort of skew compensation so that the face is not quite vertical. It's on top solid infill that you can expect tree ring patterns.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 02:43AM
@nebbian
Do you use v-slot wheels on your delta? It seems the tree rings pattern changes with z-height, so it might be an imperfection in a wheel or the slot itself.
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 05:44AM
Quote
o_lampe
@nebbian
Do you use v-slot wheels on your delta? It seems the tree rings pattern changes with z-height, so it might be an imperfection in a wheel or the slot itself.

I used to, but I switched to linear rails in the recent rebuild. You can see an example of the print quality I used to get with wheeled carriages at [miscsolutions.wordpress.com] where I compared 1.8 and 0.9deg motors. Those prints were done using a Duet 0.8.5.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 11:06AM
Quote
dc42
Why are you getting tree ring patterns on vertical sides of your print? I can't see any reason why you would, unless you are using a layer height that is not a whole number of microsteps, or you are using some sort of skew compensation so that the face is not quite vertical. It's on top solid infill that you can expect tree ring patterns.

Thanks DC, that was it. Aliasing. Layer height wasn't a whole number of microsteps.

I now have a dozen cubes on my desk, all labelled, with varying degrees of ripple/moire. More to come as I wrap my head around this.
Re: Testing the effects of microstepping and segmentation on print quality
April 02, 2017 09:21PM
Hey DC,

Can you please print a cube at 1/16 ustep, no interpolation, with a layer height of 0.101?

I'm hoping to see that tree ring pattern on the front face.

Thanks in advance.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 02:32AM
Quote
nebbian
Hey DC,

Can you please print a cube at 1/16 ustep, no interpolation, with a layer height of 0.101?

I'm hoping to see that tree ring pattern on the front face.

Thanks in advance.

If we were able to "force" the ring tree pattern and then print stuff in laywood filament, it would be a big bonus.
Pretty interested to know if it could be done on a cartesian printer too?
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 03:45AM
Quote
o_lampe

If we were able to "force" the ring tree pattern and then print stuff in laywood filament, it would be a big bonus.
Pretty interested to know if it could be done on a cartesian printer too?

I don't think it would be easy on a cartesian, you'd have to very slightly angle the face backwards, and introduce a very slight curve into it. Not impossible, but a bit of frigging around with the model.

My mind was blown when I realised what was going on. It's similar to pointing a strobe light at a fast spinning pulley, and seeing the pulley very slowly rotating. The difference between layer heights on my tree ring print is 2 full steps, but due to the mismatch between layer height and steps/mm, the offset was slowly drifting so that one full step took 80 layers to rotate all the way around. Obviously there are is a lot more than 1 full step happening between one tree ring and the next, it's just the aliasing that's causing this effect to be recognisable. There's another trick that I discovered that can completely eliminate the vertical ridges that are to do with steps. I'm still to collate the images, but it's a good trick. You can then see what ridges are caused by ringing, and which are caused by segments.

I'm pretty sure those tree rings ridges coincide with full steps, they don't get closer together as you bump up the microstepping.

Next I'm going to try fiddling with the decay rate on my drivers.

Edited 1 time(s). Last edit at 04/03/2017 03:49AM by nebbian.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 04:04AM
Quote
nebbian
I don't think it would be easy on a cartesian, you'd have to very slightly angle the face backwards, and introduce a very slight curve into it. Not impossible, but a bit of frigging around with the model.
I would rather modify the slicer. Something along the lines of black & white image which would be mapped on the wall. Color transition in the image would represent micro step difference in the wall. Kind of how bump mapping works in 3D stack.

Edited 1 time(s). Last edit at 04/03/2017 04:05AM by hercek.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 11:30AM
I had those tree ring stuff when I was using the 8825 ( remember my build post nebbian, we determine that was the "low current zone" that miss step that was doing that) , I was using the same radds and rrf firmware I use now , the difference is im now using the raps128 in 1/64 in 24V instead of the 8825 in 12V in 1/32. For me the driver switch make them disappear I change nothing of the machine , still on original V slot carrier , same clone head , same extruder.

The TMC2100 so far do not look like a good driver, I read the post in general a couple of guys include you have a hard time to set them up, lack of torque missing step etc. I think you switch to a 32 bit re arm right ? maybe its time to invest in SD6128 or th6128 and give them a try im pretty sure those gonna fix your tree ring problem like it did for me.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 07:59PM
Groupb, I'm running SD6128 on my Re-arm, they are excellent, especially when changed to fast decay.

So far on the Re-arm I've tested A4988 on 1/16, TMC2100 at 1/16 interpolated, and SD6128 in 1/16, 1/32 and 1/64. The least ripple is a close match between TMC2100 and SD6128, but I think the torque on the TMC's is too low. You still get ripple on the SD's when in mixed decay, but change to fast decay and they get a lot quieter, as well as much reducing step ripple.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 08:56PM
Strange, when I switch to TH6128 they disappear for me, still have them in mix decay too. For me it was stepper driver problem at 100% , but even with my old 8825 the tree artefact was not as bad as the example you show.

Are you able to take one stepper out and hook it to a arduino with a simple step pulse code and hook it up to a multimeter to read the A on one of the stepper coil ? I did this to check the right A for th6128 cause the direction of Angelo to set it between X and X volt was not enough for me, doing this you see them go from max+ to Max - so if it jump step in the middle near 0 A you kinda see it and how much the jump is.

Edited 1 time(s). Last edit at 04/03/2017 09:01PM by GroupB.
Re: Testing the effects of microstepping and segmentation on print quality
April 03, 2017 09:44PM
GroupB,

I've worked hard to make the ripple more visible in my pictures, you need reflective filament, and just the right lighting, to see it. It's very hard to see with matte filament.

Setting the decay rate on the SD6128's is really easy, there's a simple pair of pads that you jumper with some solder. I'd do it just to make the drivers quieter, if nothing else.

I've done enough experiments now to be confident that I understand what's going on, and I'm very happy with the improvement in print quality. I pushed the RAMPS+A4988 combo as hard as I could, and now the Re-Arm + SD6128 combo is a big jump forwards.
Re: Testing the effects of microstepping and segmentation on print quality
April 04, 2017 01:30PM
Anyone have a good way to rule out the filament as a source of the issue? I find when I check my sainsmart dilaments, its diameter varies in an oscillating pattern. Two perpendicular measurements taken per point letting me approximate its cross section, which is roughly consistent but still leads me to believe it's truely an oval cross section making a corkscrew shape that I have to hope is a consistent volume. Probably made by deformation in the spooling step of manufacturing. Can't shake the feeling that could be the source of the larger banding frequencies.

Edited 1 time(s). Last edit at 04/04/2017 01:31PM by masterbinky.
Re: Testing the effects of microstepping and segmentation on print quality
April 04, 2017 02:31PM
Quote
nebbian
Hey DC,

Can you please print a cube at 1/16 ustep, no interpolation, with a layer height of 0.101?

I'm hoping to see that tree ring pattern on the front face.

Thanks in advance.

I did that. No sign of the tree ring pattern:



Thinking about it, the use of segmentation-free movement will avoid producing a tree-ring pattern, because it will change the step timing with each layer so that the head follows the required trajectory. It's only at the corners, where it has to round to the nearest step, that there will be an effect. Under magnification, I can just see a slight sawtooth pattern at the corners, with the expected 10mm repeat interval.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Re: Testing the effects of microstepping and segmentation on print quality
April 04, 2017 08:53PM
Thanks for doing the test, but you really need to reflect light off the face to have any chance of seeing the tree ring pattern. Just looking at a surface in diffuse light won't tell us anything. Even matte filament won't show it, you need shiny filament.

I don't think that the tree ring pattern has anything to do with segments either. I'm sure that it's to do with discontinuities in the stepper motor current as it crosses the zero point. Changing steppers to fast decay (instead of mixed decay) really reduces this effect. Perhaps your duet drivers are already in fast decay.
Re: Testing the effects of microstepping and segmentation on print quality
April 04, 2017 08:57PM
Quote
masterbinky
Anyone have a good way to rule out the filament as a source of the issue? I find when I check my sainsmart dilaments, its diameter varies in an oscillating pattern. Two perpendicular measurements taken per point letting me approximate its cross section, which is roughly consistent but still leads me to believe it's truely an oval cross section making a corkscrew shape that I have to hope is a consistent volume. Probably made by deformation in the spooling step of manufacturing. Can't shake the feeling that could be the source of the larger banding frequencies.

It's unlikely that the period of your filament diameter would line up with your layers.

To test, print a tapered cylinder or pyramid. If the banding stays at the same period all the way up the part, then it's not the filament. If it gets longer, the narrower the part, then it's possible that it's the filament. It could also be related to heat bed flex if you are using bang bang control.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 02:21AM
Quote
nebbian
Thanks for doing the test, but you really need to reflect light off the face to have any chance of seeing the tree ring pattern. Just looking at a surface in diffuse light won't tell us anything. Even matte filament won't show it, you need shiny filament.

I don't think that the tree ring pattern has anything to do with segments either. I'm sure that it's to do with discontinuities in the stepper motor current as it crosses the zero point. Changing steppers to fast decay (instead of mixed decay) really reduces this effect. Perhaps your duet drivers are already in fast decay.

I looked at the front face in various lighting conditions, and I never saw any sign of tree ring patterns.

The TMC2660 drivers on the Duet WiFi are highly programmable. We normally run them in spread cycle mode, which adapts to the motor characteristics.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 06:36AM
dc42, was your last picture printed at 50 mm/s? What acceleration? What kind of belts do you use?
The reason I'm asking: I do not care much about the patterns on the walls; I would like to get more info about the "ringing" on the left corner.

I did not experience this myself but I read that regular patterns on prints can be also caused by belts either not fitting the pulleys precisely or running the teeth side of a belt over a smooth idler (which happens when belt is not twisted before running it around idler). But I guess almost nobody has this problem.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 06:40AM
Also, if using the robotdigg carriages and 16 tooth pulleys, the teeth rub on the carriage as they go past. 20 tooth pulleys don't have this problem.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 10:37AM
Pop quiz:

Which one setting was changed between these three cubes?



Bonus points for guessing the actual setting values.

Edited 1 time(s). Last edit at 04/05/2017 10:37AM by nebbian.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 02:42PM
Quote
hercek
dc42, was your last picture printed at 50 mm/s? What acceleration? What kind of belts do you use?
The reason I'm asking: I do not care much about the patterns on the walls; I would like to get more info about the "ringing" on the left corner.

I did not experience this myself but I read that regular patterns on prints can be also caused by belts either not fitting the pulleys precisely or running the teeth side of a belt over a smooth idler (which happens when belt is not twisted before running it around idler). But I guess almost nobody has this problem.

Print speed 50mm/sec
XY acceleration 3000mm/sec^2
Jerk 600mm/min
GT2 belts on 16t drive pulleys and 16t toothed idler pulleys
1.68A motors running at 1.0A

I'll try repeating the print with different acceleration/jerk/motor current.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 05:33PM
I guess it is GT2 glass core belt 6mm wide, right? (these are very common)

There is tiny bit of "ringing" visible on my test print I posted before(*). I did it too at 50 mm/s (so that is comparable to your prints). But other parameters were different. Acceleration was 8000 mm/s², jerk 20 mm/s.

I use steel core T2 belt. I guess the same kind of belt some people reported problems with. Allegedly the steel core is failing on small diameter pulleys. Although I did not see this problem yet. My pulleys have diameter of about 12.7 mm (stepper) and 14 mm (idler).

"Ringing" is well visible on my setup when I print at 120 mm/s (everything else the same).

As far as I'm concerned, you do not need to do more tests relating to "ringing". I was just curious what were the parameters related to the picture you posted.

(*) Here is the best visible "ringing" from all 4 corners. On two corners it is not recognizable from the segmentation lines. On other two corners it is visible when lit properly.


nebbian: Well, based on you previous posts it should be layer height xor steps per mm changing on a firmware with delta segmentation. The bottom has layer height as a nice multiply of the micro step length. The middle has very small difference (something like layerHeight = (k+ε) * microStepLength. Where k is positive integer and ε is a very small rational number; let's say somewhere in the range of 1/1000. The top picture has ε much bigger, probably somewhere around 1/k.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 06:57PM
Hercek wins 1000 internet points!

Layer heights were 0.2, 0.202, and 0.1618 (multiple of golden ratio to spread the peaks).

All prints were with A4988 drivers to accentuate the step issue.

Btw, this has absolutely nothing to do with segments, and everything to do with stepper drivers that are in mixed decay mode.

Edited 1 time(s). Last edit at 04/05/2017 06:59PM by nebbian.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 08:05PM
Hmm, interesting. I did not know that A4988 had problems with mixed decay mode ... or better its slow decay part on the raising edge (from zero to peak) of the driving current.
If it is a decay related problem then:
  • It should disappear when you switch it to fast decay. Did you try it?
  • It should be speed dependent. The error should be smaller when you print quickly. Well, even segmentation error will be smaller at faster prints. But slow decay related problems should be more influenced by speed. Well, depends on the resistance and inductance of your motors.
It can be computed whether slow decay is a problem. I should check this on my printer. Maybe my lines are not related to segmentation but to the decay mode too. It makes sense. Decay mode problem on my printer should be in the range of about 0.1 mm. Segmentation error should be in the range of 0.0125 mm.

DRV8825 are known to have slow decay problem: [www.engineerination.com]
Fast decay is an easy solution for people who do not mind noise.

Decay related problems will degrade numerical based calibration too.
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 08:32PM
I haven't changed these A4988 drivers to fast decay mode (hard to find info on how to modify my particular driver boards), but I did a similar test with SD6128's which are easier to modify. By default the SD6128's have much less of a problem with decay, but they still show a faint version of the same pattern (that doesn't change size with different microstepping). When I changed them to fast decay they became a lot quieter, and the pattern disappeared. So it's well worth doing.

If you know how to easily change these drivers to fast decay, then I'd love to be able to do this test.
[www.ebay.com.au]
Re: Testing the effects of microstepping and segmentation on print quality
April 05, 2017 08:57PM
DC42, is there any chance that you could try a cube at 0.161 layer height, 1/16 microstepping, no interpolation (if you're not sick of making cubes by now). Or if anyone else has a delta with 200 steps/mm, this would be a good test to do.

The reason mine was making patterns at 0.202 was that full steps happen on my machine every 0.1mm in Z height (my steps/mm at 1/16 is 160). So 0.2mm layer height means a perfect alignment of steps, 0.202 means a slight drift.

On your machine with steps/mm of 200, full steps happen every 0.08mm. So printing at layer heights of 0.1 will spread any artefacts out over 5 layers. Printing at 0.08 or 0.16 will line up the full steps. Printing at 0.161 should make the steps drift in and out of phase with the layer height, possibly resulting in a moire pattern.

I'd be very interested to see your results.

Edited 1 time(s). Last edit at 04/05/2017 09:06PM by nebbian.
Re: Testing the effects of microstepping and segmentation on print quality
April 06, 2017 02:38AM
Quote

If you know how to easily change these drivers to fast decay, then I'd love to be able to do this test.
[www.ebay.com.au]

IIRC there is a resistor close to the reset and sleep pins that can be bridged to get fast decay.
But don't quote me until you get confirmation.... :/

I checked my old stock of a4988 and there are two versions.

1: Not exactly sure, if there is a track to be cut, before connecting the throughhole with the pad.
edit: The ROSC pin is already connected to the pad and grounded through the 010 resistor ( maybe not in full fast decay mode though )


2: Unsolder the 101 resistor and bridge the pads.


Use at your own risk...

Edited 1 time(s). Last edit at 04/06/2017 02:48AM by o_lampe.
Re: Testing the effects of microstepping and segmentation on print quality
April 06, 2017 06:08AM
nebbian, based on this data sheet, you cannot set fast decay mode. You can set only mixed decay and in such a case you cannot control how much of the PWM period is fast decay and how much is slow decay. 31.25% of the period is always fast decay. Moreover the raising current quadrant is always in slow decay mode. That sucks. The blanking time (i.e. also the minimum on time) is 1 µs. If this time results in a too high current (which cannot be dissipated in the rest of PWM cycle) then you get "missed" micro steps. You need to slower the current rise (in the critical 1 µs peirod) or speed up the current decay.
The options you have are:
  • Decreasing the voltage (used to power steppers) will make current rise slower.
  • Steppers with higher inductance will make current rise slower. But it will also fall slower which can make problems at the falling current quadrant at higher speeds.
  • Steppers with higher resistance will make the current decay faster.
  • You can increase Toff time (therefore decrease the time percentage the driver spends in the forced-on 1 µs period). This will increase the audible high pitch noise because the PWM frequency will decrease. You would need to check the resistor connected to ROSC pin and increase its value ... at first maybe by about 2 times and try again. More precise value (to increase it to) can be find out using oscilloscope or even approximately computed if you know all the parameters (voltage, resistance, inductance).

Edit: Shorting ROSC to GND can be a good idea too. It should force Mixed mode for both rising and falling current quadrants with 30 µs period. Maybe it will be enough. It would be good if one can force mixed mode everywhere and also control the PWM period with ROSC. But this does not seem possible.

Edited 1 time(s). Last edit at 04/06/2017 06:29AM by hercek.
Re: Testing the effects of microstepping and segmentation on print quality
April 06, 2017 07:44AM
Quote
dc42
Quote
hercek
dc42, was your last picture printed at 50 mm/s? What acceleration? What kind of belts do you use?
The reason I'm asking: I do not care much about the patterns on the walls; I would like to get more info about the "ringing" on the left corner.

I did not experience this myself but I read that regular patterns on prints can be also caused by belts either not fitting the pulleys precisely or running the teeth side of a belt over a smooth idler (which happens when belt is not twisted before running it around idler). But I guess almost nobody has this problem.

Print speed 50mm/sec
XY acceleration 3000mm/sec^2
Jerk 600mm/min
GT2 belts on 16t drive pulleys and 16t toothed idler pulleys
1.68A motors running at 1.0A

I'll try repeating the print with different acceleration/jerk/motor current.

I tried reducing printing acceleration to 1000mm/sec^2 and the ringing is much less:



The corners bulge slightly at both edges - looks like I may need to increase the pressure advance.

Belts are 6mm glass core GT2.



Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Sorry, only registered users may post in this forum.

Click here to login