Moving while paused
15 Oct 2017 17:25 #100404
by dannym
Moving while paused was created by dannym
Specific problem case is if this CNC router accidentally picks up a loose piece of wood on an upcut bit. It's happened. The piece will climb and spin with it indefinitely at high RPM.
Logical solution is you need to stop the bit and lift it and be able to return and restart. Simplest out of that would be to be able to store Z-position in work coords and spindle state, stop the spindle and jump to the height I use for Safe-Z, like 1/4" below the Z+ homing switch in machine coords. It doesn't really need XY motion.
Last I heard, LinuxCNC had a huge problem with that, because it couldn't insert G-code commands in a Paused state. I know the Moveoff component was created to address this but it looks super-hacked, bypassing most of LinuxCNC's brains and unable to respect axis limits. It sounds like there's other unintended consequences because LinuxCNC doesn't know what's going on. It's not a solution I'm comfortable with.
Is there another solution yet? Could it save off a pointer to the current G-code line, go to the Stopped state so a safe-Z G-code command can execute, and still "resume" by doing a "Run From Here" with the saved line pointer minus one line? It can be done manually like that, but I'm looking for something more one-button.
Logical solution is you need to stop the bit and lift it and be able to return and restart. Simplest out of that would be to be able to store Z-position in work coords and spindle state, stop the spindle and jump to the height I use for Safe-Z, like 1/4" below the Z+ homing switch in machine coords. It doesn't really need XY motion.
Last I heard, LinuxCNC had a huge problem with that, because it couldn't insert G-code commands in a Paused state. I know the Moveoff component was created to address this but it looks super-hacked, bypassing most of LinuxCNC's brains and unable to respect axis limits. It sounds like there's other unintended consequences because LinuxCNC doesn't know what's going on. It's not a solution I'm comfortable with.
Is there another solution yet? Could it save off a pointer to the current G-code line, go to the Stopped state so a safe-Z G-code command can execute, and still "resume" by doing a "Run From Here" with the saved line pointer minus one line? It can be done manually like that, but I'm looking for something more one-button.
Please Log in or Create an account to join the conversation.
15 Oct 2017 17:31 #100405
by PCW
Replied by PCW on topic Moving while paused
The offset branch has a more integrated way to do a move-off operation/restore
without violating motion A or V constraints and retaining following error limits
without violating motion A or V constraints and retaining following error limits
Please Log in or Create an account to join the conversation.
Time to create page: 0.060 seconds