[[guide:junction_speed:start]]

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
guide:junction_speed:start [03/06/2018 22:08]
Simone Persiani
guide:junction_speed:start [03/06/2018 22:09] (versione attuale)
Simone Persiani
Linea 4: Linea 4:
  
 ==== Introduzione ==== ==== Introduzione ====
-I progetti [[https://​marlinfw.org|Marlin]] ed ''​MK4duo'',​ a partire rispettivamente dalle versioni ''​1.1.9''​ e ''​4.3.6'',​ hanno introdotto un nuovo algoritmo nel tentativo di superare l'​ormai datato [[guide:​junction_speed:​jerk_limiting|Jerk Limiting]]. Tale gestione non ha mai convinto del tutto gli sviluppatori di [[https://​marlinfw.org|Marlin]] e ha causato loro molti grattacapi nel corso degli anni. Nel tentativo di superare tale algoritmo si sono ispirati ai codici sorgente di [[http://​reprap.org/​wiki/​Grbl#​Grbl|Grbl]],​ un ben noto firmware per la gestione di macchine CNC, ottenendo e migliorando il **Junction Deviation** (il tutto nel pieno rispetto delle licenze associate a tale prodotto). Ricordiamo che [[https://​marlinfw.org|Marlin]] stesso è nato nell'​agosto del 2011 proprio come fork di [[http://​reprap.org/​wiki/​Grbl#​Grbl|Grbl]] e di [[http://​reprap.org/​wiki/​List_of_Firmware#​Sprinter|Sprinter]].+I progetti [[https://​marlinfw.org|Marlin]] ed ''​MK4duo'',​ a partire rispettivamente dalle versioni ''​1.1.9''​ e ''​4.3.6'',​ hanno introdotto un nuovo algoritmo nel tentativo di superare l'​ormai datato [[guide:​junction_speed:​jerk_limiting|Jerk Limiting]]. Tale gestione non ha mai convinto del tutto gli sviluppatori di [[https://​marlinfw.org|Marlin]] e ha causato loro molti grattacapi nel corso degli anni. Nel tentativo di superare tale algoritmo si sono ispirati ai codici sorgente di [[http://​reprap.org/​wiki/​Grbl#​Grbl|Grbl]],​ un ben noto firmware per la gestione di macchine CNC, ottenendo e migliorando il [[guide:​junction_speed:​junction_deviation|Junction Deviation]] (il tutto nel pieno rispetto delle licenze associate a tale prodotto). Ricordiamo che [[https://​marlinfw.org|Marlin]] stesso è nato nell'​agosto del 2011 proprio come fork di [[http://​reprap.org/​wiki/​Grbl#​Grbl|Grbl]] e di [[http://​reprap.org/​wiki/​List_of_Firmware#​Sprinter|Sprinter]].
  
 <WRAP center round info 100%> <WRAP center round info 100%>
Linea 18: Linea 18:
 È quindi possibile definire nel firmware le accelerazioni massime per ciascun asse (compresi gli estrusori!) in base alla loro **inerzia** (nel linguaggio comune diremmo //​lentezza//​ e/o //​pesantezza//​). Tali accelerazioni definiscono la rapidità con cui l'​attuale velocità di un asse possa essere variata per raggiungere una velocità target. **In questo modo gli spostamenti pianificati dalla macchina possono essere modellati tenendo correttamente in considerazione anche le masse in movimento.** È quindi possibile definire nel firmware le accelerazioni massime per ciascun asse (compresi gli estrusori!) in base alla loro **inerzia** (nel linguaggio comune diremmo //​lentezza//​ e/o //​pesantezza//​). Tali accelerazioni definiscono la rapidità con cui l'​attuale velocità di un asse possa essere variata per raggiungere una velocità target. **In questo modo gli spostamenti pianificati dalla macchina possono essere modellati tenendo correttamente in considerazione anche le masse in movimento.**
  
-Il ''​planner''​ si occupa inoltre di concatenare gli spostamenti in modo che la velocità con cui termina un blocco sia la stessa di quella con cui comincia il blocco successivo (<​m>​\vec{v^{i}}_{finale}=\vec{v^{i+1}}_{iniziale}</​m>​),​ con lo scopo di rendere più "​fluido"​ il passaggio da uno spostamento all'​altro. La scelta della **Junction Speed** non è così scontata come potrebbe apparire ad una prima analisi ed è un fattore critico in grado di produrre effetti apprezzabili sui tempi di stampa.+Il ''​planner''​ si occupa inoltre di concatenare gli spostamenti in modo che la velocità con cui termina un blocco sia la stessa di quella con cui comincia il blocco successivo (<​m>​\vec{v^{i}}_{finale}=\vec{v^{i+1}}_{iniziale}</​m>​),​ con lo scopo di rendere più "​fluido"​ il passaggio da uno spostamento all'​altro. La scelta della ''​Junction Speed'' ​non è così scontata come potrebbe apparire ad una prima analisi ed è un fattore critico in grado di produrre effetti apprezzabili sui tempi di stampa.
  
 ==== Il jerk ==== ==== Il jerk ====