Shapeoko & Nomad - Feeds & Speeds Charts

Yes, but the machines accelerate pretty quickly, and usually even a sharp corner is actually a slightly radiused move, so the machine moves through it pretty quickly.

I’ve often theorized that a tool which would import a G-Code file, then parse it and examine the physics of the cutting and dynamically adjust spindle speed and feed rates within the file would be helpful — the more practical approach taken by the industry is to use toolpaths which result in the endmill moveing consistently and taking a consistent chip.

so eh… I built most of such a tool. Well it only adjust feedrate since that’s the thing the easiest to adjust.

spindle speed tends to take seconds to adjust so doesn’t work on a small scale.

half of the tool is nicely online now, where you can visualize carbide create output and see forces in action.
(the half where it outputs new gcode with dynamic feed rates isn’t yet in the web format)

5 Likes

Ok new tool:

https://fenrus75.github.io/FenrusCNCtools/javascript/gcode2gcode.html

takes gcode as input (really only tested with Carbide Create output) and it computes cutting forces… and it adjusts feedrates dynamically to keep forces constant with few limits. The resulting gcode can be saved and run

  • it won’t make the tool go faster than the original, no matter how low the load is, only slower
    (I should make an input field for allowing a speed override)
  • if a G1 path has varying loads for the duration of that path, the tool will split the toolpath up into multiple G1 statements

Things I want to add to this

  • allow max speed override for lightly loaded paths
  • allow saving gcode into one-file-per-tool
4 Likes

Oh, my God.

I am flat out amazed and thrilled.

Here is a question — if you just made all of your toolpaths at the fastest possible speed could you then run the files through this to adjust them to something reasonable? If that’s the case, couldn’t you just do a global unlimiting option on import to effectively get the max speed override?

1 Like

Sort of but there is one piece missing for that (a tool library)

Basically what is there today is

Force ~ tool engagement * speed * depth of cut

Where target for Force is 50% * cc ipm * depth of first layer as best guess

And for each micro segment of a path that first equation is solved for speed (tool engagement and depth are known from math on previous g1 lines)
(And speed is then clipped to sane values)

What you suggest is more or less equivalent to having a target value that is predefined in a tool database of sorts… at least if I understand you correctly

4 Likes

Well, you’d need a tool library to provide the endmill characteristics (couldn’t you load them from the .CSV files which Carbide Create uses), then once the file is opened it would load the tool library so that it could do all the physics calculations. The user would then note the maximum forces acceptable and the program would adjust the G-Code file to match, right?

1 Like

basically yes…
it’s certainly not impossible… just not implemented yet.

1 Like

Imagine for a minute, if CC supported a plugin framework…for such great ideas!

3 Likes

OMG, don’t start them on another rebuild! :smiley:

I bet Vectric would pay $$$ for that. Carbide3D might pay $ too

When you say speed, you mean feed rate rather than spindle speed (RPM) or cutting speed (SFM), right?

feedrate indeed

(not RPM)

2 Likes

speed override implemented

basic assumption is that the speed you put into CC is for a 50% cutter engagement.
Between 50% and 100% actual, the speed will slow down (to half speed at slotting/100% engagement).
If you set a speed limit increase, if you have less than 50% engagement it will go faster than the value set in the original gcode, upto the the speed limit set on the webpage.

1 Like

I don’t know why but I used the wrong conversion from inch to mm, have corrected this now!

1 Like

Thanks for your reply, Trying hard to get my head around feeds and speeds, this threw me off a bit but all makes sense now. I thought I had understood, but it is scambling my brain even more than normal working in inches, mm and rpms lots of range in different scales!
I’ll delete my post now as it isnt really adding much to the forum!

This is exactly what I was looking for. Thanks!