My current CNC router is really quite slow. I'm cutting some 3D shapes at the moment which can take about 12 hours, although this is partly because what I'm cutting is fairly fragile and can't support fast or heavy cutting. Because I don't trust the machine to run by itself for long periods (I leave it running to go into the house to make a coffee, but drink the coffee in the garage because I'm not happy to leave it much longer) I pause LinuxCNC and stop the spindle if I need to leave it, say, overnight, until I can recommence. Although I can note the gcode file line number and go back to a specific line, I still can't shut down the control PC because I shall lose my current machine position. No, I don't have home switches, and I'm not sure if those would give sufficient repeatability anyway.
I'm wondering what other people do, and if, say, Mach3 can be configured to save machine position and pick up again from cold as long as the machine hasn't moved. Actually, I'm not absolutely sure that LinuxCNC couldn't do this, although I haven't seen anything about it.
I'm expecting answers along the lines of:
- if you built a decent machine, you would trust it run unsupervised (and that's just one reason I'm building a Mk2);
- if you built a decent machine, you could cut fast enough that you could do a job in a single session (see previous point, but also first sentence above);
I'm still wondering whether to go Mach3 for the Mk2, partly to allow use of an external motion controller and get away from parallel port issues, and occurred to me that this might be another reason.
This question was also prompted by the fact that my PC just stopped during a cut earlier this afternoon and refused to reboot. I blew the dust out, reseated everything, and it rebooted. I've lost the home position anyway, but it started me thinking about controlled shutdown.
Last edited by Neale; 05-05-2014 at 02:55 PM.
I don't know anything about Linux and not much more about mach but if you make a note of the code line you pause it on then send/jog it back to its start point of the job before shutting down can you not then enter the code line you want it to resume from insuring the machine picks up where it lt left off.
in mach I pause then use the run from here button on the screen a lot,
Last edited by deisel; 05-05-2014 at 03:23 PM.
If you have stepper motors they may jump a lot of steps when you power them up. You could pause the g code, note the program line number then move to 0,0,0. If possible you could clamp the axis in position so they don't move when you power up the next day.
I'm not totally sure but I think if you jump part way into gcode from a cold re-boot it might not carry on correctly as feedrates may not be set (they may have been set a few lines earlier) and some gcode lines may only contain the minimum commands assuming the previous ones have just been processed. I have tried to jump into gcode previously and have various problems, although can't remember specifically what happened.
I know this doesn't apply to long 3D work, but all my jobs are split into short gcode operations, such as drill a hole, profile a shape, etc. If something goes wrong I can hit e-stop and rewind to redo that specific operation.
If I can't machine the complete part in one session I jog (MDI > g0 x0 y0 z-20) to X0, Y0, Z-20, then switch off. When I quit mach3 it asks if I want to save the fixture, which I say yes, but it never does so on the next session I set the coordinates to 0,0,-20 (local coordinates, not machine coordinates) and I'm ready to continue.
On really important work I've fixed DTIs to the X and Y axis, positioned at -10,-10 relative to the origin of the part to be cut. They are out of the way for normal machining, but if it all goes wrong I can jog back to 0 on the DTIs, set the coordinates to -10,-10, and re-run the code.
The home switches create a zero for the 'machine' coordinates but you could create one yourself.
If you positioned the machine where you think the home switches would be you could measure the X,Y positions using a vernier for example and call that zero. Now on subsequent days you just have to jog it into the same position and zero the axes, Z is just set to top of stock normally so that's repeatable. (just noticed 'routercnc' said the same thing)
I don't know about Linux but with Mach you can run it from a particular line in the G code but keep in mind that you may have to start the spindle manually because the line of code that starts it may not be present at your start position.Spelling mistakes are not intentional, I only seem to see them some time after I've posted
Not only don't I have home switches, I don't have any automatic spindle control, so I'm quite used to starting it manually! In the past, I have used the "move back to machine (0,0,0)" technique at the end of a session to save having to tweak things at the start of the next - just need to hit "manual home" on the 3 axes and I'm ready to go. Hadn't thought about doing this if I have to pause a session, but will need to note machine/work offsets and current gcode line number. Point about missing out bits of header noted, but in practice I couldn't necessarily jump back to the line where I stop as I need to make sure that if, for example, it moves X only then I have to make sure that Y and Z are correct first, so going back slightly earlier in the file may make sense. Not a big deal to manually type any feedrate-type parameters first. Not sure what things like default for G64 are with LinuxCNC but I can look that up. LinuxCNC also lets you start from any line.
Thanks for comments, guys. Sometimes you need someone to point out what you knew but had forgotten... Now back to drawing the Mk2 while riding shotgun on this interminable cut. I was at least able to pick up accurate enough reregistration to carry on more or less from where I was when the PC failed.
Regarding leaving machines unattended - I wouldn't. You can build it as well as you like, but nothing can account for the unexpected! Call me paranoid...
If you don't have good Home switches then the next best thing is to run the machine into some hard stops and call this machine Zero. Then from this you can accurately get back to any point on the machine and equally find any point in G-code by using the run from here in Mach3.
Working from a hole or mark on the machine isn't accurate enough IMO and the only sure way is thru either repeatabile home switches or pyhsical hard stops.
By dudz in forum Probing, Digitizing & ScaningReplies: 0Last Post: 08-09-2013, 08:48 PM
By Jopo in forum Stepper & Servo MotorsReplies: 0Last Post: 29-04-2013, 07:08 AM
By Tenson in forum General DiscussionReplies: 26Last Post: 30-09-2012, 10:26 PM
By HankMcSpank in forum General DiscussionReplies: 4Last Post: 18-10-2011, 07:26 PM
By BillTodd in forum General DiscussionReplies: 2Last Post: 13-10-2009, 05:08 PM