Daniel Rogge wrote:
>
> The interpreter is nowhere near the bottleneck that the 1-block lookahead is. 
>  To satisfy my own curiosity I wrote a 1000-line long program (1000 lines is 
> the default interpreter lookahead, set in emccfg.h) that started with M3 
> S500, ended with S1000, and consisted solely of .01mm G0 moves.  Since 
> active_settings[] lives in interpreter time, not motion time, the displayed S 
> word in the Active Gcodes field of Axis tells you when the interpreter hits 
> the S1000 line.  It's nearly instantaneous - the interpreter is at the end of 
> the file before motion even starts.
>   
OK, a good data point.
> Previous posts have defended the one-block TP lookahead (or more properly 
> put, the requirement that the machine be able to come to a controlled stop 
> during any one move).  Most defenders of the current TP point the blame at 
> cheap CAM for outputting small line segments instead of G2/G3.
Well, clearly my torture test is a stupid program, a single G02 would 
have done a better job of
the desired path.  BUT, there are contour tasks, like depth-engraving a 
picture, where there
will be constant tiny movement in one axis while another runs at a high 
constant speed.
This is where the one-block lookahead falls down, the "scanning" axis 
should be able to
run quite fast if the "engraving" axis is moving in very small increments.
>  This doesn't help moldmakers much, who by the nature of the part need small 
> line segment code.
Exactly.
>   Furthermore as more CAM companies implement constant tool engagement 
> strategies we will see more and more small line segment code.  The big 
> controls compete on the ability to handle small line segments - HAAS charges 
> an extra $2000 to go from 40 to 80 blocks of lookahead.  While bigger 
> accelerations help ameliorate this lookahead restriction, they don't fix the 
> problem.  I would love to see improvement in this area, but I'm hesitant to 
> dive into development until I have a better feel for the underlying code.  
> Michael seems to be intimate with this code after some of his thought 
> experiments with VPT - perhaps he would be willing to provide an outline on 
> he thinks it would take to change the TP to better handle small line segment 
> code.  
>   
Right, I have neither the time nor the expertise to dig into this 
myself.  I have a general
concept of what the problem is.  If it was all vectors, I think I might 
actually be able to
code up something, but when you throw in arcs, tool offsets, 
acceleration, etc. it becomes
a complex mathematical problem.

One approach I have mentioned, to no avail, was a CAM "trust me" 
option.  An internal
switch that defaults to the current scheme could be set to remove the 
stop on next block
velocity limit, and assume the CAM will never order acceleration greater 
than the
machine can handle.  This would, of course, allow following errors or 
servo shutdowns
if the CAM didn't obey the limits, but would allow higher speeds for 
this kind of
contouring.  Just a dirty way to get around the current TP limits.

Jon

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to