Inserimento data e ora sul particolare tramite macro

Sezione Fanuc
Rispondi
Claudio2609
Newbie
Newbie
Messaggi: 4
Iscritto il: lunedì 2 ottobre 2023, 22:13

Inserimento data e ora sul particolare tramite macro

Messaggio da Claudio2609 » lunedì 2 ottobre 2023, 22:51

Come posso creare una macro con le variabili 3011/3012 per inserire sul particolare in lavorazione data e ora ?
Grazie

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

Re: Inserimento data e ora sul particolare tramite macro

Messaggio da torn24 » martedì 3 ottobre 2023, 4:10

Come puoi creare una macro? Non è una cosa basilare e dipende da quello che sai fare.
I passi che devi fare sono questi "una specie di algoritmo un po astratto ossia un procedimento per risolvere il problema"
1)Prelevo il valore data e ora dalle variabili di sistema.
2)Sono numeri e scompongo il numero data e il numero ora, nelle sue cifre, esiste un algoritmo per farlo divido per 10 e prendo il resto.
3)Avendo le cifre unita decine ecc.., con una serie-successione di condizioni IF, se uguale a determinata cifra salda a una riga di programma.
4)In questa riga di programma c'è un codice ISO per la fresatura della cifra in Incrementale G91 magari fatto al CAM, a fine fresatura un GOTO per tornare alle condizioni IF
5)Pima del salto bisogna prevedere una variabili per salto di ritorno per salvare la riga di destinazione.


Questi sono la linee guida per realizzare la macro che chiedi, se non sei capace, allora dovrai aspettare di diventare esperto nelle macro Fanuc e qualche concetto di informatica.

Come in ogni disciplina esistono cose elementari, semplici, medie e difficili. Adesso secondo me quello che vuoi fare non è ne elementare ne semplice, almeno io ci ho impiagato anni per risolvere problemi simili, anche perché a me non cera nessuno che ha detto il procedimento come io ho fatto con te :D
CIAO A TUTTI !

Claudio2609
Newbie
Newbie
Messaggi: 4
Iscritto il: lunedì 2 ottobre 2023, 22:13

Re: Inserimento data e ora sul particolare tramite macro

Messaggio da Claudio2609 » martedì 3 ottobre 2023, 7:21

Grazie per la risposta!
Sono già a conoscenza di questo concetto base per la creazione di una macro , la mia era solo na richiesta per come riuscire a estrapolare ora e data
Grazie

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

Re: Inserimento data e ora sul particolare tramite macro

Messaggio da hellfire39 » martedì 3 ottobre 2023, 8:58

Se non sbaglio, la variabile #3012 memorizza il tempo come variabile decimale.
Ad esempio, le ore 12:45 e 34 secondi vengono memorizzate come 124534

Sapendo questo, puoi estrarre le singole cifre con le operazioni resto e divisione intera.

resto di 124534 / 10 = 4 <-- cifra unità secondi
divisione intera di 124534 / 10 = 12453
resto di 12453 / 10 = 3 <-- cifra decine secondi
divisione intera di 12453 / 10 = 1245
resto di 1245 / 10 = 5 <-- cifra unità minuti
e così via

Siccome ignoro la sintassi Fanuc, ti faccio un esempio in pseudocodice.
Sta a te convertirlo in codice funzionante

Codice: Seleziona tutto


secondi = #3012 mod 10 

appoggio = #3012 / 10 
cifra_decine_secondi = appoggio mod 10

appoggio = appoggio / 10
cifra_unità_minuti = appoggio mod 10

appoggio = appoggio / 10
cifra_decine_minuti = appoggio mod 10

appoggio = appoggio / 10
cifra_unità_ore = appoggio mod 10

appoggio = appoggio / 10
cifra_decine_ore = appoggio mod 10
In pratica, con l'operazione resto estrai la cifra di interesse.
Poi dividi il numero per 10 e ripeti l'operazione.


Nota che, per funzionare, la divisione deve restituire un numero intero, penso si debba utilizzare la funzione FIX[]

Nota2: se il linguaggio Fanuc non avesse la funzione modulo, puoi calcolare il resto come differenza

Codice: Seleziona tutto

temp=appoggio - FIX[appoggio/10]*10
[/b]

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

Re: Inserimento data e ora sul particolare tramite macro

Messaggio da torn24 » martedì 3 ottobre 2023, 9:54

Mi viene da pensare che non servono condizioni IF, le cifre le dovrai fresare comunque tutte anche se fossero zero, per cui basta una successione sequenza di GOTO.

GOTO#120 (120 Variabile contente la cifra)

Ci sarebbero un certo numero di dettagli trascurati, ma considerarli tutti e spiegarli sarebbe meglio scrivere il codice :wink:
CIAO A TUTTI !

Claudio2609
Newbie
Newbie
Messaggi: 4
Iscritto il: lunedì 2 ottobre 2023, 22:13

Re: Inserimento data e ora sul particolare tramite macro

Messaggio da Claudio2609 » mercoledì 4 ottobre 2023, 12:40

Grazie

Rispondi

Torna a “Fanuc”