I’m working on a small CNC job that runs for about 30 seconds per piece, and I need to process 100 pieces of wood. I’ve set up a jig, so swapping parts is quick—about 5 seconds to remove the finished piece, clamp a new one, and get ready to go again.
The issue is, every time the jobs ends, I swap the piece, and I need to go to the whole startup process (preview the path, check tool, start the spindle…) Restarting it takes a few seconds and several clicks in CNC12, plus the wait for it to ramp back up to full speed.
What I’d like to do instead is:
Let the spindle finish the job,
Move it out of the way at the end,
Swap the part,
Press a button, and
Have the job run again automatically without stopping or restarting the spindle, and without having to reinitiate the job manually in CNC12.
Is there a way to automate this in CNC12?
I work a lot on small batches, so I do that a lot, every day. At the end of the week, I probably loose one or two hours waiting for the spindle to reach full speed. Also, I’m not sure it’s good for the spindle to stop and start again every 30sec.
Acorn has published a document to walk you through the creation of your own Macros. There are so many possibilities that it can turn into a rabbit hole but anything your doing with that much repitition is propbably worth automating.
You can also edit the G Code by adding loops and/or subroutines that will make it stop and rewind as many times as you need. I don’t know the specifics off the top of my head but I’ve seen articles about it online…
If you setup park correctly it will park for you without you intervening.
Then you’ll have to contend with the spindle start/stop. I think that will be easy. At the end of your code there should be an M5 and/or an M30 command. M5 stops the spindle, and M30 is an “end of program” command that also stops the spindle. Removing those should do the trick, and putting the M2 at the very end should cover you.
Try this out by doing an air pass just to make sure.
**Quick update: The “park” function is in the M30 so removing that removes park.
But you can get around that easily by doing these commands:
G53 Z0 ;lifts the z all the way to the top
G53 Xxxx Yxxxx ;moves the machine rapidly to MACHINE coordinates