Machsupport Forum

Mach Discussion => General Mach Discussion => Topic started by: tjd10684 on August 05, 2013, 03:18:24 PM

Title: Another auto zero question
Post by: tjd10684 on August 05, 2013, 03:18:24 PM
OK guys my little Novakon NM-145 has been working very good but I would really like to speed up my tool changes. I am not willing to spend the big bucks buying TTS holders for all the various tools I have and I very rarely run more than a dozen of the same thing before changing to a new part or new setup. So I figured the easiest way would be to try to setup a auto tool zero macro. Another caveat would be I don't want to have to move to the same place every time since again my setups can be all over the place. So what I want this tool zero program to do is just start feeding down wherever I have it since I will presumably be in a M6 Tx situation anyhow I can just move it manually over the setter and hit auto zero. Now the catch is since my setups are all over the place I would like to be able to have a "programmable" z height set similar to the gauge block height button int the offsets page of mach 3.

 So in theory what I would do is set my stock up and manually zero the z height for tool 0 then take tool zero over to where I want the setter to be and "measure" the difference with tool 0. then I can put that measurement in the gauge block height box and use that to reference the other tools when I need to change tools. As an example I zero on my AL plate and then move over to the zero tool and I get a measurement of 0.2451 I would put that into the gauge block height. Then when I change tools I manually move over the zero tool again and hit "Auto Tool Zero" the machine will come down and touch the tool and my Z axis would be set to 0.2451 . I know I will still have to manually move it and all that jazz but the part that takes the longest, actually getting the zero, would be automatic.

 So I looked around for a while to try to find a macro that might do what I want. I found something that looks like it will work but changed out the programed plate thickness to call an OemDro 1001 (guage block height dro) and came up with this:

 If GetOemLed (825)=0 Then
 Code "G4 P5" 'Time to get to the z-plate
 Code "G31Z-5 F10" &ProbeFeed
 While IsMoving()
 Wend
 Code "G4 P0.25"
 ZProbePos = GetVar(2002)
 Code "G0 Z" &ZProbePos
 While IsMoving ()
 Wend
 Call SetDro (2, GetOemDro(1001))
 Code "G4 P0.5" 'Pause for Dro to update.
 Code "G0 Z.5" 'Change the Z retract height here
 Code "(Z axis is now zeroed)"
 Code "F" &CurrentFeed
 Else
 Code "(Z-Plate is grounded, check connection and try again)"
 Exit Sub
 End If

 If anyone has done something like this does it look like I am on the right track or any input would be much appreciated.