This article describes a Touch-Off sensor for my Mach3 controlled CNC 7x14 lathe. The sensor allows the tool offsets to measured and set into the Mach3 tool-table. Below is a description of how the sensor was made.
When setting up a tool table, a reference tool is initially used which has an offset of 0.0 and all other tools have an offset from the reference tool. One of the approaches is to place a bar in the chuck and then touch off all the tools to this bar. One of the difficulties in setting up a tool table manually is determining when a tool is touching the bar. A common approach is to use a feeler gauge between the bar and the tool bit, allowing the tool bit to just hold the feeler gauge against the bar stock. This method can take quite a bit of time go through all the tools that you may have.
A Touch off sensor automates this process to an extent. The touch off sensor is used by placing it into the chuck and then using "touch off" macros in Mach3 the X axis is moved toward the sensor until the tool touches the sensor. The macro backs off the tool and repeats the touch off albeit at a slower speed. The X-axis DRO value is then stored into the tool table. The tool offset in the Z-Axis can be performed in a similar way. The touch off sensor acts as a switch into a Mach3 input. As such the part of the sensor that the tool tip comes in contact with must be isolated from that lathe body as the sensor is one part of the switch and the lathe body and tool is the other.
The basic design of the Touch Off sensor is to have a steel rod that will be the sensor mounted inside an insulating plastic (Acetal) bush that is mounted inside another steel rod. Over the years I've collected dot matrix printers from curb side hard rubbish collections. I'd strip the printer head bearing rods from them. These rods are precision ground and polished and are not hardened so they machine beautifully. The older the printer model the more substantial are the bearing rods indite them.
I looked through my collection and chose a 8mm diameter one for the sensor rod and a 14mm one for the outer rod.
The plan is to have the outer body of the sensor about 50mm long and the sensor rod protruding about 20mm from it. The dimensions are not critical. The sensor rod is 8mm as use metric measurements when working on my mill and lathe. If I was working in imperial, I'd use a 1/4" or 3/8" sensor rod.
My basic plan is to;
- face the stock of to 50mm for the body
- Clear Drill the 14mm diameter body to 11mm
- turn up the Acetyl insulator bush for a press fit into the body
- Clear drill a 5/16 hole through the insulator bush
- Press fit the 8mm sensor rod into the bush
The fist thing to do was mount the 14mm rod into a 4 jaw chuck and get it centered. I heard that there were a few videos around showing how to dial it in easily. I fond the one below and it made the job so quick and simple. In the past it would take me 10-15. minutes. With this method I can get it done in 2-3 minutes.
Below is a video of my sensor body dialed in. The movement is a bit under 0.01mm (.0004"). I could get that amount of movement by resting my hand on the chuck so I think it is at the extreme of the machines capability.
The next step was to clear drill the body to accept the Acetyl insulating bush. After centre drilling it, I drilled through with a 6mm bit then an 11mm bit. The hole is not critical as the bush will be an interference press fit.
The insulating bush was next. I turned it down using the Sensor body tube as a guide for the interference fit. The length of the bush body was made the same as the body tube. It was then parted off.
The bush was then pressed into the tube with the help of a vise. (Note, this was the 2nd attempt. The first one was too large and I could only press it in 1/2 way so I had to drill it out and try again. )
The body with bush installed was then put back into the 4-jaw chuck and dialed in again. I spent a bit more time on it to get it as true as possible as I need the sensor shaft to be concentric with the body.
The end if the bush was turned down to the diameter of the steel body and then faced down to have a 4mm insulating ring. It was then centre drill and clear drilled with a 5/16" bit. 5/16" equates to 7.94mm and appeared to be a good interference fit.
I then pressed the sensor rod in using the tail stock, then had to move it to the vise to press it in fully.
The completed sensor was redialed in the 4-jaw chuck using the sensor body. The test dial indicator was then used to check the sensor rod concentricity. It was .04mm (.0016"). I then decided to turn the sensor body down to 6mm so as to improve the concentricity. After turning it down to 6.0mm , the dial improved to 0.03mm, or just over one thou. I don't think it was worth turning it down.
I then mounted the sensor eand out and cleaned up the back, faceing the three parts so that they were flush.
Anyhow the finished sensor is below.
I still need to make up the lead before I can use the sensor. It will have a 3.5mm mono plug on one end to plug into the CNC controller. I already have a socket on the controller for my digitizing probe so I'll use the same input.
How to connect the lead to the sensor in a neat and safe way was a challenge. After rummaging around I found an old earth lead clip for a oscilloscope probe. It is designed to clip into a 1/4" shaft. To accommodate the spring clip I turned a groove into the 8mm section of the probe shaft.
The image below shows the the clip and lead assembled onto the shaft.
The nice thing about the spring clip is that it will detach if the lead is strained. There will be another lead coming from the cable that will have an alligator clip that will attach to the lathe so as to provide a ground. This will most provably attach to the Quick Change Tool holder. The other end will have a 3.5mm mono plug that plugs into the CNC controller.
Now to test it out......