rallentamenti lavorazione in curva

Sezione dedicata a Linuxcnc
Rispondi
ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: rallentamenti lavorazione in curva

Messaggio da ross » martedì 2 dicembre 2014, 22:48

Il mio file ini è il seguente:

Codice: Seleziona tutto

[EMC]
MACHINE = 1
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 1.2
DEFAULT_LINEAR_VELOCITY = 60.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 220.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 1
PROGRAM_PREFIX = /home/ross/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = linuxcnc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 39062
SERVO_PERIOD = 1000000

[HAL]
HALFILE = 1.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 60.00
MAX_VELOCITY = 220.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_0]
TYPE = LINEAR
HOME = 2.0
MAX_VELOCITY = 220.0
MAX_ACCELERATION = 1000.0
STEPGEN_MAXACCEL = 1250.0
SCALE = 13.3333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 1985.0
HOME_OFFSET = 2.0

[AXIS_1]
TYPE = LINEAR
HOME = 2.0
MAX_VELOCITY = 220.0
MAX_ACCELERATION = 1000.0
STEPGEN_MAXACCEL = 1250.0
SCALE = 13.3333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 860.0
HOME_OFFSET = 2.0

[AXIS_2]
TYPE = LINEAR
HOME = 30.0
MAX_VELOCITY = 22.8002918437
MAX_ACCELERATION = 1000.0
STEPGEN_MAXACCEL = 1250.0
SCALE = 533.333333333
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 80.0
HOME_OFFSET = 30.0
Sto facendo dei test anche su un altro pc (questo con cui scrivo) che ha pressoché lo stesso setup di quello in azienda ma senza collegare i motori e tutto il resto, solo per simulare.
Ho scritto giusto due righe di programma da far girare ed ho riscontrato l'anomalia anche qui.
Il programma è:

Codice: Seleziona tutto

 G21
 G40
 G90
 G94
 G64
 G17
 G49
 G0 Z30.0
 X10.0 Y10.0
 Z6.0
 G1 X100.0 F5000
 G3 X200.0 Y110.0 I0.0 J100.0 F6000
 M02
In teoria l'utensile dovrebbe percorrere il tratto rettilineo a velocità 5m/min per poi accelerare secondo la rampa arrivando a 6m/min del tratto curvo, nella pratica, invece, nel punto di tangenza leggo a video che la velocità si abbassa a 4.3m/min e poi va su a 6m/min.
La stessa cosa succede anche tra due tratti rettilinei posti sulla stessa retta.
E' normale? Sinceramente un anno fa non ho riscontrato un comportamento del genere.

Ross

ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: rallentamenti lavorazione in curva

Messaggio da ross » martedì 2 dicembre 2014, 23:19

Monitorando il pin motion.current-vel con l'oscilloscopio di Linuxcnc vedo il comportamento della velocità di lavorazione che si abbassa quando si passa dal tratto rettilineo al tratto curvo.
Sono riuscito a triggerare la variazione di velocità, allego la screenshot.

Ross
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

Dino
Senior
Senior
Messaggi: 815
Iscritto il: lunedì 13 novembre 2006, 23:08
Località: Dolomiti (BL)
Contatta:

Re: rallentamenti lavorazione in curva

Messaggio da Dino » mercoledì 3 dicembre 2014, 1:51

La decelerazione tra un tratto rettilineo ed uno curvo è normale all'inizio della seconda entità, servirebbe accelerazione tendente all'infinito per non avere variazione di velocità, questo dovrebbe essere meno evidente per una lavorazione in cui entrambi gli assi X ed Y si muovono già prima dell'arco, tipo:

Codice: Seleziona tutto

G1 Z3 F1000 
G1 X0 Y0
G1 Z-1.5 F500 
G1 X14.142 Y14.142
G3 X14.142 Y28.284 I-7.071 J7.071
G1 X0 Y42.426
G1 Z3
Invece non ci dovrebbe essere decelerazione se i movimenti sono rettilinei, ma questo sempre che il comando G64 P- Q- sia attivo.
Se domani ho un po' di tempo faccio qualche prova
Saluti
Dino
NON più moderatore della sezione EMC ( http://www.linuxcnc.org/ )
Felice utilizzatore di GNU/Linux http://www.gnu.org/ http://www.kernel.org/
Linux Registered User #192043 http://counter.li.org/
Sito internet http://dino.delfavero.it/

ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: rallentamenti lavorazione in curva

Messaggio da ross » mercoledì 3 dicembre 2014, 13:18

Io credo che, una volta impostata la G64, solo quando si cambia velocità entra in gioco l'accelerazione, aggiungendo i parametri P e Q si va a gestire il compromesso tra velocità e tolleranza di lavorazione nel seguire il percorso.
Vorrei provare a rimettere una vecchia versione di Linuxcnc, tipo la 2.4.7 o 2.5.0, come devo fare? In questo modo potrei fare il confronto.

Ross

Dino
Senior
Senior
Messaggi: 815
Iscritto il: lunedì 13 novembre 2006, 23:08
Località: Dolomiti (BL)
Contatta:

Re: rallentamenti lavorazione in curva

Messaggio da Dino » mercoledì 3 dicembre 2014, 18:49

Ciao, in ogni momento l'accelerazione viene gestita da LinuxCNC, ogni motore, stepper o altro che sia, per variare la velocità all'albero ha bisogno di un certo tempo per accelerare (o decelerare, che è un accelerazione negativa :-) ), una macchina ben dimensionata ha le accelerazioni impostate in per avere una rampa il più possibile ripida, questo per evitare che la velocità sul profilo sia inferiore a quella impostata per il fatto che la rampa di accelerazione e decelerazione si incontrino e "taglino" la velocità.

Per installare una versione precedente di LinuxCNC si può o scaricare il pacchetto e decomprimerlo in un path diverso o disinstallare l'ultima versione e forzare l'installazione di una precedente, vedi: http://wiki.ubuntu-it.org/Amministrazio ... a_versione

Ciao
D.
NON più moderatore della sezione EMC ( http://www.linuxcnc.org/ )
Felice utilizzatore di GNU/Linux http://www.gnu.org/ http://www.kernel.org/
Linux Registered User #192043 http://counter.li.org/
Sito internet http://dino.delfavero.it/

ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: rallentamenti lavorazione in curva

Messaggio da ross » domenica 7 dicembre 2014, 15:24

Ciao Dino,
invece di installare parallelamente un'altra versione ho preso il cd con preinstallato Linuxcnc che ho scaricato l'anno scorso, la versione 2.4.7 e da live ho rifatto il test.
Con gli stessi parametri e programma g-code sono andato a vedere la forma d'onda della velocità e trovo che è sostanzialmente uguale all'attuale. Quindi ho cercato di capire il motivo del "mancato problema" di tempo fa: probabilmente è la velocità impostata nei tratti rettilinei e nei raccordi, praticamente lavoravo con velocià del 50% più bassa e quindi nei raccordi la velocità del 25% in più viene raggiunta prima perché "l'utensile" ha semplicemente più tempo a disposizione per arrivare alla velocità impostata percorrendo l'arco.
La velocità in rapido della macchina è 13.2m/min, ora lavoro a 6m/min in rettilineo e il 25% in più nei raccordi raggio 8, prima invece lavoravo a velocità pari a 3m/min in rettilineo e sempre il 25% in più nei raccordi R8.
Ora credo che è tutto chiaro, appena posso faccio la "verifica".

Saluti
Ross

ross
Member
Member
Messaggi: 351
Iscritto il: mercoledì 3 agosto 2011, 23:16
Località: Macerata (MC)

Re: rallentamenti lavorazione in curva

Messaggio da ross » domenica 5 aprile 2015, 11:54

Ciao Dino,
ho eseguito un nuovo test di velocità, questa volta ho forzato l'installazione di Linuxcnc 2.5.2 e scopro che esegue correttamente il cambio di velocità.
Nel tratto rettilineo a velocità 5000mm/min passa a 6000mm/min con la normale accelerazione, nell'immagine che allego si vede chiaramente la rampa in salita e non c'è più traccia della decelerazione prima del cambio di velocità seguita dall'accelerazione.
Ho provato più e più volte, proprio per evitare errori o false misurazioni ma sembra che con la versione 2.5.2 la velocità viene gestita correttamente, prima di questa versione ho testato anche la 2.6.7 riscontrando il solito e anomalo comportamento.

Buona Pasqua a tutti.
Ross
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

Rispondi

Torna a “Linuxcnc”