- LinuxCNC
- General LinuxCNC Questions
- Why does motion planning use linear interpolation instead of b-splines?
Why does motion planning use linear interpolation instead of b-splines?
- aeth
- Offline
- New Member
-
Less
More
- Posts: 12
- Thank you received: 0
25 Jun 2025 12:11 #330858
by aeth
Why does motion planning use linear interpolation instead of b-splines? was created by aeth
It's a question that I've been asking myself for quite a while. Linear interpolation is quite limited in its accuracy as well as its ability to maintain constant velocity. Have there been any attempts to replace that with higher order polynomials / b-splines / NURBS etc? I saw the recent great achievement to implement s-curve acceleration (add a setting for jerk), but here I'm thinking more about directly improving the motion planner. I understand that this is significantly more resource intensive, but honestly, for a modern PC it should be trivial to compute.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 18778
- Thank you received: 5187
25 Jun 2025 15:36 - 25 Jun 2025 21:36 #330865
by PCW
Replied by PCW on topic Why does motion planning use linear interpolation instead of b-splines?
I think the main thing here is that there are little real benefits of higher order
interpolation, at least for the speeds, accelerations, and servo period used on
typical LinuxCNC machines.
For example, using a relatively high performance metal cutting machine with say
100 mm/s cutting speed and 0.5G acceleration, the chord error caused by linear
interpolation at the highest centripetal acceleration and at a 1 ms servo thread,
is only about 0.6 microns.
The error just gets smaller a lower speeds and accelerations.
interpolation, at least for the speeds, accelerations, and servo period used on
typical LinuxCNC machines.
For example, using a relatively high performance metal cutting machine with say
100 mm/s cutting speed and 0.5G acceleration, the chord error caused by linear
interpolation at the highest centripetal acceleration and at a 1 ms servo thread,
is only about 0.6 microns.
The error just gets smaller a lower speeds and accelerations.
Last edit: 25 Jun 2025 21:36 by PCW.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- LinuxCNC
- General LinuxCNC Questions
- Why does motion planning use linear interpolation instead of b-splines?
Time to create page: 0.214 seconds