Rem VBScript Sensor Probe para eixo XY EXTERNO 'WWW.MACHSUPORTE.COM.BR 'INICIO VARIAVEIS VarZSEG=5 'Z de Seguranca - movimentacao rapida VarZ=-5 'Z de Leitura / Probe Diametro = 90 'Diametro aproximado do Circulo de Leitura VarXY = 10 'Var XY XyFeed = 50 'Feed-Rate XY de Leitura / Probe [mm/min] If GetOemLed (825) <> 0 Then 'Checa se o Probe ja está ligado ou faltante Code "(Probe ja ligado! cheque a conexao e tente novamente)" Else CurrentFeed = GetOemDRO(818) 'Get current feedrate DoSpinStop() 'Desliga Spindle XCurrent = GetOemDro(0) YCurrent = GetOemDro(1) DiamScan = (Diametro / 2) + 10 'init code Code "G4 P1.0" 'Pausa de 1 Segundo Code "F"& XyFeed Code "G92 X0 Y0" Rem Probe Left Code "G0 Z" &VarZSEG Code "G0 X" &XyMove * -1 Code "G0 Z" &VarZ XNew = Xcurrent - DiamScan Code "G31 X" &XNew Code "(Escaneando X-- ...)" While IsMoving() Sleep(200) Wend XPos1 = GetVar(2000) Code "G0 X" &XPos1-1 Code "G0 Z" &VarZSEG Code "G0 X" &XCurrent Rem Probe Right XNew = XCurrent + DiamScan Code "G31 X" &XNew Code "(Escaneando X++ ...)" While IsMoving() Sleep(200) Wend XPos2 = GetVar(2000) Code "G0 X" &XPos1+1 Code "G0 Z" &VarZSEG XCenter = (XPos1 + XPos2) / 2 'Calcula Centro X Code "G0 X" &XCenter While IsMoving () Sleep(200) Wend Rem Probe Up YNew = YCurrent + DiamScan Code "G31 Y" &YNew Code "(Escaneando Y++ ...)" While IsMoving() Sleep(200) Wend YPos1 = GetVar(2001) Code "G0 Y" &YPos1-1 Code "G0 Z" &VarZSEG Code "G0 Y" &YCurrent Rem Probe Down YNew = YCurrent - DiamScan Code "G31 Y" &YNew Code "(Escaneando Y-- ...)" While IsMoving() Sleep(200) Wend YPos2 = GetVar(2001) Code "G0 Y" &YPos1+1 Code "G0 Z" &VarZSEG YCenter = (YPos1 + YPos2) / 2 'Calcula Centro Y Code "G0 Y" &YCenter While IsMoving () Sleep(200) Wend Code "(XY Center OK - machsuporte.com.br)" Code "F" &CurrentFeed 'restore starting feed rate End If