Programmino per prendere i tempi ciclo

Sezione dedicata al G-code, postate qui dubbi o i Vs. lavori in formato G-code.
Rispondi
bigangelman
Junior
Junior
Messaggi: 51
Iscritto il: giovedì 29 settembre 2011, 22:10
Località: Novellara

Programmino per prendere i tempi ciclo

Messaggio da bigangelman » mercoledì 4 marzo 2015, 22:59

Una frase che piace tantissimo... "IL SAPERE UMANO APPARTIENE AL MONDO"... quindi posto il mio primo programmino con variabili e serve per prendere i tempi ciclo... prima di utilizzarlo assicurarsi che la variabile #3001 equivalga ad un TIMER di millesimi di secondo.

%
O1005(TEMPO CICLO)
(#3001 TEMPO IN MILLISECONDI)

(LETTURA DEL TEMPO SULLE VARIABILI)
(#600=ORE/#601=MIN/#602=SEC)
#600=#0 (ANNULLA VARIABILE)
#601=#0 (ANNULLA VARIABILE)
#602=#0 (ANNULLA VARIABILE)
#600=#3001(PRESA TEMPO INIZIALE)

M98P----(PART-PROGRAM DA PRENDERE TEMPO CICLO)

#601=#3001(PRESA TEMPO FINALE)
#602=[[#601-#600]/1000](TEMPO TOTALE IN SECONDI)
#600=0 (IMPOSTA VARIABILE A ZERO)
#601=0 (IMPOSTA VARIABILE A ZERO)
WHILE[#602LE60]DO1
#602=#602-60
#601=#601+1
END1
WHILE[#601LE60]DO1
#601=#601-60
#600=#600+1
END1
M99
M30
%

torn24
God
God
Messaggi: 5047
Iscritto il: venerdì 1 febbraio 2008, 11:28
Località: Modena

Re: Programmino per prendere i tempi ciclo

Messaggio da torn24 » giovedì 5 marzo 2015, 6:48

Be anche io sono per il condividere le conoscenze in linea di massima :D , ma se uno ha impiegato tempo e fatica per fare una cosa, non regalarla a chi ci vuole guadagnare senza dirti neanche grazie, ma chiedere un giusto compenso ...

Ti faccio i complimenti, un altro fresatore affascinato dalla parametrica =D>
In questo caso avrei condiviso anche io perché uno potrebbe sempre guardare l'orologio. :badgrin:
CIAO A TUTTI !

bigangelman
Junior
Junior
Messaggi: 51
Iscritto il: giovedì 29 settembre 2011, 22:10
Località: Novellara

Re: Programmino per prendere i tempi ciclo

Messaggio da bigangelman » giovedì 5 marzo 2015, 16:16

Riposto il programma in formato funzionante... facendo le prove prima a casa funzionava, in macchina ha dato problemi... risolto con il comando IF invece che WHILE... adesso va... scusate per il problemino... :wink:

%
O1005 (TEMPO CICLO)
(#3001 TEMPO IN MILLISECONDI)
(LETTURA DEL TEMPO SULLE VARIABILI)
(#600=ORE/#601=MIN/#602=SEC)

#600 =#0 (ANNULLA VARIABILE)
#601 =#0 (ANNULLA VARIABILE)
#602 =#0 (ANNULLA VARIABILE)
#600 =#3001 (PRESA TEMPO INIZIALE)

M98 P-- (PART-PROGRAM DA PRENDERE IL TEMPO)

#601 =#3001 (PRESA TEMPO FINALE)
#602 =[[#601- #600 ]/1000 ](TEMPO TOTALE IN SECONDI)
#600 =0 (IMPOSTA VARIABILE A ZERO)
#601 =0 (IMPOSTA VARIABILE A ZERO)
IF [#602 LT60 ]GOTO2
N1 #602 =#602-60
#601 =#601+1
IF [#602 GE60 ]GOTO1
N2 IF [#601 LT60 ]GOTO4
N3 #601 =#601-60
#600 =#600+1
IF [601 GE60 ]GOTO3

N4 M99
M30
%

Avatar utente
walgri
God
God
Messaggi: 4735
Iscritto il: giovedì 13 gennaio 2011, 18:37
Località: Cagliari

Re: Programmino per prendere i tempi ciclo

Messaggio da walgri » giovedì 5 marzo 2015, 17:13

Spostato in GCODE
...stop chasing shadows, just enjoy the ride.
Aìna pantografoTelemetria per KFlopBlenderCAM STL + DXF

bigangelman
Junior
Junior
Messaggi: 51
Iscritto il: giovedì 29 settembre 2011, 22:10
Località: Novellara

Re: Programmino per prendere i tempi ciclo

Messaggio da bigangelman » sabato 7 marzo 2015, 21:00

Rieccomi a riproporre il codice col comando WHILE... dopo aver rovistato in qualche ciclo della FANUC, ho capito che il WHILE di FANUC non funziona come il WHILE della programmazione C# di .NET... questa volta il codice sono riuscito a testarlo in macchina a lavoro... bastava forzare la variabile che dopo aver eseguito il calcolo avrebbe avuto il valore della variabile stessa, come da ciclo qui sotto, #602=#602 ecc... e poi proprio a causa del fraintendimento sopra spiegato, avevo sbagliato a mettere il comando LE con quello attuale GT... ricordo per chi non sa, LE sta per minore o uguale a, e GT sta per maggiore di...

Buona serata... (il codice a seguire...)


%
O1005(TEMPO CICLO)
(#3001 TEMPO IN MILLISECONDI)

(LETTURA DEL TEMPO SULLE VARIABILI)
(#600=ORE/#601=MIN/#602=SEC)
#600=#0 (ANNULLA VARIABILE)
#601=#0 (ANNULLA VARIABILE)
#602=#0 (ANNULLA VARIABILE)
#600=#3001(PRESA TEMPO INIZIALE)

M98P----(PART-PROGRAM DA PRENDERE TEMPO CICLO)

#601=#3001(PRESA TEMPO FINALE)
#602=[[#601-#600]/1000](TEMPO TOTALE IN SECONDI)
#600=0 (IMPOSTA VARIABILE A ZERO)
#601=0 (IMPOSTA VARIABILE A ZERO)
WHILE[#602GT59]DO1
#602=#602-60
#602=#602
#601=#601+1
#601=#601
END1
WHILE[#601GT59]DO2
#601=#601-60
#601=#601
#600=#600+1
#600=#600
END2
M99
M30
%

torn24
God
God
Messaggi: 5047
Iscritto il: venerdì 1 febbraio 2008, 11:28
Località: Modena

Re: Programmino per prendere i tempi ciclo

Messaggio da torn24 » domenica 8 marzo 2015, 6:52

A me sembra che While Fanuc funzioni come in qualunque altro linguaggio di programmazione :wink: , ripete il ciclo finché la condizione è vera, l'incremento di una variabile differisce da linguaggi Clike in quanto non esistono gli operatori += , e ++ , e quindi occorre un altra sintassi #variabile=#variabile+1 :D
CIAO A TUTTI !

bigangelman
Junior
Junior
Messaggi: 51
Iscritto il: giovedì 29 settembre 2011, 22:10
Località: Novellara

Re: Programmino per prendere i tempi ciclo

Messaggio da bigangelman » domenica 8 marzo 2015, 14:56

Taci va torn... quel giorno ero fuori non so come... ma cmq ho fatto confusione tra il WHILE ed IF... a parte questo il comando #variabile=#variabile+1 l'avevo gia messo e non so come mai non andava, ho notato da un ciclo fanuc che hanno forzato subito dopo il comando trascritto poc'anzi il comando #variabile=#variabile...

cmq complimenti per le basi di c#... anche io ne so qualcosina... :wink: :wink:

Rispondi

Torna a “G-code”