Browse Source

✨ FOAMCUTTER_XYUV (for RAMPS) (#24325)

Co-authored-by: Scott Lahteine <github@thinkyhead.com>
DerAndere 1 year ago
parent
commit
b06e378703
No account linked to committer's email address
3 changed files with 37 additions and 3 deletions
  1. 7
    0
      Marlin/Configuration.h
  2. 2
    2
      Marlin/src/inc/SanityCheck.h
  3. 28
    1
      Marlin/src/pins/ramps/pins_RAMPS.h

+ 7
- 0
Marlin/Configuration.h View File

@@ -865,6 +865,13 @@
865 865
   #define POLAR_SEGMENTS_PER_SECOND 5
866 866
 #endif
867 867
 
868
+// Enable for an articulated robot (robot arm). Joints are directly mapped to axes (no kinematics).
869
+//#define ARTICULATED_ROBOT_ARM
870
+
871
+// For a hot wire cutter with parallel horizontal axes (X, I) where the heights of the two wire
872
+// ends are controlled by parallel axes (Y, J). Joints are directly mapped to axes (no kinematics).
873
+//#define FOAMCUTTER_XYUV
874
+
868 875
 //===========================================================================
869 876
 //============================== Endstop Settings ===========================
870 877
 //===========================================================================

+ 2
- 2
Marlin/src/inc/SanityCheck.h View File

@@ -1567,8 +1567,8 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
1567 1567
 /**
1568 1568
  * Allow only one kinematic type to be defined
1569 1569
  */
1570
-#if MANY(DELTA, MORGAN_SCARA, MP_SCARA, AXEL_TPARA, COREXY, COREXZ, COREYZ, COREYX, COREZX, COREZY, MARKFORGED_XY, MARKFORGED_YX, FOAMCUTTER_XYUV)
1571
-  #error "Please enable only one of DELTA, MORGAN_SCARA, MP_SCARA, AXEL_TPARA, COREXY, COREXZ, COREYZ, COREYX, COREZX, COREZY, MARKFORGED_XY, MARKFORGED_YX, or FOAMCUTTER_XYUV."
1570
+#if MANY(DELTA, MORGAN_SCARA, MP_SCARA, AXEL_TPARA, COREXY, COREXZ, COREYZ, COREYX, COREZX, COREZY, MARKFORGED_XY, MARKFORGED_YX, ARTICULATED_ROBOT_ARM, FOAMCUTTER_XYUV)
1571
+  #error "Please enable only one of DELTA, MORGAN_SCARA, MP_SCARA, AXEL_TPARA, COREXY, COREXZ, COREYZ, COREYX, COREZX, COREZY, MARKFORGED_XY, MARKFORGED_YX, ARTICULATED_ROBOT_ARM, or FOAMCUTTER_XYUV."
1572 1572
 #endif
1573 1573
 
1574 1574
 /**

+ 28
- 1
Marlin/src/pins/ramps/pins_RAMPS.h View File

@@ -79,6 +79,31 @@
79 79
 #endif
80 80
 
81 81
 //
82
+// Foam Cutter requirements
83
+//
84
+
85
+#if ENABLED(FOAMCUTTER_XYUV)
86
+  #ifndef MOSFET_C_PIN
87
+    #define MOSFET_C_PIN                      -1
88
+  #endif
89
+  #if HAS_CUTTER && !defined(SPINDLE_LASER_ENA_PIN) && NUM_SERVOS < 2
90
+    #define SPINDLE_LASER_PWM_PIN              8  // Hardware PWM
91
+  #endif
92
+  #ifndef Z_MIN_PIN
93
+    #define Z_MIN_PIN                         -1
94
+  #endif
95
+  #ifndef Z_MAX_PIN
96
+    #define Z_MAX_PIN                         -1
97
+  #endif
98
+  #ifndef I_STOP_PIN
99
+    #define I_STOP_PIN                        18
100
+  #endif
101
+  #ifndef J_STOP_PIN
102
+    #define J_STOP_PIN                        19
103
+  #endif
104
+#endif
105
+
106
+//
82 107
 // Limit Switches
83 108
 //
84 109
 #ifndef X_STOP_PIN
@@ -272,7 +297,9 @@
272 297
 #if HAS_CUTTER && !defined(SPINDLE_LASER_ENA_PIN)
273 298
   #if NUM_SERVOS < 2                              // Use servo connector if possible
274 299
     #define SPINDLE_LASER_ENA_PIN              4  // Pullup or pulldown!
275
-    #define SPINDLE_LASER_PWM_PIN              6  // Hardware PWM
300
+    #ifndef SPINDLE_LASER_PWM_PIN
301
+      #define SPINDLE_LASER_PWM_PIN            6  // Hardware PWM
302
+    #endif
276 303
     #define SPINDLE_DIR_PIN                    5
277 304
   #elif HAS_FREE_AUX2_PINS
278 305
     #define SPINDLE_LASER_ENA_PIN             40  // Pullup or pulldown!

Loading…
Cancel
Save