Hello Guest it is March 29, 2024, 09:26:18 AM

Author Topic: Tool length probing goes wrong when Screw mapping is ON. Why?  (Read 574 times)

0 Members and 1 Guest are viewing this topic.

Hey everyone!

My tool probing script was working flawlessly, but now I need screw mapping function to calibrate X axis screw pitch error. I was lucky enough to map my screw correctly, but then I noticed that Auto Tool Zero doesn't work as it was before. So when I hit Auto Tool Zero it lifts tool to Z0, travels to X0 and Y0, then it go down RAPID to Z SAFE height above probe and here is where funny thing starts. When it turns from rapid to reduced speed movement ( Z axis) towards the probe, it slowly moves X axis too!! why? so its running away from actual probe position.

If my incremental coords matches absolute coords, then it works fine, otherwise during that error, my spindle moves towards incremenal coords zero but only on X axis. I was thinking that it can be one of the .066 version   glitches, so downgraded it to .062 version but same there..

Maybe someone have advice to give?

Re: Tool length probing goes wrong when Screw mapping is ON. Why?
« Reply #1 on: July 08, 2021, 08:35:24 AM »
Here is how much probing script looks like :


Dim ZOFFSET, ZTOP, ZBOTTOM, ZGODOWN, ZABS, ZUPFINE, Z_SAFE
Dim ToolLen
Dim Tool
Dim SENS_Z, SENS_X, SENS_Y, Z_LIFT, Z_PARK, MAX_DTRAVEL
Dim SPD_FAST, SPD_FINE

' -----------------------------------------------------
' Configuration parameters
' -----------------------------------------------------
SENS_Z = -92.95   ' Sensor Z position
Z_SAFE = -30   ' Safe Z above sensor (for rapid move)
SENS_X = 2    ' Sensor X position
SENS_Y = 0   ' Sensor Y position
MAX_DTRAVEL = 200 ' Max down travel
SPD_FAST = 880
SPD_FINE = 70   ' Fast and fine speeds
Z_LIFT = 3   ' Z lift for fine probing
Z_PARK = -5    ' Park after probe absolute Z position
' -----------------------------------------------------

Message( "Dokonujê pomiaru d³ugoœci narzêdzia..." )
If GetOEMLed(807) Then
Message( "TC ERROR: X Axis not referenced!" )
End
End If
If GetOEMLed(808) Then
Message( "TC ERROR: Y Axis not referenced!" )
End
End If
If GetOEMLed(809) Then
Message( "TC ERROR: Z Axis not referenced!" )
End
End If
If GetOEMLed(825) Then
Message( "TC ERROR: Czujnik pomiaru ca³y czas za³¹czony! pomiar przerwany." )
End
End If
If GetOEMLed(11) Then
Message( "TC ERROR: Do pomiaru narzêdzia wy³¹cz wrzeciono!" )
End
End If

Tool = GetDRO(24)   ' Get current tool index
' narzedzie 0 nie podlega pomiarowi
If(Tool = 0) Then
Message( "TC INFO: Narzêdzie nr:0 nie podlega pomiarom d³ugoœci" )
End
End If

WaitForMove
Code("G43T0")
Code("G43H0")    ' turn off tool lenght compensation
WaitForMove

' Move to PARK
Code("G0G53 Z" & Z_PARK)
WaitForMove
' Move to XY position of tool correction sensor
'   Code("G0G53 X" & SENS_X & " Y" & SENS_Y)
Code("G0G53 X" & SENS_X)
Code("G0G53 Y" & SENS_Y)
WaitForMove
' Get actual Z offset
ZOFFSET = GetOEMDRO(49)
' Rapid go down to safe distance above sensor
Code("G0G53 Z" & Z_SAFE)
WaitForMove

' Probe
ZTOP = GetDRO(2) ' actual Z position
ZGODOWN = ZTOP - MAX_DTRAVEL ' max down travel
Code("G31 Z" & ZGODOWN & "f" & SPD_FAST)
WaitForMove
ZUPFINE = GetOEMDRO(85) + Z_LIFT
Code("G1G53 Z" & ZUPFINE & "f" & SPD_FAST) ' go up Z_LIFT
WaitForMove
' fine probe
Code("G31 Z" & ZGODOWN & "f" & SPD_FINE)
WaitForMove
ZBOTTOM = GetVar(2002) 'get probe activation point

' Lift Z to abs park position
Sleep(50)
Code("G0G53 Z" & Z_PARK)
WaitForMove

ZABS = ZBOTTOM + ZOFFSET
ToolLen = -(SENS_Z - ZABS)
WaitForMove
SetOEMDRO(42, ToolLen)
Code("G43T" & Tool)   ' G43 to sync value in system
Code("G43H" & Tool)   ' G43 to sync value in system
WaitForMove
Message ("Z Value : " & ToolLen)
' -----------------------------------------------------------------------------
Sub WaitForMove ()
While IsMoving()
Sleep(15)
Wend
End Sub