Rem VBScript To center mill On quick relase handle In preparation For slot cutting Dist = 10.0 'Maximum detection distance, radius should be larger than the number of cylinders, such as cylinder radius is 8, the maximum detection range can be set to about 10 ZDist = 2.0 'z-axis depth distance Sat = 1.0 'After the probe hit£¬ the fall back distance If GetOemLed (825) <> 0 Then 'Check to see if the probe is already grounded or faulty Code "(Probe plate is grounded, check connection and try again)" Else DoSpinStop() FeedCurrent = GetOemDRO(818) 'Get the current settings XCurrent = GetDro(0) YCurrent = GetDro(1) ZCurrent = GetDro(2) Code "G4 P1" 'Pause 1s Code "F25" 'The speed is slower, for 25 Rem Probe Down ZNew = ZCurrent - ZDist 'Probe down on the surface of the workpiece Code "G31 Z" &ZNew 'Begin to probe While IsMoving() Sleep(200) Wend ZTop = GetDro(2) 'Obtain the z coordinate of the workpiece surface Code "G0 Z" &ZTop + Sat 'Detected on the surface,go away Code "G0 Y" &YCurrent + Dist ' Code "G0 Z" &ZTop - ZDist ' Rem Probe foward Code "G31 Y" &YCurrent 'Scan back edge While IsMoving() Sleep(200) Wend YPos1 = GetDro(1) 'Record back edge position Code "G0 Y" &YPos1 + Sat 'Move away from last scanned edge Code "G0 Z" &ZTop +Sat 'Move up above part surface Code "G0 Y" &YCurrent - Dist 'Move to front edge of part Code "G0 Z" &ZTop - ZDist 'Move down to below part top edge Rem Probe backward Code "G31 Y" &YCurrent While IsMoving() Sleep(200) Wend YPos2 = GetDro(1) YCenter = (YPos1 + YPos2) / 2 Code "G0 Y" &YPos2 - Sat Code "G0 Z" &ZTop + Sat Rem move To the center Code "G0 Y" &YCenter Code "G0 X" &XCurrent + Dist Code "G0 Z" &ZTop - ZDist Rem Probe Left Code "G31 X" &XCurrent While IsMoving() 'wait for the move to finish Sleep(200) Wend XPos1 = GetDro(0) Code "G0 X" &XPos1 + Sat Code "G0 Z" &ZTop + Sat Code "G0 X" &XCurrent-Dist Code "G0 Z" &ZTop - ZDist Rem Probe Right Code "G31 X" &XCurrent While IsMoving() Sleep(200) Wend XPos2 = GetDro(0) XCenter = (XPos1 + XPos2) / 2 'center is midway between XPos1 and XPos2 Code "G0 X" &XPos2 - Sat Code "G0 Z" &ZTop + Sat Code "G0 X" &XCenter While IsMoving() Sleep(200) Wend Code "F" &FeedCurrent 'restore starting feed rate Rem Reset DROs Call SetDro (0,0.00) 'reset X axis DRO Call SetDro (1,0.00) 'reset Y axis DRO Call SetDro (2,Sat) 'reset Z axis DRO End If