Velocità che si riduce in curva

Sezione dedicata a Linuxcnc
Rispondi
SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 5 novembre 2017, 16:35

Buongiorno a tutti. Il mio problema consiste nel fatto che la mia fresatrice rallenta enormemente quando deve seguire percorsi non rettilinei. Nel senso che se io imposto una velocità di 400 mm/min appena si tratta di curvare la velocità scende anche a 80 mm/min. Risultato: frese "ferme" che tendono a bruciare e tempi che si dilatano.
Uso EMC2 su un PC piuttosto vecchio, potrebbe essere la velocità di calcolo della CPU o il software stesso? O l'elettronica di controllo?
Ho visto diversi video su YouTube dove fresatrici simili alla mia "correvano" alla grande!
Ringrazio anticipatamente tutti e auguro buon lavoro
Sergio Ruffa

scj

Re: Velocità che si riduce in curva

Messaggio da scj » domenica 5 novembre 2017, 19:03

Ho spostato la discussione in questa sezione dove è più probabile che qualche utente che usa EMC2 possa darti una mano.
Non conosco EMC2 ma comunque mi verrebbe da dirti che il programma sta elaborando il gcode in "exact stop" e nella curva probabilmente hai tanti trattini.
Aspetta comunque aiuto dei più ferrati sul quel software.

SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Re: Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 5 novembre 2017, 19:08

grazie scj

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

Re: Velocità che si riduce in curva

Messaggio da ross » domenica 5 novembre 2017, 20:42

Mi viene da pensare se è un problema di settaggio dell'accelerazione oppure di g-code.
Per il g-code puoi trovare tutte le informazioni qui.

Ross

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

Re: Velocità che si riduce in curva

Messaggio da shineworld » domenica 5 novembre 2017, 21:07

La velocità in interpolazione circolare del punto d'interpolazione dovrebbe rimanere corretta.
Nei punti di passaggio da lineare a lineare dove vi sono angoli dipende dal sistema di controllo che di solito crea un piccolo arco cercando di mantenere la velocità del punto ai valori impostati. Ovviamente non si possono mai superare le caratteristiche di tutti gli assi interessati. Basta che un solo asse vada più piano, per esempio Z, o quello più pesante che in questi casi la velocità si adegui al massimo valore possibile.

Non penso sia un problema di PC lento, ma più di impostazioni e di algoritmi di come Linux EMC risolve il problema dei cambi di direzione che teoricamente richiederebbero accelerazioni non possibili con l'attuale meccanica.

Senza informazioni sulle parametrizzazioni e caratteristiche meccaniche è difficile ipotizzare il problema.

Per prima cosa comunque assicurati di aver attivo EXACT PATH

kylotron
Senior
Senior
Messaggi: 993
Iscritto il: mercoledì 17 ottobre 2012, 17:06
Località: Sora

Re: Velocità che si riduce in curva

Messaggio da kylotron » mercoledì 8 novembre 2017, 11:49

intanto posta il gcode... ho avuto anche io questo problema su gcode non espressamente creati per LinuxCNC!
La mia piccolina....

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

Re: Velocità che si riduce in curva

Messaggio da shineworld » mercoledì 8 novembre 2017, 12:30

Per eseguire i raccordi non occorre il mode CONTINUOUS G64 ?

G61 Imposta il modo di controllo percorso: exact path (cerca di seguire il path in modo perfetto rallentando dove serve)
G61.1 Imposta il modo di controllo percorso : exact stop (esegue uno stop ad ogni fine comando movimento)
G64 Imposta il modo di controllo percorso: continuous (cerca di mantenere il feed impostato aggiungendo raccordi dove necessario)

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

Re: Velocità che si riduce in curva

Messaggio da Dino » mercoledì 8 novembre 2017, 22:33

Ciao,
senza poter vedere il G-code e la configurazione della macchina è possibile solo fare ipotesi, non sappiamo nulla, né della meccanica né della configurazione del software.
Il problema, oltre a quelli già elencati, potrebbe anche essere nell'accelerazione degli assi troppo bassa (o adeguata ai motori magari sotto dimensionati) oppure nelle impostazioni errate nel g-code.

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/

SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Re: Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 12 novembre 2017, 11:54

Ringrazio tutti per le risposte, che mi fanno capire che devo approfondire molte questioni. Comincio a documentarmi su quanto mi avete suggerito, e a fare qualche esperimento. Ancora grazie! :D

SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Re: Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 12 novembre 2017, 16:54

Giusto per capire se sono completamente fuori strada: uso corel draw per i disegni vettoriali, li esporto in DXF su VCarve Pro 5.504 (vecchiotta), faccio i percorsi utensile che salvo selezionando su VCarve l Post Processor "EMC2 Arcs(mm)(*.ngc)". Poi carico il file su EMC2 AXIS 2.4.6 (molto vecchio, ma il PC che uso non regge l'aggiornamento di Ubuntu per upgradare EMC2...).
Il programma interpreta perfettamente i percorsi utensile generati da VCarve e tutto funziona bene, anche se, come dicevo, a velocità bradipiche.
Guardando i file .ngc generati da VCarve vedo che iniziano così:

%
G21 G40 G49 M6 T1
G17
M7

Poi mette tre righe con il G0 per posizionare l'utensile, quindi inizia uno sterminato numero di comandi G1, il primo per abbassare Z e tutti gli altri per spostare X e Y. Di fatto si tratta di migliaia di trattini minuscoli uno dietro l'altro.
Immagino che dipenda da questo se la velocità è sempre bassa: ad ogni riga l'utensile parte e arriva senza fare quasi niente strada (leggevo conferma a questa tesi sui documenti indicati da ross).

Dovrei forse trovare il modo di generare dei percorsi utensile che utilizzino anche gli altri comandi G-Code (G2, G3...).

Buttando brutalmente una riga G64 all'inizio del programma (dopo G17) non è successo niente...

Cordialità

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

Re: Velocità che si riduce in curva

Messaggio da ross » domenica 12 novembre 2017, 17:46

Forse ricordo male ma corel draw non mi pare che lavora in vettoriale, per creare i dxf ti consiglio Draftsight che è gratuito (occorre solo effettuare la registrazione e rinnovarla annualmente).

Ho l'impressione che dal cam che usi ti genera un'infinità di righe di codice per i movimenti interpolati in G2 o G3, tanti trattini di microscopica lunghezza di movimento al posto di un arco o cerchio. Mi è capitato tempo fa quando ho dovuto tagliare con il laser industriale una forma complessa e il file dxf non era corretto, gli archi e i cerchi erano composti da una moltitudine di frammenti di linee.

Prova a fare un dxf pulito, una tasca di 100mm per 200mm con gli spigoli raccordati di raggio 20mm (per esempio) e processalo con il cam, quando verrà generato il file g-code troverai poche righe e quando lo eseguirai non dovresti avere rallentamenti nelle curve.

Ross

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

Re: Velocità che si riduce in curva

Messaggio da Dino » domenica 12 novembre 2017, 18:04

Ciao,
posta almeno la prima dozzina di righe del codice e vediamo cosa fa, hai controllato che i valori di accelerazione degli assi (nel file .ini) siano corretti? fa anche la prova suggerita da ross.

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/

SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Re: Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 12 novembre 2017, 18:31

Buona sera, confermo che Corel Draw lavora in vettoriale. Prima esportavo in EPS, ma con VCarve a volte avevo problemi. Con il DXF tutto fila liscio (almeno sembra...).
Ho provato, direttamente su VCarve, a disegnare un cerchio e a generare il percorso utensile. In questo caso una il comando G3 e in 15 righe di programma fa il lavoro, a velocità praticamente costante di 400 mm/min (come da impostazione dell'utensile). Stessa prova con un ellisse, ma niente da fare: una marea di micro segmenti G1...

Ecco il GCode del cerchio:

%
G21 G40 G49 M6 T1
G17
M7
G0Z20.000
G0X0.000Y0.000S12000M3
G0X60.000Y100.000Z10.000
G1Z-1.000F200.0
G3X100.000Y60.000I40.000J0.000F400.0
G3X140.000Y100.000I0.000J40.000
G3X100.000Y140.000I-40.000J0.000
G3X60.000Y100.000I0.000J-40.000
G0Z10.000
G0Z20.000
G0X0.000Y0.000
M2
%

e quello dell'ellisse:

%
G21 G40 G49 M6 T1
G17
M7
G0Z20.000
G0X0.000Y0.000S12000M3
G0X66.831Y88.818Z10.000
G1Z-1.000F200.0
G1X67.380Y88.422F400.0
G1X67.947Y88.034
G1X68.531Y87.652
G1X69.134Y87.278
G1X69.754Y86.911
G1X70.391Y86.552
G1X71.716Y85.858
G1X73.105Y85.196
G1X74.556Y84.567
G1X76.067Y83.973
G1X77.636Y83.416
G1X79.259Y82.895
G1X80.934Y82.414
G1X82.658Y81.972
G1X84.430Y81.572
G1X86.247Y81.214
G1X88.105Y80.899
G1X90.003Y80.630
G1X91.939Y80.406
G1X93.908Y80.230
G1X95.910Y80.103
G1X97.942Y80.026
G1X100.000Y80.000
G1X102.058Y80.026
G1X104.090Y80.103
G1X106.092Y80.230
G1X108.061Y80.406
G1X109.997Y80.630
G1X111.895Y80.899
G1X113.753Y81.214
G1X115.570Y81.572
G1X117.342Y81.972
G1X119.066Y82.414
G1X120.741Y82.895
G1X122.364Y83.416
G1X123.933Y83.973
G1X125.444Y84.567
G1X126.895Y85.196
G1X128.284Y85.858
G1X129.609Y86.552
G1X130.246Y86.911
G1X130.866Y87.278
G1X131.469Y87.652
G1X132.053Y88.034
G1X132.620Y88.422
G1X133.169Y88.818
G1X133.698Y89.220
G1X134.209Y89.629
G1X134.700Y90.045
G1X135.172Y90.467
G1X135.624Y90.895
G1X136.056Y91.329
G1X136.467Y91.769
G1X136.857Y92.215
G1X137.225Y92.667
G1X137.573Y93.123
G1X137.898Y93.585
G1X138.202Y94.053
G1X138.483Y94.525
G1X138.741Y95.002
G1X138.976Y95.483
G1X139.187Y95.969
G1X139.375Y96.460
G1X139.539Y96.954
G1X139.679Y97.453
G1X139.793Y97.955
G1X139.883Y98.461
G1X139.948Y98.971
G1X139.987Y99.484
G1X140.000Y100.000

ne ho messo più o meno un terzo...

Questo che segue è il fili .INI, haime non ho molta dimestichezza...

# Generato da stepconf a Fri Jun 23 16:35:12 2017
# Se questo file viene modificato, questo sarà
# sovrascritto quando si userà ancora stepconf

[EMC]
MACHINE = sentieromania
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/zioruphus/emc2/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
PYVCP = custompanel.xml

[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 = emc.var

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

[HAL]
HALFILE = sentieromania.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 = 3.00
MAX_LINEAR_VELOCITY = 30.00

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

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 10.0
STEPGEN_MAXACCEL = 12.5
SCALE = 100.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 650.0
HOME_OFFSET = -5.000000
HOME_SEARCH_VEL = 5.000000
HOME_LATCH_VEL = 5.000000

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 10.0
STEPGEN_MAXACCEL = 12.5
SCALE = 100.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 350.0
HOME_OFFSET = -5.000000
HOME_SEARCH_VEL = 5.000000
HOME_LATCH_VEL = 5.000000

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 10.0
STEPGEN_MAXACCEL = 12.5
SCALE = 100.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -80.0
MAX_LIMIT = 80.0
HOME_OFFSET = 0.0


Grazie, buona serata

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

Re: Velocità che si riduce in curva

Messaggio da ross » domenica 12 novembre 2017, 18:51

Ok, è come immaginavo.
Prova ad aprire il file dxf fatto con corel draw con un cad (draftsight, autocad ..) e vedrai che gli archi e le ellissi sono convertite in frammenti di linee.
La soluzione che adotto in azienda quando mi capitano queste cose (in genere sempre le spline) è quella di ricostruire manualmente gli archi al posto dei frammenti di linee e lo faccio anche per le ellissi.

Ross

SergioRuffa
Newbie
Newbie
Messaggi: 28
Iscritto il: martedì 11 aprile 2017, 14:27

Re: Velocità che si riduce in curva

Messaggio da SergioRuffa » domenica 12 novembre 2017, 19:06

Grazie mille ross!

Quindi tu dici che se uso direttamente autocad per disegnare i pezzi e poi li esporto in DXF mantengo gli archi?

Rispondi

Torna a “Linuxcnc”