◎ 프로그램의 구성
1. 프로그램의 구성
(1) 어드레스 - CNC선반의 프로그램 작성에 사용되는 어드레스의 기능은 CNC 프로그램에서 배운 어드레스의 기능과 유사하고 좌표값 X, Z는 절 대좌표값 지령에 사용하고 U, W는 증분좌표값 지령에 사용한다. 또 X, U는 일반적으로 지름지령으로 프로그램 한다.
|
(2) 절대방식과 증분방식 프로그래밍 - 절대방식(absolute)은 이동하고자 하는 점이 모두 프로그램 원점 으로부터 설정된 좌표계의 좌표값으로 표시한 것이고, 증분방식 (incremental)은 앞 블록의 종점이 다음 블록의 시작점이 되어서 이동하고자 하는 종점까지의 거리를 지령하는 것이다.
|

[그림] 어드래스 |

[그림] 좌표값 지령식 |
2. 프로그램 원점 - 프로그램을 할 때 좌표계와 프로그램 원점(X 0.0 Z 0.0)은 미리 결정되어야 하며 일반적으로 [그림 2-2]와 같이 Z축선상의 X축과 만나는 임의의 한점을 프로그램 원점으로 설정하는 경우가 대부분 이다.
|
3. 좌표계 설정 - 프로그램을 할 때 도면 또는 제품의 기준점을 정해주는 좌표계를 우선 결정한다. 프로그램 실행과 함께 공구가 출발하는 지점과 프 로그램 원점과의 관계를 CNC 장치에 입력해야 되는데 이를 좌표 계 설정이라 하며 G50으로 지령한다. 좌펴계가 설정되면 출발점의 공구위치와 공작물 좌표계가 설정되기 때문에 가공을 시작할 때 공 구는 좌표계가 설정된 지점에 있어야 하며 또한 공구교환도 이 지 점엣 이루어지기 때문에 이 지점을 시작점(start point)이라고도 한 다.
|

[그림] 프로그램 원점 설정의 예 |

[그림] 좌표계 설정 방법 |
4. 주축기능 - CNC선반에서 절삭속도가 공작물의 가공에 미치는 영향은 매우 크다. 절삭속도란 공구와 공작물 사이의 상대속도이므로 일정한 절삭속도는 주축의 회전수를 조절함으로써 가능하다.
|
 |
 |
 |
(1) 절삭속도 일정제어(G96)
- 단면이나 테이퍼 절삭에는 지름이 절삭과정에 따라 변화하여 절삭속도도 이에 따라 달라지므로 가공면의 표면거치기도 나빠진다. 이 러한 문제를 해결하기 위하여 지름값의 차이에 따라 달라지는 절삭속도를 일정하게 유지시켜 주는 기능이 절삭속도 일정제어이며 단이 많은 계단축 가공 및 단면가공에 주로 사용한다.
(예) G96 S130, M03 ; → 절삭속도가 130[m/min]가 되도록 공작물의 지름에 따라 주축의 회전수가 변한다.
그리고 G96에서 단면절삭과 같이 공작물의 지름이 작아질 경우 주축의 회전수가 무리하게 높아지는 것을 방지하기 위하여 G50에서 최고회전수를 지령하게 된다.
(2) 절삭속도 일정제어 취소(G97)
- 절삭속도 일정제어 취소 기능은 회전수만을 일정하게 제어하는 기능으로 드릴작업, 나사작업, 공작물 지름의 변화가 심하지 않는 공 작물을 가공할 때 사용한다.
(예) G97 S450, M03 ; → 주축은 450[rpm]으로 회전한다
(3) 주축 최고회전수 설정(G50)
- G50에서 S로 지정한 수치는 최고회전수를 나타내며 좌표계 설정에서 최고회전수를 지정하게 되면 전체 프로그램을 통하여 주축의 회전수는 최고회전수를 넘지 않게 된다. 또한 G96에서 최고회전수보다 높은 회전수를 요구하더라도 주축에서는 최고회전수로 대체하 게 된다.
(예) G50 S1300 ; → 주축의 최고회전수는 1300[rpm]이다. |
5. 보조기능
- 보조기능은 어드레스 M(Miscellaneous)에 연속되는 두자리 숫자에 의해 기계측의 ON/OFF에 관계되는 기능이며 한 블록에 오직 한 개의 보조기능만 사용할 수 있다.
(1) 프로그램 정지(M00) : program stop
- 프로그램 정지 기능은 자동적으로 기계의 사이클을 정지시킨다. 따라서 가공물을 측정하고 칩을 제거하는 등의 작업을 할 때 사용한다.
(2) 선택적 프로그램 정지(M01) : optional program stop
- 프로그램 수행 중 M01에서 정지하는 것은 M00과 동일하지만 M01은 기계조작반의 M01 기능을 유효(ON)로 할 것인지 무효(OFF)로 할 것인지는 스위치에 의해서 결정할 수 있다. 즉, 조작반의 스위치를 ON해야만 M00과 동일한 기능을 가진다. 선택적 프로그램 정지 기능은 공구를 점검하고자 할 때, 또는 절삭량이 많아서 칩을 제거해야 할 때, 공작물을 측정하고자 할 때 사용하지만 보통 공정과 공정 사이에 넣어서 제품의 상태를 점검하기 위하여 많이 사용한다.
(3) 프로그램 끝(M02) : end of program
- 프로그램의 끝을 나타내는 기능으로서 요즈음 생산되는 CNC선반에서는 M02가 프로그램의 끝을 나타냄과 동시에 프로그램의 첫머리로 커서(cursor)를 되돌리는 기능도 있다.
|
(4) 주축 작동(M03, M04, M05)
|

|
(5) 절삭유 작동(M08, M09) |

|
(6) 프로그램 되감기(M30) : program rewind/ end if program
- 프로그램이 끝날 때 사용되며 테이프나 메로리 사용시 프로그램 처음으로 되돌려지는 기능을 가진다. 기계 메이커(maker)에 따라 M02는 프로그램의 끝만 나타내고 프로그램의 첫머리로 되돌아가지 않는 경우도 있으므로 프로그램의 끝에는 M30을 사용하는게 좋다.
|
(7) 주축기어 변화 (M 40, M41, M42, M43)
|

|
M41은 주로 거친 절삭(황삭)가공에 사용되고 M42는 다듬 절삭(정삭)가공에 사용된다. 회전수 범위는 기계 메이커에 따라 차이가 있지만 일반적으로 1000[rpm] 정도를 기준으로 하여 M41, M42, M43을 사용한다.
|
(8) 보조프로그램(M98, M99)
|

|
6. 공구기능
- 공구의 선택과 공구보정을 하는 기능으로 어드레스 T로 나타내며 T기능이라고도 한다. 공구기능은 T에 연속되는 4자리 숫자로 지령하는데 그 의미는 다음과 같다. |
 |
|
7. 이송기능
- 공작물에 대하여 공구를 이송시켜주는 기능을 말하며 G98 코드의 분당 이송(mm/min)과 G99 코드의 회전당 이송(mm/rev)으로 지령할 수 있는데 CNC 선반에서는 G99코드를 사용한 회전당 이송으로 프로그램 한다.
|
 |
◎ 프로그래밍
1. 준비기능
|
 |
주 1) 지정된 블록에서만 유효한 것 (One Shot G코드 → 00 그룹) 2) 동일 그룹 내의 다른 G 코드가 나올 때까지 유효한 것 (Modal G코드 → 그 외) 3) 같은 그룹의 G 코드는 동일 블록 내 에 2개 이상 지령할 수 없다. 만일 지 령하게 되면 맨나중 G 코드만 유효하 다. 4) 다른 그룹의 G코드는 동일 블록 내에 2개 이상 지령할 수도 있다.
|
(1) 위치결정(급속이송)
GOO X(U) _______ Z(W) _______ ;
공작물의 가공없이 공구의 위치만 결정하는 지령으로 다음과 같은 경우에 주로 사용한다. ① 공구가 공작물을 가공하기 위해 최초로 공작물에 접근할 때 ② 일차적인 가공후 다음 가공을 위해 이동할 때 ③ 가공이 끝나고 공구를 교환하기 위해 시작점으로 되돌아갈 때 ④ 가공이 완전히 종료되었을 때
2축이 지령된 경우 공구의 이동은 2축이 동시에 이루어지나 이동 경로는 직선이 아니며 통상 비직선 보간형으로 위치결정된다. 그 이유 는 X축과 Z축의 이송속도가 다르기 때문이다. 또한, 위치결 정에서 실제로 A에서 B로 공구를 공작물에 접근시킬 때는 공구와 공작물이 충돌하지 않도록 위치를 정해야 한다. |

[그림] 위치결정의 예
|
(2) 직선보간
G01 X(U) _______ Z(W) _______ F _______ ;
직선보간은 실제 가공을 하는 이송지령으로 공구를 지령한 이송속 도로 현재의 위치에서 지령한 위치로 직선이동시키는 기능이다.
|

[그림] 직선보간의 예 |
(3) 원호보간 G02 R ___ F ___; iii } X(U) ________ Z(W)________ { ii ii i G03 I ___ K ___ F ___ ;
CNC 선반 프로그램에서 원호보간에 필요한 좌표어 및 코드는 < 표 2-2 >에 나타내고, [ 그림 ]에서는 원호보간의 방향을 보여주고 있다.
|

[그림]원호보간의 예 |

|
(4) 자동모떼기 코너R 가공
- 직각으로 이루어진 두 블록 사이에 모떼기나 코너 R을 가공할 때, I, K와 R을 사용하여 프로그램을 간단히 할 수 있는데 이 때, I, K 값 은 반지름지령을 한다. 또한 파라미터 수정으로 I, K 대신에 C를 사용할 수 있다.
|

[그림] 자동모때기 사용방법(45°모때기에 한함) |

[그림]코너 R 사용방법 |
(5) 휴지
- 프로그램에 지정된 시간 동안 공구의 이송을 잠시 중지시키는 지령을 휴지(dwell : 일시정지) 기능이라 한다. 이러한 기능은 드릴까 공을 할 때 간헐이송에 의해 칩을 절단하거나 홈가공시 회전당 이송에 의해 단차량이 없는 진원가공을 할 때, 모서리를 정밀가공 할 때 사용한다. 입력단위는 X, U는 소수점을 (X1.5, U2.0)사용하고 P는 0.001단위(P1500)를 사용한다.
|
또한 정지시간과 회전수의 관계는 다음과 같다.
 |
|
(6) 원점복귀
① 자동원점복귀
G28 X(U) ___ Z(W) ___ ;
- CNC선반에서 전원을 ON했을 때 가장 먼저 수행해야 할 일은 원 점복귀(reference point return)이다. 원점복귀를 하는 방법은 선 택 모드 스위치를 원점복귀에 두고 수동으로 하는 방법과 G28을 사용해서 자동으로 하는 2가지 방법이 있다. 자동으로 할 경우에는 G28 U0.0 W0.0 ;으로 지령하면 공구대가 원점복귀한다. 그러나 [그림]에서와 같이 G28 X___ Z___ ;으 로 지령하면 지정된 경유점을 거쳐서 원점복귀하게 된다. 그러나 공구대의 위치가 기계원점으로부터 너무 가까이 있을 때 는 원점복귀시 알람(alarm)이 걸리므로 공구대를 원점으로부터 척을 기준으로하여 절반이상 떨어지게 한 다음 원점복귀를 시킬 때나, 심압대가 앞으로 전진되어 있는 경우에 공구대와 충돌을 피 해서 원점 복귀 시킬 경우 등에 응용할 수 있다.
|

[그림] 원점복귀
|
② 제2원점복귀
G30 X(U) ___ Z(W) ___ ;
- 이 기능은 프로그램 수행에 앞서 원점복귀 한 다음에 유효하며 제1원점(기계원점)으로부터 거리를 파라미터(parameter) 번호에 입력 해서 원하는 제2원점을 지정한다. [그림]에서와 같이 가공을 할 때 공구대의 위치가 X150.0 Z-50.0에 있더라도 G30 U0.0 W0.0 ; 지령을 하면 제2원점으로 공구대 가 자동으로 이동하므로 실제 프로그램에서 많이 사용하는 방법이다. |

[그림] 제2 원점복귀 |
|
(7)나사가공 - G32 지령으로 [그림]과 같은 평행나사, 테이퍼나사, 정면(scroll)나사의 가공이 가능하다. |

[그림] 나사의 종류
|
X와 Z는 나사가공의 끝점 좌표값이고 F는 나사의 리드(lead)를 지 정하며 E는 인치의 피치(pitch)를 밀리미터(mm)로 바꾼 수치로 지령한다. 나사가공은 공구가 같은 경로의 반복 절삭으로 인해 이루어지며 나 사가공시에는 주축속도검출기(position coder)의 1회전 신호를 검 출하여 나사절삭이 시작되므로 공구가 반복하여도 나사절삭은 동 일한 점에서 시작된다. 나사가공은 주축회전수 일정제어(G97)로 지령해야 하며 불완전 나 사부를 고려하여 프로그램해야 한다. 피드 홀더(feed holder) 버튼을 눌러도 한 사이클 가공이 끝난 후 이송이 중단된다.
|

[그림] 나사가공
|
2. 사이클 가공
CNC선반 가공에 있어서거친절삭가공에서는도면에 따라 차이는 나지만 3∼5블록으로 지령하는 일련의 작업을 한 개의 블록으로 지령 할 수 잇으며 또한 반복되는 가공에서 수치만 지령하는 방법도 있다. CNC선반 프로그램에서는 변경된 치수만 반복하여 지령하는단일 고정 사이클(canned cycle)과 한 개의 블록으로 지령하는복합 반복 사이클(multiple repeative cycle)이 있다.
|
가. 단일 고정 사이클 (1) 안·바깥지름 절삭 사이클
G90 X(U) ___ Z(W) ___ F ;(직선 절삭) iiiiii i I G90 X(U) ___ Z(W) ___ F I(R)___ F___;(테이퍼 절삭)
단독 블록 모드에서 스위치를 한번눌면 [그림]과 같이공구의 동작은 시작점에서 출발하여 1→2→3→4의 한 사이클 동작을 완료한다.
|

[그림] 테이퍼 절삭 사이클 경로 |

[그림]직선절삭 사이클 경로 |
또한 테이퍼 절삭에 있어서는 테이퍼값 I(R)를 지령해야 하며 가공방법은 직선 절삭사이클과 동일하다. 여기에서 테이퍼값 R은 CNC 컨트롤러 0T를 나타낸 것이다. 테이퍼값 I는 형상에 따라 부호가 다른 데 절삭시작점이 긑나는 족보다 지름이 적으면 -I 절삭시작점이 긑나는 쪽보다 지름이 크면 +I이 다. [그림]은 G90에 있어서 I의 부호를 나타낸 것이다.
|

[그림] G90에서의 I의 부호 |
(2) 단면 절삭 사이클
G94 X(U) ___ Z(W) ___ F ;(평행 절삭) iiiii I G94 X(U) ___ Z(W) ___ K(R)___ F___;(테이퍼 절삭)
|

[그림] 직선 단면절삭 사이클 |

[그림] 테이퍼 단면절삭 사이클 |
(3) 고정 사이클 이용
제품의 형상이나 가공 모양에 따라[그림]과 같이적절한 고정 사이 클을 선택하여 프로그램 한다.
|

[그림] 고정 사이클의 선택 |
(4) 나사가공
G90 X(U) ___ Z(W) ___ F ;(직선 iii절i G90 X(U) ___ Z(W) ___ I___ F(E)___;
|

|
[그림] 고정 사이클의 나사가공 |
3. 복합 반복 사이클
복합 반복 사이클은 프로그램을 보다 쉽고 간단하게 하기위한 기능으로 메모리(memory)운전에서만 가능하다. 이 기능은 FANUC시스 템 11T와 0T의 경우 프로그램 작성의 일부 차이가 있으므로 11T를 기준으로 설명하면서 차이가 있는 부분은 0T에 대해서도 설명하고 자 한다.
|

[그림] 복합반복 사이클 | | |