Curve acceleration stutters

Has anyone notice when cutting circles in Lightburn that circles are cut in sections and the laser seems to have a slowdown in each section before continuing?

I made a simple test of cutting 5 circles inside each other of different sizes.

Cutting in both RDworks and Lightburn,

In Lightburn, the circle seems to cut the circle in 4 sections, where the laser would speed through one part, slows down and then speeds to the next.

When I do the same test in RDworks, the laser would run smoothly all the way around the circle.

I’ve changed my acceleration values, but makes no difference in either software.

Edit: I did some additional runs at difference speeds. It seems that when running at a higher speed of 400mm/s, both software seems to have the same issue.

If you’re running curves at really high speeds, you might need to decrease the curve tolerance value used to subdivide curves being sent to the laser. Try dropping this to 0.04 or 0.03:

That will produce shallower angles between the segments, so the motion planner won’t need to slow for the ‘corners’. This is only an issue at really high speeds.

Thanks Oz.

Is the curve tolerance the equivalent to setting the small circle speed limit?

No - it does not affect the speed of the job. It controls the smoothness of the output sent to the laser. Read here: https://github.com/LightBurnSoftware/Documentation/blob/master/Settings.md#curve-tolerance

Hi Oz,

I just had a chance to try out the Curve tolerance, but it didn’t have much effect on the stuttering.

I did play around with my acceleration settings.
Lowering acceleration down to 25mm/s seems to make the lines run really smooth, but that would slow the machine down also when cutting straight lines.

However, in RDworks, if I setup the Small Circle Speed Limits, this works out, to slow the speed down for the curves, but doesn’t effect straight cuts.

So this brings up my questions, do we have any settings similar to small circle speed limits in Lightburn?

There isn’t at this time, no. Decreasing the acceleration that low would have the opposite effect - It’s likely just made the whole job go slower. Increasing it from what you have should make it able to take those small corners faster.

What speed are you running, and what size of circles are you cutting? So far you’ve spoken in generalities, but if you give me specifics it helps. I assume you actually have the small circle speed limit enabled on RDWorks?

The stuttering is just the motion planner slowing for the corner and speeding back up again. If your settings are reasonable it might sound funny, but shouldn’t hurt anything.

I wonder if increasing the curve tolerance would help - you might actually be hitting what’s called a look-ahead limit. If the motion planner in the controller is getting too many small segments, it might not be able to plan far enough ahead to know that it will be able to stop in time. This is common on open source GCode systems trying to run raster engraving jobs. A simple test to see if this is what’s happening would be to create a square, convert it to a path, and then use the node editor to add a lot of extra nodes to it, but leaving it as a straight line:

You might need more than this, but it gets the idea across:
image

If that hits a speed limit, then it’s the lookahead buffer, not the corners, and increasing the curve tolerance would help.

I can likely add the corner speed limit, but I’ll have to figure out how it actually works and where the thresholds are.

I’m doing a 100mm circle at 400mm/sec speed.

In RDWorks, I’ve tested the small circle speed limit up to 100mm/sec and the circle still runs smooth. Haven’t had a chance to run at a faster speed yet.

I believe you hit the nail on the head with the motion control stopping at each end point and then changing direction. That would describe what I’m seeing in the circles at higher speed.

I have my engraving acceleration at 10,000(x)mm/sec, and so far haven’t had a lost step issues.
Right now, cutting acceleration is set at 2,000mm/sec, so next step would be to try a higher acceleration to see if I can achieve a higher cutting speed and report back.

I’ll also try to increase the Curve tolerance and see if there are any changes to how the controller reacts when it hits a corner.

Update: I ran a couple of tests.

1: Increasing curve tolerance (max in Lightburn) to 0.500mm
The resulting was the circle ran smoother, but the larger circles will still step through sections, and not run as smooth, whereas smaller circles did run smoother without stuttering.
2: Increased the acceleration setting to 7,000mm/sec.
This did not make any difference compared to the lower 2,000mm/sec acceleration.

So my question would be, how high can the curve tolerance be before it has an adverse effect on other settings?

Ultimately, I have a 12" circle that I cut on cardstock from time to time, but with the motion control “stuttering” I get a spot where the beam burns the edge of the sheet.

Engraving is just back & forth, so it’s less prone to resonance (unless you engrave something really narrow). If your system can handle that, you can likely go to 4000 or 5000 for the cutting accel, and maybe just limit the Y axis accel in the vendor settings if that axis needs to be a little lower.

2000 is pretty low, but it depends a lot on the machine - larger machines carrying more gantry weight have to be more conservative.

The machine is a 1390 bed, and so far the 10,000mm/sec x-axis acceleration hasn’t had any ill effect.

Granted, I’ve only had the machine for a month now.

Is there any update on your issue and resolution?

I haven’t found a good working solution for this yet.

My understanding is unless we have a way to limit speed on curved lines, there will be a stutter.

I found Ruida’s smaller circle speed limit, is very helpful in this circumstance, but doesn’t stop this altogether.