Sfoglia il codice sorgente

Merge pull request #10910 from thinkyhead/bf2_fix_junction_deviation

[2.0.x] Fix / improve junction deviation
Scott Lahteine 6 anni fa
parent
commit
ae1be0fa53
Nessun account collegato all'indirizzo email del committer
53 ha cambiato i file con 42 aggiunte e 56 eliminazioni
  1. 0
    1
      Marlin/Configuration_adv.h
  2. 0
    1
      Marlin/src/config/default/Configuration_adv.h
  3. 0
    1
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h
  4. 0
    1
      Marlin/src/config/examples/Anet/A6/Configuration_adv.h
  5. 0
    1
      Marlin/src/config/examples/Anet/A8/Configuration_adv.h
  6. 0
    1
      Marlin/src/config/examples/Azteeg/X5GT/Configuration_adv.h
  7. 0
    1
      Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h
  8. 0
    1
      Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h
  9. 0
    1
      Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h
  10. 0
    1
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h
  11. 0
    1
      Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h
  12. 0
    1
      Marlin/src/config/examples/Cartesio/Configuration_adv.h
  13. 0
    1
      Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h
  14. 0
    1
      Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h
  15. 0
    1
      Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h
  16. 0
    1
      Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h
  17. 0
    1
      Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h
  18. 0
    1
      Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h
  19. 0
    1
      Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h
  20. 0
    1
      Marlin/src/config/examples/Felix/Configuration_adv.h
  21. 0
    1
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h
  22. 0
    1
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h
  23. 0
    1
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h
  24. 0
    1
      Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h
  25. 0
    1
      Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h
  26. 0
    1
      Marlin/src/config/examples/MakerParts/Configuration_adv.h
  27. 0
    1
      Marlin/src/config/examples/Malyan/M150/Configuration_adv.h
  28. 0
    1
      Marlin/src/config/examples/Malyan/M200/Configuration_adv.h
  29. 0
    1
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h
  30. 0
    1
      Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h
  31. 0
    1
      Marlin/src/config/examples/RigidBot/Configuration_adv.h
  32. 0
    1
      Marlin/src/config/examples/SCARA/Configuration_adv.h
  33. 0
    1
      Marlin/src/config/examples/Sanguinololu/Configuration_adv.h
  34. 0
    1
      Marlin/src/config/examples/TheBorg/Configuration_adv.h
  35. 0
    1
      Marlin/src/config/examples/TinyBoy2/Configuration_adv.h
  36. 0
    1
      Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h
  37. 0
    1
      Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h
  38. 0
    1
      Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h
  39. 0
    1
      Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h
  40. 0
    1
      Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h
  41. 0
    1
      Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h
  42. 0
    1
      Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h
  43. 0
    1
      Marlin/src/config/examples/delta/generic/Configuration_adv.h
  44. 0
    1
      Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h
  45. 0
    1
      Marlin/src/config/examples/delta/kossel_pro/Configuration_adv.h
  46. 0
    1
      Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h
  47. 0
    1
      Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h
  48. 0
    1
      Marlin/src/config/examples/makibox/Configuration_adv.h
  49. 0
    1
      Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h
  50. 0
    1
      Marlin/src/config/examples/wt150/Configuration_adv.h
  51. 3
    1
      Marlin/src/inc/SanityCheck.h
  52. 16
    5
      Marlin/src/module/planner.cpp
  53. 23
    0
      Marlin/src/module/planner.h

+ 0
- 1
Marlin/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/default/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Anet/A6/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Anet/A8/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Azteeg/X5GT/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Cartesio/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Felix/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/MakerParts/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Malyan/M150/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Malyan/M200/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/RigidBot/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/SCARA/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Sanguinololu/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/TheBorg/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/TinyBoy2/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/UltiMachine/Archim2/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Velleman/K8200/Configuration_adv.h Vedi File

@@ -450,7 +450,6 @@
450 450
 //#define JUNCTION_DEVIATION
451 451
 #if ENABLED(JUNCTION_DEVIATION)
452 452
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
453
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
454 453
   //#define JUNCTION_DEVIATION_INCLUDE_E
455 454
 #endif
456 455
 

+ 0
- 1
Marlin/src/config/examples/Velleman/K8400/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/delta/FLSUN/kossel/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/delta/generic/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/delta/kossel_mini/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/delta/kossel_pro/Configuration_adv.h Vedi File

@@ -454,7 +454,6 @@
454 454
 //#define JUNCTION_DEVIATION
455 455
 #if ENABLED(JUNCTION_DEVIATION)
456 456
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
457
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
458 457
   //#define JUNCTION_DEVIATION_INCLUDE_E
459 458
 #endif
460 459
 

+ 0
- 1
Marlin/src/config/examples/delta/kossel_xl/Configuration_adv.h Vedi File

@@ -449,7 +449,6 @@
449 449
 //#define JUNCTION_DEVIATION
450 450
 #if ENABLED(JUNCTION_DEVIATION)
451 451
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
452
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
453 452
   //#define JUNCTION_DEVIATION_INCLUDE_E
454 453
 #endif
455 454
 

+ 0
- 1
Marlin/src/config/examples/gCreate/gMax1.5+/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/makibox/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/tvrrug/Round2/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 0
- 1
Marlin/src/config/examples/wt150/Configuration_adv.h Vedi File

@@ -447,7 +447,6 @@
447 447
 //#define JUNCTION_DEVIATION
448 448
 #if ENABLED(JUNCTION_DEVIATION)
449 449
   #define JUNCTION_DEVIATION_MM 0.02  // (mm) Distance from real junction edge
450
-  #define JUNCTION_ACCELERATION 1000  // (mm/s²) Maximum centripetal acceleration
451 450
   //#define JUNCTION_DEVIATION_INCLUDE_E
452 451
 #endif
453 452
 

+ 3
- 1
Marlin/src/inc/SanityCheck.h Vedi File

@@ -278,7 +278,9 @@
278 278
 #elif defined(JUNCTION_DEVIATION_FACTOR)
279 279
   #error "JUNCTION_DEVIATION_FACTOR is now JUNCTION_DEVIATION_MM. Please update your configuration."
280 280
 #elif defined(JUNCTION_ACCELERATION_FACTOR)
281
-  #error "JUNCTION_ACCELERATION_FACTOR is now JUNCTION_ACCELERATION. Please update your configuration."
281
+  #error "JUNCTION_ACCELERATION_FACTOR is obsolete. Delete it from Configuration_adv.h."
282
+#elif defined(JUNCTION_ACCELERATION)
283
+  #error "JUNCTION_ACCELERATION is obsolete. Delete it from Configuration_adv.h."
282 284
 #endif
283 285
 
284 286
 #define BOARD_MKS_13     -47

+ 16
- 5
Marlin/src/module/planner.cpp Vedi File

@@ -2166,11 +2166,22 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
2166 2166
       }
2167 2167
       else {
2168 2168
         NOLESS(junction_cos_theta, -0.999999); // Check for numerical round-off to avoid divide by zero.
2169
-        const float sin_theta_d2 = SQRT(0.5 * (1.0 - junction_cos_theta)); // Trig half angle identity. Always positive.
2170 2169
 
2171
-        // TODO: Technically, the acceleration used in calculation needs to be limited by the minimum of the
2172
-        // two junctions. However, this shouldn't be a significant problem except in extreme circumstances.
2173
-        vmax_junction_sqr = (JUNCTION_ACCELERATION * JUNCTION_DEVIATION_MM * sin_theta_d2) / (1.0 - sin_theta_d2);
2170
+        float junction_unit_vec[JD_AXES] = {
2171
+          unit_vec[X_AXIS] - previous_unit_vec[X_AXIS],
2172
+          unit_vec[Y_AXIS] - previous_unit_vec[Y_AXIS],
2173
+          unit_vec[Z_AXIS] - previous_unit_vec[Z_AXIS]
2174
+          #if ENABLED(JUNCTION_DEVIATION_INCLUDE_E)
2175
+            , unit_vec[E_AXIS] - previous_unit_vec[E_AXIS]
2176
+          #endif
2177
+        };
2178
+        // Convert delta vector to unit vector
2179
+        normalize_junction_vector(junction_unit_vec);
2180
+
2181
+        const float junction_acceleration = limit_value_by_axis_maximum(block->acceleration, junction_unit_vec),
2182
+                    sin_theta_d2 = SQRT(0.5 * (1.0 - junction_cos_theta)); // Trig half angle identity. Always positive.
2183
+
2184
+        vmax_junction_sqr = (junction_acceleration * JUNCTION_DEVIATION_MM * sin_theta_d2) / (1.0 - sin_theta_d2);
2174 2185
         if (block->millimeters < 1.0) {
2175 2186
 
2176 2187
           // Fast acos approximation, minus the error bar to be safe
@@ -2178,7 +2189,7 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
2178 2189
 
2179 2190
           // If angle is greater than 135 degrees (octagon), find speed for approximate arc
2180 2191
           if (junction_theta > RADIANS(135)) {
2181
-            const float limit_sqr = block->millimeters / (RADIANS(180) - junction_theta) * JUNCTION_ACCELERATION;
2192
+            const float limit_sqr = block->millimeters / (RADIANS(180) - junction_theta) * junction_acceleration;
2182 2193
             NOMORE(vmax_junction_sqr, limit_sqr);
2183 2194
           }
2184 2195
         }

+ 23
- 0
Marlin/src/module/planner.h Vedi File

@@ -802,6 +802,29 @@ class Planner {
802 802
 
803 803
     static void recalculate();
804 804
 
805
+    #if ENABLED(JUNCTION_DEVIATION)
806
+
807
+      #if ENABLED(JUNCTION_DEVIATION_INCLUDE_E)
808
+        #define JD_AXES XYZE
809
+      #else
810
+        #define JD_AXES XYZ
811
+      #endif
812
+
813
+      FORCE_INLINE static void normalize_junction_vector(float (&vector)[JD_AXES]) {
814
+        float magnitude_sq = 0.0;
815
+        for (uint8_t idx = 0; idx < JD_AXES; idx++) if (vector[idx]) magnitude_sq += sq(vector[idx]);
816
+        const float inv_magnitude = 1.0 / SQRT(magnitude_sq);
817
+        for (uint8_t idx = 0; idx < JD_AXES; idx++) vector[idx] *= inv_magnitude;
818
+      }
819
+
820
+      FORCE_INLINE static float limit_value_by_axis_maximum(const float &max_value, float (&unit_vec)[JD_AXES]) {
821
+        float limit_value = max_value;
822
+        for (uint8_t idx = 0; idx < JD_AXES; idx++) if (unit_vec[idx]) // Avoid divide by zero
823
+          NOMORE(limit_value, ABS(max_acceleration_mm_per_s2[idx] / unit_vec[idx]));
824
+        return limit_value;
825
+      }
826
+
827
+    #endif // JUNCTION_DEVIATION
805 828
 };
806 829
 
807 830
 #define PLANNER_XY_FEEDRATE() (MIN(planner.max_feedrate_mm_s[X_AXIS], planner.max_feedrate_mm_s[Y_AXIS]))

Loading…
Annulla
Salva