Errori CNC in Rosetta B

Sezione dedicata a RosettaCNC
Rispondi
Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Errori CNC in Rosetta B

Messaggio da danieleee » martedì 16 marzo 2021, 19:24

Mi è successo più di una occasione che si generi questi errori.
Premetto che durante questi test, uso parametri forse troppo spinti (tipo F4000) per spazi piccoli, ma è lo scopo del test, stressare il CN per capirne i suoi limiti, almeno sò fin dove osare.
La cosa "strana" è che si verificano quasi soltanto se si usa il potenziomentro (Feed+Rapidi legati tra di loro con unico potenziometro ) senza nemmeno esagerare, se la si lascia andare normalmente senza intervenire sui controlli non succede nulla.
Mi dà impressione che non riesca ad elaborare in tempo i valori di Feed modificati dal potenziometro, ciò può comportare tali errori, o strani puntamenti della CNC, e ripeto ancora, è la mia impressione, nulla di certo/fondato.
Dopo tale errore si è costretti a spegnere/riaccendere Rosetta Hardware.
Per fortuna i miei test "stress" sono tutti in aria...e la cosa che mi ha "spaventato maggiormente" e spero non capiti più, è stata ieri.
Mentre si stava generando un errore CN, gli assi hanno preso una traiettoria lineare tutta loro, con una Feed lenta.
Ho immediatamente capito che era fuori area di lavoro, (essendo 40x40mm come grandezza il test) quindi ho premuto sul fungo di Emergenza.
Il "bello" è stato lì. Appena premuto Estop, gli assi X e Y interessati diciamo nella lavorazione, sono partiti al massimo verso un punto che sicuramente era nel gcode (perchè visivamente era rientrata nell'area 40x40mm), per poi generare un errore.
Di conseguenza ho capito che Estop pare non abbia un effetto predominante sul CN, correrò subito ai ripari collegando uscita del fungo di emergenza ad un ingresso dei drive che assegnerò come Emergenza (faccio notare questa cosa è già consigliata nei vostri schemi, sono stato io ad ignorare questo passaggio perchè non ritenevo necessario).
NOTA 1: i test a Feed "normali" non hanno mai generato questi errori, solo raramente qualche leggero scattino non apparentemente normale durante uso del potenziometro.
NOTA 2: non sò se il computer in uso può essere una causa, è piuttosto aggressivo :D i5K 4.2Ghz fissi di clock (overcloccato già da 3 anni).
grazie per eventuali chiarimenti.
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
PumaPiensa
Senior
Senior
Messaggi: 1360
Iscritto il: lunedì 22 dicembre 2008, 19:30
Località: vicenza

Re: Errori CNC in Rosetta B

Messaggio da PumaPiensa » martedì 16 marzo 2021, 21:29

Il fungo di emergenza deve essere collegato a una centralina di sicurezza che a sua volta comanda la potenza della macchina. Oppure esistono anche degli ingressi specifici e sottolineo fatti apposta per essere usati per emergenza. Tipo premo il fungo la centralina di sicurezza mi stacca la potenza dai motori e interviene su un contatto di emergenza dell'inverter che arresta istantanemante il mandrino. Mettere l'emergenza su un ingresso controllato da un software limita molto la sicurezza. La centralina poi si occupa anche di controllare che i funghi funzionino come pure i teleruttori di potenza.
Se uno spende migliaia di euro per la meccanica/driver/controller dovrebbe spenderne un pò anche per una centralina di sicurezza (in rete se ne trovano di come nuove sui 50E).

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » martedì 16 marzo 2021, 21:41

Di buono questo, nonostante le alte velocità, quando la lasciavo andare indisturbata, i movimenti erano fluidi, rispettava sempre accelerazioni e rampe Jerk.
Ho caricato stesso gcode su Mach4 con CsLab.
Visto che tali son sul tornio, ho modificato gcode in modo da utilizzare assi X e Y (tanto era gcode di incisione, quindi 2 assi) con i miei X e Z.
Il comportamento è totalmente diverso, gli assi sono eccessivamente rabbiosi e bruschi ( stessi parametri nei motori con tornio e la fresa in cemento) a volte pare ignori le rampe, tremava tutto poverino :D.
Di buono è che smanettavo in modo aggressivo sul potenziometro della Feed, non ha mai fatto nessun scherzo, nota che il suo uso è leggermente pastoso e meno immediato (parlo di un tempo piccolo ma avvertibile con molta attenzione) rispetto a Rosetta.

qandro
Member
Member
Messaggi: 252
Iscritto il: lunedì 29 ottobre 2018, 9:54

Re: Errori CNC in Rosetta B

Messaggio da qandro » mercoledì 17 marzo 2021, 8:26

Grazie del report Daniele.
In link metto il firmware ultimo in cui sono state sistemate le cose (anche zippando i file alla massima compressione non posso allegare):
https://www.dropbox.com/s/wrr95doe3tc3f ... 9.sfs?dl=0
https://www.dropbox.com/s/dbej5s405x6x3 ... 9.sfs?dl=0

Quando si riporta un problema è utile allegare anche una foto del pannello "Monitor scheda",
questo ci da modo di capire in che condizioni si è verificato un dato comportamento:
monitor_scheda.png

Eventualmente, tramite il menu "Aiuto->Richiesta di supporto via e-mail (support@rosettacnc.com)" inviare un'email descrittiva
del problema allegando i contenuti della cartella:

%appdata%\RosettaCNC-1\machines\RosettaCNC

che contiene tutti i settaggi della macchina in uso (RosettaCNC è la machine di default), se se ne usa una diversa e custom allegare quella,
con l'aggiunta del file G che ha generato problemi.
Questo ci permetterà di eseguire un debug approfondito sul problema identificato dall'utente.
aiuto.png
Torniamo agli errori elencati.
Tutti gli errori che iniziano con la lettera E sono errori rilevati dal compilatore di codice G.
Tutti gli errori che iniziano con la lettera A sono errori rilevati dalla CNC e quindi dal firmware.

Gli errori in linea 0 sono errori relativi a quanto scritto nella macro "start.ngc" che viene eseguita SEMPRE prima dell'esecuzione
del programma scritto o letto da file. Tramite la macro start è quindi possibile aggiungere delle operazioni iniziali, configurazioni di
default, azioni di default, da fare ogni volta che si esegue un programma.

Probabilmente hai un file "start.ngc" molto vecchio e dovresti sostituirlo con quello seguente:

Codice: Seleziona tutto

;
;   RosettaCNC (c) 2016-2020
;
;   Name            : start
;   Sub UID         : 1
;   Version         : 1
;   Description     : START command initializzations executed before the first line of the main program
;   Note            : this macro must use M99 exit call
;                   : TAKE CARE: following is only a skeleton macro sample
;
; Arguments:
;   #1      is the restarting line, 0 if the program is starting from the beginning.
;   #2      is the restarting canon cmd id, or 0 if the program is starting from the beginning.
;
O1
    IF [#<cnc.compile.mode> EQ #<compile.mode_mdi>] THEN01
        ; place here instructions executed only when is STARTING form a MDI
    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_macro>] THEN01
        ; place here instructions executed only when is STARTING from a MACRO
    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_program> ] THEN01
        ; place here instructions executed only when is STARTING a new program
        
		CALL P"FORCE_ALL_AVAILABLE_AXES_GROUPED"

        ; sets default modal modes
        G17 G21 G40 G50 G67 G80 G90 G91.1 G94

        M48                     ; enable the feed rate and spindle speed override controls

        G64     P0.1 Q0         ; set the toolpath control mode:
                                ; - enable continous toolpath mode
                                ; - enable 2000 look-ahead block manager
                                ; - enable trajectory blending with Bezier curves with:
                                ;   P = 0.1 mm of trajectory deformation/blending tolerance
                                ;   Q = 0.0 mm of points removal threshold 

        G104    A0 D0 J100      ; set the maximum acceleration and deceleration along the trajectory during interpolated motion:
                                ; A = 0 mm/s2 set the maximum acceleration along the trajectory during interpolated motion
                                ; D = 0 mm/s2 set the maximum acceleration along the trajectory during interpolated motion
                                ; J = 100% set the jerk control to accelerate immediately

    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_program_from_line>] THEN01
        ; place here instructions executed only when is STARTING from a line of the program
		CALL P"FORCE_ALL_AVAILABLE_AXES_GROUPED"
    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_program_for_resume>] THEN01
        ; place here instructions executed only when is STARTING from a resume after a STOP
		CALL P"FORCE_ALL_AVAILABLE_AXES_GROUPED"
    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_program_for_resume_from_line>] THEN01
        ; place here instructions executed only when is STARTING from a resume from line after a STOP
		CALL P"FORCE_ALL_AVAILABLE_AXES_GROUPED"
    END01

    IF [#<cnc.compile.mode> EQ #<compile.mode_program_for_analysis>] THEN01
        ; place here instructions executed only when is ANALIZING a program
		CALL P"FORCE_ALL_AVAILABLE_AXES_GROUPED"

        ; sets default modal modes
        G17 G21 G40 G50 G67 G80 G90 G91.1 G94

        M48                     ; enable the feed rate and spindle speed override controls

        G64     P0.1 Q0         ; set the toolpath control mode:
                                ; - enable continous toolpath mode
                                ; - enable 2000 look-ahead block manager
                                ; - enable trajectory blending with Bezier curves with:
                                ;   P = 0.1 mm of trajectory deformation/blending tolerance
                                ;   Q = 0.0 mm of points removal threshold 

        G104    A0 D0 J100      ; set the maximum acceleration and deceleration along the trajectory during interpolated motion:
                                ; A = 0 mm/s2 set the maximum acceleration along the trajectory during interpolated motion
                                ; D = 0 mm/s2 set the maximum acceleration along the trajectory during interpolated motion
                                ; J = 100% set the jerk control to accelerate immediately
    END01

    ; place here instructions executed in every case
    ;
    F100                        ; sets default feed rate

M99

; This sub forces all the available axes to be grouped making customized grouped axes settings non persistent across compilations.
; It is not strictly needed since the compiler handle #5120 initialization using CNC settings when the parameter is NAN.
SUB"FORCE_ALL_AVAILABLE_AXES_GROUPED"
	#<_axes_mask> = 0
	IF [[#<cnc.x.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 1]
	IF [[#<cnc.y.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 2]
	IF [[#<cnc.z.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 4]
	IF [[#<cnc.a.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 8]
	IF [[#<cnc.b.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 16]
	IF [[#<cnc.c.type>] NE #<axis.type.disabled>] THEN #<_axes_mask> = [#<_axes_mask> + 32]
	G101 P#<_axes_mask>
ENDSUB
Ricordo che quando si installa un pacchetto questo mette nelle macchine le macro scritte in quel preciso momento storico.
Ogni volta che si aggiorna online, quindi non un pacchetto completo, non vengono sovrascritte le macro delle macchine esistenti
per non invalidare o modificare le cose attualmente funzionanti, MA in ogni caso le nuove macro scaricate dall'update vengono
messe in una cartella apposita affinchè sia l'utente finale in piena consapevolezza a decidere se aggiornare le macro di una
specifica macchina con le ultime pubblicate:

%appdata%\RosettaCNC-1\standard-machine-files

Per quanto riguarda la variazione OVR da te notificata ho fatto varie prove senza evidenziare alcun problema.
Sono ormai moltissimi i clienti che usano questa funzionalità e questa è la prima volta che mi viene segnalato un problema in questo
comparto.

Gli OVR in rosetta agiscono in modo diretto sull'interpolatore entrando direttamente nella gestione del look-ahead.
Il look-ahead è infatti quel modulo che si occupa di determinare, "collegare", aggiungere smoothing e resto per mantenere
corretta e costante la velocità interpolazione tra i vari blocchi di comandi.

Ogni variazione dell'OVR ricomporta una rianalisi dei dati in look-ahead.
Da test fatti con potenziometro su macchine in azienda tutto ha funzionato correttamente e in modo reattivo.
Chiaramente durante il cambio di velocità vengono applicate le rampe di accelerazione/decelerazione dei signoli assi come
risultante interpolata.

Faremo altri test in questi giorni.

F4000 è una velocità relativamente bassa.
Molti nostri clienti lavorano a F molto superiori con rapidi anche a 80-90 metri minuto.

Direi di provare con la versione firmware nei link e con la prossima che rilasceremo direttamente nella 1.9 dove l'interpolatore
è stato modificato moltissimo per supportare nuove funzionalità.

Il PC con RosettaCNC conta pochissimo in quanto è tutto fatto a scheda.
Di fatto il PC serve solo da interfaccia e per compilare il codice G che viene poi inviato alla scheda sotto forma di un nuovo linguaggio
da essa compreso.

Stay tuned!
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
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » mercoledì 17 marzo 2021, 12:58

Ok grazie!
Prima di toccare qualcosa farò come suggerito, faccio screenshot del report.
Tanto ho visto che basta rompergli le scatole col potenziometro mentre lavora e dopo un pò cede...ci son riuscito più volte, quindi penso di farcela.
Sul file "start" non credo sia vecchio, SSD ha pochi mesi di vita, e la prima versione che ha conosciuto è stata la 1.8.6 che Silverio ha aggiornato alla 1.8.7 quando mi ha configurato il probe con braccetto.
Poi aggiorno come hai detto e riprovo.
Domanda: non è che la causa sia che a monte di Rosetta ho un fusibile da 1A (quelli in vetro lunghi 20mm) quindi sottoalimentata?
Ho abitudine di mettere sempre fusibili a monte di ogni apparato, mi sento più sicuro così...

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » mercoledì 17 marzo 2021, 19:26

Come anticipato, ho prima riprovato senza toccare nulla...dopo pochi minuti ha ceduto con il classico errore A0092.
allego screenshot precedente ad aggiornamento firmware.
Scaricato file, e seguita procedura aggiornamento Firmware alla 1.49
Eseguito test di stress per almeno una mezzoretta...non ha più ceduto!
Ho notato ancora qualche lieve puntamento durante lo smanettamento del potenziometro, ma nulla di preoccupante al momento.
Quindi come prima valutazione in merito, penso che era un problema di firmware.
I miei test continueranno... non voglio che sia solo stato un caso.
Come nel mio stile, quindi imparziale nelle valutazioni, devo ammettere che Rosetta software è nettamente migliore di Mach4 come comportamento, è un piacere sentir muoversi quella cnc!!
Mach4 era veramente "cattivo" nei movimenti, su quel lato è pari a Mach3.
Vi terrò aggiornati...
dimenticavo...il file "start" era già aggiornato, unica differenza il valore del G104 che ho modificato io, così lo carica di default senza dover sempre scriverlo nel gcode.
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
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » mercoledì 17 marzo 2021, 20:46

Forse son 2 programmi destinati per usi diversi..
Ogni software ha il suo punto di forza.
A livello di connettività CsLab la trovo il Top, almeno per quanto riguarda la mia esperienza.

qandro
Member
Member
Messaggi: 252
Iscritto il: lunedì 29 ottobre 2018, 9:54

Re: Errori CNC in Rosetta B

Messaggio da qandro » giovedì 18 marzo 2021, 10:21

Non ho ben capito cosa ci fai con il potenziometro OVR.
Ovvero che tipo di variazioni di OVR applichi e con che velocità passi da un valore OVR all'altro.
Ho chiamato alcuni clienti che usano da tempo la B con i potenziometri e non hanno mai rilevato problemi nell'uso.

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » giovedì 18 marzo 2021, 11:27

È un pò difficile da spiegare in due parole..
Ci provo...
Lavorazioni in spazi stretti e con utensile da 0.5 di diametro..
Il controllo del truciolo è fondamentale, sia per integrità utensile oltre a non danneggiare il particolare.
Esempio banale:
Una fresa/punta da 0.5 o una seghetta t-slot se fà fila, e deve eseguire una serie di fori/tagli ha vita breve.
Con potenziometro cerco la F più adatta...
Il primo pezzo è un continuo apri/chiudi...
La funzione single/block sarebbe stata di molto aiuto, in mancanza di tale mi devo arrangiare con pausa e potenziometro...
Molto probabilmente i tuoi clienti lo usano molto poco...magari lo tengono fino al primo avvicinamento in rapido, poi lo mettono al 100% e non lo toccano più.
Comunque già da come è andata ieri dopo aggiornamento firmware mi và bene. Se era già cosi non avrei nemmeno aperto la discussione.
Come già anticipato i miei test sono persino estremi, ma son già più che soddisfatto dopo ultime prove.
Purtroppo non conosco nessuno che abbia la B, son sempre costretto a rompere le scatole a voi...

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » giovedì 18 marzo 2021, 13:03

A parte questo, sicuramente per alcuni potrebbe essere un metodo di lavoro non adatto o inopportuno...
Ma il succo dell' argomento è che se vi è una funzione, tale deve andare bene, se io apro e chiudo un potenziometro più volte, e il CN và in errore i problemi sono altri...

qandro
Member
Member
Messaggi: 252
Iscritto il: lunedì 29 ottobre 2018, 9:54

Re: Errori CNC in Rosetta B

Messaggio da qandro » giovedì 18 marzo 2021, 13:12

Uno "scatto" di movimento potrebbe anche essere sintomo di "potenziometro" non perfetto.
Siccome si legge una resistenza, se il cursore potenziometro o lo strato conduttivo non sono
fatti bene il sistema legge segnali a picchi e non lineari e puliti.

Hai provato se fa la stessa cosa usando il controllo da PC (levetta) o un MPG digitale ?

Poi che variazioni fai ?
Nel senso ci giochi come a mixare la musica con le luci di una sfera luminosa o un uso coerente con lo scopo ?

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » giovedì 18 marzo 2021, 14:55

Infatti ho scritto sopra...nei test estremi ha compiuto ancora qualche leggero scatto, ma durante uso "normale" dopo aggiornamento è andata benissimo!
Come normale io intendo un uso intensivo di tale in certe condizioni descritte sopra.
Ho pure aggiunto che ne ero soddisfatto del comportamento attuale.
Per curiosità proverò con MPG..
Sai quando proviamo i programmi sul Fanuc..andiamo mica tanto sul sottile con il potenziometro, eppure...

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » giovedì 18 marzo 2021, 17:56

Provato anche MPG.. è uguale al potenziometro.
Così mi stà bene...non mi ha dato nessun problema, di conseguenza non posso assolutamente lamentarmi! Anzi!
Era proprio questione di firmware allora.
Grazie per il supporto!

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » sabato 17 aprile 2021, 21:49

Ho gridato "terra" troppo presto...
uso di potenziometro è migliorato...forse la frase giusta è "meno peggio".
ma da lì a dire che vada bene la strada è ancora lunga....eppure non penso di usarlo in malo modo.
lo chiudo totalmente
premo start
lo apro dolcemente mentre si avvicina, chiudendolo e aprendolo varie volte quando è prossimo al pezzo.
quando poi tocca lo apro abbastanza velocemente.
se trova tratti lineari lunghi, o tratti di arco di una certa ampiezza, non si genera nessun problema...
al contrario se mentre lo stò aprendo verso il 100% è dentro in piccoli tratti o archi a volte ha degli scattini strani...
se la lasci andare senza toccare nulla và di burro...
io sarei proprio curioso di parlare con uno che abbia il mio stesso modello la B....

Avatar utente
danieleee
God
God
Messaggi: 3675
Iscritto il: lunedì 8 marzo 2010, 22:38
Località: Borgo Vercelli

Re: Errori CNC in Rosetta B

Messaggio da danieleee » domenica 18 aprile 2021, 21:34

Ho sentito il mio amico che ha preso la B insieme a me.
Lui la ha usata pochi giorni (forse era ancora le versione 1.1 ) infatti quando aveva installata non funzionavano gli ingressi. Vi aveva subito avvisati del problema e siete corsi ai ripari con gli aggiornamenti al firmware, magari ve lo ricordate ancora...
Dopo qualche giorno di Rosetta, ha rimesso Mach3, più che altro per questioni di gestione generale del software, macro ecc ecc...
Per pigrizia non la ha mai più rimessa su..
Per arrivare al succo della situazione, me la spedisce.
La aggiorno e la provo...
Se la sua non lo fà come sostenete, allora è la mia che è difettosa.
Al contrario se lo fà anche la sua, allora il problema è il vostro.
A meno che abbiate fatto delle modifiche a livello hardware rispetto alle primissime serie.
Vi farò sapere..

Rispondi

Torna a “RosettaCNC”