Подскажите, можно ли активировать на стойке возможность коректировки на радиус G41/G42. Гарантия на станок уже закончилась. Если кто-то может помочь пишите. Я понимаю, что это не бесплатно 
Пробую запустить уп., а мне выкидывает ошибку.
для врезки петель/замков по ходу?
я проще сделал... макрос и в нем просто пересчитываю координаты.
вот для горизонтальных шпинделей:
%@MACRO
//G300 X88.4 Y1123.0 Z19.5 U3 W16.0 H55.5 R8.0 T2 F2000.0 I1;
#24:=GETARG(X); // x #24
#25:=GETARG(Y); // y #25
#26:=GETARG(Z); // z #26
#27:=GETARG(U); // Glubina
#21:=GETARG(W); // x2 shirina
#22:=GETARG(H); // y2 visota
#23:=GETARG®; // R radius
#20:=GETARG(T); // T diametr
#9:=GETARG(F); // F podacha
#4:=GETARG(I); // I kol-vo prohodov
#27:=#27/#4;
#27:=STD(#27,#1600);
#20:=STD(#20,#1600);
#21:=STD(#21,#1600);
#22:=STD(#22,#1600);
#23:=STD(#23,#1600);
#21:=#21-#20; // x2 shirina
#22:=#22-#20; // y2 visota
#23:=#23-#20/2; // R radius
IF ((#20*2)<(#21+#20)) THEN
IF #27>0 THEN
G00 X(#24-15.000) Y(#25-#22/2+#23);
ELSE
G00 X(#24+15.000) Y(#25-#22/2+#23);
END_IF;
G00 Z(#26);
#49:=#27/2;
FOR #36:=1 TO #4 DO
G01 X(#24+#49*(#36*2-1)) F(#9);
G01 Y(#25+#22/2-#23);
G01 X(#24+#49*(#36*2));
G01 Y(#25-#22/2+#23);
END_FOR;
END_IF;
IF #27 > 0 THEN
G00 X(#24-15.000) Y(#25);
ELSE
G00 X(#24+15.000) Y(#25);
END_IF;
WAIT();
G00 Z(#26);
FOR #36:=1 TO #4 DO
IF #27 > 0 THEN
G01 X(#24+#27*#36) F(#9);
ELSE
G01 X(#24+#27*#36) F(#9);
END_IF;
G01 Z(#26+#21/2);
G01 Y(#25+#22/2-#23) Z(#26+#21/2);
G02 Y(#25+#22/2) Z(#26+#21/2-#23) J0.000 K(-#23);
G01 Y(#25+#22/2) Z(#26-#21/2+#23);
G02 Y(#25+#22/2-#23) Z(#26-#21/2) J(-#23) K0.000;
G01 Y(#25-#22/2+#23) Z(#26-#21/2);
G02 Y(#25-#22/2) Z(#26-#21/2+#23) J-0.000 K(#23);
G01 Y(#25-#22/2) Z(#26+#21/2-#23);
G02 Y(#25-#22/2+#23) Z(#26+#21/2) J(#23) K-0.000;
G01 Y(#25+5.000) Z(#26+#21/2);
END_FOR;
IF #27 > 0 THEN
G00 X(#24-15.000);
ELSE
G00 X(#24+15.000);
END_IF;
M99;