On 8/5/2013 4:33 PM, Michael Haberler wrote:
> 
> 2. motion underrun: this is a situation where motion runs out of
> commands for some reason, which might or might not be end of program
> (m2) or a queue buster
> 
> re 2: motion cannot tell, so it just stops:
> http://git.linuxcnc.org/gitweb?p=linuxcnc.git;a=blob;f=src/emc/kinematics/tp.c;h=c115d91f85070733f84f3ea03aa45f491215f3c8;hb=cab03d760374d7e322d48c8190c8f590eeec86df#l688
>
>  you might want to trap that situation too, either through a debug
> HAL pin, or a log message

Hmm...I'm not even going to _pretend_ to understand the trajectory
planner communication, but it seems REALLY suspicious that the first
thing the code does if the queue is initialize it (and resetting the
read and write pointers to zero).  I think this reset (the tcqInit call
immediately following the line you linked above) is happening on the
real-time side, so unless things are *REALLY* well coordinated I can
easily see the non-RT side getting confused about the queue pointers and
valid data getting dropped on the floor (which would totally explain
what I'm seeing).

I'll try to hack in a log warning or something and see if this code is
ever getting triggered.

In the meantime, does anyone know why tp.c / tpRunCycle()  is
initializing the &tp->queue if it's ever found to be empty?

-- 
Charles Steinkuehler
[email protected]

Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to