Am 08.10.2013 um 09:07 schrieb Steve Blackmore <[email protected]>:

> On Mon, 7 Oct 2013 11:19:39 +0200, you wrote:
> 
> 
>>> 
>>> Reminds me - must be able to toggle spindle off/on during pause.
>> 
>> thats a good point, that would likely also suggest at-speed before reentry 
>> if the spindle is turned on
>> 
>> if we use the offset pose scheme this is how it could work for resume:
>> 
>> honor NML spindle commands
>> if the resume offset pose is zero:
>>  wait for at-speed before starting reentry move
>> else:
>>  move to resume pose
>>  wait for at-speed at resume pose
>>  start reentry move
>> 
>> sounds right?
> 
> Sounds OK to me - oops - also needs same for coolant.

folks - please think through all features which need to work during pause, and 
post what you need. 

So far I have spindle, mist, flood. I'd rather do this once only, not piecemeal.



>> whatever we decide, the choices will be limited by the 'react to HAL pin' 
>> model in the - currently limited - context of actions initiated by motion 
>> itself during pause
>> a more general solution would be possible if we had a way for say a Python 
>> HAL component to issue motion commands
>> this would suggest a generalisation of the 'switchable motion queue' 
>> concept: on certain actions, say pause, motion switches to a different queue 
>> and processes commands from there until a switchback operation is generated
>> now commands to this alternate queue could come from a HALcomp - for 
>> programmable behavior; or an interpreter - for MDI during pause
>> 'pause' gets a slightly different meaning: besides 'rest this queue' it also 
>> means 'switch to an empty queue until told otherwise'
>> the switching operations need thought wrt saving/restoring state
> 
> The way M6 is processed (with Les Newell's fix) would be ideal if it
> could be integrated somehow into the pause behaviour.

repeating myself: you _can_ change offsets, for instance by touchoff, on the 
fly during an M6

please give this a try: 
master:configs/sim/remap/manual-toolchange-with-tool-length-switch to see how 
it is done, several people have running configs with manual toolchange and 
automatic tool length measurement based on this code.

I already outlined why Les' fix is so narrow in applicability that it cannot 
serve as the basis for a way forward; great if it works for you


> I guess that Stop, Pause and M6 all have their own unique code and ways
> of handling movement and queues, when in reality M6 is really just a
> pause with a few additional commands?

the key difference between pause/resume and M6 is that the interpreter waits 
for an M6 to complete before proceeding, and re-reads offsets when then M6 has 
completed. This means that an offset change during an M6 will be honored _right 
after an M6_. This is not the case during pause/resume because the interpreter 
(actually the canon layer) does not get a second chance to consider changed 
offsets. 

I already outlined in my Sept 27 'JogWhilePaused Proposal' what is needed to 
'fix' this, and it aint for the faint of heart. 

- Michael



------------------------------------------------------------------------------
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=60134071&iu=/4140/ostg.clktrk
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to