Hard Stops

I am starting a project that will require multiple bits and removing the piece from the table and returning it. I have it worked out how to remove and replace the piece. I do not have end stops. I was considering using hard stops to reset X & Y. What has been used, and am I thinking this through correctly?

I would create a fixture, like a 3/4" thick corner alignment (maybe with a hole at the exact corner to avoid dust build-up messing up the alignment) that would allow you to get the workpiece back into a repeatable location, and I’d include a tool centering location, like a deep countersink in the fixture itself to serve as a repeatable reference for the tool which is in a fixed relationship to the workpiece location. I suggest a countersink assuming you’ll be using bits with different diameters, that way the center will always be the same. If you’re using bits that all have the same diameter, you could use a simple hole to set a repeatable position for them.

3 Likes

I’ve used hard stops with set distances to the origin of my fixture, and I’ve used Tom’s suggestion of a “tool centering location” on the fixture. Both worked. But my go-to solution is to just not turn off the steppers during bit changes. They have plenty of holding power to allow me to change the bit without losing steps, and I can easily return the router to (0,0) for the next toolpath. I just have to set the Z height after the bit change.

2 Likes

So are you shutting the machine down in between? If not you would only need to z probe for piece removal and bit change. Your x and y would stay zeroed! I recently did this.

I am not a good one to explain this though. I am very new to it and to do it i manually edited program 2 and 3.

And as Robert stated a fixture would work great!

More detail about what you are doing would be helpful too.

My edits i removed set x0 y0 etc from header. I also removed some stuff from footer, but cannot remember what.

If you do this mid gcode file or between gcode files as long as you don’t have the machine rehome as part of the second gcode file, it should work (IF you remove the G84 motor disable line at the end so the motors stay on and hold position). I too change the bit on the kobalt mid way and maintain home and reset the z height. This is because i have both a 1/8 and 1/4" collet for the Kobalt now. Before I got that I would swap out the makita and the bauer routers with different bits with a screwdriver on the z axis tool mounts much easier than changing the collet bit on the machine. The 1/8" collet adapter was really hard to get in place with the router vertical. The ER11 collet on the kobalt made this a non-issue and the kobalt fits super tight in the mounts I have for it (which are modified makita mounts) so swapping routers is very difficult, but bit swaps are not. When the firmware was marlin, I used the lcd knob to position the z to zero then repositioned X,Y to 0,0 with z at its height and then hit the manual home or whatever that command was to make current position home. I still use the same method, but in klipper it is a macro button I press for just z to set to zero.

Endstops really help with resetting the system to zero and ensuring it is square. The system endstops are defined as a negative position and then 0,0 is always in comfortable work space area. Work pieces can be offset some known amount that I record before beginning the job then rezero X,Y. If anything goes south, I have the same home position with a recorded offset to the workpiece by rehoming if a reboot is required (posted a grinch sign with a crazy hole in it… had to rehome and reset offset and it worked fine to resume with a minor ding in the work piece. It happens sometimes.

But the question was hardstops and not endstops. If you have your endstop clamps mounted on the tubes without the endstops wired, you can manually move the core to the hard stop 0,0 and hold it in place when starting the machine, it should hold that position as 0,0. From a repeatability standpoint, that is more about how steady and consistent your holding power is when starting the cnc to get the motors energized. My system is slightly skewed so it won’t rest square, but once at the stops, it is square. I’d have to hold with one hand and use the other to enable the motors. While in theory this can be done, I wouldn’t do it because I’m not that dexterous. If your machine rests square, it might work, but I’d defer back to the countersink hole for reference to ensure proper alignment for cutting precision from mill to mill changeout.