Boa noite amigos, estou tentando a dias entender o que passa na minha CNC, tento construir uma macro para zerar os eixos Z, X e Y respectivamente, código abaixo:
'Script para auto zero XYZ Rev1
'ZERA EIXO Z
If GetOemLed (825)=0 Then 'Check to see if the probe is already grounded or faulty
DoOEMButton (1008) 'zera o DRO do eixo X
DoOEMButton (1009) 'zera o DRO do eixo Y
Code "G4 P2" ' 2 segundos de espera
Code "G31 Z-1000 F100" 'Z vai baixar até o limite
While IsMoving() 'espera enquanto acontece
Wend
DoOEMButton (1010) 'zera o DRO do eixo Z e começa a descer o eixo
Call SetDro (2, 8.0) 'insere na DRO do eixo Z o valor determinado que é 7.5 altura da minha base
Code "G4 P0.25" 'Pausa para atualizar DRO.
Code "G0 Z12" 'retrai Z para +12.0
Code "(Z axis está com a altura de 20mm)" 'retorna esta mensagem para o statusbar
'ZERA EIXO X
Code "(Preparando para zerar eixo X)" 'retorna esta mensagem para o statusbar
Code "G0 X40" 'move X para 40.0
While IsMoving() 'espera enquanto acontece
Wend
Code "G0 Z7" 'move Z para 7
Code "G4 P2" ' 2 segundos de espera
Code "G31 X1000 F100" 'X vai mover até o limite
While IsMoving() 'espera enquanto acontece
Wend
DoOEMButton (1008) 'zera o DRO do eixo X
Code "(X axis está no ponto zero da base)" 'retorna esta mensagem para o statusbar
'ZERA EIXO Y
Code "(Preparando para zerar eixo Y)" 'retorna esta mensagem para o statusbar
Code "G0 X10" 'move X
Code "G4 P2" ' 2 segundos de espera
Code "G31 Y-1000 F100" 'Y vai mover até o limite
While IsMoving() 'espera enquanto acontece
Wend
DoOEMButton (1009) 'zera o DRO do eixo Y
Code "(Y axis está no ponto zero da base)" 'retorna esta mensagem para o statusbar
Code "G0 Z20" 'retrai Z para +20.0
While IsMoving() 'espera enquanto acontece
Wend
Code "G0 X0 Y0" 'move X e Y para zero da peça
Code "(XY ponto zero peça Z altura 20mm)" 'retorna esta mensagem para o statusbar
End If
Exit Sub
***Problemas: Quando executo a macro no passo a passo tudo funciona, mas quando aciono pelo botão Auto Tool Zero, a bagunça é geral, eixo tem que desce sobe, quando é para acionar eixo X move é o eixo Z, cada tentativa acontece algo diferente, sem mudar nada fazendo passo a passo tudo funciona. alguém mais experiente que eu pode me ajudar?