XYZ feed rate on 3d cut

So I am trying my first 3D cut, and I have an issue with the feed rate being too high on the Z. Instead of using the F(z) plunge rate, it is using the F(xy) rate. I am doing a contoured cut, but it is flat along the x axis, and I am cutting foam, so I would like to use high F(xy) rates. Other than manually changing all the z moves to a lower rate, how can you prevent the xy feed rate from being applied to the z rate when estlcam generates the gcode? The picture is the profile of the cut.

A contour cut is limited by the slowest axis. That doesn’t look like that contour would be effected by the Z axis speeds at all. Link to your gcode?

I have the xy speeds high enough that it causes the Z to skip when going up, and sometimes down. If I have to travel at Z limit it will take hours to complete the cut. Here is a screen shot of the code.

That first code snip was when I was trying different repeat values after reading some other posts with similar issues. You can see on the second line it is using the high xy feed for the z. Then later on once it gets into the contoured parts, the z is still getting the higher rate.

So ultimately what I want it to do is: start at zero and cut the full width along x fast, then move forward on y with high step over, and cut back to the other side of X fast. Drop what ever z it needs to, and then back across x, and so forth. It really shouldn’t need to combine the Z into the xy movements, but it is. If I have to do all of the movements at 480 that will suck. The foam piece is 8 inches wide, 24 inches long, and at the deepest cut about 1.5 inches deep. I have to make a bunch of these, and even with the super fast xy it still takes 33 minutes for one. I guess I can edit the gcode and rewrite the z on a separate line with it own slower feed, but that is 1300 lines of code to mess with.

In this case, its simple gcode. But the CAM doesn’t know that. What if you reduced the max z feed rate in marlin to 480?

M203 Z12

http://marlinfw.org/docs/gcode/M203.html

I’ve never done a 3D carving, but it does seem possible for the CAM to respect your F(z). Jist not sure how we can change that from the outside.

1 Like

Yeah super simple. It’s like a giant crown molding. It does seem odd to me that Estlcam does respect the z plunge limit on 2d, but not 3D. I can see about changing the max in marlin, but it also seems like that should already be set to a limit that works for this design, but maybe not?

I think it’s set pretty high, 30 IIRC.

It should tell you if you just type M203 in the terminal. You can also find it in the lcd menus.

The reason it’s so high is that there are machines that are much smaller, doing 3D printing or laser stuff, so it’s hard to pic the right number. I do wonder if it had just been limited to 10mm/s if that would have been easier.

If you orient the path 90 degrees there will much less Z movements.

I’m not certain what you mean Ryan? Like the z plunge angle?

Yeah if it’s set to 30, but should be 8 for a LR2 then I guess I will want to make that a permanent change in firmware.

You can add it to the top of your carve for now. But yeah, changing the firmware is a good idea if it works.

1 Like

Here is the start of the toolpath. It usually skips at the first big jump up.

So if I change the z federate in marlin to 8, then it should ignore the gcode value from Estlcam correct?

It will limit the Z portion of the motion to 8mm/s. So assuming your X limit is high enough, a move that is equal amounts in X and Z will be limited to 8mm/s in Z and 8mm/s in X. If the gcode asks for 1mm/s, then it will use that instead.

At least, that’s how it’s supposed to work.

1 Like

I guess I don’t understand how this would be different than just changing the F(xy) to 480? It sounds like the xyz movements can’t be individually set for each axis. I need it to go fast in the x (3000) and slow in the z (8). It seems like if I set the max in marlin, then the gcode should do any speed up to and including the limit for each axis. In marlin it has individual limits, but I guess that just limits a movement speed along only that specific axis when it does not have a xyz command? If there is a multi axis movement, it can only go as fast as the slowest component ? Yuk. I may have to just separate out the lines manually.

So is it possible to have multiple feed rates on a single line? Or do I have to bump the z to a new line?

X300.0000 F3000 Z-5.0000 F480

Not directly. typically it is always a compound move simultaneously, so a 10mm move in X and a 1mm move in Z happen at the same time, so Z would actually limit you here. Set the cam as I suggest, adjust the direction of cut to a more suitable angle. I have no idea how to explain this without diagrams. There is a reason you can change the cut direction in the STL menu of ESTLCAM, a 90 degree shift can cut your cut time drastically. If I am not being clear make two test cuts and one should be significantly faster.

Kinda odd this has not come up in at least a year and I have tried to explain this 4 times in the last 24 hours…Hmm.

Do you mean the parallel to x or parallel to y milling strategy? Or is it buried in a menu?

also, it seems like if I split the combined xyz movements and drop the z into its own line, I should be able to set the speeds manually. A lot of typing, but for as many of these as I need to make, it seems worth it.

Yes. Make it parallel to the lest vertical changing side. That way instead of continuously changing the Z, it only actually moves up at the end, that way XY feedrate will be the only limiting factor.

 

That is not how CAM works, a 3D shape requires all 3 axis to move simultaneously. A 2D cut does this automatically, 1-2 axis simultaneously.