CNC 밀링(머시닝센터) 가공 프로그래밍 - 공구 보정 기능
5. 공구 보정 기능
1. 공구 길이 보정 기능 G43, G44
2. 공구 길이 보정 취소 G49
3. 공구 지름 보정 기능 G40, G41, G42
전원을 켜고
공구설정을 하고, 공작물 설정을 한다.
X0 Y0을 터치하고 빠져나오는 프로그램을 작성해본다.
%
O0633(OFFSET_TEST)
G91G28Z0.;
T01M06;
G90G00X0.Y0.; (G54WORK)
M03S1000;
G00G43Z50.; (HEIGHT OFFSET)
G01Z0.F500
M01; (OPTIONAL STOP)
G00G90Z100.;
M05
M02
%
오프셋설정에서 001번은 기준공구로 0을 입력하고
002번은 기준공구보다 20mm가 작으므로 -20을 입력한다.
공구 길이 보정 세팅이 끝나면 프로그램도 수정을 해준다.
%
O0633(OFFSET_TEST)
G91G28Z0.;
T01M06;
G90G00X0.Y0.; (G54WORK)
M03S1000;
G00G43H01Z50.; (HEIGHT OFFSET)
G01Z0.F500
M01; (OPTIONAL STOP)
G00G90Z100.;
M05
M02
%
프로그램에서 공구번호를 변경하였을때
공구번호에 해당하는 H의 값을 적용하면 된다.
T01 - H01 ---> T02 - H02 이런 식으로 변경하고
자동모드 - 사이클 스타트를 눌러 공작물을 찍고 올라가는지 확인한다.
공구 길이보정 확인하는 프로그램을 작성한다.
%
O0634 (OFFSET_TEST)
G91G28Z0. (Z축기계원점복귀. 증분 현재위치에서)
(T01 D80F/C H01 D01)
(T01 D6.8D/R H02 D02)
(T01 D10FEM/C H03 D03)
(T01 M8TAP H04 D04)
T2M06;
G90G00G54X0.Y0.; (G54WORK좌표계를 쓰겠다)
M03S1000;
G00G43H2Z50.; (HIGHT OFFSET)
G01Z0.F500;
M01; (OPTIONAL STOP)
G00G49Z200.;
M05;
M02;
공구 4개를 장착한다.
현재 스핀들에는 2번이 장착되어 있다.
여기까지 했으면 작성한 프로그램을 불러온다.
사이클 스타트를 눌러 프로그램을 테스트 해본다.
그런데 공작물까지 공구가 오지 않았다.
빠진 부분이 있는데 공구 길이보정을 해준다.
3번이 기준공구이다.
옵셋 설정으로 가서 수정을 해본다.
기준공구 엔드밀(T3)을 확인한다.
다른 공구도 세팅이 제대로 되어 있는지 확인해 본다.
G01로 절삭속도로 천천히 내려가는 것은 오른쪽 오버라이드의 영향때문이다.
왼쪽은?
아래쪽은?
지금까지 길이보정을 알아보았다.
공구지름보정 (공구 경보정)
일반적으로 보정 안함으로 되어 이다.
공구의 중심이 경로를 따라간다. 따라서 도면 치수에서 반지름만큼 오차가 생긴다.
그 반경값을 D__에 준 것이다.
좌측보정(G41: 하향절삭)과 우측보정(G42:상향절삭, X)이 있다.
G40(취소), G41, G42
3번 외각에서 절삭하는 엔드밀(형상가공)만 수정해주면 된다.
실제 외곽을 엔드밀로 돌아서 빠져나오게 해보겠다.
X-10, Y-10을 시작점으로 한다.
기존프로그램에서 아래와 같이 수정하고 테스트를 해본다.
%
O0634 (OFFSET_TEST)
G91G28Z0. (Z축 기계 원점 복귀. 증분 현재위치에서)
T04M06;
G90G00G54X-60.Y-60.; (G54WORK좌표계를 쓰겠다)
M03S1000;
G00G43H04Z50.; (HIGHT OFFSET)
G01Z0.F500;
X-50.
Y50.
X50.
Y-50.
X-50.
X-60.
Y-60.
M01; (OPTIONAL STOP)
G00G49Z200.;
M05;
M02;
%
동작을 시키면 아래와 같이 반경값만큼 깍인다.
경보정을 하면 아래 그림에서 노란색부분처럼 수정을 해서 절삭부위가
형상으로 나오게 된다.
지름보정(경보정)을 해본다.
프로그램을 아래와 같이 수정한다.
경로가 달라진다.
%
O0634(OFFSET_TEST)
G91G28Z0.(Z축기계원점복귀.증분현재위치에서)
T03M06
G90G00G54X-60.Y-60.(G54WORK좌표계를쓰겠다)
M03S1000
G00G43H03Z50.(HIGHTOFFSET)
G01Z-5.F500
G41D03X-50. (D OFFSET START)
Y50.
X50.
Y-50.
X-50.
X-60.
G40Y-60. (D OFFSET OFF)
M01(OPTIONALSTOP)
G00G49Z200.
M05
M02
%
화면에서는 조금 깍이는 듯 보이나 실제는 절삭되지 않는다.
화면 해상도를 높여주고 다시 확인해본다.
공구경 보정하는 과정을 한 블록씩 실행하면서 포지션을 본다.
아래쪽의 싱글블록 레버를 올려준다.
X-50 X가 50으로 가야하는데 실제로는 55로 간다.
G41의 공구경 보정기능이 실행되고 있기 때문에 반경만큼 떨어뜨리면서 움직이고 있는 것이다.
아래의 화면에서 보면
X가 -55, Y가 -55, X가 55, Y가 55인 좌표를 볼 수 있다.
한바뀌를 다 돌고
다음 블록이 실행 될때 (G40 Y-60이 실행되면서) 공구경 보정이 취소가 된다.
좌표를 보면 X나 Y가 -60으로 원래의 값이 표시된다. (지정한 대로 간다)
이번에는 보정값을 0으로 놓고 공구경 보정을 적용해본다.
경로가 바뀌었다. 반경만큼 더 절삭되었다.
보정이 실행되고 있지만 OFFSET값(공구보정값)을 0으로 했기 때문에 절삭이 된다.
프로그램을 실행한다.
보정값을 20으로 놓고 공구경 보정을 적용해본다.
전후좌우로 5만큼 더 떨어져서 움직이고 있다.
이번에는 모서리에 R5를 적용해본다.
프로그램 코드에 ' , R5 ' 를 추가해본다.
%
O0634(OFFSET_TEST)
G91G28Z0.(Z축기계원점복귀.증분현재위치에서)
T03M06
G90G00G54X-60.Y-60.(G54WORK좌표계를쓰겠다)
M03S1000
G00G43H03Z50.(HIGHTOFFSET)
G01Z-5.F500
G41D03X-50. (D OFFSET START)
Y50.,R5. (FILLET)
X50.,R5. (FILLET)
Y-50.,R5. (FILLET)
X-50.
X-60.
G40Y-60. (D OFFSET OFF)
M01(OPTIONALSTOP)
G00G49Z200.
M05
M02
%