|
oggi dopo un bel po di prove sono riuscito a far muover ela Z in ricerca del digitize solo alla prima accensione.. diversamente quando premo ATZ la z scende veloce, fino alla massima escursione indicata nel programma e poi risale aggiungendo lo spessore del sensore...
sembra che il problema grosso sia la difficolta nell'eseguire il codice G31 che chedo avvia la in ricerca del probe...
nella fattispecie non eseguiva la linea contenente " Code "G31 Z-"& ZMove & "F25" "
ma ho dovuto separare i comandi su piu righe
qualche anima pia ?
posto il listato adottato... 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
rem Code "G31 Z-"& ZMove & "F25" 'Comando discesa Z , Distanza Ricerca probe e feedrate
Code "G31"
Code " Z -"& ZMove & "F25"
rem Code "G31 Z-"& ZMove & "F25"
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
__________________
Ciaooo da Fiorello. |