Rosetta CNC

Sezione dedicata a RosettaCNC
Rispondi
Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » martedì 27 febbraio 2018, 21:23

@gino: ho provato a caricare il tuo G-Code su Mach4. Visualizza ed esegue una sola asola.
sempre x Gino: ho provato a caricarlo anche su CncUsb, e da errore in fase di caricamento.
Mi fa piacere se una persona esperta in tanti sistemi, sopratutto CNC professionali, con @gino
valuta quanto sopra, come ho già detto l'esperienza e know di certe persone non hanno prezzo.

Ma tornando a noi io sto utilizzando l'ultima versione di Mach4 Industrial Demo, installata qualche settimana fa (domani verifico se esattamente l'ultima, casomai metto quella). L'ho installata e l'unica modifica fatta è stata mettere il sistema metrico ed impostare gli impulsi/velocità/accelerazioni per i 4 assi che mi interessano ed aumentato il numero di blocchi di LOOK-AHEAD da 20 a 1000. Come Demo è pienamente funzionale e limitata solo nel tempo d'esecuzione.

Prima cosa che ho notato con Mach4 e poi ho verificato anche con Mach3 ed è la stessa cosa, impostando tutti e quattro (oppure tre nella configurazione senza A) a 3000mm/min come velocità massima se eseguo il quadrato del codice nel video, anche aumentando l'escursione da X200 e Y200 a X400 e Y400 per essere SICURO di avere velocità costante per gran parte del tratto NON arrivo mai a velocità massima ma mi fermo a 2700mm/min.

Se abbasso la velocità massima a 2700mm/min non vado oltre a 2450mm/min.
Questo non è per niente una cosa normale, ma andiamo avanti ad altro.

Nel programma uso una SUB per creare 10 quadrati in G1.
Le SUB vengono "espanse" come se avessi scritto di seguito dieci G1 X.....

A questo punto il gioco si divide su due moduli: Look AHEAD e gestore raccordi.

Probabilmente @gino ha visto una sola asola perchè ha di default solo 20 blocchi di LOOK-AHEAD mentre io li ho portati a 1000 come di default in RosettaCNC. Potrei anche arrivare a 30.000 blocchi di LOOK-AHEAD ma abbiamo preferito fermarci a 1000 tanto per le lavorazioni sono più che sufficienti.

Il LOOK-AHEAD ha il compito, come dice il nome di "guardare avanti" nel programma G e far si che il profilo generato nell'istante attuale sia consapevole di cosa avviene dopo cercando quindi di ottimizzare la velocità finale.

Il secondo stadio, semplificando di molto, è quello che genera il percorso finale tenendo conto delle accelerazioni/spazio assi interpolati ed ottimizzato tramite la curva spline quadratica (bezier). I due lavorano in accordo. Se il primo è un po' miope invalida i risultati del secondo.

Lavorare su un buon equilibrio tra i due è fondamentale per avere un movimento quantomeno continuo e fluido, evitando strattonamenti alla meccanica per derivate di accelerazioni troppo elevate (jerk).

Provate ad aumentare il LOOK-AHEAD e dovrebbe fare almeno tre asole.
La cosa strana è che con 1000 step di look-ahead non dovrei MAI aver problemi di questo tipo, è una quantità di passi molto grande... BOH !!!

Per la CNCUSB non saprei, sa PLANET-CNC ha il simulatore domani provo.
RosettaCNC implementa un RS274D-v3 standardissimo, con qualche estensione per gestire le SUB e le uscite digitali e qualche altra cavolata che però nell'esempio non ho messo.

L'unica cosa che ho forzato sono il G64 (di default su RosettaCNC) ma non so su Mach, il fatto di aver forzato il G54 con le impostazioni degli assi via codice per non dover pasticciare con le fixture table ed eventualmente un M2 a fine programma necessario perchè Mach3/4 se non lo si mette non gli frega niente se era già messo prima del blocco sub ed esegue una sola chiamata della SUB e poi si ferma.

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 9:11

Per Mach3 con le SUB è necessario non dimenticare l'M2/M30/etc a fine documento altrimenti fa un solo giro di SUB e si ferma.
Allego il terzo test che ho provato con la variante di alcuni archi.

Codice: Seleziona tutto

(   WROTE FOR THESE SETTINGS  )
( velocity XY      3000 mm/s2 )
( acceleration XY  150 mm/s2  )
( bezier length    10.000 mm  )

( PREABLE )
G64 G54 G10 L2 P1 X0 Y0 Z0 F3000
G0 X0 Y0 Z0
G4 P1.0

( BODY )
G54 G10 L2 P1 X20 Y20
G0 X0 Y0 Z0
M98 P1000 L2

( EPILOGUE )
M2

( SUB ROUTINES )
O1000
    G1 X0 Y0 Z0
    X400
    Y400
    X0
    Y0
    
    X40
    X50 Y10
    X50 Y50

    G2 X100 Y100 I25 J25
    G3 X150 Y150 I25 J25
    G2 X250 Y250 I50 J50
    G3 X350 Y350 I50 J50
    
    G1 X100
    X0 Y0
M99

( REQUIRED BY MACH3/4 )
M2
Sembra che la PlanetCNC non supporti le SUB, o almeno le SUB con ripetizioni date da L<numero ripetizioni> quindi basta espandere il codice come quanto segue. Purtroppo il simulatore mi si ferma dopo 10 secondi per raggiunti limiti.

Codice: Seleziona tutto

(   WROTE FOR THESE SETTINGS  )
( velocity XY      3000 mm/s2 )
( acceleration XY  150 mm/s2  )
( bezier length    10.000 mm  )

( PREABLE )
G64 G54 G10 L2 P1 X0 Y0 Z0 F3000
G0 X0 Y0 Z0
G4 P1.0

( BODY )
G54 G10 L2 P1 X20 Y20
G0 X0 Y0 Z0

    G1 X0 Y0 Z0
    X400
    Y400
    X0
    Y0

    X40
    X50 Y10
    X50 Y50

    G2 X100 Y100 I25 J25
    G3 X150 Y150 I25 J25
    G2 X250 Y250 I50 J50
    G3 X350 Y350 I50 J50

    G1 X100
    X0 Y0

    G1 X0 Y0 Z0
    X400
    Y400
    X0
    Y0

    X40
    X50 Y10
    X50 Y50

    G2 X100 Y100 I25 J25
    G3 X150 Y150 I25 J25
    G2 X250 Y250 I50 J50
    G3 X350 Y350 I50 J50

    G1 X100
    X0 Y0

( EPILOGUE )
M2
https://youtu.be/rDI3eMoXLNY
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Innaig
Senior
Senior
Messaggi: 765
Iscritto il: venerdì 26 settembre 2014, 15:49
Località: Forlì

Re: Rosetta CNC

Messaggio da Innaig » mercoledì 28 febbraio 2018, 11:00

Buongiorno @shineworld,
trovo interessante il lavoro su Rosetta cnc.
Premetto che lavoro in ambito professionale su controlli numerici e macchina (Fidia).
Non ho avuto il tempo di leggere tutto ma volevo sapere come contrasti il Jerk (che è la derivata dell' accelerazione e non come in molti pensano l' accelerazione).
Usando solo la look-ahead è praticamente impossibile, si deve avere la controreazione attraverso i drive dei motori, l' encoder motore e la riga di misura.
Una parte del jerk viene contrastata dal drive attraverso il proprio firmware (che chiaramente deve prevedere il calcolo di tale derivata) mentre l' errore che ne deriva viene riportato come retroazione al cnc (sommatoria dell' errore drive + errore rilevato attraverso velocità ed accelerazione reali sull' asse).
Vedo che utilizzate Bezier e quindi trasformate il gcode nuovamente in matematica e poi ricalcolate le velocità ed accelerazioni?

Saluti

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 11:16

Il sistema RosettaCNC è composta sostanzialmente da due parti.

La prima, il software su PC, che fa da compilatore del codice G trasformandolo in subset di comandi che invia in blocco alla scheda e fa da interfaccia utente con grafica, impostazioni, comandi, etc.

La seconda è il cuore di RosettaCNC sulla scheda, dove gira un sistema operativo real-time proprietario che si occupa dell'interpolatore, look-ahead, raccordi, modbus, ethernet, ethercat, etc.

Punto per punto vengono valutate le future istruzioni in stack e creato il profilo ottimale per mantenere il più possibile la velocità di feed programmata senza però "forzare" le pendenze delle rampe di accelerazione/decelerazione. Creando dinamicamente il punto di interpolazione istante per istante si controlla anche la derivata di accelerazione (entro i limiti del caso).

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 11:37

Con un sistema stepper ove puoì solo generare impulsi/direzione senza feedback e controllo credo non si puossa fare di più.

Innaig
Senior
Senior
Messaggi: 765
Iscritto il: venerdì 26 settembre 2014, 15:49
Località: Forlì

Re: Rosetta CNC

Messaggio da Innaig » mercoledì 28 febbraio 2018, 12:18

Essendo un tecnico mi sono scaricato il programma, il manuale e le specifiche.
Apro il pdf e..."godo" (perdonatemi l' espessione ma non saprei come altro descrivere lo stato d'animo).
Ci sono le certificazioni!!!
C'è un hardware creato ad Hoc.
Trasmissione ethernet.
Programma forse ancora un po immaturo (mancano le certificazioni sull' eseguibile e Windows 10 blocca l' installazione ma non è poi un gran problema).
Caricato e visualizato un part-program di finitura e viene evidenziato sullo stesso i difetti che sono visibili sul pezzo fresato (errore disposizione dei punti del post processor Cam).
Programma esterno che si occupa della trasmissione/ricezione dati tra pc ed Hardware.
Unico neo (pma dal mio punto di vista strettamente personale) sono i 4 assi...e non 5.
Mi viene comunque voglia di provarlo.
Seguo con interesse.
P.S. complimenti

gino
Senior
Senior
Messaggi: 1774
Iscritto il: domenica 11 ottobre 2009, 18:12

Re: Rosetta CNC

Messaggio da gino » mercoledì 28 febbraio 2018, 12:29

@shineworld , da me funziona benissimo.
forse non ti legge dopo l`ultima Riga
M99
%
...il segno di percentuale..(che mach4 vuole) a mach3 non gli interessa..boh..
apri il Gcode ed aggiungi di nuovo (dipende da li.)
in tutti i Modi ti aggiungo il file nuovamente in .rar della foro
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 12:35

@Innaig

La versione in rete deve essere aggiornata a breve, spero entro questa settimana, mi è capitato di dover fare traduzioni urgenti in questi giorni...

Sono state fatte sostanziali implementazioni compresa:

- la completa gestione grafica del 4­­th asse.
- la stima perfetta del tempo esecuzione lavorazione.
- modificato l'interpolatore per gestire meglio i segmenti tangenti.
- migliorie grafiche e roba varia.

Il programma cresce in base alle richieste di funzionalità che raccogliamo dai vari clienti.
Impossibile metter dentro tutto, subito. Tanta roba non servirebbe a nessuno e creerebbe solo casino.

Per la certificazione Windows hai ragione dovrei aprire una pratica con la Microsoft, lo farò appena ho un po di tempo per vedere le procedure.

RosettaCNC si basa su un sistema di comunicazione chiamato Resource Manager che permette di raggiungere la scheda/schede ovunque siano piazzate nel mondo tramite una rete di supporto da noi gestita. Noi le chiamiamo "risorse". Son locali quando attaccate fisicamente alla rete locale (se ethernet) o al PC (se COM). Diventano "remote" quando sono fuori dalla rete locale, ad esempio dietro ad una NAT. Il sistema di remotazione riesce a passare firwall e rete e farci vedere la scheda RosettaCNC come fosse davanti a noi.

Questa è la base per la teleassistenza/telecontrollo.
In abbinata c'è il supporto telecamere IP (fase beta) che sto per remotare pure lui.

Sullo stesso PC posso lanciare più sessioni del programma RosettaCNC e quindi controllare più schede in conteporanea.
Ogni scheda memorizza le proprie impostazioni su una cartella specifica.
Capita che un cliente abbia un unico PC per far lavorare più CNC in contemporanea.

Tra un po rilascio un programma di supporto per gestire queste configurazioni in modo semplice e non con linea di comando come fatto ora.

I quattro assi sono esclusivamente un limite di questo hardware (RosettaCNC-A) in quanto l'interpolatore e il software su PC già lavorerebbero con 6 assi (3 lineari e tre rotativi).

Innaig
Senior
Senior
Messaggi: 765
Iscritto il: venerdì 26 settembre 2014, 15:49
Località: Forlì

Re: Rosetta CNC

Messaggio da Innaig » mercoledì 28 febbraio 2018, 12:44

Senza Hardware non è possibile simulare il percorso?
Il tempo calcolato per l' esecuzione del part program non è corretto e se vario la Feed rimane sempre quello (forse sbaglio io).
Ho fatto prove ulteriori, non prende Feed superiori a 1000.
Da F1000 in giu cambia il tempo, da F1000 in su rimane uguale (ho un part program a F6000)

Saluti

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 13:06

Il calcolo del tempo d'esecuzione lavorazione nella 1.2.4 disponibile in download è un mero calcolo del feed impostato * percorso utensile senza tener conto delle accelerazioni/decelerazioni ne del blending. Se si hanno accelerazioni velocissime e si impostano percorsi che fanno molte correzioni o si impostano velocità non raggiungibili nel tempo di accelerazione disponibile il valore tempo ne risulta errato e anche di molto. Era una soluzione tampone.

Nella versione 1.2.5, che rilascio a breve, viene eseguita una simulazione completa d'esecuzione ed ottengo quindi il tempo corretto al secondo di quanto ci metterà un programma. In questa simulazione uso un FEED OVR del 100% ma potrei anche accettare il valore di FEED OVR impostato nella barra di regolazione del FEED.

La versione di fine mese 1.3.1 avrà il simulatore ed una nuova serie di parametri di Setup della scheda per interagire con il nuovo interpolatore.

Come puoi vedere nei video del mio canale i tempi ora sono precisi (a parte 1,2 secondi che sono aggiunti per il buffering dei primi blocchi di istruzioni).

https://www.youtube.com/user/thoth2487

Avatar utente
leomonti
Senior
Senior
Messaggi: 2099
Iscritto il: mercoledì 20 dicembre 2006, 19:04

Re: Rosetta CNC

Messaggio da leomonti » mercoledì 28 febbraio 2018, 14:34

@Gino: ero io quello che non riusciva a caricarlo. Il nuovo file, invece, lo carica. Grazie
Il cervello è l'organo più sopravvalutato...(W.Allen)

Avatar utente
leomonti
Senior
Senior
Messaggi: 2099
Iscritto il: mercoledì 20 dicembre 2006, 19:04

Re: Rosetta CNC

Messaggio da leomonti » mercoledì 28 febbraio 2018, 14:38

@Gino: su mach4 carica, esegue, ma ripete la lavorazione sempre sulla stessa asola
Il cervello è l'organo più sopravvalutato...(W.Allen)

gino
Senior
Senior
Messaggi: 1774
Iscritto il: domenica 11 ottobre 2009, 18:12

Re: Rosetta CNC

Messaggio da gino » mercoledì 28 febbraio 2018, 15:00

@leomonti , ho riscaricato il file in .rar che avevo allegato...prima
.."che avessi caricato un file sbagliato ? "...
caricato su mach4 e a me esegue tutte ed 8 le asole.
dovrebbe farlo anche da te.

..su cncusb non funziona perche non accetta i codici tipo.. " m98p300l#318 "
li dovrebbero essere scritti col tipo fanuc .."while...etc"

Avatar utente
leomonti
Senior
Senior
Messaggi: 2099
Iscritto il: mercoledì 20 dicembre 2006, 19:04

Re: Rosetta CNC

Messaggio da leomonti » mercoledì 28 febbraio 2018, 15:14

Se posso...un piccolo contributo. Su Colibri è presente una informazione che io ho utilizzato spesso e che mi è stata di grande utilità.
In basso a sx nello screen il programma riporta il valore WCS G54 per tutti gli assi, che permette, nel caso di interruzioni volontarie e non, di ritrovare lo zero programma (Ovviamente a condizione che il proprio impianto di fine corsa consenta una ripetibilità di homing affidabile)
Il cervello è l'organo più sopravvalutato...(W.Allen)

Avatar utente
shineworld
Senior
Senior
Messaggi: 673
Iscritto il: venerdì 18 marzo 2016, 9:44
Località: Vicenza
Contatta:

Re: Rosetta CNC

Messaggio da shineworld » mercoledì 28 febbraio 2018, 15:34

@leomonti
Xxxxx
Ho capito, è un'informazione che ho a disposizione,
appena trovo il posto giusto riporto pure io il WCS attivo e i relativi valori.

Grazie della nota.


non riportare il messaggio immediatamente precedente. Primo non ha senso,
secondo il regolamento lo vieta. Grazie per la collaborazione
SCJ

Rispondi

Torna a “RosettaCNC”