Browse Source

Added feedrate setting for manual moves from panel

Nicolas Rossi 12 years ago
parent
commit
394ed08f88
2 changed files with 15 additions and 8 deletions
  1. 5
    0
      Marlin/Configuration_adv.h
  2. 10
    8
      Marlin/ultralcd.cpp

+ 5
- 0
Marlin/Configuration_adv.h View File

193
 #define DEFAULT_MINIMUMFEEDRATE       0.0     // minimum feedrate
193
 #define DEFAULT_MINIMUMFEEDRATE       0.0     // minimum feedrate
194
 #define DEFAULT_MINTRAVELFEEDRATE     0.0
194
 #define DEFAULT_MINTRAVELFEEDRATE     0.0
195
 
195
 
196
+// Feedrates for manual moves along X, Y, Z, E from panel
197
+#ifdef ULTIPANEL
198
+#define MANUAL_FEEDRATE {50*60, 50*60, 4*60, 60}  // set the speeds for manual moves (mm/min)
199
+#endif
200
+
196
 // minimum time in microseconds that a movement needs to take if the buffer is emptied.
201
 // minimum time in microseconds that a movement needs to take if the buffer is emptied.
197
 #define DEFAULT_MINSEGMENTTIME        20000
202
 #define DEFAULT_MINSEGMENTTIME        20000
198
 
203
 

+ 10
- 8
Marlin/ultralcd.cpp View File

18
 int absPreheatHotendTemp;
18
 int absPreheatHotendTemp;
19
 int absPreheatHPBTemp;
19
 int absPreheatHPBTemp;
20
 int absPreheatFanSpeed;
20
 int absPreheatFanSpeed;
21
+
22
+static float manual_feedrate[] = MANUAL_FEEDRATE;
21
 /* !Configuration settings */
23
 /* !Configuration settings */
22
 
24
 
23
 //Function pointer to menu functions.
25
 //Function pointer to menu functions.
377
         encoderPosition = 0;
379
         encoderPosition = 0;
378
         #ifdef DELTA
380
         #ifdef DELTA
379
         calculate_delta(current_position);
381
         calculate_delta(current_position);
380
-        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], 600, active_extruder);
382
+        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder);
381
         #else
383
         #else
382
-        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 600, active_extruder);
384
+        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder);
383
         #endif
385
         #endif
384
         lcdDrawUpdate = 1;
386
         lcdDrawUpdate = 1;
385
     }
387
     }
406
         encoderPosition = 0;
408
         encoderPosition = 0;
407
         #ifdef DELTA
409
         #ifdef DELTA
408
         calculate_delta(current_position);
410
         calculate_delta(current_position);
409
-        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], 600, active_extruder);
411
+        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[Y_AXIS]/60, active_extruder);
410
         #else
412
         #else
411
-        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 600, active_extruder);
413
+        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[Y_AXIS]/60, active_extruder);
412
         #endif
414
         #endif
413
         lcdDrawUpdate = 1;
415
         lcdDrawUpdate = 1;
414
     }
416
     }
435
         encoderPosition = 0;
437
         encoderPosition = 0;
436
         #ifdef DELTA
438
         #ifdef DELTA
437
         calculate_delta(current_position);
439
         calculate_delta(current_position);
438
-        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], homing_feedrate[Z_AXIS]/60, active_extruder);
440
+        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[Z_AXIS]/60, active_extruder);
439
         #else
441
         #else
440
-        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], homing_feedrate[Z_AXIS]/60, active_extruder);
442
+        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[Z_AXIS]/60, active_extruder);
441
         #endif
443
         #endif
442
         lcdDrawUpdate = 1;
444
         lcdDrawUpdate = 1;
443
     }
445
     }
460
         encoderPosition = 0;
462
         encoderPosition = 0;
461
         #ifdef DELTA
463
         #ifdef DELTA
462
         calculate_delta(current_position);
464
         calculate_delta(current_position);
463
-        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], 20, active_extruder);
465
+        plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[E_AXIS]/60, active_extruder);
464
         #else
466
         #else
465
-        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 20, active_extruder);
467
+        plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[E_AXIS]/60, active_extruder);
466
         #endif
468
         #endif
467
         lcdDrawUpdate = 1;
469
         lcdDrawUpdate = 1;
468
     }
470
     }

Loading…
Cancel
Save