Tool Change Probe

Morning,

Had anyone installed a mounted tool change probe on their machines?

I would love to see some implementation examples if you have.

My example is a few postsdown here, but I’m linking the thread because it’s pretty good stuff.

2 Likes

I saw a mounted bitsetter in this topic. He is using this switch in his implementation. It has a nice flat surface, and, as long as the bit hits the switch in the same place each test, you should get repeatable results.

I went as far as modeling a housing for this switch, but I’ve done almost entirely laser work over the last year, so the switch and housing sit on my desk awaiting my return to routing. My untested housing attached.

BitSetter.zip (53.1 KB)

If you search for the term “bitsetter” on the forum, I think you will find addition topic beyond the ones Tony and I linked.

1 Like

But why use this instead of a normal probe? Isn’t it the same thing?

If by “normal probe” you mean a touch plate, then these two things are used differently. A “bitsetter” establishes a machine zero. A touch plate establishes the zero relative to the stock. Having a fixed machine zero can greatly improve the bit change process. Note using a “bitsetter” does involve understanding workspaces so that you can preserve both the machine coordinate system and the job coordinate system.

1 Like

Ah yeah… Sorry I didn’t think it through, it’s obviously for when you have end stops :slight_smile:

I still don’t know how to use a bitsetter in conjunction with a touch plate to have gcode Z=0 origin at the top of the stock and also use the bitsetter to correct the length of the tool after a tool change. Unless there’s a bunch of manual steps involved like writing down M114 and doing some extra math.

I think a bitsetter requires having gcode origin (at least Z) in machine space.

I would love to be wrong, if someone can explain in how it can be set up to automatically correct for tool length with the coordinates relative to the top of the workpiece.

1 Like

I bet there is something you could do with G54 coordinates. Like change to machine coordinates, zero the Z to a corner. Then switch to workspace coordinates and use the touch plate to find the top of the workpiece. When you changed bits, you would switch to machine coords and rezero the machine Z on the corner. The offset from the corner to the top of the workpiece (which may have been away to chips) would be the same. Change back to workspace coords and continue the gcode.

That will need some firmware updates and verification that it works that way. Then some clever gcode scripts.

I thought someone already had this working, but I cannot find the topic. Conceptually the bitsetter is used in machine coordinates to set the zero for the machine. When doing a job, you switch one of the workspace coordinate systems and establish the home relative to the stock in workspace coordinates. When you change the bit you:

  • change to machine coordinates
  • move the router to an easy to access place
  • change the bit
  • rehome the machine (technically you only have to rehome Z since X and Y are still correct).
  • change back to the workspace coordinates of the job
  • resume cutting

According to the g-code reference workspaces can be saved with a M500, so you could set up a process that has the electronics turned off.

1 Like

Ok I think you’re right. I have a foggy memory of thinking this was impossible because G28 resets workspace offsets too, and trying to use G38.2 would require subtracting workspaces from each other. I searched and found some guy who said that “G28 resets machine coordinates and also contains an implicit G92 to set current workspace coordinates to zero”.

I think this means you just have to be careful not to do G28 while in the workspace that has the origin for the job:

  1. Change to workspace G54 (bitsetter workspace)
  2. Jog to X Y above bitsetter and G92 X0 Y0
  3. G28 Z off the bitsetter to set machine coordinates for tool 1
  4. Jog to top of workpiece Z and job origin XY, change to workspace G55 and touch off top of workpiece (can use G38.2 if desired).
  5. G92 X0 Y0 Z0 to set workspace coordinates for G55 (workpiece workspace)
  6. Run job for tool 1
  7. Change to workspace G54
  8. Jog somewhere convenient to change tools, stop spindle
  9. Change to tool 2
  10. Move to X0 Y0 (above bitsetter)
  11. G28 Z to touch off of bitsetter with tool 2
  12. G55 to switch to workspace coordinates G55
  13. Move to safe clearance height and start spindle
  14. Run job for tool 2

If it’s true that G28 does not reset workspace coordinates other than the workspace you’re currently in, then this would work.

It also means that starting with step 5, the machine can do everything and just pause for step 9, assuming you have software spindle control through a SSR or similar.

Your sequence seems more complicated than it needs to be, and I’m not sure it will work. Unfortunately, I’m away from my machine for a few more days, so I cannot run any tests.

Here is my thoughts. Imagine for a moment that the bitsetter is mounted below the bit at (0,0) in machine space. The sequence at the core becomes:

  • Home the machine (X, Y, Z) in machine space (G53).
  • Change to workspace coordinates (G54), setup and run the job with the first bit.
  • Change back to the machine coordinates, change the bit, rehome at least Z
  • Return to workspace coordinates and continue the job.

My one area of concern is that G28 may not honor being in workspace coordinates, so you might have to use G38.2 with a touch plate to set up the job. The Lowrider already uses G38.

1 Like