Hi All,
   I've made some progress on the trajectory lookahead features. To test
the idea of blending with arc segments, I modified the code to be able to
follow a tangent path without slowing down. There's no blending done in the
code yet, but it's able to follow G-code program that's been pre-made to
have only tangent lines and arcs. You can see the difference in speed in
the videos here:

http://www.youtube.com/playlist?list=PLTi4ghj9Dyag612Q75Gg8eTfhwrq1PvHu

For 0.004" segments on a machine with a max speed of 1.8 in/s and a max
acceleration of 15 in/s^2, the difference is pretty dramatic.

The code is available in my github mirror of linuxCNC. This code has
*ONLY*been tested in simulation, and may crash or behave unpredictably
if you
don't use the pre-optimized G code given below.

Here is the branch with my current changes:
https://github.com/robEllenberg/linuxcnc-mirror/tree/feature/arc-blend-demo

To see arc-blending in action, build this branch with simulation enabled,
and load/run the following G-Code file:

nc_files/random_blended_0.004in_1.8ips_15ips2_22-Oct-2013.ngc

To see a direct comparison of this run with the original blend method,
checkout this branch instead:
https://github.com/robEllenberg/linuxcnc-mirror/tree/feature/arc-blend-demo-original

Load and run this file to see the original parabolic blends on the same
path:

nc_files/random_*unblended*_0.004in_1.8ips_15ips2_22-Oct-2013.ngc

The next step is to add a routine in the tpAddLine function that creates a
blend arc segment between a previous line, and inserts it into the queue.
Once that's working, I'll add the optimizer to allow it to speed up and
slow down safely.

At this point, I'm curious if anyone can see any roadblocks or unintended
consequences of these changes. For reference, here's the more in-depth
writeup on this method that I posted a few days ago:

https://www.dropbox.com/s/o5he7ijpplkvc8r/Trajectory%20Lookahead%20with%20Arcs.pdf

Thanks!
Rob
------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to