out of todays IRC discussion - making motion usable for EDM (maybe other things like swarf removal):
the idea came up for a motion pin 'backup' which would stop and revert the current move to its starting point; possibly several moves with a window. would the following approach be realistic: - a EMCMOT_SET_LINE or EMCMOT_SET_CIRCLE command would be added to the motion window of a given max window size (maybe just 1 to start with) - when during a coordinated move 'backup == 1' is seen: 1. motion would do the equivalent of feed hold but also flush the joint interpolators 2. looking at the current command, it would computer reverse kins from joint position, and generate a reverse move to the current commands starting postion, at feedrate (possibly corrected by a back-feedrate factor) 3. step back through the motion window until window size reached and stop until 'backup == 0' 4. from then replay the motion commands in window in forward direction until window exhausted - then start fetching motion commands again making any sense? what's unclear to me: - in 2, how to make sure joint motion has stopped - doing the feedhold equivalent doesnt necessarily imply instantaneous stop? - what the best place for keeping the motion window is: -- this could be either within motion, independent of task -- or within task, which would keep a window and possible could be told by a motion return code to 'step back in the window' which I think is more elegant; also error detection (eg steps which cant be (easily) reverted) would be at that level just a sunday afternoon idea -m ------------------------------------------------------------------------------ RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
