Hi guys, I’m a beginner and I have a question, I’ve made my first pieces with a straight cut milling cutter and with the Avid touch plate, perfect for the zero point of the piece in the corner, but if I want to start a job, for example with a roughing milling cutter or a V milling cutter, how do I do it with the touch plate? If I want to take the reference from the corner only taking Z height, for example, placing the touch plate on the corner of the material and then in the Mach 4 application, give it to the center in the configuration so that it only lowers Z, I know it’s silly but for those of us who are starting there are many doubts hahaha. Thanks.
Using multiple tools requires a bit more precision in your CAD/CAM work than usual. Here’s a sample workflow…
In your CAD/CAM, set your origin to be a convenient corner of the piece but the BOTTOM of it - i.e. Z=0 is the surface of your spoilboard. [*]
Export your CAM as one file per tool. Make sure each file uses the same WCS (G54, usually).
Load up a “probing” tool - anything that’s, for example, 1/4”. I.e. whatever you’d normally use with the touch plate. Use the touch plate and probe tool to probe the corner of the workpiece (i.e. X and Y)
Now move the touch plate to the spoilboard and clamp it (lightly) down, and use that to probe Z=0.
Your CNC’s origin should now match your CAM origin.
If you have a toolsetter (like an EX system), use the GUI to change tools and measure the new tool. Otherwise, for each tool, load up the tool, go to the touch plate, and touch off Z ONLY. This will reset your origin to be relative to the new tool. Then you can run the CAM file for that tool.
It might also add to your confidence to manually command the tool to, say, 2” above the workpiece, and use a 1-2-3 block (or other known 2” thick thing) to confirm it’s got the right height for the tool before running it.
I.e. if your wood is 3/4” thick (exactly; measure it!), then a G0 Z2.75 and G0 X1 Y1 should put you in a measurable spot.
[*] you can use the top, but that means clamping the touch plate to the top of your workpiece and keeping it there, or having a spare bit of wood that’s exactly the same thickness, or manually holding the touch plate on your workpiece during the Z probe and removing it for the milling. Try both ways and see what works for you ![]()
EDIT: ignore this part if you have any kind of toolsetter or tool automation that measures the tool for you, like if you have an EX system.
I will add that, if you’re manually adjusting Z, you do not want the software to ALSO be adjusting Z for each tool. Either tell the CAM software to disable tool length compensation, or fill in your tool table with all zeros for the lengths. Or both ![]()
If you do the 2” measuring trick and it’s not 2”, this might explain what happened.
Thank you very much djdeloire, now I understand everything perfectly and of course it makes sense because every time you machine the piece, you lose the initial z-axis if it’s done from the corner of the material for all the tools. Thanks again.![]()
If you’re on EX control this is incorrect. The whole Z zeroing system revolves around tool length, and if you ask your CAM software to cancel it, or if you zero out your tool heights you’re going to end up in a situation where you could cause the bit to dive into the workpiece:
This is how our Z length is calculated.
The rest of the advice (zeroing to the table instead of the top of the workpiece) is excellent. In fact, I just made a video on this and it will be coming out in a few days.
Check this part of this video:
See how I set the XYZ zero to the corner of that piece, and when the Z is set on top the Z offset is a positive number? If you change that to a zero that will indicate that you are zeroing to the BOTTOM of that same piece.
Just as @djdelorie said you need to make sure your CAM software matches this zero method.
Call me paranoid. I’m running linuxcnc, but the scenario I hit could happen on anything. I manually switch tools to the next tool needed, and zero it. When I run the next gcode, it tells the controller to change tools and load its offsets. Or and cancel its offsets.
My point is to know what the gcode is going to do and how the controller is going to react to it, so that it doesn’t undo whatever you did manually. It’s happened to me many times.
There’s nothing wrong with your method, it’s just not how this EX control is setup.
At a high level we’re doing the same thing.
We know the location of the fixed tool height setter, and we know the location of your spoilboard. We also know the length of your tool because at every tool change we measure it.
When a user sets their Z zero, they’re using the end of the tool to do it. If a user manually cancels tool height that negates a critical part of the math to finding a z offset. This is why we go to great lengths to always check to make sure that tool height is set, and that old tool heights (for tools that aren’t in the spindle) are discarded.
We do not use a reference tool as you describe.
If you watch that tool height setter video you’ll see how it works. A Z offset of zero puts the tip of your bit on the spoilboard, a Z offset of .75 will put the tip of your bit .75" above the spoibloard for Z zero.
Since we know the location of the spoilboard relative to the tool height setter we can swap tools and get the new tool length back exactly to the same spot without using a reference tool, or having to have the user use the touch plate again.
Sorry to harp on this, but I don’t want new users getting confused here and deleting tool heights or issuing tool height cancel commands. That can get them in a world of trouble.
Again, there’s nothing wrong with your workflow for Linux CNC, but that’s not how this controller is setup, or is intended to be used.
Heh, I fixed my linuxcnc workflow BECAUSE I kept messing it up. And I agree that maintaining proper tool tables is the right way to do it (and I do that now). Or ignoring tool tables completely and relying on the toolsetter. Or whatever, as long as it works - until it doesn’t. Beginners still need to understand the magic for when the magic fails them.
You still need a reference tool to use the XY part of the touchplate as it needs to be the right diameter (for me, that’s T99, a plain round rod).
If you automatically reset Z for every tool change, and it works, great. If your CAM software for some reason doesn’t match your machine, it can still go wrong. Beginners NEED to be aware of this problem in case they haven’t quite gotten all the parts talking the same code yet. I still sometimes double check my machine to make sure it’s doing tool changes properly.
Also, don’t get me wrong - I’m OK with being corrected, and please do!
I’ve just taken this opportunity to express my opinions about beginners and magic ![]()
I think you’re not understanding how our system works fully. We do not reset Z with every tool change. We just reassure the tool.
We save the Z offset so swapping a tool length gets you back to your exact Z location after a tool change.
We have found after a lot of research that this is the most reliable method of tool changing for our users. And best of all it doesn’t require a reference tool of any kind.
That’s how my system works now, yes. The ATC keeps track of which tool is loaded, knows its relative length, and adjusts the WCS accordingly[*]. Result: Z=0 is always at the same relative place. I measure each tool after every tool change just in case, but just update the tool table.
The question was “How do I do it with a touch plate?” so I didn’t assume the original poster had a toolsetter, nor did I assume the user had ATC or numbered their tools, nor that their CAM knew about ATC.
[*] by adding the tool offset to the WCS offset and G92 offset, of course
We do not adjust the WCS on a tool change. That stays fixed until the user changes it by changing their Z offset again.
Every EX system has a tool height setter. It’s a requirement of the system. (That’s why I made and shared the tool height setter video a few posts above
)
I think we’re talking past each other here. The machine XYZ that the machine moves to is the XYZ of the current coordinate system offset (i.e. G54 et al) plus the XYZ of the tool offset (G43) plus the XYZ of the local offset (G92, G52) plus the XYZ of the requested point (G1). I hope we all agree on that ![]()
Touching off the tool with a toolsetter should change one of those XYZ, the G43 (tool offset) one. The result is that the effective coordinate system (the sum of all the XYZ) is adjusted so the tip of the tool is where you asked it to be.
The LinuxCNC AXIS interface has both buttons labelled “touch off” (which changes the coordinate system offset XYZ) and “tool touch off” (which changes the tool offset Z).
Depending on which documents you read, one of the above numbers is the workpiece coordinate system (WCS).
As for EX, the OP did not say they had an EX system, so I didn’t assume that.
@Ernest are we confusing you yet? ![]()
That’s mostly true, however we don’t use G52s, and G92’s on Centroid only set XYZ WCS offsets.. But look the reason I stepped in on this thread was to avoid confusing new users with advice that while correct for Linux CNC doesn’t work with our EX system.
We work pretty hard to make this easy for users so they don’t have to think about this stuff while still leaving it all there for folks like yourself to use if they want to utilize it.
I would be happy to talk more about this, but it may be best in a new thread so as to not confuse folks that are just getting started trying to figure this stuff out.