Yahoo Groups archive

Homebrew_PCBs

Index last updated: 2026-03-31 13:47 UTC

Thread

Touch off plate Z height compensation

Touch off plate Z height compensation

2013-09-21 by <kf7ycz@...>

Hello and good day all. My name is Silas, and I am trying to figure out how to get the correct Z axis compensation for non-conductive surfaces.

I have successfully set-up a touch off system on my Zen-works 7x7 mill using Linux CNC and autoleveller, which is an awesome piece of software btw.

I can easily use it with copper clad or any other conductive surface, however the documentation is too brief on the touch off plate method. I can easily have the autoleveller code touch off using a piece of copper clad and moving it around the non-conductive object to get level readings. My question is how do you go about compensating the height of the material used as the touch off plate throughout the entire GCODE file?

Any help on this matter would be greatly appreciated.

Thanks,
SIlas.

Re: Touch off plate Z height compensation

2013-09-22 by Paul Alciatore

I am not completely sure as to what your problem is, but the following assumes that you are milling PCBs. But perhaps you are talking about general milling instead. In that case parts of this will be applicable.

There are commercial devices available for setting the Z axis zero. They are usually electric or electronic and they depend on the tool being grounded through the machine so you need a ground connection. They are insulated on the bottom side and have a conductive top so they can be used on all materials. Some give a visual indication and others are electronic and can be connected to the computer so the software can do the touch off itself. The commercial ones will have a known spec for their thickness and you can measure them with a caliper or micrometer to confirm this. Of course, you can also do a test piece and check the results, making further adjustments in the effective height as needed. Things like ball bearings (in the machine spindle) are not designed to be good conductors so, depending on your mill, you may have to add a ground clip to the tool itself. Frankly, I would do this as a matter of course.

If great accuracy is not required (as in milling a PCB), you can make a simple such device with a small piece of copper clad board. Attach a wire to the copper at one corner and run it to the computer using whatever input your software allows. A pull-up resistor would be needed on that line. When the tool hits the copper, the copper becomes grounded and the software would detect that. You would measure the thickness of this home brew Z pad with calipers or micrometer and enter it in the software to compensate it for that.

If you are milling PCBs and trying to compensate for any angle that the PCB may be sitting at due to warpage or whatever, your software would have to be able to compensate for that. You would simply use that feature in your software and take several Z readings, probably at the four corners. If the software does not have this compensation built in, then it would be very difficult to edit the G code to add this compensation. For this you need to read the documentation.

If you are milling BCBs, I would suggest that it is easier to make better clamps to hold the PCB flat against the mill's table which should be flat. Two, full length edge clamps should hold the PCB reasonably flat. This would avoid the problem of warpage and only a single touch off point and no compensation would be needed.



Posted by:


silas_clatterbuck

Hello and good day all. My name is Silas, and I am trying to
figure out how to get the correct Z axis compensation for
non-conductive surfaces.

I have successfully set-up a touch off system on my Zen-works 7x7
mill using Linux CNC and autoleveller, which is an awesome piece
of software btw.

I can easily use it with copper clad or any other conductive
surface, however the documentation is too brief on the touch off
plate method. I can easily have the autoleveller code touch off
using a piece of copper clad and moving it around the
non-conductive object to get level readings. My question is how
do you go about compensating the height of the material used as
the touch off plate throughout the entire GCODE file?

Any help on this matter would be greatly appreciated.

Thanks,
SIlas.