Visto che in rete avevo trovato poco a riguardo e quello che avevo trovato non mi soddisfaceva ho deciso di provare a creare uno script per azzerare l'utensili nel pezzo.
Ho testato lo script e funziona molto bene comunque se ci sono eventuali segnalazioni di errori cercherò di correggerle.
Allego anche lo sceen che sostituisce quello attuale con l'unica variazione del pulsante per lo zero.
Simone
-------------------------------------------------------------------------------------
CurrentFeed = GetOemDRO(818) 'Memorizzazione feedrate corrente
DoSpinStop() 'Fermo in ogni caso per sicurezza il motore M5
ZMove = 2.0 'Misura di Ricerca del probe
ZOffset = 30 'Altezza del probe
ZSal = ZOffset + 5 'Altezza di risalita dopo l'azzeramento utenise
StopZmove = 0 'Blocco programma con Zmove oltrepassata
If GetOemLed (825)=0 Then 'Controllo se il probe è OK o difettoso
DoOEMButton (1010) 'Azzero asse Z Cosi che la sonda comincerà a muoversi da qui
Code "G4 P2.5" 'Tempo di posizionamento del probe sotto la Z
Code "G31 Z-"& ZMove & "F25" 'Comando discesa Z , Distanza Ricerca probe e feedrate
While IsMoving() 'Attesa del segnale d'ingresso digitalize
Wend
Probepos = GetVar(2002) 'Rilevo il punto esatto di contatto al probe
If Probepos = - ZMove Then 'Se distanza Zmove = Probepos Azzeramento non possibile
responce = MsgBox ("**ERRORE** Utensile non Inserito o Probe non posizionato" , 4 , "Probe **ERRORE**" )
Code "G0 Z10" 'Alzo la Z di (x)mm in rapido
StopZmove = 1 'Mando StopMove a 1 per bloccare la sub successiva
Code "F" &CurrentFeed 'Ritorno al feedrate Originale
End If
If StopZmove = 0 Then 'Con Stepmove a 0 continuo ciclo
Code "G0 Z" & Probepos 'ritorno al punto di touch, eliminando eventuli errori
While IsMoving ()
Wend
Call SetDro (2, ZOffset) 'Azzeramento Z con somma altezza probe
Code "G4 P1" 'Attesa Aggiornamento Dro.
Code "G0 Z" & ZSal 'Quota Z di ritorno (x)mm dopo dall'azzeramento
Code "(Asse Z Azzerata)" 'Messaggio visualizzato con azzeramento a buon fine
Code "F" &CurrentFeed 'Ritorno al feedrate Originale
End If
Else
Code "(Segnale Probe a terra, Controlla connesioni e riprova)" 'Messaggio visualizzato con azzeramento fallito
End If
Exit Sub
-------------------------------------------------------------------------------------