Gentile Cliente,
Grazie per aver acquistato questo prodotto. RosettaCNC Board è progettato e prodotto secondo standard elevati per conferire prestazioni di alta qualità, facilità di utilizzo e di installazione. In caso di difficoltà durante l'installazione o l'utilizzo del prodotto, si consiglia di consultare in prima istanza le istruzioni e le informazioni riportate nel sito RosettaCNC.
Serve assistenza ?
Scrivete nel Forum oppure inviate una email a support@rosettacnc.com
. Il team di sviluppo di RosettaCNC sarà lieto di rispondervi in tempi brevi.
Documento: | MDU_ROSETTACNC_INDUSTRIA4.0 | |||
---|---|---|---|---|
Descrizione: | Plugin per l'Industria 4.0 | |||
Link: | https://wiki.rosettacnc.com/doku.php/software/mdurosettacncindustria4.0 | |||
Release documento | Descrizione | Note | Data | |
1.0 | Prima release documento | / | 18/04/2019 |
I diritti d'autore di questo manuale sono riservati. Nessuna parte di questo documento, può essere copiata o riprodotta in qualsiasi forma senza la preventiva autorizzazione scritta. RosettaCNC Motion® non presenta assicurazioni o garanzie sui contenuti e specificatamente declina ogni responsabilità inerente alle garanzie di idoneità per qualsiasi scopo particolare. Le informazioni in questo documento sono soggette a modifica senza preavviso. RosettaCNC Motion® non si assume alcuna responsabilità per qualsiasi errore che può apparire in questo documento. RosettaCNC Motion® è un marchio registrato.
Per rispondere alle normative richieste dall'industria 4.0, la macchina utensile deve avere le seguenti caratteristiche:
Per soddisfare i requisiti dell'industria 4.0 è stato sviluppato un software dedicato per RosettaCNC, chiamato Gateway. Questo software va installato nel PC di controllo macchina e fornisce le seguenti funzionalità:
Tipicamente, il cliente attrezzato con un software di gestione della produzione (tipo MES) vorrà programmare il proprio software in modo da aprire connessioni OPCUA e FTP con il Gateway per sfruttarne le funzionalità, permettendo così il monitoraggio e l'interazione da remoto con la macchina. In assenza di un software di gestione della produzione, o nel caso si voglia evitare una complessa integrazione, il Team RosettaCNC mette a disposizione un software apposito, chiamato Widget, che realizza autonomamente delle connessioni OPCUA e FTP con il Gateway, realizzando così i requisiti minimi necessari per l'Industria 4.0.
Gateway | Widget |
---|---|
Il PC di controllo macchina è connesso alla Board e ospita il software RosettaCNC per il controllo delle lavorazioni. Su questo PC dovremo installare il Gateway, che fornirà i servizi di industria 4.0. Sul PC del responsabile di produzione andrà invece installato il software consumatore dei servizi, che si connetterà al Gateway e ne sfrutterà le funzionalità, permettendo il monitoraggio e l'interazione da remoto con la macchina. Nel nostro caso si tratta del Widget, oppure di un software esistente di gestione della produzione che sia stato opportunamente programmato.
I software possono essere scaricati ai seguenti link:
Ricordiamoci che il Gateway va installato sullo stesso PC che ospita il software di controllo macchina, mentre il Widget può essere installato liberamente su un qualunque altro PC connesso alla stessa rete locale. È inoltre possibile avere più copie del Widget su computer diversi: il Gateway, infatti, è predisposto per accettare un numero arbitrario di connessioni remote.
Una volta avviato, il Gateway funziona in background. Possiamo trovare la sua icona nella sezione dei programmi in background di Windows. Per accedere alla pagina di configurazione clicchiamo sull'icona col pulsante destro, quindi selezioniamo Settings. Verrà visualizzata una finestra con più schede.
In questa scheda vengono definite le credenziali di accesso alla pagina dei settings. Più precisamente:
C:\Users\<Utente>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
. Qui vengono raccolti tutti i file eseguibili da far partire all'avvio di Windows.
C:\Program Files (x86)\Qem\Q-CNC Gateway\Q-CNC Gateway.exe
. Poi clicchiamo su Avanti.
In questa scheda vengono raccolte le informazioni sulla nostra Board Rosetta. Facciamo attenzione agli ultimi due campi:
Se la connessione con Rosetta ha successo, nel Board Status dovremmo leggere Connected, mentre i campi successivi dovrebbero mostrare alcuni dettagli aggiuntivi sulla Rosetta collegata.
In questa scheda vengono raccolte le informazioni sul server OPCUA che permette di accedere alla variabili della Board. Più precisamente:
Questa scheda raccoglie le informazioni sul server FTP che permette di accedere ai file di log di Rosetta. Più precisamente:
C:\Users\<user_name>\Desktop\GatewayFTP
. Questa cartella verrà utilizzata in più modi:
<root_folder>\logs\
, per cui saranno accessibili da qualunque client FTP.
<root_folder>\corrent_main_program.ngc
. L'idea è che in Current GCode path venga inserito il percorso del file GCode attualmente in esecuzione su Rosetta, per cui un client FTP può recuperare tale file semplicemente recuperando la sua copia in <root_folder>\corrent_main_program.ngc
.
C:\Users\<nome_utente>\AppData\Roaming\RosettaCNC-1\machines\RosettaCNC\run\board.ngc
. Come accennato in precedenza, una copia di tale file sarà disponibile a qualunque client FTP nel percorso <root_folder>\corrent_main_program.ngc
. Questa funzionalità viene fornita in modo da permettere ai possibili client la costruzione di un pulsante Scarica programma in esecuzione che possa essere realizzato tramite una chiamata FTP.
Questa scheda raccoglie i parametri che regolano la produzione dei file di log. Più precisamente:
log.csv
. Ogni nuovo evento viene registrato su questo file.
log_yyyy-mm-dd
. Ogni nuovo file viene creato con lo scoccare della mezzanotte, anche in assenza di eventi da registrare.
log.csv
, nel caso Daily log si tratta del file log_yyyy-mm-dd.csv
corrispondente alla data corrente.
I contenuti dei file di log vengono precisati nell'Appendice A.
Questa scheda raccoglie le informazioni sulle notifiche via email. Più precisamente:
Mario <mariocnc@gmail.com>, John <john.smith@yahoo.com>
.
Le voci successive contengono le credenziali del server mittente delle email. I valori di default si riferiscono a un server messo a disposizione dal Team RosettaCNC, che può essere usato liberamente. Possiamo ripristinare questi valori in qualunque momento usando il tasto Load Default. Se invece vogliamo usare un server privato dobbiamo compilare i seguenti dati:
smtps://smtp.gmail.com:465
.
Alcune note sull'uso di server SMTP:
Il server OPCUA implementato dal Gateway rende accessibili gran parte delle variabili della Board Rosetta. Questi contenuti sono esplorabili attraverso un qualunque client OPCUA. Suggeriamo per esempio di provare il software gratuito UaExpert, scaricabile da Unified Automation. Le operazioni da eseguire sono le seguenti:
opc.tcp://localhost
e clicchiamo OK. Riportiamo gli identificativi di alcune variabili, a titolo di esempio:
Variabili relative al programma in esecuzione
Id | Nome | Tipo | Descrizione |
---|---|---|---|
ns=1;s=CNC.Program.Name | Program.Name | Stringa | Il nome del programma GCode in esecuzione |
ns=1;s=CNC.Program.ActLineNumber | Program.ActLineNumber | Intero | La linea del programma GCode in esecuzione |
ns=1;s=CNC.Program.EstimatedDuration | Program.EstimatedDuration | Reale | La durata stimata in millisecondi dell'attuale programma GCode |
ns=1;s=CNC.Program.StartTime | Program.StartTime | Data | L'UTC DateTime (Data e Ora in Coordinated Universal Time) di quando è stato avviato il programma corrente |
ns=1;s=CNC.Program.Completed | Program.Completed | Booleano | Impostata a vero quando Rosetta entra nello stato IDLE se l'ultimo programma è stato completato correttamente |
Variabili generali
Id | Nome | Tipo | Descrizione |
---|---|---|---|
ns=1;s=CNC.State | State | Intero | Lo stato della macchina (0: Init, 1: Init Fieldbus, 2: Alarm, 3: Idle, 4: Homing, 5: Jog, 6: Run, 7: Pause, 8:Limit, 9: Measuring tool offset, 10: Scan 3D, 11: Safety Idle, 12: Change Tool, 13: Safety, 14: Waiting Main Power) |
ns=1;s=CNC.ActFeedrate | ActFeedrate | Reale | La velocità di movimento attuale in mm/min |
ns=1;s=CNC.ActSpeed | ActSpeed | Reale | La velocità di rotazione attuale del mandrino in rpm |
Per avere informazioni su altre variabili, o per aggiungere variabili non ancora presenti, chiedere al Team RosettaCNC.
Il server FTP implementato dal Gateway rende accessibile la cartella di root indicata nella scheda FTP. Questa cartella è esplorabile attraverso qualunque client FTP. Suggeriamo per esempio di provare il software gratuito FileZilla, scaricabile da FileZilla Project. Le operazioni da eseguire sono le seguenti:
localhost
.
current_main_program.ngc
e la cartella dei log. L'idea è che i possibili client possano costruire dei pulsanti Scarica programma in esecuzione oppure Apri cartella dei log oppure Scarica cartella dei log tramite delle chiamate FTP.
Il Gateway implementa un server OPCUA e un server FTP che permettono l'interazione con la Board Rosetta da parte di client terzi. Il cliente attrezzato con un software di gestione della produzione (tipo MES) ha la possibilità di programmare il proprio software in modo da aprire connessioni con il Gateway e realizzare questa interazione. Nel caso non ci sia questa possibilità, il Team Rosetta CNC mette a disposizione il Widget: si tratta di software dedicato che si connette al Gateway e realizza un insieme minimo di interazioni per realizzare l'industria 4.0.
Una volta avviato, il Widget esibisce una pagina minima di informazioni e comandi eseguibili. Prima di tutto dobbiamo impostare la connessione con il Gateway. Per fare questo ci serve l'indirizzo IP del PC lo ospita. Ecco le operazioni da eseguire:
ipconfig
: comparirà l'elenco delle interfacce di rete attive. Se siamo connessi con cavo Ethernet andiamo su Scheda Ethernet, se invece siamo connessi in WiFi andiamo su Scheda WiFi. Prendiamo nota dell'indirizzo riportato alla voce IPv4. <indirizzo IP>
sia l'indirizzo del PC macchina, che può essere numerico (se statico) o una stringa (se dinamico). Gli indirizzi da inserire sono i seguenti:
opc.tcp://<indirizzo IP>:4840
.
ftp://<indirizzo IP>:21
. Se nella scheda FTP del Gateway si è scelta un'altra porta diversa dalla 21, allora anche qui bisogna inserire il nuovo valore.
Una volta connesso, il Widget mette a disposizione le seguenti funzioni:
log.csv
.
I file di log hanno il compito di raccogliere gli eventi in cui viene coinvolta la macchina. Si tratta di file con estensione CSV in cui ogni riga riporta i dati di un evento specifico. Vengono registrati i seguenti tipi di eventi:
Evento | Codice | Tipo | Significato |
---|---|---|---|
CNC_DISCONNECTED | 1 | warning | Disconnessione dalla Board |
CNC_STATE_CHANGE | 2 | info | Cambio di stato |
CNC_PROGRAM_STARTED | 3 | info | Programma: Avvio / Ripresa (pulsante premuto) |
CNC_PROGRAM_PAUSED | 4 | info | Programma: Pausa (pulsante premuto) |
CNC_PROGRAM_CONTINUE | 5 | info | Programma: Continua (pulsante premuto) |
CNC_PROGRAM_FINISHED | 6 | info | Programma completato |
CNC_PROGRAM_ABORTED | 7 | warning | Programma stoppato a causa di errori |
CNC_PROGRAM_ABORTED_BY_USER | 8 | warning | Programma: Stop (pulsante premuto) |
CNC_ALARM | 9 | warning | Nuovo allarme |
Ogni evento è accompagnato da alcuni parametri aggiuntivi specifici, fino a un massimo di quattro.
Evento | Parametro 1 | Parametro 2 | Parametro 3 | Parametro 4 |
---|---|---|---|---|
CNC_DISCONNECTED | ||||
CNC_STATE_CHANGE | Nuovo stato | |||
CNC_PROGRAM_STARTED | Nome programma | Durata stimata | ||
CNC_PROGRAM_PAUSED | Nome programma | |||
CNC_PROGRAM_CONTINUE | Nome programma | |||
CNC_PROGRAM_FINISHED | Nome programma | |||
CNC_PROGRAM_ABORTED | Nome programma | Codice allarme | Info allarme 1 | Info allarme 2 |
CNC_PROGRAM_ABORTED_BY_USER | Nome programma | |||
CNC_ALARM | Codice allarme | Info allarme 1 | Info allarme 2 |
Il nuovo stato indica il codice numerico del nuovo stato macchina, è può essere uno tra i seguenti:
Codice | Stato |
---|---|
-1 | INVALID |
0 | INIT |
1 | INIT_FIELDBUS |
2 | ALARM |
3 | IDLE |
4 | HOMING |
5 | JOG |
6 | RUN |
7 | PAUSE |
8 | LIMIT |
9 | MEASURING_TOOL_OFFSET |
10 | SCAN_3D |
11 | SAFETY_JOG |
12 | CHANGE_TOOL |
13 | SM_SAFETY |
14 | SM_WAIT_MAIN_POWER |
15 | SM_RETRACT |
Il nome programma indica il nome del file GCode attualmente in esecuzione, per esempio my_work.ngc
. La durata stimata viene espressa nella forma hh:mm:ss
e indica il tempo stimato per completare il programma attualmente caricato. Il codice allarme indica il codice numerico del nuovo allarme, e a seconda della situazione può essere accompagnato da due variabili informative aggiuntive info allarme 1 e info allarme 2. Per esempio nella terna 85:0:12
il codice 85 corrisponde ad un errore di probing, mentre la variabile informativa 12 indica la riga del programma GCode in cui è avvenuto l'errore. Per una lista dei possibili codici allarme si rimanda alla Wiki Rosetta.
Ciascuna riga del file di log contiene i dati di un singolo evento, distribuiti lungo le colonne secondo il seguente schema:
Colonna | Contenuto |
---|---|
1 | Data e ora |
2 | Tipo evento |
3 | Codice evento |
4 | Nome evento |
5 | Parametro 1 |
6 | Parametro 2 |
7 | Parametro 3 |
8 | Parametro 4 |
9 | Descrizione riassuntiva |
Un esempio di file di log è in seguente:
Data e ora ; Tipo ; Codice ; Nome ; Parametro 1 ; Parametro 2 ; Parametro 3 ; Parametro 4 ; Descrizione 04-03-2022 15:28:46.265 ; info ; 2 ; CNC_STATE_CHANGE ; 0 ; ; ; ; Machine state INIT 04-03-2022 15:28:46.287 ; info ; 2 ; CNC_STATE_CHANGE ; 3 ; ; ; ; Machine state IDLE 04-03-2022 15:42:17.492 ; info ; 2 ; CNC_STATE_CHANGE ; 6 ; ; ; ; Machine state RUN 04-03-2022 15:42:17.563 ; info ; 3 ; CNC_PROGRAM_STARTED ; my_work.ngc ; 00:14:52 ; ; ; Machine state RUN, program name my_work.ngc estimated duration 00:14:52. 04-03-2022 15:45:21.745 ; info ; 2 ; CNC_STATE_CHANGE ; 2 ; ; ; ; Machine state ALARM 04-03-2022 15:45:21.826 ; warning ; 7 ; CNC_PROGRAM_ABORTED ; my_work.ngc ; 85 ; 0 ; 76 ; Machine state ALARM, Program my_work.ngc execution aborted due to Alarm code 85:0:76.
Alcune aziende non utilizzano programmi di gestione della produzione (tipo MES), nonostante ciò desiderano gestire al meglio la propria produzione. In questi casi le aziende chiedono direttamente ai costruttori della macchina utensile se possono proporre loro un programma per gestire la produzione, oppure in seconda battuta si rivolgono ad una software house esterna. Questa tipologia di programma generalmente ha una struttura base comune, su cui vengono costruite alcune pagine personalizzate in base allo specifico settore e alla tipologia di macchina. Per esempio :
I costruttori delle macchine utensili si muovono così nella direzione di fornire al propri clienti un software specifico, aiutando i propri clienti a gestire meglio la propria produzione e creando un valore aggiunto alle proprie macchine e altresì realizzando un fatturato aggiuntivo per l'azienda. La fornitura del software di aiuto alla gestione della produzione potrebbe costituire anche un fidelizzazione per l'acquisto di altri macchinari dallo stesso produttore del macchinario CNC, in quanto l'acquirente non dovrà spendere nuovamente per il software di aiuto alla gestione della produzione. Questi programmi aggiuntivi di gestione della produzione creano quindi:
Per la realizzazione di un software di gestione della produzione, il costruttore della macchina utensile può incaricare una software house dedicata, oppure chiedere al Team RosettaCNC. In qualsiasi caso, c'è la necessità che il costruttore della macchina analizzi le specificità del settore nel quale andrà poi ad operare la CNC e generi delle specifiche tecniche indispensabili per la generazione del software.