# Best Z height process



## Afish (Jan 30, 2021)

So, brand new and first time CNC router here. Im still working out the numerous bugs but I can already see that setting the Z height is going to be an issue for me. So far im not real happy with the touch plate that came with my machine. it seems to trigger the z good but once in awhile it seems to try and touch off with to much Z- force, it chipped a carbide on my spoil board cutter luckily it is an insert bit so not a huge deal but something I dont want to keep repeating. Im not sure if there is a way to adjust the down force or not in mach3 script but im somewhat old fashioned when it comes to some things and was thinking I might just go with a dial type z setter but that opens another can of worms mostly speed and efficiency. I see the the benifit to the electronic touch plate for speed and efficiency but seems to lack accuracy and consistency. Since I couldnt swing the ATC price. I have to manually change each bit 4.5kw spindle with er32 collet. I started to wonder what could be the next best thing to getting ATC type performance from a manual change spindle. 

First I found these split steel depth rings that clamp to the bit so you can maintain a constant stick out and not have to re-zero each time but every video I saw this was used on smaller router powered machines so I was concerned it might not work as well on a spindle machine plus I was concerned about introducing balance/wobble issues since I dont see a way the collars could be balanced well. Then I found some plastic ones that get pressed on that would help with the balance/wobble concern but it looks like you have to buy them with the collar already pressed on but they only seem to be for smaller bits 1/8 and 1/4 shaft.

Then I found some tool holders like these. While I understand I will be loosing some z height which isnt a big issue for this application. Otherwise it seems like the better option. Theoretically I should be able to buy one for each of the common bits I will need to swap and chuck the bits in the holder with a consistent stick out measured from the shoulder of the tool holder then just loosen the ER32 spindle nut and insert the holder and bit combo being sure that the shoulder of the tool holder is touching the ER32 collet. Zero my Z once and not have to worry about z setting anymore. Am I missing something as to why I might not want to do this? Is there a better way? Should I keep at the eclectic z setter? Is there a better aftermarket auto z setter I should be looking at? Does anyone have a good solution to z setting each bit change? Sorry I know its a lot of ?'s


----------



## difalkner (Jan 3, 2012)

When I built my CNC 4 years ago I wired in the ability to have a touch plate but have not yet built or bought one. I still use a piece of paper and it's worked fine for me.

David


----------



## Afish (Jan 30, 2021)

Thanks, that is my current process since my carbide got chipped. Right now Im using just my keyboard and mach 3 so its to slow stopping and switching between jog/step to sneak up on the paper. Im also looking at getting p4-s pendant from vista cnc which should help greatly on getting away from the keyboard issues but I still dont think I want to do it each time I switch a bit.


----------



## difalkner (Jan 3, 2012)

I'm running Mach4 and I just get it close then change the jog rate to 2%, jogging with my keyboard. Since I'm not in a production shop changing bits isn't a bad deal, no time constraint and it only takes a minute with each change.

David


----------



## gwilki (Nov 12, 2012)

What speed is the code that runs your touch plate module set to? If the bit is descending too fast, it will not stop the nano-second that it touches the plate. On my CNC, the initial descent of Z is at 100mm/min, then it retracts 2mm and touches again at only 25mm/min. This seems to consistently work well.


----------



## Afish (Jan 30, 2021)

here is my script. Im not a super computer genius. but it looks like its set at 100mm/min. mine only goes down once I have seen some in you tube videos that touch it twice like you describe but I have no idea how to adjust the scrip. Mine is a little brass puck with no spring. I have seen others that have some spring preload so there is some give. Not sure where or how to get one of those and hook it up. Im thinking once I get a pendent it will be better and easier because trying to do it off the keyboard frustrates me. This way maybe I can just slow it to 25mm/min. but with the pendant it should be much easier to get it close straight away so the slower speed wont really matter.


----------



## Afish (Jan 30, 2021)

one other thing that dawned on me is I upgraded my motors from steppers to servos so Im wondering if that has something to do with it since Im 100% positive that they did not adjust the script if it needed it due to the servo upgrade. It seems to work ok but I for sure would never try any type of delicate bit or anything with a point.


----------



## gwilki (Nov 12, 2012)

Your code looks almost nothing like mine, but one thing that seems to be a discrepancy in your code is the speed setting. The comment says that the speed is set to 100mm/min. However the actual code is F200, which tells me that the speed is 200mm/min. I can see where that may be too fast for the machine to stop at the moment when the bit touches the plate. You could try to slow that down. It will not hurt anything. It will just take a bit longer. Set it to F50 and see how you make out.


----------



## difalkner (Jan 3, 2012)

Is everything set to metric? If this is possibly inches per minute then 200 would be very fast. But as was mentioned, slowing it down to 25 or 50 would be much better.

David


----------



## gwilki (Nov 12, 2012)

I'm assuming that you are running in MM as that is what the comments in your code say. The comments mention moving Z by 20mm and setting speeds to 100mm/min.

The actual code has F200, which is 200mm/min, not 100. I suggest reducing that to 50 at most. That is 50mm/min, not 50" per min. I guess that I am respectfully disagreeing with David. If I understand him, he is saying to reduce to 25 or 50 inches per minute. IMHO, that is much too fast. I know that I am running my probe at 100mm/min for the first touch and 25mm/min for the second. Converted, this is roughly 4 inches per minute for the first touch and 1 inch per minute for the second.


----------



## Afish (Jan 30, 2021)

Yes, its a Chinese machine so everything came in mm. Good catch on the f200 i was focused on reading the text. It wouldnt surprise me a bit if it says one thing and coded something different. since the instructions said the probe would be on port 1 pin 6 but it was on pin 4. That took me a bit to figure out too. So far Im really happy with the machine but the instructions stink. Thanks and I will tinker with that code tomorrow and see if that helps. I got the last of my dust extraction parts today so Im hoping to get the DC and z setter set up tomorrow.


----------



## difalkner (Jan 3, 2012)

gwilki said:


> I guess that I am respectfully disagreeing with David. If I understand him, he is saying to reduce to 25 or 50 inches per minute.


I can see that, the way I worded what I said. I meant that as a speed to approach the touch plate, not for actually setting Z zero. What I said in Post #4 is that I set the jog rate to 2%, which on my machine is 12 ipm, and I have my jog rate at 35% (210 ipm) to lower the bit down to the spoilboard or top surface of my work piece. I just stop it when it's close and change the jog rate to 2%.

David


----------



## gwilki (Nov 12, 2012)

Clearly, I misunderstood your post, David. I apologize for that. 

Even at your 2% rate, you are moving much faster than the OP and very much faster than me. I'm not saying that is bad or good - just different. Your 12ipm is about 305mm/min. My fast speed is only 100mm/min and the second touch is only 25mm/min. The OP is set to 200mm/min, which is still much slower than your speed. It may well be that his problem has nothing to do with the jog speed and I'm all wet. I just figured that it couldn't hurt to slow thing down to see if that addressed his problem.


----------



## TimPa (Jan 4, 2011)

ensure that your aluminum plate is very clean (use steel wool to scrub the face) for good contact when the bit arrives. also double check the wire connections. fyi, with the bit not spinning - i think you can take the plate and touch it to the bit, so you can see the input cycle through to your software.

are you trying to skip the tool measuring, or table z height measurement - what is your goal with the other tool holders? just curious...


----------



## Afish (Jan 30, 2021)

Just reporting back. It looks like that has fixed my issue 97% I dont think I would still use it to touch of any bit less than .125 or anything that has a sharp point on the tip. I guess I will still need a dial type setter for that. It could be I'm just overly cautious too. I ended up slowing it down to 25mm/min. and just trying to jog closer to the touch plate so it has less distance to search but truthfully I didnt notice any difference between 25 or 50mm/min. I just felt a little safer at 25. I will report back


----------



## difalkner (Jan 3, 2012)

gwilki said:


> Clearly, I misunderstood your post, David. I apologize for that.
> 
> Even at your 2% rate, you are moving much faster than the OP and very much faster than me. I'm not saying that is bad or good - just different. Your 12ipm is about 305mm/min. My fast speed is only 100mm/min and the second touch is only 25mm/min. The OP is set to 200mm/min, which is still much slower than your speed. It may well be that his problem has nothing to do with the jog speed and I'm all wet. I just figured that it couldn't hurt to slow thing down to see if that addressed his problem.


No need for apology; I didn't do the conversions and didn't have a sense that 12 ipm was that much faster than 200 mm/min. I have rapids set to 600 ipm and the lowest I can go on the jog rate is 1% (6 ipm), which I do on occasion, and even that is fast relative to 100 mm/min and especially relative to 25 mm/min. I agree, going slow on something like this isn't a bad thing.

David


----------



## Afish (Jan 30, 2021)

TimPa said:


> ensure that your aluminum plate is very clean (use steel wool to scrub the face) for good contact when the bit arrives. also double check the wire connections. fyi, with the bit not spinning - i think you can take the plate and touch it to the bit, so you can see the input cycle through to your software.
> 
> are you trying to skip the tool measuring, or table z height measurement - what is your goal with the other tool holders? just curious...


Sorry, I missed this post the first time. I did touch the plate to the bit to test it and it was acting properly. However when I placed the plate on the surface and the bit came down it was different story. It still retracted but not before it cracked one of my carbide inserts on my spoil board fly cutter. Luckily its only $25 bucks for a ten pack of inserts so not the end of the world. 

Yes, that was my thought process with the tool holders. If I bought a separate tool holder for each of the 3 bits I will most likely be swapping out the most and had each one set with the same amount of stick out measured from the collar on the tool holder. Theoretically, I should then be able to set my z height off the spoil board and as long as I bottomed out the tool holder collar in the ER32 collet each time I should be within a couple thousands, then I would not need to touch off anything between bit changes. Kind of like a poor man's ATC


----------



## gwilki (Nov 12, 2012)

Tks, David. It's an interesting discussion, showing that one size does not necessarily fit all. I didn't come up with my settings. They were provided by Sienci, the maker of my machine. All I did was plug them into the probe module of UGS, my gcode sender. I've had no issue using the module with 1/16" straight mills and with tapered mills with a flat diameter of only 1/32", so it seems that they did something right.  That said, there are those that will argue, and with some justification, that very small or pointed bits get beat up a little every time I touch them to an aluminum plate.
I have experimented - unsuccessfully - with some mills with a diameter somewhat smaller than 1/64". I only tried them because they were given to me. To set Z0, I jog down to within about 1/8" of the surface of the material, loosened the collet, and let the bit fall under its own weight until it touched the surface of the material. It worked like a charm for a non-destructive method to get an accurate Z0. (I still snapped the bits, of course, as soon as I started the cut, but that's for another discussion. )


----------



## difalkner (Jan 3, 2012)

gwilki said:


> ...loosened the collet, and let the bit fall under its own weight until it touched the surface of the material. ...


The issue with that, at least for me, is that when I tighten the collet it pulls the bit further up into the spindle if I'm not careful. But if it's working for you then that's a good thing!

Like you, I am very cautious with tiny bits - they cost a LOT relative to their size.

David


----------



## ger21 (Feb 10, 2019)

> Yes, that was my thought process with the tool holders. If I bought a separate tool holder for each of the 3 bits I will most likely be swapping out the most and had each one set with the same amount of stick out measured from the collar on the tool holder. Theoretically, I should then be able to set my z height off the spoil board and as long as I bottomed out the tool holder collar in the ER32 collet each time I should be within a couple thousands, then I would not need to touch off anything between bit changes. Kind of like a poor man's ATC


Not sure what type of tool holders you are looking at, as I don't see any links or pictures, but imo, a "couple thousands" may not be accurate enough, depending on the type of work you are doing.
I happen to sell a Mach3 screenset used by thousands of people, that automates the zeroing process during tool changes. What I've found over the years is that Chinese controllers do not handle auto zeroing very well, and require different macros that are not as accurate. When Mach3's probe input is triggered, the Z position is stored internally in a VAR. The problem is that Chinese controllers do not support the GetVAR() command to retrieve this location. As a workaround, they just use the current location of the tool where it stopped, which is not the correct position, as deceleration has caused the Z position to be lower than it should be.
If your controller is an XHC as it says in the macro, those are some of the worst offenders.
With a good controller, and good macros, you shouldn't be seeing chipped tools. I've zeroed tools as small as 1/32" diameter with no issues for years.
One other thing to consider is how good was the electrical connection when the tools chipped. If there's any delay at all, the tool will break.


----------



## Afish (Jan 30, 2021)

ger21 said:


> Not sure what type of tool holders you are looking at, as I don't see any links or pictures, but imo, a "couple thousands" may not be accurate enough, depending on the type of work you are doing.
> I happen to sell a Mach3 screenset used by thousands of people, that automates the zeroing process during tool changes. What I've found over the years is that Chinese controllers do not handle auto zeroing very well, and require different macros that are not as accurate. When Mach3's probe input is triggered, the Z position is stored internally in a VAR. The problem is that Chinese controllers do not support the GetVAR() command to retrieve this location. As a workaround, they just use the current location of the tool where it stopped, which is not the correct position, as deceleration has caused the Z position to be lower than it should be.
> If your controller is an XHC as it says in the macro, those are some of the worst offenders.
> With a good controller, and good macros, you shouldn't be seeing chipped tools. I've zeroed tools as small as 1/32" diameter with no issues for years.
> One other thing to consider is how good was the electrical connection when the tools chipped. If there's any delay at all, the tool will break.


You have to click on the word "these" in my 1st post. That will link you directly to what I was talking about.

Right now Im just using Mach3 on a laptop no controller. I am considering getting a vistacnc controller PS-4 I think is the model. Feel free to send a link to what you sell and I will take a look. If it can simplify my life/process I will give it a hard look.


----------



## difalkner (Jan 3, 2012)

Afish said:


> You have to click on the word "these" in my 1st post.


Your first post, while informative, is more wordy than many will read and on my computer the hyperlink for 'these' is not a different color. So I had to hunt for 'these' - first line of the 2nd paragraph and first line of the 3rd paragraph for those wanting to see what he's talking about using.

David


----------



## Afish (Jan 30, 2021)

Strange they show a different color on my screen but it is not a dramatic difference. Not sure if there is a way to choose a different color I just used the link insert button. I see a way to change the color of text but in the insert link button there is no option I see.


----------



## ger21 (Feb 10, 2019)

There are a couple issues with using tool holders like that.
1) Any runout in the collet is magnified by moving the tool farther away from the collet. You're also adding a second collet, which will potentiall have it's own additional runout.
2) By moving the tool further away from the collet, you're reducing rigidity of the tool, and your also greatly increasing the load on the spindle bearings.

Personally, I don't think the benefits outweigh the downsides.

If you are using a laptop, are you using a paralll port on the laptop? If you are using a USB or ethernet connection, then your machine has a controller in the cabinet.


----------



## Afish (Jan 30, 2021)

Just updating the post if it helps anyone else. I still could not get the original script to work well even slowing the speed way down. It would still press the touch plate way to hard. I could see the MDF flex under the pressure it was touching so hard and if I auto tool zeroed and then hit the go to zero it was always about -.010 into my spoil board. I tried switching the gauge block height to compensate but still always got about 10 thou into my spoil board. I was about to buy a dial type z setter and decided to give it one more go. I switched out the auto tool zero script completely with this one I found on you tube.

Option Explicit 
Const PROBE_HEIGHT = 7.0 
Const H_SPEED = 100 
Const L_SPEED = 20 
dim stat as boolean Dim ZPorbeData As Long 
Code "G31 Z-100. F" & H_SPEED 
While isMoving() 
Wend 
SetVar(2002,0) 
Code "G91 Z2.F200" 
While isMoving() 
Wend Code 
"G31 Z-50. F" & L_SPEED 
While isMoving() 
Wend 
SetDro(2,PROBE_HEIGHT) 
Code "G91 Z" & 10 - PROBE_HEIGHT & "F100" 
While isMoving() 
Wend 
Code "G90"

HERE is a link to the video with the script. I had to make the changes from mm to inches but so far it works waaaay better than the script that came with the machine and I have been getting excellent results after auto tool zero and then hitting go to zero it ends up just scuffing the mdf spoilboard. I havent run anything yet just testing but if anything goes sideways I will update. Thanks


----------



## Old Ray (Feb 19, 2021)

difalkner said:


> When I built my CNC 4 years ago I wired in the ability to have a touch plate but have not yet built or bought one. I still use a piece of paper and it's worked fine for me.
> 
> David


 lol,, I bought one but do not use it,,, paper is quick and works great, maybe don't look as cool ,


----------

