A linuxcnc developer has made some impressive improvements to linuxcnc trajectory planner. At this point we think it may be stable enough to have a wider group test it.
Some history.
Currently the trajectory planner in linuxcnc uses parabolic blends to transition between segments. It also has the limitation that it has to be able to stop by the end of the next segment. (effectively making have 1 segment look-ahead.) For most things - this isn't a problem. As you get into higher speeds like routing and such - the limitation starts to show itself.
Robert (the developer working on this) has added circular blending to the TP. This allows him to calculate what is need to look further ahead in the programmed path. (As I understand it - the math is harder with parabolic blends). He has not solved for every segment-segment transition. Currently he has look-ahead working for
Line-line transitions
Tangent line-arc transitions
Tangent arc-arc transitions
He hopes to study other transitions and add them in the future. His main plan was getting line-line transitions working as that is what a lot of 3d tool paths out of cam software produces. Any unhanded transitions fall back to parabolic blends. (so it still blend but has to slow back down to current TP performance)
Here is an example of the performance increase - this config is 500ipm - 30in/sec^2 (sorry - pretty crappy video)
Old vs New TP - YouTube
The current tp peaks somewhere around 100ipm(first run) - the new tp peaks over 400ipm(second run)
To test this you need to build the rip version of linuxcnc.
These are the basic steps..
You will want to get familiar with this
LinuxCNC Documentation Wiki: Installing LinuxCNC
The basic steps in terminal
git clone git://git.linuxcnc.org/git/linuxcnc.git linuxcnc-beta
cd linuxcnc-beta
git remote add github-robE https://github.com/robEllenberg/linuxcnc-mirror.git
git fetch github-robE
git checkout -b 3d-blend-arc-techdemo github-robE/circular-blend-arc-beta
cd src
./autogen.sh
./configure --enable-run-in-place
make
sudo make setuid
cd..
. ./scripts/rip-environment
linuxcnc
^ that should launch the run in place version linuxcnc with the new TP...
It is basically the same as the wiki link except it is also pulling the patches from Robs branch.
You are almost done... There are some changes to the ini file
In the [TRAJ] section you need to add a few lines
ARC_BLEND_ENABLE = 1
ARC_BLEND_FALLBACK_ENABLE = 1
ARC_BLEND_OPTIMIZATION_DEPTH = 50
ARC_BLEND_SMOOTHING_THRESHOLD = 0.4
So - to run the RIP version
Open terminal
cd linuxcnc-beta
. ./scripts/rip-environment
linuxcnc
This is still pretty new - so be careful and let us know of any issues..
Also - if you have some gcode programs that you think would be a good test for the new tp - please post them.
sam