59 unsigned long initial_rate; // The jerk-adjusted step rate at start of block |
59 unsigned long initial_rate; // The jerk-adjusted step rate at start of block |
60 unsigned long final_rate; // The minimal rate at exit |
60 unsigned long final_rate; // The minimal rate at exit |
61 unsigned long acceleration_st; // acceleration steps/sec^2 |
61 unsigned long acceleration_st; // acceleration steps/sec^2 |
62 unsigned long fan_speed; |
62 unsigned long fan_speed; |
63 volatile char busy; |
63 volatile char busy; |
|
64 |
|
65 bool laser_on; |
64 } block_t; |
66 } block_t; |
65 |
67 |
66 // Initialize the motion plan subsystem |
68 // Initialize the motion plan subsystem |
67 void plan_init(); |
69 void plan_init(); |
68 |
70 |
69 // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in |
71 // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in |
70 // millimaters. Feed rate specifies the speed of the motion. |
72 // millimaters. Feed rate specifies the speed of the motion. |
71 void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder); |
73 void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder, bool laser_on); |
72 |
74 |
73 // Set position. Used for G92 instructions. |
75 // Set position. Used for G92 instructions. |
74 void plan_set_position(const float &x, const float &y, const float &z, const float &e); |
76 void plan_set_position(const float &x, const float &y, const float &z, const float &e); |
75 void plan_set_e_position(const float &e); |
77 void plan_set_e_position(const float &e); |
76 |
78 |