Malfunzionamento If su CncPlanet

Sezione dedicata ai controlli di Planet Cnc MK1, MK2, MK2/4, MK3, MK3/4
Rispondi
tecno67
Member
Member
Messaggi: 391
Iscritto il: lunedì 26 febbraio 2007, 14:25
Località: Prov. di Milano

Malfunzionamento If su CncPlanet

Messaggio da tecno67 » giovedì 4 marzo 2021, 14:29

Ci sto impazzendo da un po.
Qualcuno che conosce il software CNC USB Controller (ver 2.10), mi sa spiegare perchè in questo programma qui sotto, quando la condizione dell'if è non verificata, le istruzioni dopo l'endif non vengono eseguite, mentre se la condizione è vera vengono eseguite? Trovandosi dopo l'endif non dovrebbero essere condizionate, è come se tutto il resto del programma dopo l'endif venisse considerato come parte integrante del codice da eseguire in caso di condizione verificata, ovvero come se l'endif non ci fosse proprio.

Codice: Seleziona tutto

  
% 
#1=0 (x CENTRO)
#2=0 (y CENTRO)
#3=20 (RAGGIO)
#4=5 (FINITURA) 
#5=0 (profondita iniziale)
#6=-10 (profondita finale)
#7=5(profondita passata)
#8=#5 (profondita attuale)
G00 Z5
G00 X#1 Y#2
G00 Z#5 

O140 do
        #8=[#8-#7]
	G01 x#1 Y#2 Z#8
	G17 G02 X[#1+#3-#4] Y#2 R[[#3-#4]/2]  
	G02 X[#1-#3] Y#2 I[[#4/2]-#3]  
	G01 X[#1-#3] Y#2
	G02 X[#1-#3] Y#2 I#3  
O140 while [[#8-#6]  GE #7]
 
O5 if[#8 NE #6]
        G01 x#1 Y#2 Z#6
        G17 G02 X[#1+#3-#4] Y#2 R[[#3-#4]/2]  
        G02 X[#1-#3] Y#2 I[[#4/2]-#3]  
        G01 X[#1-#3] Y#2
        G02 X[#1-#3] Y#2 I#3 
O5 endif

G01 X#1 Y#2
G00 Z#10
%

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Malfunzionamento If su CncPlanet

Messaggio da hellfire39 » giovedì 4 marzo 2021, 19:08

In simulazione o sulla macchina reale?

tecno67
Member
Member
Messaggi: 391
Iscritto il: lunedì 26 febbraio 2007, 14:25
Località: Prov. di Milano

Re: Malfunzionamento If su CncPlanet

Messaggio da tecno67 » venerdì 5 marzo 2021, 15:32

Con la sola scheda reale appoggiata sul tavolo senza motori collegati, ma non in modalità simulazione. Quindi come su macchina reale. In simulazione comunque è lo stesso, tranne che la lavorazione ricomincia da capo in maniera ciclica senza dover ridare lo start. Le ultime due istruzioni in ogni caso non le esegue.

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Malfunzionamento If su CncPlanet

Messaggio da hellfire39 » venerdì 5 marzo 2021, 17:12

Si, ho visto. L'ho provata solo in simulazione perché sono all'estero e non ho la scheda fisica.
Mi chiedevo se era un baco del simulatore oppure un malfunzionamento presente pure sulla scheda fisica.

Conviene postare sul forum della planet-cnc

tecno67
Member
Member
Messaggi: 391
Iscritto il: lunedì 26 febbraio 2007, 14:25
Località: Prov. di Milano

Re: Malfunzionamento If su CncPlanet

Messaggio da tecno67 » venerdì 5 marzo 2021, 21:19

Se è un baco non è nella scheda, è nel SW secondo me, non credo che l'elaborazione logica sia fatta dalla scheda, penso piuttosto che il PC faccia tutta la logica e la scheda si occupi solo della generazione degli impulsi su vettori lineari, almeno con la MK1, dato che nelle impostazioni tu definisci ad esempio il n° si singoli vettori in cui dividi una interpolazione circolare. Una prova da fare, sarebbe quella di far interpretare lo stesso Gccode su una Mk3.
E' anche possibile che la gestione delle istruzioni di controllo flusso non fosse ancora del tutto a punto con questa versione SW, dato che nel manuale questi comandi non sono descritti, c'è solo un esempio di lavorazione di una superficie semisferica che fà uso un ciclo Do-While. Mentre nella documentazione di TNG queste istruzioni sono descritte. Ti dirò di più anche la chiamata a sottoprogramma è presente, ma non descritta, questa però funziona. Certo senza un If funzionante è difficile scrivere dei programmi parametrici appena decenti.

Rispondi

Torna a “Planet Cnc”