#CCR(L) - коррекция контура

#CCR-0.05

Служит для реализации упрощённого алгоритма коррекции контура для фрезерного станка (например для компенсации износа инструмента) в плоскости XY.

Коррекция ограничена диапазоном от -0.2 до 0.2 мм.

Директива #CCR сдвигает контур (команды G01G02G03) вправо от исходного по ходу движения инструмента, #CCL - влево. Упрощённый алгоритм состоит в том, что элементы контура сдвигаются параллельным переносом без изменения длины для линий и угла для дуг. Соседние (по ходу движения инструмента) пересекающиеся элементы ограничиваются в точке пересечения, а разрывы между элементами заменяются прямыми отрезками. Если элемент контура при сдвиге вырождается, или движение по нему меняет направление, то коррекция невозможна и выдаётся соответствующее сообщение. Коррекция будет применяться до команды смены инструмента (в т.ч. на текущий) или до нового значения коррекции. Значение коррекции строго равное 0 (#CCR0 или #CCL0) отменяет работу алгоритма коррекции для последующих элементов контура. При этом первый (после отмены коррекции) элемент контура будет выполнен без коррекции начальной и конечной точек, а переход из текущей точки с ненулевой коррекцией будет осуществлён по прямой. Результат будет отличен от варианта со значением коррекции не строго равным нулю, но очень малым (#CCR0.0001 или #CCL0.0001).

Алгоритм имеет особенность для замкнутых контуров. В начале первого элемента замкнутого контура и в конце последнего в зависимости от направления коррекции будет зарезание или недорез на величину, не превышающую величину коррекции. Для того чтобы избежать или минимизировать данный эффект необходимо выбирать стык первого и последнего элемента таким, чтобы между ними образовывался угол менее 180градусов со стороны материала детали. В этом случае зарезание или недорез придутся на извлекаемый материал.