Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > CNC e Stampanti 3D


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 16 marzo 16, 19:48   #1 (permalink)  Top
User
 
L'avatar di gattodistrada
 
Data registr.: 19-01-2007
Residenza: Bergamo
Messaggi: 14.905
Invia un messaggio via MSN a gattodistrada
Problema con ATZ non rilevato in mach3

Salve a tutti, ho un problemino che non riesco a risolvere...

premessa:
la mia cnc autocostruita credo funzioni perfettamente, anchde se ho notato alcune cose...
ho in uso mach3 R3.043.066 (l'ultima) originale, viene pilotata tramite una interfaccia USB/parallela acqusitata da un francese su ebay, (non ricordo il modello).

aggiornamento:
in questi giorni mi sono deciso ad implementare la cnc di un sistema di azzeramento dell'utensile, ho quindi acquistato un sensore ad induzione ed ho provveduto a collegarlo al pin 15 della Breack-out board, avvicinando quindi il sensore ad un corpo metallico si accende la relativa spia del digitize di mach3.

Problema1:
all'accensione mach3 segna xyz a zero, ma appena premo su star mette dei valori casuali, e se faccio ref all home la macchina parte alla ricerca dei finecorsa quando li tocca si ferma, correttamente ma i vari DRO non vengono azzerati automaticamente e devo farlo manualmente.
e' normale?

Problema2:
ho quindi provveduto a copiare vari script trovati in rete per il rilevamento dell ATZ, la macchina parte e va in ricerca dello zero, ma pur vedendo la psia del digitize accendersi, mach3 non rileva l'avvenuto contatto e prosegue nella ricerca.
pensando che il sensore fosse difettoso o provato a utilizzare un microswitch meccanico, ma ho ottenuto lo stesso effetto, spia accesa e mach3 che continua la ricerca.

uno degli scritp che ho usato e' questo

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

qualcuno ha qualche idea di come risolvere? grazie infinite
__________________
Ciaooo da Fiorello.


https://www.facebook.com/fiorello.goletto

ad essere bravi piloti si arriva per gradi,se salti le tappe... trovi le talpe...

Ultima modifica di gattodistrada : 16 marzo 16 alle ore 19:52
gattodistrada non è collegato   Rispondi citando
Vecchio 18 marzo 16, 18:22   #2 (permalink)  Top
User
 
L'avatar di gattodistrada
 
Data registr.: 19-01-2007
Residenza: Bergamo
Messaggi: 14.905
Invia un messaggio via MSN a gattodistrada
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.


https://www.facebook.com/fiorello.goletto

ad essere bravi piloti si arriva per gradi,se salti le tappe... trovi le talpe...
gattodistrada non è collegato   Rispondi citando
Vecchio 19 marzo 16, 11:47   #3 (permalink)  Top
User
 
L'avatar di gattodistrada
 
Data registr.: 19-01-2007
Residenza: Bergamo
Messaggi: 14.905
Invia un messaggio via MSN a gattodistrada
nessun suggerimento ?
__________________
Ciaooo da Fiorello.


https://www.facebook.com/fiorello.goletto

ad essere bravi piloti si arriva per gradi,se salti le tappe... trovi le talpe...
gattodistrada non è collegato   Rispondi citando
Vecchio 20 marzo 16, 17:08   #4 (permalink)  Top
User
 
L'avatar di carcan
 
Data registr.: 06-10-2008
Residenza: Brianza
Messaggi: 815
Appena riesco copio ed incollo il mio script che ha funzionato al primo colpo.
__________________
CNC Ideas
carcan non è collegato   Rispondi citando
Vecchio 22 marzo 16, 08:06   #5 (permalink)  Top
User
 
L'avatar di carcan
 
Data registr.: 06-10-2008
Residenza: Brianza
Messaggi: 815
Io lo uso con un blocchetto alto 20mm quindi la riga "SetOEMDRO(ZaxisDRO, 20)" è da modificare con il valore di altezza del proprio blocchetto/interuttore


Sub Main()

Dim ConfirmReady As String
Dim DoXY As String
Dim DoZ As String
Dim XaxisDRO As Integer
Dim YaxisDRO As Integer
Dim ZaxisDRO As Integer
Dim ToolDia As Double


' Define some constants for MachMsg dialog types
MachMsgTypeOK = 0
MachMsgTypeOKCancel = 1
MachMsgTypeAbortRetryIgnore = 2
MachMsgTypeYesNoCancel = 3
MachMsgTypeYesNo = 4
MachMsgTypeRetryCancel = 5
MachMsgTypeCancelTryAgainContinue = 6

' Define some constants for MachMsg return codes
MachMsgReturnOK = 1
MachMsgReturnCancel = 2
MachMsgReturnAbort = 3
MachMsgReturnRetry = 4
MachMsgReturnIgnore = 5
MachMsgReturnYes = 6
MachMsgReturnNo = 7
MachMsgReturnTryAgain = 10
MachMsgReturnContinue = 11

' notice the SetDRO() command use single digit value for xyzabc
' uncomment for the correct version
'XaxisDRO=0
'YaxisDRO=1
'ZaxisDRO=2

' notice the SetOEMDRO() command uses three digit values for xyzabc
' uncomment for the correct version
XaxisDRO=800
YaxisDRO=801
ZaxisDRO=802

'ConfirmReady = MachMsg("Confirm Touch plate leads are connected and ready.","",4)
'ConfirmReady = MachMsgReturnYes Then GoTo 1 Else GoTo 5

1:
DoXY = MachMsg("Zero X and Y also?","",4)
If DoXY = MachMsgReturnYes Then GoTo 2 Else GoTo 3

2:
ToolDia = Question("What is the tool diameter?")
Message( "Auto Zeroing X..." )
'SetDRO(XaxisDRO, 0.0000)
SetOEMDRO(XaxisDRO, 0.0000)
Sleep 100
If IsSuchSignal (DIGITIZE) Then
code "G31 X-10 F10"
While IsMoving()
Sleep 100
Wend
'SetDRO(XaxisDRO, ToolDia/2)
SetOEMDRO(XaxisDRO, ToolDia/2)
Sleep 100
'code "G1 X.5"
code "G1 X" & ToolDia / 2 + 5 & " F500"
While IsMoving()
Sleep 100
Wend
End If

Message( "Auto Zeroing Y..." )
'SetDRO(YaxisDRO, 0.0000)
SetOEMDRO(YaxisDRO, 0.0000)
Sleep 100
If IsSuchSignal (DIGITIZE) Then
code "G31 Y-10 F10"
While IsMoving()
Sleep 100
Wend
'SetDRO(YaxisDRO, ToolDia/2)
SetOEMDRO(YaxisDRO, ToolDia/2)
Sleep 100
'code "G1 Y.5"
code "G1 Y" & ToolDia / 2 + 5 & " F500"
While IsMoving()
Sleep 100
Wend
End If

code "G1 X20 Y20 F500"

3:
DoZ = MachMsg("Position the touch plate to zero Z. y to continue or n to skip.","",4)
If DoZ = MachMsgReturnYes Then GoTo 4 Else GoTo 6

4:
Message( "Auto Zeroing Z..." )
'SetDRO(ZaxisDRO, 0.0000)
SetOEMDRO(ZaxisDRO, 0.0000)
Sleep 100
If IsSuchSignal (DIGITIZE) Then
code "G31 Z-30 F10"
While IsMoving()
Sleep 100
Wend
'SetDRO(ZaxisDRO, .180)
'SetOEMDRO(ZaxisDRO, .180)
SetOEMDRO(ZaxisDRO, 20)
Sleep 100
code "G1 Z25 F500"
While IsMoving()
Sleep 100
Wend
End If
GoTo 6

5:
Message ("Tool zeroing aborted. Try again when ready.")
GoTo 7

6:
Message "Tool zeroing complete. Check the results on the DROs."

7:
End Sub
__________________
CNC Ideas
carcan non è collegato   Rispondi citando
Vecchio 22 marzo 16, 10:08   #6 (permalink)  Top
User
 
L'avatar di gattodistrada
 
Data registr.: 19-01-2007
Residenza: Bergamo
Messaggi: 14.905
Invia un messaggio via MSN a gattodistrada
grazie stasera o domani faro una prova, il principale problema e che sembra non digerire il G31 presente in tutti i listati... o non parte in ricerca o se parte non si ferma anche se il digitize si accende..
__________________
Ciaooo da Fiorello.


https://www.facebook.com/fiorello.goletto

ad essere bravi piloti si arriva per gradi,se salti le tappe... trovi le talpe...
gattodistrada non è collegato   Rispondi citando
Vecchio 22 marzo 16, 10:37   #7 (permalink)  Top
User
 
L'avatar di carcan
 
Data registr.: 06-10-2008
Residenza: Brianza
Messaggi: 815
Molto strano, io ho configurato il contatto sul pin "probe" ed ha funzionato subito. Stessa versione di mach3 (ultima) e con licenza regolare come te. di differente c'è che uso una breakboard sulla parallela direttamente
__________________
CNC Ideas

Ultima modifica di carcan : 22 marzo 16 alle ore 10:42
carcan non è collegato   Rispondi citando
Vecchio 22 marzo 16, 10:43   #8 (permalink)  Top
User
 
L'avatar di gattodistrada
 
Data registr.: 19-01-2007
Residenza: Bergamo
Messaggi: 14.905
Invia un messaggio via MSN a gattodistrada
appunto, appena riesco faro dell eprove con un altro pc via parallela, e non via usb, lo strano e che il digitize si accende, quindi mach lo vede di sicuro..

ma ancor più strano e che il G0 viene eseguito mentre il G31 no, o se viene eseguito poi non rileva il digitize..
__________________
Ciaooo da Fiorello.


https://www.facebook.com/fiorello.goletto

ad essere bravi piloti si arriva per gradi,se salti le tappe... trovi le talpe...
gattodistrada non è collegato   Rispondi citando
Rispondi

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
Scalare con Mach3 fooxx Software 7 13 ottobre 14 12:07
MACH3 -problema! pasaury CNC e Stampanti 3D 74 20 maggio 14 22:02
problema con mach3 mard80 CNC e Stampanti 3D 5 07 marzo 13 21:45
problema con mach3 alberto.f CNC e Stampanti 3D 0 13 ottobre 08 15:47



Tutti gli orari sono GMT +2. Adesso sono le 18:06.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002