X-Git-Url: http://git.hcoop.net/clinton/Smoothieware.git/blobdiff_plain/492cadb786e9763ec7c19e8cdda944fb55355333..49de901734414b04c54cd1890f3a6bd2a03e4d49:/src/modules/robot/Planner.cpp diff --git a/src/modules/robot/Planner.cpp b/src/modules/robot/Planner.cpp index 5292f7ab..82f58b92 100644 --- a/src/modules/robot/Planner.cpp +++ b/src/modules/robot/Planner.cpp @@ -6,7 +6,6 @@ */ using namespace std; -#include #include "mri.h" #include "nuts_bolts.h" @@ -160,10 +159,10 @@ bool Planner::append_block( ActuatorCoordinates &actuator_pos, uint8_t n_motors, #endif // Skip and use default max junction speed for 0 degree acute junction. - if (cos_theta < 0.95F) { + if (cos_theta <= 0.9999F) { vmax_junction = std::min(previous_nominal_speed, block->nominal_speed); // Skip and avoid divide by zero for straight junctions at 180 degrees. Limit to min() of nominal speeds. - if (cos_theta > -0.95F) { + if (cos_theta >= -0.9999F) { // Compute maximum junction velocity based on maximum acceleration and junction deviation float sin_theta_d2 = sqrtf(0.5F * (1.0F - cos_theta)); // Trig half angle identity. Always positive. vmax_junction = std::min(vmax_junction, sqrtf(acceleration * junction_deviation * sin_theta_d2 / (1.0F - sin_theta_d2)));